@charset "UTF-8";
/*
// Headings
// 1. size (in rem)
// 2. letter spacing (a.k.a. 'tracking' in photoshop)
// 3. line height (* leading)
// 4. margin top (* leading)
// 5. margin bottom (* leading)
//
$headings: (
	h1: (2.5, 100, 1.25, 1, 1),
	h2: (1.75, 75, 1.25, 2.5, .5),
	h3: (1.375, 75, 1.25, 2, .5),
	h4: (1.2, 75, 1.25, 1.5, .5),
	h5: (1, 50, 1.125, 2.5, .5),
	h6: (1, 50, 1.125, 2.5, .5)
) !default;*/
@-ms-viewport {
  width: device-width;
  zoom: 1.0; }
@-o-viewport {
  width: device-width;
  zoom: 1.0; }
@viewport {
  width: device-width;
  zoom: 1.0; }

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline; }

article, aside, details, figcaption, figure, footer,
header, hgroup, main, menu, nav, section, summary {
  display: block; }

*,
*:before,
*:after {
  box-sizing: border-box; }

/*html,
body {
  height: 100%;
}*/
html {
  background: #fff;
  -webkit-text-size-adjust: 100%;
      -ms-text-size-adjust: 100%;
          text-size-adjust: 100%; }

audio,
canvas,
progress,
video {
  display: inline-block;
  vertical-align: baseline; }

[hidden],
template {
  display: none; }

audio:not([controls]) {
  display: none;
  height: 0; }

body {
  line-height: 1.5; }

ol, ul {
  list-style: none; }

a {
  background-color: transparent; }

a:focus {
  outline: thin dotted; }

a:active,
a:hover {
  outline: 0; }

blockquote, q {
  quotes: none; }

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: '';
  content: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

img,
video {
  max-width: 100%;
  height: auto;
  vertical-align: middle; }

iframe,
object,
embed {
  max-width: 100%; }

img {
  -ms-interpolation-mode: bicubic; }

svg:not(:root) {
  overflow: hidden; }

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  cursor: pointer; }

input[type="search"] {
  box-sizing: border-box; }

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration,
input[type="search"] {
  -webkit-appearance: none; }

button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0; }

/**
 * Simple page-level setup.
 *
 * 1. Force scrollbars to always be visible to prevent awkward ‘jumps’ when
 *    navigating between pages that do/do not have enough content to produce
 *    scrollbars naturally.
 * 2. Ensure the page always fills at least the entire height of the viewport.
 * 3. Stop IE scrollbars from covering content.
 */
html {
  overflow-y: scroll;
  /* [1] */
  min-height: 100%;
  /* [2] */
  -ms-overflow-style: scrollbar;
  /* [3] */ }

/*doc
---
title: Containers
name: containers
category: Layouts
---

Containers are used to wrap and constrain our site's contents.

```html_example
<div class="l-container  l-container--xsmall"></div>
<div class="l-container  l-container--small"></div>
<div class="l-container  l-container--medium"></div>
<div class="l-container  l-container--large"></div>
<div class="l-container  l-container--xlarge"></div>
<div class="l-container  l-container--super"></div>
```

### Basic Containers

The basic `.l-container` class simply adds padding and centers itself.

```html_example
<div class="l-container">
	<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.</p>
</div>
```

<hr>

If you wish to use a container without padding, add the `.l-container--flush` class.

```html_example
<div class="l-container  l-container--flush">
	<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.</p>
</div>
```

### Container Sizes

To control the maximum width of the container, we use size modifiers.

Note: Some of the larger containers are constrained by the style guide.

```html_example
<div class="l-container  l-container--xsmall">
	<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.</p>
</div>
```

```html_example
<div class="l-container  l-container--small">
	<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.</p>
</div>
```

```html_example
<div class="l-container  l-container--medium">
	<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.</p>
</div>
```

```html_example
<div class="l-container  l-container--large">
	<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.</p>
</div>
```

```html_example
<div class="l-container  l-container--xlarge">
	<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.</p>
</div>
```

```html_example
<div class="l-container  l-container--super">
	<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.</p>
</div>
```

### Responsiveness

Each container can also be applied at certain screen sizes. `.l-container--small@large` for example will restrict the horizontal width to small when the viewport has a large or more width. Each size container has an `@xsmall`, `@small`, `@medium`, `@large`, `@xlarge` and `@super` responsive suffix.

```html_example
<div class="l-container  l-container--xsmall@small  l-container--small@medium  l-container--medium@large  l-container--large@xlarge">
	<p>This container will change size depending on the viewport width.</p>
</div>
```

*/
.l-container {
  -ms-flex-positive: 0;
      flex-grow: 0;
  -ms-flex-negative: 1;
      flex-shrink: 1;
  -ms-flex-preferred-size: auto;
      flex-basis: auto;
  margin-left: auto;
  margin-right: auto;
  padding: 0 1em;
  width: 100%; }
  @media (min-width: 20rem) {
    .l-container--xsmall\@xsmall {
      max-width: 20rem; }
    .l-container--small\@xsmall {
      max-width: 30rem; }
    .l-container--medium\@xsmall {
      max-width: 48rem; }
    .l-container--large\@xsmall {
      max-width: 64rem; }
    .l-container--xlarge\@xsmall {
      max-width: 78rem; }
    .l-container--super\@xsmall {
      max-width: 125rem; } }
  @media (min-width: 30rem) {
    .l-container--xsmall\@small {
      max-width: 20rem; }
    .l-container--small\@small {
      max-width: 30rem; }
    .l-container--medium\@small {
      max-width: 48rem; }
    .l-container--large\@small {
      max-width: 64rem; }
    .l-container--xlarge\@small {
      max-width: 78rem; }
    .l-container--super\@small {
      max-width: 125rem; } }
  @media (min-width: 48rem) {
    .l-container--xsmall\@medium {
      max-width: 20rem; }
    .l-container--small\@medium {
      max-width: 30rem; }
    .l-container--medium\@medium {
      max-width: 48rem; }
    .l-container--large\@medium {
      max-width: 64rem; }
    .l-container--xlarge\@medium {
      max-width: 78rem; }
    .l-container--super\@medium {
      max-width: 125rem; } }
  @media (min-width: 64rem) {
    .l-container--xsmall\@large {
      max-width: 20rem; }
    .l-container--small\@large {
      max-width: 30rem; }
    .l-container--medium\@large {
      max-width: 48rem; }
    .l-container--large\@large {
      max-width: 64rem; }
    .l-container--xlarge\@large {
      max-width: 78rem; }
    .l-container--super\@large {
      max-width: 125rem; } }
  @media (min-width: 78rem) {
    .l-container--xsmall\@xlarge {
      max-width: 20rem; }
    .l-container--small\@xlarge {
      max-width: 30rem; }
    .l-container--medium\@xlarge {
      max-width: 48rem; }
    .l-container--large\@xlarge {
      max-width: 64rem; }
    .l-container--xlarge\@xlarge {
      max-width: 78rem; }
    .l-container--super\@xlarge {
      max-width: 125rem; } }
  @media (min-width: 125rem) {
    .l-container--xsmall\@super {
      max-width: 20rem; }
    .l-container--small\@super {
      max-width: 30rem; }
    .l-container--medium\@super {
      max-width: 48rem; }
    .l-container--large\@super {
      max-width: 64rem; }
    .l-container--xlarge\@super {
      max-width: 78rem; }
    .l-container--super\@super {
      max-width: 125rem; } }
  .l-container--xsmall {
    max-width: 20rem; }
  .l-container--small {
    max-width: 30rem; }
  .l-container--medium {
    max-width: 48rem; }
  .l-container--large {
    max-width: 64rem; }
  .l-container--xlarge {
    max-width: 78rem; }
  .l-container--super {
    max-width: 125rem; }

.l-container--flush {
  padding: 0; }

/*! Avalanche | MIT License | @colourgarden */
/**
 * CONTENTS
 * INTRODUCTION.........How the grid system works.
 * LOGIC................The magic that makes the grid work.
 * GRID SETUP...........Build the grid structure.
 * WIDTHS...............Build our responsive widths around our breakpoints.
 */
/*------------------------------------*\
	INTRODUCTION
\*------------------------------------*/
/*doc
---
title: Grids
name: grids
category: Layouts
---

Grids are an easy way to produce a fluid responsive layout. They're easy to use and very flexible. 

color key:

<ul>
	<li class="u-color-pink-lighter">grids are pink</li>
	<li class="u-color-blue">grid cells are blue</li>
</ul>

Note: Ignore the `.sg-grid` classes. These are just used to add borders.

### Basic Grid

Use the `.l-grid` class to wrap your `.l-grid__item` elements.

```html_example
<div class="l-grid  sg-grid">
	<div class="l-grid__item">first</div>
	<div class="l-grid__item">second</div>
	<div class="l-grid__item">third</div>
</div>
``` 

### Widths

Use fraction class such as `1/3` to apply widths to grid items. If you add a width to one cell the other cells will automatically take up the rest of the space equally.

```html_example
<div class="l-grid  sg-grid">
	<div class="l-grid__item  1/2">first</div>
	<div class="l-grid__item">second</div>
	<div class="l-grid__item">third</div>
</div>
``` 

### Nesting

You can nest grids inside cells with ease...with nesting you're into advanced territory! 

```html_example
<div class="l-grid  sg-grid">
	<div class="l-grid__item">
		<div class="l-grid  sg-grid">
			<div class="l-grid__item">first</div>
			<div class="l-grid__item">second</div>
		</div>
		<div class="l-grid  sg-grid">
			<div class="l-grid__item">third</div>
			<div class="l-grid__item">fourth</div>
		</div>
	</div>
	<div class="l-grid__item">fifth</div>
</div>
``` 

### Vertical Alignment

If one of your cells is tall you can apply a vertical alignment modifier class to the grid.

`.l-grid--top`, `.l-grid--middle` and `.l-grid--bottom` are supported. 

```html_example
<div class="l-grid  l-grid--bottom  sg-grid">
	<div class="l-grid__item">first</div>
	<div class="l-grid__item">second</div>
	<div class="l-grid__item">third</div>
	<div class="l-grid__item">
		fourth
		<br>fourth
		<br>fourth
		<br>fourth
		<br>fourth
		<br>
	</div>
</div>
``` 

You can override the vertical alignment of all the cells in the grid by specifying per cell.

`.l-grid__item--top`, `.l-grid__item--middle` and `.l-grid__item--bottom` are supported. 

```html_example
<div class="l-grid  l-grid--bottom  sg-grid">
	<div class="l-grid__item  l-grid__item--top">first</div>
	<div class="l-grid__item  l-grid__item--middle">second</div>
	<div class="l-grid__item">third</div>  <!-- the l-grid pushes this cell down  -->
	<div class="l-grid__item">
		fourth
		<br>fourth
		<br>fourth
		<br>fourth
		<br>fourth
		<br>
	</div>
</div>
``` 

### Responsiveness

This grids provides you with widths to suit a number of breakpoints designed around content widths of a size you specify. Out of the box, this grid caters to the following breakpoints: `@xsmall`, `@small`, `@medium`, `@large`, `@xlarge`, and `@super`.

In this example, as the viewport increases in size the cells go from 100% wide to 33% wide one after another, rather than all at once. The suffixes apply to the screen sizes **and up**, in a mobile first manner.

```html_example
<div class="l-grid  sg-grid">
	<div class="l-grid__item  1/1  1/3@small">first</div>
	<div class="l-grid__item  1/1  1/3@medium">second</div>
	<div class="l-grid__item  1/1  1/3@large">third</div>
</div>
``` 

### Gutters

`.l-grid--flush` will remove the negative margin on `.l-grid` elements and padding on `.l-grid__item` elements.

```html_example
<div class="l-grid  l-grid--flush  sg-grid">
	<div class="l-grid__item">first</div>
	<div class="l-grid__item">second</div>
	<div class="l-grid__item">third</div>
</div>
``` 

If you simply want to remove the padding on a single item, use `.l-grid__item--flush`.

```html_example
<div class="l-grid  sg-grid">
	<div class="l-grid__item">first</div>
	<div class="l-grid__item">second</div>
	<div class="l-grid__item  l-grid__item--flush">third</div>
</div>
``` 

*/
/*------------------------------------*\
	LOGIC aka THE MAGIC
\*------------------------------------*/
/*------------------------------------*\
    GRID LAYOUT
\*------------------------------------*/
/**
	 * 1. Allow the grid system to be used on lists.
	 * 2. Remove any margins and paddings that might affect the grid system.
	 * 3. Add negative margins to compensate for `.grid__item` padding.
	 */
.l-grid {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  list-style: none;
  /* [1] */
  margin: 0;
  /* [2] */
  margin-left: -1em;
  margin-right: -1em;
  padding: 0;
  /* [2] */ }

/**
	 * Reversed grids allow you to structure your source in the opposite order to
	 * how your rendered layout will appear.
	 * Extends `.l-grid`.
	 */
.l-grid--reverse {
  -ms-flex-direction: row-reverse;
      flex-direction: row-reverse; }

/**
	 * Flush grids have all the properties of regular grids, minus any spacing.
	 * Extends `.l-grid`.
	 */
.l-grid--flush {
  margin-left: 0;
  margin-right: 0; }
  .l-grid--flush > .l-grid__item {
    padding-left: 0;
    padding-right: 0; }

/**
	 * Align grid cells vertically (`.l-grid--bottom` or `.l-grid--middle` or `.l-grid--top`).
	 * Extends `.l-grid`.
	 */
.l-grid--top {
  -ms-flex-align: start;
      align-items: flex-start; }

.l-grid--middle {
  -ms-flex-align: center;
      align-items: center; }

.l-grid--bottom {
  -ms-flex-align: end;
      align-items: flex-end; }

/**
	 * Align grid cells horizontally (`.l-grid--left` or `.l-grid--center` or `.l-grid--right`).
	 * Extends `.l-grid`.
	 */
.l-grid--left {
  -ms-flex-pack: start;
      justify-content: flex-start; }

.l-grid--center {
  -ms-flex-pack: center;
      justify-content: center; }

.l-grid--right {
  -ms-flex-pack: end;
      justify-content: flex-end; }

.l-grid--space-around {
  -ms-flex-pack: distribute;
      justify-content: space-around; }

.l-grid--space-between {
  -ms-flex-pack: justify;
      justify-content: space-between; }

/**
	 * Grid items/cells
	 * 1. Required to combine fluid widths and fixed gutters.
	 * 2. Gutters.
	 */
.l-grid__item {
  box-sizing: border-box;
  /* [1] */
  -ms-flex: 1;
      flex: 1;
  padding-left: 1em;
  /* [2] */
  padding-right: 1em;
  /* [2] */ }

/**
	 * Flush grid itmes have all the properties of regular grid items, minus any spacing.
	 * Extends `.l-grid__item`.
	 */
.l-grid__item--flush {
  padding-left: 0;
  padding-right: 0; }

/**
	 * Grid item vertical alignment per cell.
	 * (`.l-grid__item--bottom` or `.l-grid__item--middle` or `.l-grid__item--top`)
	 * Extends `.l-grid__item`.
	 */
.l-grid__item--top {
  -ms-flex-item-align: start;
      align-self: flex-start; }

.l-grid__item--middle {
  -ms-flex-item-align: center;
      -ms-grid-row-align: center;
      align-self: center; }

.l-grid__item--bottom {
  -ms-flex-item-align: end;
      align-self: flex-end; }

/**
	 * Grid item ordering (`.l-grid__item--first` or `.l-grid__item--last`).
	 * Extends `.l-grid__item`.
	 */
.l-grid__item--first {
  -ms-flex-order: -1;
      order: -1; }

.l-grid__item--last {
  -ms-flex-order: 1;
      order: 1; }

/**
	 * Grid item shrinks to fit content
	 * Extends `.l-grid__item`.
	 *
	.l-grid__item--fit,
	%l-grid__item--fit {
		flex: 1;
	}*/
/**
	 * Grid item expands to fit parent
	 * Extends `.l-grid__item`.
	 */
.l-grid__item--expand {
  -ms-flex: 0 0 100%;
      flex: 0 0 100%;
  max-width: 100%;
  margin-left: 0; }

/**
	 * Grid item shrinks to fit content
	 * Extends `.l-grid__item`.
	 */
.l-grid__item--shrink {
  -ms-flex: 0 1 auto;
      flex: 0 1 auto; }

@media (min-width: 20rem) {
  /**
	 * 1. Allow the grid system to be used on lists.
	 * 2. Remove any margins and paddings that might affect the grid system.
	 * 3. Add negative margins to compensate for `.grid__item` padding.
	 */
  .l-grid\@xsmall {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    list-style: none;
    /* [1] */
    margin: 0;
    /* [2] */
    margin-left: -1em;
    margin-right: -1em;
    padding: 0;
    /* [2] */ }
  /**
	 * Reversed grids allow you to structure your source in the opposite order to
	 * how your rendered layout will appear.
	 * Extends `.l-grid`.
	 */
  .l-grid--reverse\@xsmall {
    -ms-flex-direction: row-reverse;
        flex-direction: row-reverse; }
  /**
	 * Flush grids have all the properties of regular grids, minus any spacing.
	 * Extends `.l-grid`.
	 */
  .l-grid--flush\@xsmall {
    margin-left: 0;
    margin-right: 0; }
    .l-grid--flush\@xsmall > .l-grid__item\@xsmall {
      padding-left: 0;
      padding-right: 0; }
  /**
	 * Align grid cells vertically (`.l-grid--bottom` or `.l-grid--middle` or `.l-grid--top`).
	 * Extends `.l-grid`.
	 */
  .l-grid--top\@xsmall {
    -ms-flex-align: start;
        align-items: flex-start; }
  .l-grid--middle\@xsmall {
    -ms-flex-align: center;
        align-items: center; }
  .l-grid--bottom\@xsmall {
    -ms-flex-align: end;
        align-items: flex-end; }
  /**
	 * Align grid cells horizontally (`.l-grid--left` or `.l-grid--center` or `.l-grid--right`).
	 * Extends `.l-grid`.
	 */
  .l-grid--left\@xsmall {
    -ms-flex-pack: start;
        justify-content: flex-start; }
  .l-grid--center\@xsmall {
    -ms-flex-pack: center;
        justify-content: center; }
  .l-grid--right\@xsmall {
    -ms-flex-pack: end;
        justify-content: flex-end; }
  .l-grid--space-around\@xsmall {
    -ms-flex-pack: distribute;
        justify-content: space-around; }
  .l-grid--space-between\@xsmall {
    -ms-flex-pack: justify;
        justify-content: space-between; }
  /**
	 * Grid items/cells
	 * 1. Required to combine fluid widths and fixed gutters.
	 * 2. Gutters.
	 */
  .l-grid__item\@xsmall {
    box-sizing: border-box;
    /* [1] */
    -ms-flex: 1;
        flex: 1;
    padding-left: 1em;
    /* [2] */
    padding-right: 1em;
    /* [2] */ }
  /**
	 * Flush grid itmes have all the properties of regular grid items, minus any spacing.
	 * Extends `.l-grid__item`.
	 */
  .l-grid__item--flush\@xsmall {
    padding-left: 0;
    padding-right: 0; }
  /**
	 * Grid item vertical alignment per cell.
	 * (`.l-grid__item--bottom` or `.l-grid__item--middle` or `.l-grid__item--top`)
	 * Extends `.l-grid__item`.
	 */
  .l-grid__item--top\@xsmall {
    -ms-flex-item-align: start;
        align-self: flex-start; }
  .l-grid__item--middle\@xsmall {
    -ms-flex-item-align: center;
        -ms-grid-row-align: center;
        align-self: center; }
  .l-grid__item--bottom\@xsmall {
    -ms-flex-item-align: end;
        align-self: flex-end; }
  /**
	 * Grid item ordering (`.l-grid__item--first` or `.l-grid__item--last`).
	 * Extends `.l-grid__item`.
	 */
  .l-grid__item--first\@xsmall {
    -ms-flex-order: -1;
        order: -1; }
  .l-grid__item--last\@xsmall {
    -ms-flex-order: 1;
        order: 1; }
  /**
	 * Grid item shrinks to fit content
	 * Extends `.l-grid__item`.
	 *
	.l-grid__item--fit,
	%l-grid__item--fit {
		flex: 1;
	}*/
  /**
	 * Grid item expands to fit parent
	 * Extends `.l-grid__item`.
	 */
  .l-grid__item--expand\@xsmall {
    -ms-flex: 0 0 100%;
        flex: 0 0 100%;
    max-width: 100%;
    margin-left: 0; }
  /**
	 * Grid item shrinks to fit content
	 * Extends `.l-grid__item`.
	 */
  .l-grid__item--shrink\@xsmall {
    -ms-flex: 0 1 auto;
        flex: 0 1 auto; } }

@media (min-width: 30rem) {
  /**
	 * 1. Allow the grid system to be used on lists.
	 * 2. Remove any margins and paddings that might affect the grid system.
	 * 3. Add negative margins to compensate for `.grid__item` padding.
	 */
  .l-grid\@small {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    list-style: none;
    /* [1] */
    margin: 0;
    /* [2] */
    margin-left: -1em;
    margin-right: -1em;
    padding: 0;
    /* [2] */ }
  /**
	 * Reversed grids allow you to structure your source in the opposite order to
	 * how your rendered layout will appear.
	 * Extends `.l-grid`.
	 */
  .l-grid--reverse\@small {
    -ms-flex-direction: row-reverse;
        flex-direction: row-reverse; }
  /**
	 * Flush grids have all the properties of regular grids, minus any spacing.
	 * Extends `.l-grid`.
	 */
  .l-grid--flush\@small {
    margin-left: 0;
    margin-right: 0; }
    .l-grid--flush\@small > .l-grid__item\@small {
      padding-left: 0;
      padding-right: 0; }
  /**
	 * Align grid cells vertically (`.l-grid--bottom` or `.l-grid--middle` or `.l-grid--top`).
	 * Extends `.l-grid`.
	 */
  .l-grid--top\@small {
    -ms-flex-align: start;
        align-items: flex-start; }
  .l-grid--middle\@small {
    -ms-flex-align: center;
        align-items: center; }
  .l-grid--bottom\@small {
    -ms-flex-align: end;
        align-items: flex-end; }
  /**
	 * Align grid cells horizontally (`.l-grid--left` or `.l-grid--center` or `.l-grid--right`).
	 * Extends `.l-grid`.
	 */
  .l-grid--left\@small {
    -ms-flex-pack: start;
        justify-content: flex-start; }
  .l-grid--center\@small {
    -ms-flex-pack: center;
        justify-content: center; }
  .l-grid--right\@small {
    -ms-flex-pack: end;
        justify-content: flex-end; }
  .l-grid--space-around\@small {
    -ms-flex-pack: distribute;
        justify-content: space-around; }
  .l-grid--space-between\@small {
    -ms-flex-pack: justify;
        justify-content: space-between; }
  /**
	 * Grid items/cells
	 * 1. Required to combine fluid widths and fixed gutters.
	 * 2. Gutters.
	 */
  .l-grid__item\@small {
    box-sizing: border-box;
    /* [1] */
    -ms-flex: 1;
        flex: 1;
    padding-left: 1em;
    /* [2] */
    padding-right: 1em;
    /* [2] */ }
  /**
	 * Flush grid itmes have all the properties of regular grid items, minus any spacing.
	 * Extends `.l-grid__item`.
	 */
  .l-grid__item--flush\@small {
    padding-left: 0;
    padding-right: 0; }
  /**
	 * Grid item vertical alignment per cell.
	 * (`.l-grid__item--bottom` or `.l-grid__item--middle` or `.l-grid__item--top`)
	 * Extends `.l-grid__item`.
	 */
  .l-grid__item--top\@small {
    -ms-flex-item-align: start;
        align-self: flex-start; }
  .l-grid__item--middle\@small {
    -ms-flex-item-align: center;
        -ms-grid-row-align: center;
        align-self: center; }
  .l-grid__item--bottom\@small {
    -ms-flex-item-align: end;
        align-self: flex-end; }
  /**
	 * Grid item ordering (`.l-grid__item--first` or `.l-grid__item--last`).
	 * Extends `.l-grid__item`.
	 */
  .l-grid__item--first\@small {
    -ms-flex-order: -1;
        order: -1; }
  .l-grid__item--last\@small {
    -ms-flex-order: 1;
        order: 1; }
  /**
	 * Grid item shrinks to fit content
	 * Extends `.l-grid__item`.
	 *
	.l-grid__item--fit,
	%l-grid__item--fit {
		flex: 1;
	}*/
  /**
	 * Grid item expands to fit parent
	 * Extends `.l-grid__item`.
	 */
  .l-grid__item--expand\@small {
    -ms-flex: 0 0 100%;
        flex: 0 0 100%;
    max-width: 100%;
    margin-left: 0; }
  /**
	 * Grid item shrinks to fit content
	 * Extends `.l-grid__item`.
	 */
  .l-grid__item--shrink\@small {
    -ms-flex: 0 1 auto;
        flex: 0 1 auto; } }

@media (min-width: 48rem) {
  /**
	 * 1. Allow the grid system to be used on lists.
	 * 2. Remove any margins and paddings that might affect the grid system.
	 * 3. Add negative margins to compensate for `.grid__item` padding.
	 */
  .l-grid\@medium {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    list-style: none;
    /* [1] */
    margin: 0;
    /* [2] */
    margin-left: -1em;
    margin-right: -1em;
    padding: 0;
    /* [2] */ }
  /**
	 * Reversed grids allow you to structure your source in the opposite order to
	 * how your rendered layout will appear.
	 * Extends `.l-grid`.
	 */
  .l-grid--reverse\@medium {
    -ms-flex-direction: row-reverse;
        flex-direction: row-reverse; }
  /**
	 * Flush grids have all the properties of regular grids, minus any spacing.
	 * Extends `.l-grid`.
	 */
  .l-grid--flush\@medium {
    margin-left: 0;
    margin-right: 0; }
    .l-grid--flush\@medium > .l-grid__item\@medium {
      padding-left: 0;
      padding-right: 0; }
  /**
	 * Align grid cells vertically (`.l-grid--bottom` or `.l-grid--middle` or `.l-grid--top`).
	 * Extends `.l-grid`.
	 */
  .l-grid--top\@medium {
    -ms-flex-align: start;
        align-items: flex-start; }
  .l-grid--middle\@medium {
    -ms-flex-align: center;
        align-items: center; }
  .l-grid--bottom\@medium {
    -ms-flex-align: end;
        align-items: flex-end; }
  /**
	 * Align grid cells horizontally (`.l-grid--left` or `.l-grid--center` or `.l-grid--right`).
	 * Extends `.l-grid`.
	 */
  .l-grid--left\@medium {
    -ms-flex-pack: start;
        justify-content: flex-start; }
  .l-grid--center\@medium {
    -ms-flex-pack: center;
        justify-content: center; }
  .l-grid--right\@medium {
    -ms-flex-pack: end;
        justify-content: flex-end; }
  .l-grid--space-around\@medium {
    -ms-flex-pack: distribute;
        justify-content: space-around; }
  .l-grid--space-between\@medium {
    -ms-flex-pack: justify;
        justify-content: space-between; }
  /**
	 * Grid items/cells
	 * 1. Required to combine fluid widths and fixed gutters.
	 * 2. Gutters.
	 */
  .l-grid__item\@medium {
    box-sizing: border-box;
    /* [1] */
    -ms-flex: 1;
        flex: 1;
    padding-left: 1em;
    /* [2] */
    padding-right: 1em;
    /* [2] */ }
  /**
	 * Flush grid itmes have all the properties of regular grid items, minus any spacing.
	 * Extends `.l-grid__item`.
	 */
  .l-grid__item--flush\@medium {
    padding-left: 0;
    padding-right: 0; }
  /**
	 * Grid item vertical alignment per cell.
	 * (`.l-grid__item--bottom` or `.l-grid__item--middle` or `.l-grid__item--top`)
	 * Extends `.l-grid__item`.
	 */
  .l-grid__item--top\@medium {
    -ms-flex-item-align: start;
        align-self: flex-start; }
  .l-grid__item--middle\@medium {
    -ms-flex-item-align: center;
        -ms-grid-row-align: center;
        align-self: center; }
  .l-grid__item--bottom\@medium {
    -ms-flex-item-align: end;
        align-self: flex-end; }
  /**
	 * Grid item ordering (`.l-grid__item--first` or `.l-grid__item--last`).
	 * Extends `.l-grid__item`.
	 */
  .l-grid__item--first\@medium {
    -ms-flex-order: -1;
        order: -1; }
  .l-grid__item--last\@medium {
    -ms-flex-order: 1;
        order: 1; }
  /**
	 * Grid item shrinks to fit content
	 * Extends `.l-grid__item`.
	 *
	.l-grid__item--fit,
	%l-grid__item--fit {
		flex: 1;
	}*/
  /**
	 * Grid item expands to fit parent
	 * Extends `.l-grid__item`.
	 */
  .l-grid__item--expand\@medium {
    -ms-flex: 0 0 100%;
        flex: 0 0 100%;
    max-width: 100%;
    margin-left: 0; }
  /**
	 * Grid item shrinks to fit content
	 * Extends `.l-grid__item`.
	 */
  .l-grid__item--shrink\@medium {
    -ms-flex: 0 1 auto;
        flex: 0 1 auto; } }

@media (min-width: 64rem) {
  /**
	 * 1. Allow the grid system to be used on lists.
	 * 2. Remove any margins and paddings that might affect the grid system.
	 * 3. Add negative margins to compensate for `.grid__item` padding.
	 */
  .l-grid\@large {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    list-style: none;
    /* [1] */
    margin: 0;
    /* [2] */
    margin-left: -1em;
    margin-right: -1em;
    padding: 0;
    /* [2] */ }
  /**
	 * Reversed grids allow you to structure your source in the opposite order to
	 * how your rendered layout will appear.
	 * Extends `.l-grid`.
	 */
  .l-grid--reverse\@large {
    -ms-flex-direction: row-reverse;
        flex-direction: row-reverse; }
  /**
	 * Flush grids have all the properties of regular grids, minus any spacing.
	 * Extends `.l-grid`.
	 */
  .l-grid--flush\@large {
    margin-left: 0;
    margin-right: 0; }
    .l-grid--flush\@large > .l-grid__item\@large {
      padding-left: 0;
      padding-right: 0; }
  /**
	 * Align grid cells vertically (`.l-grid--bottom` or `.l-grid--middle` or `.l-grid--top`).
	 * Extends `.l-grid`.
	 */
  .l-grid--top\@large {
    -ms-flex-align: start;
        align-items: flex-start; }
  .l-grid--middle\@large {
    -ms-flex-align: center;
        align-items: center; }
  .l-grid--bottom\@large {
    -ms-flex-align: end;
        align-items: flex-end; }
  /**
	 * Align grid cells horizontally (`.l-grid--left` or `.l-grid--center` or `.l-grid--right`).
	 * Extends `.l-grid`.
	 */
  .l-grid--left\@large {
    -ms-flex-pack: start;
        justify-content: flex-start; }
  .l-grid--center\@large {
    -ms-flex-pack: center;
        justify-content: center; }
  .l-grid--right\@large {
    -ms-flex-pack: end;
        justify-content: flex-end; }
  .l-grid--space-around\@large {
    -ms-flex-pack: distribute;
        justify-content: space-around; }
  .l-grid--space-between\@large {
    -ms-flex-pack: justify;
        justify-content: space-between; }
  /**
	 * Grid items/cells
	 * 1. Required to combine fluid widths and fixed gutters.
	 * 2. Gutters.
	 */
  .l-grid__item\@large {
    box-sizing: border-box;
    /* [1] */
    -ms-flex: 1;
        flex: 1;
    padding-left: 1em;
    /* [2] */
    padding-right: 1em;
    /* [2] */ }
  /**
	 * Flush grid itmes have all the properties of regular grid items, minus any spacing.
	 * Extends `.l-grid__item`.
	 */
  .l-grid__item--flush\@large {
    padding-left: 0;
    padding-right: 0; }
  /**
	 * Grid item vertical alignment per cell.
	 * (`.l-grid__item--bottom` or `.l-grid__item--middle` or `.l-grid__item--top`)
	 * Extends `.l-grid__item`.
	 */
  .l-grid__item--top\@large {
    -ms-flex-item-align: start;
        align-self: flex-start; }
  .l-grid__item--middle\@large {
    -ms-flex-item-align: center;
        -ms-grid-row-align: center;
        align-self: center; }
  .l-grid__item--bottom\@large {
    -ms-flex-item-align: end;
        align-self: flex-end; }
  /**
	 * Grid item ordering (`.l-grid__item--first` or `.l-grid__item--last`).
	 * Extends `.l-grid__item`.
	 */
  .l-grid__item--first\@large {
    -ms-flex-order: -1;
        order: -1; }
  .l-grid__item--last\@large {
    -ms-flex-order: 1;
        order: 1; }
  /**
	 * Grid item shrinks to fit content
	 * Extends `.l-grid__item`.
	 *
	.l-grid__item--fit,
	%l-grid__item--fit {
		flex: 1;
	}*/
  /**
	 * Grid item expands to fit parent
	 * Extends `.l-grid__item`.
	 */
  .l-grid__item--expand\@large {
    -ms-flex: 0 0 100%;
        flex: 0 0 100%;
    max-width: 100%;
    margin-left: 0; }
  /**
	 * Grid item shrinks to fit content
	 * Extends `.l-grid__item`.
	 */
  .l-grid__item--shrink\@large {
    -ms-flex: 0 1 auto;
        flex: 0 1 auto; } }

@media (min-width: 78rem) {
  /**
	 * 1. Allow the grid system to be used on lists.
	 * 2. Remove any margins and paddings that might affect the grid system.
	 * 3. Add negative margins to compensate for `.grid__item` padding.
	 */
  .l-grid\@xlarge {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    list-style: none;
    /* [1] */
    margin: 0;
    /* [2] */
    margin-left: -1em;
    margin-right: -1em;
    padding: 0;
    /* [2] */ }
  /**
	 * Reversed grids allow you to structure your source in the opposite order to
	 * how your rendered layout will appear.
	 * Extends `.l-grid`.
	 */
  .l-grid--reverse\@xlarge {
    -ms-flex-direction: row-reverse;
        flex-direction: row-reverse; }
  /**
	 * Flush grids have all the properties of regular grids, minus any spacing.
	 * Extends `.l-grid`.
	 */
  .l-grid--flush\@xlarge {
    margin-left: 0;
    margin-right: 0; }
    .l-grid--flush\@xlarge > .l-grid__item\@xlarge {
      padding-left: 0;
      padding-right: 0; }
  /**
	 * Align grid cells vertically (`.l-grid--bottom` or `.l-grid--middle` or `.l-grid--top`).
	 * Extends `.l-grid`.
	 */
  .l-grid--top\@xlarge {
    -ms-flex-align: start;
        align-items: flex-start; }
  .l-grid--middle\@xlarge {
    -ms-flex-align: center;
        align-items: center; }
  .l-grid--bottom\@xlarge {
    -ms-flex-align: end;
        align-items: flex-end; }
  /**
	 * Align grid cells horizontally (`.l-grid--left` or `.l-grid--center` or `.l-grid--right`).
	 * Extends `.l-grid`.
	 */
  .l-grid--left\@xlarge {
    -ms-flex-pack: start;
        justify-content: flex-start; }
  .l-grid--center\@xlarge {
    -ms-flex-pack: center;
        justify-content: center; }
  .l-grid--right\@xlarge {
    -ms-flex-pack: end;
        justify-content: flex-end; }
  .l-grid--space-around\@xlarge {
    -ms-flex-pack: distribute;
        justify-content: space-around; }
  .l-grid--space-between\@xlarge {
    -ms-flex-pack: justify;
        justify-content: space-between; }
  /**
	 * Grid items/cells
	 * 1. Required to combine fluid widths and fixed gutters.
	 * 2. Gutters.
	 */
  .l-grid__item\@xlarge {
    box-sizing: border-box;
    /* [1] */
    -ms-flex: 1;
        flex: 1;
    padding-left: 1em;
    /* [2] */
    padding-right: 1em;
    /* [2] */ }
  /**
	 * Flush grid itmes have all the properties of regular grid items, minus any spacing.
	 * Extends `.l-grid__item`.
	 */
  .l-grid__item--flush\@xlarge {
    padding-left: 0;
    padding-right: 0; }
  /**
	 * Grid item vertical alignment per cell.
	 * (`.l-grid__item--bottom` or `.l-grid__item--middle` or `.l-grid__item--top`)
	 * Extends `.l-grid__item`.
	 */
  .l-grid__item--top\@xlarge {
    -ms-flex-item-align: start;
        align-self: flex-start; }
  .l-grid__item--middle\@xlarge {
    -ms-flex-item-align: center;
        -ms-grid-row-align: center;
        align-self: center; }
  .l-grid__item--bottom\@xlarge {
    -ms-flex-item-align: end;
        align-self: flex-end; }
  /**
	 * Grid item ordering (`.l-grid__item--first` or `.l-grid__item--last`).
	 * Extends `.l-grid__item`.
	 */
  .l-grid__item--first\@xlarge {
    -ms-flex-order: -1;
        order: -1; }
  .l-grid__item--last\@xlarge {
    -ms-flex-order: 1;
        order: 1; }
  /**
	 * Grid item shrinks to fit content
	 * Extends `.l-grid__item`.
	 *
	.l-grid__item--fit,
	%l-grid__item--fit {
		flex: 1;
	}*/
  /**
	 * Grid item expands to fit parent
	 * Extends `.l-grid__item`.
	 */
  .l-grid__item--expand\@xlarge {
    -ms-flex: 0 0 100%;
        flex: 0 0 100%;
    max-width: 100%;
    margin-left: 0; }
  /**
	 * Grid item shrinks to fit content
	 * Extends `.l-grid__item`.
	 */
  .l-grid__item--shrink\@xlarge {
    -ms-flex: 0 1 auto;
        flex: 0 1 auto; } }

@media (min-width: 125rem) {
  /**
	 * 1. Allow the grid system to be used on lists.
	 * 2. Remove any margins and paddings that might affect the grid system.
	 * 3. Add negative margins to compensate for `.grid__item` padding.
	 */
  .l-grid\@super {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    list-style: none;
    /* [1] */
    margin: 0;
    /* [2] */
    margin-left: -1em;
    margin-right: -1em;
    padding: 0;
    /* [2] */ }
  /**
	 * Reversed grids allow you to structure your source in the opposite order to
	 * how your rendered layout will appear.
	 * Extends `.l-grid`.
	 */
  .l-grid--reverse\@super {
    -ms-flex-direction: row-reverse;
        flex-direction: row-reverse; }
  /**
	 * Flush grids have all the properties of regular grids, minus any spacing.
	 * Extends `.l-grid`.
	 */
  .l-grid--flush\@super {
    margin-left: 0;
    margin-right: 0; }
    .l-grid--flush\@super > .l-grid__item\@super {
      padding-left: 0;
      padding-right: 0; }
  /**
	 * Align grid cells vertically (`.l-grid--bottom` or `.l-grid--middle` or `.l-grid--top`).
	 * Extends `.l-grid`.
	 */
  .l-grid--top\@super {
    -ms-flex-align: start;
        align-items: flex-start; }
  .l-grid--middle\@super {
    -ms-flex-align: center;
        align-items: center; }
  .l-grid--bottom\@super {
    -ms-flex-align: end;
        align-items: flex-end; }
  /**
	 * Align grid cells horizontally (`.l-grid--left` or `.l-grid--center` or `.l-grid--right`).
	 * Extends `.l-grid`.
	 */
  .l-grid--left\@super {
    -ms-flex-pack: start;
        justify-content: flex-start; }
  .l-grid--center\@super {
    -ms-flex-pack: center;
        justify-content: center; }
  .l-grid--right\@super {
    -ms-flex-pack: end;
        justify-content: flex-end; }
  .l-grid--space-around\@super {
    -ms-flex-pack: distribute;
        justify-content: space-around; }
  .l-grid--space-between\@super {
    -ms-flex-pack: justify;
        justify-content: space-between; }
  /**
	 * Grid items/cells
	 * 1. Required to combine fluid widths and fixed gutters.
	 * 2. Gutters.
	 */
  .l-grid__item\@super {
    box-sizing: border-box;
    /* [1] */
    -ms-flex: 1;
        flex: 1;
    padding-left: 1em;
    /* [2] */
    padding-right: 1em;
    /* [2] */ }
  /**
	 * Flush grid itmes have all the properties of regular grid items, minus any spacing.
	 * Extends `.l-grid__item`.
	 */
  .l-grid__item--flush\@super {
    padding-left: 0;
    padding-right: 0; }
  /**
	 * Grid item vertical alignment per cell.
	 * (`.l-grid__item--bottom` or `.l-grid__item--middle` or `.l-grid__item--top`)
	 * Extends `.l-grid__item`.
	 */
  .l-grid__item--top\@super {
    -ms-flex-item-align: start;
        align-self: flex-start; }
  .l-grid__item--middle\@super {
    -ms-flex-item-align: center;
        -ms-grid-row-align: center;
        align-self: center; }
  .l-grid__item--bottom\@super {
    -ms-flex-item-align: end;
        align-self: flex-end; }
  /**
	 * Grid item ordering (`.l-grid__item--first` or `.l-grid__item--last`).
	 * Extends `.l-grid__item`.
	 */
  .l-grid__item--first\@super {
    -ms-flex-order: -1;
        order: -1; }
  .l-grid__item--last\@super {
    -ms-flex-order: 1;
        order: 1; }
  /**
	 * Grid item shrinks to fit content
	 * Extends `.l-grid__item`.
	 *
	.l-grid__item--fit,
	%l-grid__item--fit {
		flex: 1;
	}*/
  /**
	 * Grid item expands to fit parent
	 * Extends `.l-grid__item`.
	 */
  .l-grid__item--expand\@super {
    -ms-flex: 0 0 100%;
        flex: 0 0 100%;
    max-width: 100%;
    margin-left: 0; }
  /**
	 * Grid item shrinks to fit content
	 * Extends `.l-grid__item`.
	 */
  .l-grid__item--shrink\@super {
    -ms-flex: 0 1 auto;
        flex: 0 1 auto; } }

/*------------------------------------*\
    GRID WIDTHS
\*------------------------------------*/
.\31\/1 {
  -ms-flex: 0 0 100%;
      flex: 0 0 100%;
  max-width: 100%; }

.\31\/2, .\32\/4, .\36\/12 {
  -ms-flex: 0 0 50%;
      flex: 0 0 50%;
  max-width: 50%; }

.\31\/3, .\34\/12 {
  -ms-flex: 0 0 33.33333%;
      flex: 0 0 33.33333%;
  max-width: 33.33333%; }

.\32\/3, .\38\/12 {
  -ms-flex: 0 0 66.66667%;
      flex: 0 0 66.66667%;
  max-width: 66.66667%; }

.\31\/4, .\33\/12 {
  -ms-flex: 0 0 25%;
      flex: 0 0 25%;
  max-width: 25%; }

.\33\/4, .\39\/12 {
  -ms-flex: 0 0 75%;
      flex: 0 0 75%;
  max-width: 75%; }

.\31\/5 {
  -ms-flex: 0 0 20%;
      flex: 0 0 20%;
  max-width: 20%; }

.\32\/5 {
  -ms-flex: 0 0 40%;
      flex: 0 0 40%;
  max-width: 40%; }

.\33\/5 {
  -ms-flex: 0 0 60%;
      flex: 0 0 60%;
  max-width: 60%; }

.\34\/5 {
  -ms-flex: 0 0 80%;
      flex: 0 0 80%;
  max-width: 80%; }

.\31\/12 {
  -ms-flex: 0 0 8.33333%;
      flex: 0 0 8.33333%;
  max-width: 8.33333%; }

.\32\/12 {
  -ms-flex: 0 0 16.66667%;
      flex: 0 0 16.66667%;
  max-width: 16.66667%; }

.\35\/12 {
  -ms-flex: 0 0 41.66667%;
      flex: 0 0 41.66667%;
  max-width: 41.66667%; }

.\37\/12 {
  -ms-flex: 0 0 58.33333%;
      flex: 0 0 58.33333%;
  max-width: 58.33333%; }

.\31\30\/12 {
  -ms-flex: 0 0 83.33333%;
      flex: 0 0 83.33333%;
  max-width: 83.33333%; }

.\31\31\/12 {
  -ms-flex: 0 0 91.66667%;
      flex: 0 0 91.66667%;
  max-width: 91.66667%; }

@media (min-width: 20rem) {
  .\31\/1\@xsmall {
    -ms-flex: 0 0 100%;
        flex: 0 0 100%;
    max-width: 100%; }
  .\31\/2\@xsmall, .\32\/4\@xsmall, .\36\/12\@xsmall {
    -ms-flex: 0 0 50%;
        flex: 0 0 50%;
    max-width: 50%; }
  .\31\/3\@xsmall, .\34\/12\@xsmall {
    -ms-flex: 0 0 33.33333%;
        flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .\32\/3\@xsmall, .\38\/12\@xsmall {
    -ms-flex: 0 0 66.66667%;
        flex: 0 0 66.66667%;
    max-width: 66.66667%; }
  .\31\/4\@xsmall, .\33\/12\@xsmall {
    -ms-flex: 0 0 25%;
        flex: 0 0 25%;
    max-width: 25%; }
  .\33\/4\@xsmall, .\39\/12\@xsmall {
    -ms-flex: 0 0 75%;
        flex: 0 0 75%;
    max-width: 75%; }
  .\31\/5\@xsmall {
    -ms-flex: 0 0 20%;
        flex: 0 0 20%;
    max-width: 20%; }
  .\32\/5\@xsmall {
    -ms-flex: 0 0 40%;
        flex: 0 0 40%;
    max-width: 40%; }
  .\33\/5\@xsmall {
    -ms-flex: 0 0 60%;
        flex: 0 0 60%;
    max-width: 60%; }
  .\34\/5\@xsmall {
    -ms-flex: 0 0 80%;
        flex: 0 0 80%;
    max-width: 80%; }
  .\31\/12\@xsmall {
    -ms-flex: 0 0 8.33333%;
        flex: 0 0 8.33333%;
    max-width: 8.33333%; }
  .\32\/12\@xsmall {
    -ms-flex: 0 0 16.66667%;
        flex: 0 0 16.66667%;
    max-width: 16.66667%; }
  .\35\/12\@xsmall {
    -ms-flex: 0 0 41.66667%;
        flex: 0 0 41.66667%;
    max-width: 41.66667%; }
  .\37\/12\@xsmall {
    -ms-flex: 0 0 58.33333%;
        flex: 0 0 58.33333%;
    max-width: 58.33333%; }
  .\31\30\/12\@xsmall {
    -ms-flex: 0 0 83.33333%;
        flex: 0 0 83.33333%;
    max-width: 83.33333%; }
  .\31\31\/12\@xsmall {
    -ms-flex: 0 0 91.66667%;
        flex: 0 0 91.66667%;
    max-width: 91.66667%; } }

@media (min-width: 30rem) {
  .\31\/1\@small {
    -ms-flex: 0 0 100%;
        flex: 0 0 100%;
    max-width: 100%; }
  .\31\/2\@small, .\32\/4\@small, .\36\/12\@small {
    -ms-flex: 0 0 50%;
        flex: 0 0 50%;
    max-width: 50%; }
  .\31\/3\@small, .\34\/12\@small {
    -ms-flex: 0 0 33.33333%;
        flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .\32\/3\@small, .\38\/12\@small {
    -ms-flex: 0 0 66.66667%;
        flex: 0 0 66.66667%;
    max-width: 66.66667%; }
  .\31\/4\@small, .\33\/12\@small {
    -ms-flex: 0 0 25%;
        flex: 0 0 25%;
    max-width: 25%; }
  .\33\/4\@small, .\39\/12\@small {
    -ms-flex: 0 0 75%;
        flex: 0 0 75%;
    max-width: 75%; }
  .\31\/5\@small {
    -ms-flex: 0 0 20%;
        flex: 0 0 20%;
    max-width: 20%; }
  .\32\/5\@small {
    -ms-flex: 0 0 40%;
        flex: 0 0 40%;
    max-width: 40%; }
  .\33\/5\@small {
    -ms-flex: 0 0 60%;
        flex: 0 0 60%;
    max-width: 60%; }
  .\34\/5\@small {
    -ms-flex: 0 0 80%;
        flex: 0 0 80%;
    max-width: 80%; }
  .\31\/12\@small {
    -ms-flex: 0 0 8.33333%;
        flex: 0 0 8.33333%;
    max-width: 8.33333%; }
  .\32\/12\@small {
    -ms-flex: 0 0 16.66667%;
        flex: 0 0 16.66667%;
    max-width: 16.66667%; }
  .\35\/12\@small {
    -ms-flex: 0 0 41.66667%;
        flex: 0 0 41.66667%;
    max-width: 41.66667%; }
  .\37\/12\@small {
    -ms-flex: 0 0 58.33333%;
        flex: 0 0 58.33333%;
    max-width: 58.33333%; }
  .\31\30\/12\@small {
    -ms-flex: 0 0 83.33333%;
        flex: 0 0 83.33333%;
    max-width: 83.33333%; }
  .\31\31\/12\@small {
    -ms-flex: 0 0 91.66667%;
        flex: 0 0 91.66667%;
    max-width: 91.66667%; } }

@media (min-width: 48rem) {
  .\31\/1\@medium {
    -ms-flex: 0 0 100%;
        flex: 0 0 100%;
    max-width: 100%; }
  .\31\/2\@medium, .\32\/4\@medium, .\36\/12\@medium {
    -ms-flex: 0 0 50%;
        flex: 0 0 50%;
    max-width: 50%; }
  .\31\/3\@medium, .\34\/12\@medium {
    -ms-flex: 0 0 33.33333%;
        flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .\32\/3\@medium, .\38\/12\@medium {
    -ms-flex: 0 0 66.66667%;
        flex: 0 0 66.66667%;
    max-width: 66.66667%; }
  .\31\/4\@medium, .\33\/12\@medium {
    -ms-flex: 0 0 25%;
        flex: 0 0 25%;
    max-width: 25%; }
  .\33\/4\@medium, .\39\/12\@medium {
    -ms-flex: 0 0 75%;
        flex: 0 0 75%;
    max-width: 75%; }
  .\31\/5\@medium {
    -ms-flex: 0 0 20%;
        flex: 0 0 20%;
    max-width: 20%; }
  .\32\/5\@medium {
    -ms-flex: 0 0 40%;
        flex: 0 0 40%;
    max-width: 40%; }
  .\33\/5\@medium {
    -ms-flex: 0 0 60%;
        flex: 0 0 60%;
    max-width: 60%; }
  .\34\/5\@medium {
    -ms-flex: 0 0 80%;
        flex: 0 0 80%;
    max-width: 80%; }
  .\31\/12\@medium {
    -ms-flex: 0 0 8.33333%;
        flex: 0 0 8.33333%;
    max-width: 8.33333%; }
  .\32\/12\@medium {
    -ms-flex: 0 0 16.66667%;
        flex: 0 0 16.66667%;
    max-width: 16.66667%; }
  .\35\/12\@medium {
    -ms-flex: 0 0 41.66667%;
        flex: 0 0 41.66667%;
    max-width: 41.66667%; }
  .\37\/12\@medium {
    -ms-flex: 0 0 58.33333%;
        flex: 0 0 58.33333%;
    max-width: 58.33333%; }
  .\31\30\/12\@medium {
    -ms-flex: 0 0 83.33333%;
        flex: 0 0 83.33333%;
    max-width: 83.33333%; }
  .\31\31\/12\@medium {
    -ms-flex: 0 0 91.66667%;
        flex: 0 0 91.66667%;
    max-width: 91.66667%; } }

@media (min-width: 64rem) {
  .\31\/1\@large {
    -ms-flex: 0 0 100%;
        flex: 0 0 100%;
    max-width: 100%; }
  .\31\/2\@large, .\32\/4\@large, .\36\/12\@large {
    -ms-flex: 0 0 50%;
        flex: 0 0 50%;
    max-width: 50%; }
  .\31\/3\@large, .\34\/12\@large {
    -ms-flex: 0 0 33.33333%;
        flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .\32\/3\@large, .\38\/12\@large {
    -ms-flex: 0 0 66.66667%;
        flex: 0 0 66.66667%;
    max-width: 66.66667%; }
  .\31\/4\@large, .\33\/12\@large {
    -ms-flex: 0 0 25%;
        flex: 0 0 25%;
    max-width: 25%; }
  .\33\/4\@large, .\39\/12\@large {
    -ms-flex: 0 0 75%;
        flex: 0 0 75%;
    max-width: 75%; }
  .\31\/5\@large {
    -ms-flex: 0 0 20%;
        flex: 0 0 20%;
    max-width: 20%; }
  .\32\/5\@large {
    -ms-flex: 0 0 40%;
        flex: 0 0 40%;
    max-width: 40%; }
  .\33\/5\@large {
    -ms-flex: 0 0 60%;
        flex: 0 0 60%;
    max-width: 60%; }
  .\34\/5\@large {
    -ms-flex: 0 0 80%;
        flex: 0 0 80%;
    max-width: 80%; }
  .\31\/12\@large {
    -ms-flex: 0 0 8.33333%;
        flex: 0 0 8.33333%;
    max-width: 8.33333%; }
  .\32\/12\@large {
    -ms-flex: 0 0 16.66667%;
        flex: 0 0 16.66667%;
    max-width: 16.66667%; }
  .\35\/12\@large {
    -ms-flex: 0 0 41.66667%;
        flex: 0 0 41.66667%;
    max-width: 41.66667%; }
  .\37\/12\@large {
    -ms-flex: 0 0 58.33333%;
        flex: 0 0 58.33333%;
    max-width: 58.33333%; }
  .\31\30\/12\@large {
    -ms-flex: 0 0 83.33333%;
        flex: 0 0 83.33333%;
    max-width: 83.33333%; }
  .\31\31\/12\@large {
    -ms-flex: 0 0 91.66667%;
        flex: 0 0 91.66667%;
    max-width: 91.66667%; } }

@media (min-width: 78rem) {
  .\31\/1\@xlarge {
    -ms-flex: 0 0 100%;
        flex: 0 0 100%;
    max-width: 100%; }
  .\31\/2\@xlarge, .\32\/4\@xlarge, .\36\/12\@xlarge {
    -ms-flex: 0 0 50%;
        flex: 0 0 50%;
    max-width: 50%; }
  .\31\/3\@xlarge, .\34\/12\@xlarge {
    -ms-flex: 0 0 33.33333%;
        flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .\32\/3\@xlarge, .\38\/12\@xlarge {
    -ms-flex: 0 0 66.66667%;
        flex: 0 0 66.66667%;
    max-width: 66.66667%; }
  .\31\/4\@xlarge, .\33\/12\@xlarge {
    -ms-flex: 0 0 25%;
        flex: 0 0 25%;
    max-width: 25%; }
  .\33\/4\@xlarge, .\39\/12\@xlarge {
    -ms-flex: 0 0 75%;
        flex: 0 0 75%;
    max-width: 75%; }
  .\31\/5\@xlarge {
    -ms-flex: 0 0 20%;
        flex: 0 0 20%;
    max-width: 20%; }
  .\32\/5\@xlarge {
    -ms-flex: 0 0 40%;
        flex: 0 0 40%;
    max-width: 40%; }
  .\33\/5\@xlarge {
    -ms-flex: 0 0 60%;
        flex: 0 0 60%;
    max-width: 60%; }
  .\34\/5\@xlarge {
    -ms-flex: 0 0 80%;
        flex: 0 0 80%;
    max-width: 80%; }
  .\31\/12\@xlarge {
    -ms-flex: 0 0 8.33333%;
        flex: 0 0 8.33333%;
    max-width: 8.33333%; }
  .\32\/12\@xlarge {
    -ms-flex: 0 0 16.66667%;
        flex: 0 0 16.66667%;
    max-width: 16.66667%; }
  .\35\/12\@xlarge {
    -ms-flex: 0 0 41.66667%;
        flex: 0 0 41.66667%;
    max-width: 41.66667%; }
  .\37\/12\@xlarge {
    -ms-flex: 0 0 58.33333%;
        flex: 0 0 58.33333%;
    max-width: 58.33333%; }
  .\31\30\/12\@xlarge {
    -ms-flex: 0 0 83.33333%;
        flex: 0 0 83.33333%;
    max-width: 83.33333%; }
  .\31\31\/12\@xlarge {
    -ms-flex: 0 0 91.66667%;
        flex: 0 0 91.66667%;
    max-width: 91.66667%; } }

@media (min-width: 125rem) {
  .\31\/1\@super {
    -ms-flex: 0 0 100%;
        flex: 0 0 100%;
    max-width: 100%; }
  .\31\/2\@super, .\32\/4\@super, .\36\/12\@super {
    -ms-flex: 0 0 50%;
        flex: 0 0 50%;
    max-width: 50%; }
  .\31\/3\@super, .\34\/12\@super {
    -ms-flex: 0 0 33.33333%;
        flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .\32\/3\@super, .\38\/12\@super {
    -ms-flex: 0 0 66.66667%;
        flex: 0 0 66.66667%;
    max-width: 66.66667%; }
  .\31\/4\@super, .\33\/12\@super {
    -ms-flex: 0 0 25%;
        flex: 0 0 25%;
    max-width: 25%; }
  .\33\/4\@super, .\39\/12\@super {
    -ms-flex: 0 0 75%;
        flex: 0 0 75%;
    max-width: 75%; }
  .\31\/5\@super {
    -ms-flex: 0 0 20%;
        flex: 0 0 20%;
    max-width: 20%; }
  .\32\/5\@super {
    -ms-flex: 0 0 40%;
        flex: 0 0 40%;
    max-width: 40%; }
  .\33\/5\@super {
    -ms-flex: 0 0 60%;
        flex: 0 0 60%;
    max-width: 60%; }
  .\34\/5\@super {
    -ms-flex: 0 0 80%;
        flex: 0 0 80%;
    max-width: 80%; }
  .\31\/12\@super {
    -ms-flex: 0 0 8.33333%;
        flex: 0 0 8.33333%;
    max-width: 8.33333%; }
  .\32\/12\@super {
    -ms-flex: 0 0 16.66667%;
        flex: 0 0 16.66667%;
    max-width: 16.66667%; }
  .\35\/12\@super {
    -ms-flex: 0 0 41.66667%;
        flex: 0 0 41.66667%;
    max-width: 41.66667%; }
  .\37\/12\@super {
    -ms-flex: 0 0 58.33333%;
        flex: 0 0 58.33333%;
    max-width: 58.33333%; }
  .\31\30\/12\@super {
    -ms-flex: 0 0 83.33333%;
        flex: 0 0 83.33333%;
    max-width: 83.33333%; }
  .\31\31\/12\@super {
    -ms-flex: 0 0 91.66667%;
        flex: 0 0 91.66667%;
    max-width: 91.66667%; } }

.l-html--no-scroll {
  overflow: hidden; }

.l-side-sticky {
  margin: 0 0 0 -.75em; }

.l-side-sticky .a-button {
  margin-right: .75em; }

.l-side-sticky .m-callout__button {
  display: inline-block; }

.l-side-sticky__icon {
  height: 1em;
  position: relative;
  top: .125em;
  transform: scale(1.35);
  width: 1em; }

@media (min-width: 48rem) {
  .l-side-sticky {
    margin: -.75em 0 0 0;
    position: fixed;
    right: 0;
    top: 50%;
    transform: rotate(270deg) translate(50%, 0);
    transform-origin: bottom right;
    z-index: 600; }
  .l-side-sticky .a-button {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0; }
  .l-side-sticky__icon {
    transform: scale(1.25) rotate(90deg); } }

/**
 * Target IE 10 and IE 11
 * Have to remove because this is causing problems with billboard
 *
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
	.l-html--sticky-footer, 
	.l-body--sticky-footer {
		height: 100%;
	}
}*/
/**
* 1. Making the <body> element behave like a flexbox container.
* 2. Making flex children line up vertically (horizontal is default)
* 3. Setting the min-height to 100% of the viewport height.
*/
.l-body--sticky-footer {
  display: -ms-flexbox;
  display: flex;
  /* [1] */
  -ms-flex-direction: column;
      flex-direction: column;
  /* [2] */
  min-height: 100vh;
  /* [3] */ }

.l-main--sticky-footer {
  -ms-flex: 1 0 auto;
      flex: 1 0 auto; }

/*doc
---
title: Billboards
name: billboards
category: Organisms
---

Billboards are the primary banner area used to display page titles, high-quality imagery, breadcrumbs, phone numbers, and appointment scheduling buttons. There are two billboard styles: gradient billboards and image billboards. Gradient billboards are used on most non-major pages. Image billboards are used on major pages such as the homepage and service line landing pages.

Billboard content is wrapped in the `o-billboard__content` element. This element should contain three children, `o-billboard__header`, `o-billboard__body`, and `o-billboard__footer`. These elements control where the content will be aligned vertically. Content in the `o-billboard__header` element will be aligned at the top. Content in the `o-billboard__body` element will be aligned in the middle. Content in the `o-billboard__footer` element will be aligned at the bottom.

### Gradient Billboards

Gradient billboards have a gentle grey gradient behind them. These billboards also contain breadcrumbs, unlike image billboards.

Note: The billboard's width is constrained in the style guide. The code provided will stretch much wider on production sites. Also, the JavaScript class that causes the 'Schedule Appointment' button to stick to right side as a user scrolls has been removed in this example.

```html_example
<header class="o-billboard  o-billboard--bg-gradient  l-container  l-container--super  l-container--flush" role="banner">
	<div class="o-billboard__content">
		<div class="o-billboard__header"></div>
		<div class="o-billboard__body"></div>
		<div class="o-billboard__footer  u-space-top--medium  u-space-top--xlarge@medium  u-space-bottom--super@medium">
			<div class="l-container  l-container--xlarge">
				<div class="l-grid  l-grid--middle">
					<div class="l-grid__item  1/1  7/12@medium">
						<div class="o-billboard__heading-container">
							<ol class="m-breadcrumbs">
								<li class="m-breadcrumbs__crumb"><a class="a-link" href="#">Home</a></li>
								<li class="m-breadcrumbs__crumb"><a class="a-link" href="#">Sub-Page</a></li>
							</ol>
							<h1 class="o-billboard__heading  u-no-space">Page Title</h1>
						</div>
					</div>
					<div class="l-grid__item  1/1  5/12@medium">
						<div class="m-callout">
							<a class="m-callout__phone" href="tel:1-801-555-5555">(801) 555-5555</a>
							<a class="m-callout__button" href="#">Schedule an Appointment</a>
						</div>
					</div>
				</div>
			</div>
		</div>
	</div>
</header>
```

### Image Billboards

Unlike the gradient billboards, image billboards have a size modifier. Typically this will be `o-billboard--medium`. This gives the billboard a minimum and maximum height. Size modifiers include `o-billboard--xsmall`, `o-billboard--small`, `o-billboard--medium`, `o-billboard--large`, `o-billboard--xlarge`, and `o-billboard--super`. The largest size, `o-billboard--super`, is currently only used on the homepage. This billboard will fill the entire viewport height.

The way images are marked up is a bit tricky. Notice the image is set as both a background image on the `o-billboard__image-wrapper` container and also an inline image within. The inline image is set to be transparent. This image is only there to force the container to be the right size.

When selecting images for image billboards, it's best to use images with dark colors in the bottom left to allow enough contrast for the white heading text to appear clearly.

Note: The billboard's width is constrained in the style guide. The code provided will stretch much wider on production sites. Also, the JavaScript class that causes the 'Schedule Appointment' button to stick to right side as a user scrolls has been removed in this example.

```html_example
<header class="o-billboard  o-billboard--bg-image  o-billboard--medium  l-container  l-container--super  l-container--flush" role="banner">
	<div class="o-billboard__image-wrapper  o-billboard__image-wrapper--gradient" style="background-image:url('https://placehold.it/1600x900');">
		<img class="o-billboard__image" src="https://placehold.it/1600x900" alt="placeholder" style="opacity:0;" />
	</div>
	<div class="o-billboard__content">
		<div class="o-billboard__header"></div>
		<div class="o-billboard__body"></div>
		<div class="o-billboard__footer  u-space-bottom--xlarge@medium">
			<div class="l-container  l-container--xlarge">
				<div class="l-grid  l-grid--bottom">
					<div class="l-grid__item  1/1  7/12@medium  o-billboard__heading-container">
						<h1 class="o-billboard__heading  o-billboard__heading--white  u-no-space">Page Title</h1>
					</div>
					<div class="l-grid__item  1/1  5/12@medium">
						<div class="m-callout  m-callout--white">
							<a class="m-callout__phone" href="tel:1-801-213-2995">(801) 213-2995</a>
							<a class="m-callout__button" href="appointment.html">Schedule an Appointment</a>
						</div>
					</div>
				</div>
			</div>
		</div>
	</div>
</header>
```

*/
.o-billboard {
  display: table;
  position: relative; }

/*.o-billboard--empty {
	height: 5em;
}*/
@media screen and (min-width: 48rem) {
  .o-billboard--xsmall,
  .o-billboard--xsmall > .o-billboard__content {
    min-height: 20em; }
  .o-billboard--small,
  .o-billboard--small > .o-billboard__content {
    min-height: 25em; }
  .o-billboard--medium,
  .o-billboard--medium > .o-billboard__content {
    min-height: 30em; }
  .o-billboard--large,
  .o-billboard--large > .o-billboard__content {
    min-height: 35em; }
  .o-billboard--xlarge,
  .o-billboard--xlarge > .o-billboard__content {
    min-height: 40em; } }

.o-billboard--homepage {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  min-height: 50vh; }

.o-billboard--super {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  min-height: calc(100vh - 80px); }

@media (min-width: 48rem) {
  .o-billboard--super\@medium {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    min-height: calc(100vh - 80px); } }

@media screen and (max-width: 47.99rem) {
  .o-billboard--bg-image .o-billboard__heading-container {
    bottom: 100%;
    padding-bottom: 1em;
    position: absolute; }
  .o-billboard--bg-image .o-billboard__content {
    padding-top: 0; } }

@media (min-width: 48rem) {
  .o-billboard--bg-image {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
        flex-direction: column; }
  .o-billboard--bg-image.o-billboard--homepage .o-billboard__image,
  .o-billboard--bg-image.o-billboard--super .o-billboard__image {
    position: absolute; }
  .o-billboard--bg-image .o-billboard__content {
    -ms-flex: 1;
        flex: 1; } }

.o-billboard__image-wrapper {
  background-position: center center;
  background-size: cover;
  height: 100%;
  position: relative;
  width: 100%; }
  @media (min-width: 48rem) {
    .o-billboard__image-wrapper {
      position: absolute; } }

.o-billboard__image-wrapper--top {
  background-position: 50% 0%; }

.o-billboard__image-wrapper--right {
  background-position: 100% 50%; }

.o-billboard__image-wrapper--bottom {
  background-position: 50% 100%; }

.o-billboard__image-wrapper--right {
  background-position: 0% 50%; }

.o-billboard__image-wrapper--gradient:after {
  background: linear-gradient(to bottom, #fff, rgba(255, 255, 255, 0.9) 20%, rgba(255, 255, 255, 0));
  content: '';
  display: inline-block;
  position: absolute;
  height: 20%;
  left: 0;
  top: 0;
  width: 100%; }

.o-billboard__image-wrapper--dark-gradient:after {
  background: linear-gradient(to top, #939598, rgba(147, 149, 152, 0.2) 50%, rgba(0, 0, 0, 0));
  bottom: 0;
  content: '';
  display: inline-block;
  position: absolute;
  height: 50%;
  left: 0;
  width: 100%; }

.o-billboard__image {
  max-height: 100%;
  max-width: 100vw;
  min-height: 12em;
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%; }
  @media (min-width: 48rem) {
    .o-billboard__image {
      height: 100%; } }

.o-billboard__image-wrapper--top .o-billboard__image {
  -o-object-position: 50% 0%;
     object-position: 50% 0%; }

.o-billboard__image-wrapper--right .o-billboard__image {
  -o-object-position: 100% 50%;
     object-position: 100% 50%; }

.o-billboard__image-wrapper--bottom .o-billboard__image {
  -o-object-position: 50% 100%;
     object-position: 50% 100%; }

.o-billboard__image-wrapper--right .o-billboard__image {
  -o-object-position: 0% 50%;
     object-position: 0% 50%; }

.o-billboard--bg-gradient {
  background: #FFF;
  background: linear-gradient(180deg, #FFF 0%, #F2F2F2 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$colour1', endColorstr='$colour2',GradientType=1 );
  box-shadow: inset 0px -2px 1px rgba(65, 64, 66, 0.2); }

.o-billboard--bg-grey {
  background-color: #F2F2F2;
  box-shadow: inset 0px 2px 1px rgba(65, 64, 66, 0.2); }

.o-billboard--bg-gradient .o-billboard__content {
  overflow-x: hidden; }

.o-billboard--bg-grey .o-billboard__heading-container,
.o-billboard--bg-gradient .o-billboard__heading-container {
  padding: 1em 0 1.5em; }

@media (max-width: 47.99rem) {
  .o-billboard--bg-gradient .m-callout {
    padding-top: 0; } }

@media (min-width: 48rem) {
  .o-billboard--bg-grey .o-billboard__heading-container,
  .o-billboard--bg-gradient .o-billboard__heading-container {
    background: #FFF;
    border: 1px solid #a6192e;
    border-radius: 3px;
    box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.2);
    display: inline-block;
    padding: 1.5em;
    position: relative; }
  .o-billboard--bg-gradient .o-billboard__heading-container::before {
    background: #a6192e;
    content: '';
    display: block;
    height: 1px;
    position: absolute;
    right: 100%;
    top: 65%;
    width: 70em; }
  .o-billboard--bg-grey .o-billboard__heading-container::after,
  .o-billboard--bg-gradient .o-billboard__heading-container::after {
    background: #FFF;
    content: '';
    display: block;
    height: 8px;
    margin-top: -4px;
    position: absolute;
    transform: rotate(45deg);
    width: 8px; }
  .o-billboard--bg-gradient .o-billboard__heading-container::after {
    border-right: 1px solid #a6192e;
    border-top: 1px solid #a6192e;
    right: -5px;
    top: 65%; }
  .o-billboard--bg-grey .o-billboard__heading-container::after {
    bottom: -5px;
    border-bottom: 1px solid #a6192e;
    border-right: 1px solid #a6192e;
    margin-right: -4px;
    right: 50%; } }

.o-billboard__content {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  width: 100%; }

.o-billboard__header,
.o-billboard__body,
.o-billboard__footer {
  position: relative; }

.o-billboard__header,
.o-billboard__footer {
  -ms-flex-negative: 0;
      flex-shrink: 0; }

.o-billboard__header--full {
  height: 100%;
  position: absolute;
  width: 100%; }

.o-billboard__body {
  -ms-flex-align: center;
      align-items: center;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  margin-top: auto;
  margin-bottom: auto;
  width: 100%; }

.o-billboard__body--bottom {
  -ms-flex-positive: 0;
      flex-grow: 0;
  margin-top: auto;
  margin-bottom: inherit; }

.o-billboard__body--top {
  -ms-flex-positive: 0;
      flex-grow: 0;
  margin-top: inherit;
  margin-bottom: auto; }

.o-billboard__heading {
  font-weight: 400;
  line-height: 1.125; }

.o-billboard--bg-image .o-billboard__heading {
  font-size: 1.5rem;
  text-shadow: 0px 1px 3px rgba(0, 0, 0, 0.5); }
  @media (min-width: 30rem) {
    .o-billboard--bg-image .o-billboard__heading {
      font-size: 2rem; } }
  @media (min-width: 48rem) {
    .o-billboard--bg-image .o-billboard__heading {
      font-size: 2.5rem; } }
  @media (min-width: 64rem) {
    .o-billboard--bg-image .o-billboard__heading {
      font-size: 3rem; } }

.o-billboard--bg-grey .o-billboard__heading,
.o-billboard--bg-gradient .o-billboard__heading {
  font-size: 1.5rem; }
  @media (min-width: 48rem) {
    .o-billboard--bg-grey .o-billboard__heading,
    .o-billboard--bg-gradient .o-billboard__heading {
      font-size: 1.75rem; } }
  @media (min-width: 64rem) {
    .o-billboard--bg-grey .o-billboard__heading,
    .o-billboard--bg-gradient .o-billboard__heading {
      font-size: 2rem; } }

.o-billboard__heading--white {
  color: #FFF; }

.o-billboard--inverse,
.o-billboard--simple-brand {
  color: #FFF; }

.o-billboard--simple-grey .o-billboard__heading,
.o-billboard--simple-image .o-billboard__heading,
.o-billboard--overlapping .o-billboard__heading {
  color: #414042;
  font-weight: 500;
  letter-spacing: 0.035em; }

.o-billboard--inverse .o-billboard__heading,
.o-billboard--simple-brand .o-billboard__heading {
  color: #FFF; }

.o-billboard--simple-grey .m-breadcrumbs,
.o-billboard--simple-brand .m-breadcrumbs,
.o-billboard--simple-image .m-breadcrumbs,
.o-billboard--overlapping .m-breadcrumbs,
.o-billboard--simple-grey .o-billboard__refer,
.o-billboard--simple-brand .o-billboard__refer,
.o-billboard--simple-image .o-billboard__refer,
.o-billboard--overlapping .o-billboard__refer {
  font-size: 0.875em; }

.o-billboard--inverse .o-billboard__refer,
.o-billboard--simple-brand .o-billboard__refer {
  color: rgba(255, 255, 255, 0.7); }
  .o-billboard--inverse .o-billboard__refer:hover,
  .o-billboard--simple-brand .o-billboard__refer:hover {
    color: white; }

/**
 * Overlapping image billboard
 */
.o-billboard--overlapping .o-billboard__heading {
  font-size: 2.5rem;
  margin: .125em 0 .5em; }
  @media (min-width: 48rem) {
    .o-billboard--overlapping .o-billboard__heading {
      font-size: 3.25rem; } }
  @media (min-width: 64rem) {
    .o-billboard--overlapping .o-billboard__heading {
      font-size: 4rem; } }

.o-billboard__overlap {
  margin-top: -54px;
  position: relative; }

/**
 * Simple billboard
 */
.o-billboard--simple-grey {
  background-color: #F2F2F2; }

.o-billboard--simple-brand {
  background-color: #a6192e; }

.o-billboard--simple-image {
  background-position: center center;
  background-size: cover; }

.o-billboard--simple-image-overlay {
  background-blend-mode: lighten;
  background-color: rgba(255, 255, 255, 0.75); }

.o-billboard--simple-grey .o-billboard__heading,
.o-billboard--simple-brand .o-billboard__heading,
.o-billboard--simple-image .o-billboard__heading {
  font-size: 2.25rem;
  margin: .125em 0 .125em; }
  @media (min-width: 48rem) {
    .o-billboard--simple-grey .o-billboard__heading,
    .o-billboard--simple-brand .o-billboard__heading,
    .o-billboard--simple-image .o-billboard__heading {
      font-size: 3rem; } }
  @media (min-width: 64rem) {
    .o-billboard--simple-grey .o-billboard__heading,
    .o-billboard--simple-brand .o-billboard__heading,
    .o-billboard--simple-image .o-billboard__heading {
      font-size: 3.75rem; } }

.o-billboard--simple-grey .m-breadcrumbs__crumb a,
.o-billboard--simple-image .m-breadcrumbs__crumb a,
.o-billboard--overlapping .m-breadcrumbs__crumb a {
  color: #4F868E;
  font-weight: 400; }
  .o-billboard--simple-grey .m-breadcrumbs__crumb a:hover,
  .o-billboard--simple-image .m-breadcrumbs__crumb a:hover,
  .o-billboard--overlapping .m-breadcrumbs__crumb a:hover {
    border-color: currentColor;
    color: #3d676d; }

.o-billboard--inverse .m-breadcrumbs__crumb a,
.o-billboard--simple-brand .m-breadcrumbs__crumb a {
  color: #b8d4d8; }
  .o-billboard--inverse .m-breadcrumbs__crumb a:hover,
  .o-billboard--simple-brand .m-breadcrumbs__crumb a:hover {
    border-color: currentColor;
    color: #66a1aa; }

.o-billboard--inverse .m-breadcrumbs__crumb:not(:last-child):after,
.o-billboard--simple-brand .m-breadcrumbs__crumb:not(:last-child):after {
  color: rgba(255, 255, 255, 0.7); }

.o-billboard--simple-brand .a-button--brand-fill {
  background-color: white;
  color: #a6192e; }

@media (max-width: 47.99rem) {
  .o-billboard--homepage .o-swiper,
  .o-billboard--homepage > .o-billboard__image-wrapper,
  .o-billboard--super .o-swiper,
  .o-billboard--super > .o-billboard__image-wrapper {
    position: absolute;
    bottom: 0;
    width: 100%; }
  .o-billboard--homepage .o-swiper + .o-billboard__content,
  .o-billboard--super .o-swiper + .o-billboard__content {
    min-height: 50vh; }
  .o-billboard--homepage .o-billboard__body,
  .o-billboard--super .o-billboard__body {
    -ms-flex-order: 3;
        order: 3; }
  .o-billboard--homepage .o-swiper__caption-container,
  .o-billboard--super .o-swiper__caption-container {
    margin-left: 1em;
    margin-right: 1em; } }

@media (min-width: 48rem) {
  .o-billboard--homepage .o-swiper,
  .o-billboard--super .o-swiper {
    height: 100%;
    position: absolute;
    width: 100%; } }

.o-billboard--homepage .o-billboard__header,
.o-billboard--homepage .o-billboard__footer,
.o-billboard--super .o-billboard__header,
.o-billboard--super .o-billboard__footer {
  z-index: 1; }

@media (max-width: 47.99rem) {
  #o-md-detail-profiles .o-billboard__heading-container {
    position: relative; }
    #o-md-detail-profiles .o-billboard__heading-container .o-billboard__heading {
      text-align: center; }
      #o-md-detail-profiles .o-billboard__heading-container .o-billboard__heading img {
        max-width: 100px;
        float: none;
        margin: 0 auto; } }

.u-color-beige .m-breadcrumbs__crumb:not(:last-child):after {
  color: #F2F2EA;
  content: "/"; }

@media (min-width: 48rem) {
  .o-billboard--location-center-pos {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0; } }

@media (max-width: 48rem) {
  .o-billboard--location-center-title {
    position: absolute;
    width: 100%;
    height: calc(100% - 130px);
    top: 0;
    left: 0; } }

/*doc
---
title: Find Something
name: find-something
category: Organisms
---

The find something tool is a feature-rich search tool users can use to find providers based on specific criteria. At the moment there is no styling specific to this element.

```html_example
<div class="m-button-group  m-button-group--equal  u-high">
	<div class="m-button-group__item">
		<a class="m-button-group__link  m-button-group__link--icon-vertical" href="#">
			<svg class="a-icon  m-button-group__icon  m-button-group__icon--top">
				<use xlink:href="../icons/icons.svg#doctor"></use>
			</svg>
			By Name
		</a>
	</div>
	<div class="m-button-group__item">
		<a class="m-button-group__link  m-button-group__link--icon-vertical" href="#">
			<svg class="a-icon  m-button-group__icon  m-button-group__icon--top">
				<use xlink:href="../icons/icons.svg#location"></use>
			</svg>
			By Location
		</a>
	</div>
	<div class="m-button-group__item">
		<a class="m-button-group__link  m-button-group__link--icon-vertical" href="#">
			<svg class="a-icon  m-button-group__icon  m-button-group__icon--top">
				<use xlink:href="../icons/icons.svg#stethoscope"></use>
			</svg>
			By Specialty
		</a>
	</div>
</div>
<div class="m-button-list  l-grid  l-grid--middle">
	<div class="m-button-list__item  l-grid__item  1/1">
		<a class="a-button  a-button--expand" href="services-treatments.html">View All Women's Health Specialties</a>
	</div>
</div>
```

*/
.o-find-something--tab-bar li a:hover .a-icon {
  color: #FFF; }

.o-find-something--tab-bar li.active a {
  background-color: #F2F2F2;
  color: #a6192e; }
  .o-find-something--tab-bar li.active a .a-icon {
    color: #a6192e; }
  .o-find-something--tab-bar li.active a:hover .a-icon {
    color: #FFF; }

@media print {
  .o-find-something--tab-bar .m-button-group__link:after {
    content: ""; } }

.o-find-something--side-bar li a.chosen {
  background-color: #F2F2F2;
  color: #a6192e; }

.o-find-something--no-rating-text {
  display: inline-block; }

.o-find-something--no-rating-popup {
  position: absolute;
  bottom: 40px;
  left: -60px;
  width: 260px;
  z-index: 0;
  display: none; }

.o-find-something--no-rating-text:hover + .o-find-something--no-rating-popup {
  display: block; }

.o-find-something--specialties {
  line-height: 1.125; }

.angucomplete-holder {
  position: relative; }

.angucomplete-dropdown {
  position: absolute;
  width: 100%;
  padding: 0.5em;
  background-color: #ffffff;
  cursor: pointer;
  z-index: 9999;
  top: 35px; }

.angucomplete-searching {
  color: #a6192e; }

.angucomplete-row {
  padding: 0.5em;
  color: #000000;
  margin-bottom: 4px;
  clear: both; }

.angucomplete-selected-row {
  background-color: #a6192e;
  color: #ffffff; }

.o-find-something-tool .o-search-bar input {
  width: 100%;
  font-family: inherit;
  font-weight: 300;
  padding: 0;
  margin: 0;
  border: none; }

.o-find-something-tool .o-find-something--letters li a {
  pointer-events: none;
  cursor: default;
  text-decoration: none;
  color: #939598; }
  .o-find-something-tool .o-find-something--letters li a.active {
    color: #a6192e;
    cursor: pointer !important;
    pointer-events: auto !important; }

.o-find-something-tool #o-find-something--search-locations .o-find-something--search-error {
  display: none; }

.o-find-something-tool #o-find-something--search-locations.error .a-field {
  border-color: #a6192e;
  box-shadow: inset 0 0 0 2px #a6192e; }

.o-find-something-tool #o-find-something--search-locations.error .o-find-something--search-error {
  display: block; }

.o-find-something-tool .o-find-something--profile-img {
  height: 150px;
  width: 100%;
  max-width: 120px;
  background-size: cover;
  background-position: center top; }

.o-find-something--star {
  position: relative; }
  .o-find-something--star .o-find-something--star-bkg {
    height: 20px;
    position: absolute; }
  .o-find-something--star .o-find-something--md-star-bkg {
    height: 25px;
    position: absolute; }
  .o-find-something--star img {
    position: relative; }

.o-card--profiles {
  border: none; }
  .o-card--profiles .o-find-something--specialties {
    color: #414042; }
  .o-card--profiles .o-find-something--star {
    border: none; }
  .o-card--profiles .o-find-something--no-rating-popup {
    color: #414042; }

#specialistSpecialties_dropdown {
  top: 55px;
  height: 420px;
  overflow: hidden;
  overflow-y: scroll; }

/*doc
---
title: Footers
name: footers
category: Organisms
---

The footer organism is the site-wide footer for our site. There aren't many modifiers as this isn't intended to stay consistent.

```html_example
<footer class="o-footer" role="contentinfo">
	<div class="l-container  l-container--super  l-container--flush">
		<div class="o-footer__info">
			<div class="l-container  l-container--large">
				<div class="l-grid">
					<div class="l-grid__item  1/1  1/2@small  1/3@medium">
						<h4 class="a-h3">Site Links</h4>
						<ul class="a-list  a-list--unstyled">
							<li><a href="#" class="o-footer__link">About Us</a></li>
							<li><a href="#" class="o-footer__link">Jobs</a></li>
							<li><a href="#" class="o-footer__link">Giving</a></li>
							<li><a href="#" class="o-footer__link">Maps &amp; Directions</a></li>
							<li><a href="#" class="o-footer__link">Public Affairs</a></li>
							<li><a href="#" class="o-footer__link">The Imagine Perfect Care Program</a></li>
						</ul>
					</div>
					<div class="l-grid__item  1/1  1/2@small  1/3@medium">
						<h4 class="a-h3">Helpful Links</h4>
						<ul class="a-list  a-list--unstyled">
							<li><a href="#" class="o-footer__link">Patient Rights &amp; Responsibilities</a></li>
							<li><a href="#" class="o-footer__link">Disclaimer</a></li>
							<li><a href="#" class="o-footer__link">Privacy Statement</a></li>
							<li><a href="#" class="o-footer__link">DNV GL Public Information Policy Statement</a></li>
							<li><a href="#" class="o-footer__link">Non-Discrimination Policy</a></li>
							<li><a href="#" class="o-footer__link">Webmaster</a></li>
						</ul>
					</div>
					<div class="l-grid__item  1/1  1/3@medium">
						<h4 class="a-h3">Contact Us</h4>
						<p class="a-address  u-small  u-space-bottom--small">
							University of Utah Health Care<br />
							50 N. Medical Drive SLC, UT 84132
						</p>
						<p class="u-xlarge  u-space-bottom--medium">(801) 581-2121</p>
						<ul class="a-list  a-list--unstyled  a-list--inline">
							<li class="a-list__item  o-footer__social-item">
								<a href="#" class="o-footer__link">
									<svg class="a-icon  a-icon--large  a-icon--facebook">
										<use xlink:href="../icons/icons.svg#facebook"></use>
									</svg>
								</a>
							</li>
							<li class="a-list__item  o-footer__social-item">
								<a href="#" class="o-footer__link">
									<svg class="a-icon  a-icon--large  a-icon--twitter">
										<use xlink:href="../icons/icons.svg#twitter"></use>
									</svg>
								</a>
							</li>
							<li class="a-list__item  o-footer__social-item">
								<a href="#" class="o-footer__link">
									<svg class="a-icon  a-icon--large  a-icon--google-plus">
										<use xlink:href="../icons/icons.svg#google-plus"></use>
									</svg>
								</a>
							</li>
							<li class="a-list__item  o-footer__social-item">
								<a href="#" class="o-footer__link">
									<svg class="a-icon  a-icon--large  a-icon--youtube">
										<use xlink:href="../icons/icons.svg#youtube"></use>
									</svg>
								</a>
							</li>
						</ul>
					</div>
				</div>
			</div>
		</div>
	</div>
	<div class="o-footer__legal">
		<div class="l-container l-container--large">
			<div class="l-grid">
				<div class="l-grid__item  1/1  7/12@medium">
					<p><a href="http://www.utah.edu" target="_blank" class="o-footer__link"><img class="u-inline-block" src="../img/logos/uofu-logo.svg" alt="University of Utah" /></a></p>
				</div>
				<div class="l-grid__item  1/1  5/12@medium">
					<p class="a-paragraph  u-small">All clinical services and programs are part of University of Utah Hospitals &amp; Clinics</p>
					<p class="a-paragraph  u-small">Copyright &copy; 2017 University of Utah Health Care</p>
				</div>
			</div>
		</div>
	</div>
</footer>
```

*/
.o-footer {
  overflow: hidden; }

.o-footer__info {
  background: #F2F2F2;
  border-top: 2px solid #a6192e;
  border-bottom: 2px solid #a6192e;
  padding: 2em 0 0.5em;
  position: relative; }

.o-footer__info::after {
  background: white;
  border: 2px solid #a6192e;
  content: '';
  display: block;
  height: 24px;
  left: 50%;
  margin-left: -12px;
  position: absolute;
  top: -14px;
  transform: rotate(45deg);
  width: 24px; }

.o-footer__legal {
  padding: 1.5em 0 0.25em; }

.o-footer__link {
  border-bottom: none;
  color: inherit;
  font-weight: inherit; }

.o-footer__social-item:not(:last-child) {
  border-right: solid 1px #939598; }

.o-footer__social-item:not(:first-child) {
  padding-left: 1em; }

/*doc
---
title: Main
name: main
category: Organisms
---

The `o-main` element is a simple vertical flex container with a bit of a bottom margin. By making this element a flex container, we can reorder the sections within.

```html_example
<main class="o-main" role="main" id="content">
	<!-- content goes here -->
</main>
```

*/
.o-main {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  margin-bottom: 6em; }

/*doc
---
title: Topnav
name: topnav
category: Organisms
---

This is the site-wide navigation for our site. There aren't many modifier classes for navigation elements because it's not intended to change.

Note: The JavaScript classes had to be removed because they were conflicting with the style guide's navigation.

```html_example
<div class="o-nav__container  l-container  l-container--super  l-container--flush">
  <nav class="o-nav" role="navigation" id="nav">

    <div class="o-nav__left">

      <a class="o-nav__item  o-nav__logo" href="{{ baseurl }}/index.html">
        <img src="{{ baseurl }}/images/logos/uhealth-logo.svg" alt="U of U Health" width="140" height="auto" class="o-nav__logo-svg" />
      </a>

      <ul class="o-nav__list  u-show@large">
        <li><a href="{{ baseurl }}/index.html">FIND A DOCTOR</a></li>
        <li><a href="{{ baseurl }}/pages/locations.html">FIND A LOCATION</a></li>
        <li><a href="{{ baseurl }}/pages/services.html">MEDICAL SERVICES</a></li>
        <li>
          <a class="o-nav__link  o-nav__link--dropbar" href="#">
            <span class="u-space-right--xsmall">PATIENTS &amp; VISITORS</span>
            <svg class="a-icon  a-icon--xsmall  u-margin-right--small">
              <use xlink:href="#arrow-down"></use>
            </svg>
          </a>
          <div class="o-nav__dropdown">
            <div class="l-grid">
              <div class="l-grid__item">
                <ul class="o-nav__dropdown-nav">
                  <li class="o-nav__header">Patient Services</li>
                  <li class="o-nav__divider"></li>
                  <li><a href="#">Questions About Your Bill?</a></li>
                  <li><a href="#">Urgent Care</a></li>
                  <li><a href="#">Where to Stay</a></li>
                  <li><a href="#">Patient &amp; Family Services</a></li>
                  <li><a href="#">Clinical Services</a></li>
                </ul>
              </div>
              <div class="l-grid__item">
                <ul class="o-nav__dropdown-nav">
                  <li class="o-nav__header">University of Utah Hospital</li>
                  <li class="o-nav__divider"></li>
                  <li><a href="#">University of Utah Hospital</a></li>
                  <li><a href="#">Staying at the Hospital</a></li>
                  <li><a href="#">Parking &amp; Valet</a></li>
                  <li><a href="#">Looking for Another Location?</a></li>
                </ul>
              </div>
              <div class="l-grid__item">
                <ul class="o-nav__dropdown-nav">
                  <li class="o-nav__header">General Questions</li>
                  <li class="o-nav__divider"></li>
                  <li class="o-active"><a href="#">801-581-2668</a></li>
                  <li><a href="#">
                      <svg class="a-icon  a-icon--small">
                        <use xlink:href="#translation"></use>
                      </svg>
                      Find an Interpreter
                  </a></li>
                  <li><a href="#">About U of U Health</a></li>
                </ul>
              </div>
            </div>
          </div>
        </li>
      </ul>

    </div>

    <div class="o-nav__right">

      <ul class="o-nav__list  u-show@large">
        <li><a href="#">Billing &amp; Insurance</a></li>
        <li>
          <a href="#">
            <svg class="a-icon  a-icon--small  u-margin-right--small">
              <use xlink:href="#user"></use>
            </svg>
            <span class="u-space-left--xsmall">MyChart</span>
          </a>
        </li>
      </ul>

      <div class="o-nav__item  u-show@large">
        <button class="js-search-button  a-button  a-button--brand  a-button--small  u-padding-left--medium  u-padding-right--medium  u-flex  u-items-center">
          <svg class="a-icon  a-icon--small  u-margin-right--small">
            <use xlink:href="#search-icon"></use>
          </svg>
          <span class="u-space-left--small">Search</span>
        </button>
      </div>

      <!-- Hamburger button -->
      <div class="o-nav__item  u-hide@large">
        <button class="js-nav__toggle  a-button  a-button--brand  a-button--small  u-padding-left--medium  u-padding-right--medium  u-flex  u-items-center">
          <svg class="a-icon  a-icon--small  u-margin-right--small">
            <use xlink:href="#hamburger"></use>
          </svg>
          <span class="js-nav__toggle-text  o-nav__icon-text  u-space-left--small">Menu</span>
        </button>
      </div>

    </div>

    <!-- Dropdown Menu -->
    <div class="1/1  u-relative  u-hide@large">
      <div class="o-nav__menu-wrapper  l-container">
        <ul class="js-nav__menu  o-nav__menu">
          <li><a href="{{ baseurl }}/index.html">FIND A DOCTOR</a></li>
          <li><a href="{{ baseurl }}/pages/locations.html">FIND A LOCATION</a></li>
          <li><a href="{{ baseurl }}/pages/services.html">MEDICAL SERVICES</a></li>
          <li>
            <a class="o-nav__link  o-nav__link--submenu" href="#">
              <span class="u-space-right--xsmall">PATIENTS &amp; VISITORS</span>
              <svg class="a-icon  a-icon--xsmall">
                <use xlink:href="#arrow-right"></use>
              </svg>
            </a>
            <ul class="js-nav__submenu  o-nav__submenu">
              <li>
                <a class="o-nav__link  o-nav__link--submenu" href="#">
                  <span class="o-nav__icon-text">Patient Services</span>
                  <svg class="a-icon  a-icon--xsmall">
                    <use xlink:href="#arrow-right"></use>
                  </svg>
                </a>
                <ul class="js-nav__submenu  o-nav__submenu">
                  <li><a href="/bill/">Questions About Your Bill?</a></li>
                  <li><a href="/primarycare/urgent.php">Urgent Care</a></li>
                  <li><a href="/locations/patient-family-housing/">Where to Stay</a></li>
                  <li><a href="/patient-family-services.php">Patients &amp; Family Services</a></li>
                  <li><a href="/clinicaltrials/">Clinical Trials</a></li>
                </ul>
              </li>
              <li>
                <a class="o-nav__link  o-nav__link--submenu" href="#">
                  <span class="o-nav__icon-text">University of Utah Hospital</span>
                  <svg class="a-icon  a-icon--xsmall">
                    <use xlink:href="#arrow-right"></use>
                  </svg>
                </a>
                <ul class="js-nav__submenu  o-nav__submenu">
                  <li><a href="/hospital/">University of Utah Hospital</a></li>
                  <li><a href="/hospital/stay.php">Staying at the Hospital</a></li>
                  <li><a href="/hospital/customer-service/parking.php">Parking &amp; Valet</a></li>
                  <li><a href="/locations/">Looking for Another Location?</a></li>
                </ul>
              </li>
              <li>
                <a class="o-nav__link  o-nav__link--submenu" href="#">
                  <span class="o-nav__icon-text">General Questions</span>
                  <svg class="a-icon  a-icon--xsmall">
                    <use xlink:href="#arrow-right"></use>
                  </svg>
                </a>
                <ul class="js-nav__submenu  o-nav__submenu">
                  <li><a href="tel:801-581-2668">801-581-2668</a></li>
                  <li><a href="/hospital/customer-service/interpreter.php">Find an Interpreter</a></li>
                  <li><a href="/brand/">About U of U Health</a></li>
                </ul>
              </li>
            </ul>
          </li>
          <li><a href="#">Billing &amp; Insurance</a></li>
          <li>
            <a href="#">
              <svg class="a-icon  a-icon--small">
                <use xlink:href="#user"></use>
              </svg>
              <span class="u-space-left--xsmall">MyChart</span>
            </a>
          </li>
          <li>
            <a class="js-nav__toggle  o-nav__link" href="#">
              <svg class="a-icon  a-icon--small">
                <use xlink:href="#search"></use>
              </svg>
              <span class="u-space-left--xsmall">Search</span>
            </a>
          </li>
        </ul>
      </div>
    </div>

  </nav>

  <div class="o-nav__dropbar  u-show@large"></div>
</div>
```

/* ========================================================================
   Component: Navbar
 ========================================================================== */
/*
 * 1. Create position context to center navbar group
 * 2. Wrap when out of space
 * 3. Make sure dropdowns appear over content
 * 4. Needed for animation
 */
.o-nav {
  display: -ms-flexbox;
  display: flex;
  /* 1 */
  position: relative;
  /* 2 */
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  /* 3 */
  z-index: 400;
  /* 4 */
  perspective: 1000px;
  perspective-origin: 50% 200%; }

/* Container
 ========================================================================== */
.o-nav__container:not(.o-nav--transparent) {
  background: white; }

/*
 * Remove pseudo elements created by micro clearfix as precaution (if Container component is used)
 */
.o-nav__container > ::before,
.o-nav__container > ::after {
  display: none !important; }

/* Groups
 ========================================================================== */
/*
 * 1. Align navs and items vertically if they have a different height
 * 2. Note: IE 11 requires an extra `div` which affects the center selector
 */
.o-nav__left,
.o-nav__right,
.o-nav__center,
.o-nav__center-left > *,
.o-nav__center-right > * {
  display: -ms-flexbox;
  display: flex;
  /* 1 */
  -ms-flex-align: center;
      align-items: center; }

/*
 * Horizontal alignment
 * 1. Create position context for centered navbar with sub groups (left/right)
 * 2. Needed for dropdowns because a new position context is created
 *    `z-index` must be smaller than off-canvas
 * 3. Fix text wrapping if the centered section is larger than 50% of the navbar
 * 4. Align sub groups for centered navbar
 */
.o-nav__right {
  margin-left: auto; }

.o-nav__center:only-child {
  margin-left: auto;
  margin-right: auto;
  /* 1 */
  position: relative; }

.o-nav__center:not(:only-child) {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  /* 2 */
  z-index: 450; }

/* 3 */
.o-nav__center:not(:only-child) .o-nav__list > li > a,
.o-nav__center:not(:only-child) .o-nav__item,
.o-nav__center:not(:only-child) .o-nav__toggle {
  white-space: nowrap; }

/* 4 */
.o-nav__center-left,
.o-nav__center-right {
  position: absolute;
  top: 0; }

.o-nav__center-left {
  right: 100%; }

.o-nav__center-right {
  left: 100%; }

[class*='o-nav__center-'] .o-nav__list > li > a,
[class*='o-nav__center-'] .o-nav__item,
[class*='o-nav__center-'] .o-nav__toggle {
  white-space: nowrap; }

/* Nav
 ========================================================================== */
/*
 * 1. Reset list
 */
.o-nav__list {
  display: -ms-flexbox;
  display: flex;
  /* 1 */
  margin: 0;
  padding: 0;
  list-style: none; }

/*
 * Allow items to wrap into the next line
 * Only not `absolute` positioned groups
 */
.o-nav__left,
.o-nav__right,
.o-nav__center:only-child {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }

/*
 * Items
 * 1. Center content vertically and horizontally
 * 2. Dimensions
 * 3. Style
 * 4. Required for `a`
 */
.o-nav__list > li > a,
.o-nav__item,
.o-nav__item--search {
  /* 1 */
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
  /* 2 */
  box-sizing: border-box;
  min-height: 80px;
  padding: 0 0.75em;
  /* 3 */
  font-size: 14px;
  /* 4 */
  text-decoration: none;
  border-bottom: none;
  text-transform: uppercase; }

/* Ugly IE Hack to fix flexbox centering */
@media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
  /* IE10+ specific styles go here */
  .o-nav__list > li > a,
  .o-nav__item,
  .o-nav__toggle {
    height: 79px; } }

/*
 * Nav items
 */
.o-nav__list > li > a {
  color: inherit; }

/*
 * Hover
 * Apply hover style also to focus state and if dropdown is opened
 */
.o-nav__list > li:hover > a,
.o-nav__list > li > a.s-open {
  color: #7a1222; }

.o-nav__list > li > a.s-open .a-icon {
  transform: rotate(180deg); }

.o-nav__list > li > a:focus {
  outline: none; }

/* OnClick */
.o-nav__list > li > a:active {
  color: #414042; }

/* Active */
.o-nav__list > li.s-active > a {
  color: #414042; }

/* Item
 ========================================================================== */
.o-nav__item {
  color: #666; }

/* Search */
.o-nav__item.o-nav__item--search {
  color: #a6192e; }

/* Toggle
 ========================================================================== */
button.o-nav__toggle {
  border-color: #adafb1;
  box-shadow: none;
  color: #414042;
  text-transform: uppercase; }

.o-nav__toggle .a-icon {
  color: #a6192e; }

.o-nav__toggle:hover .a-icon {
  color: #FFF; }

.o-nav__toggle:hover,
.o-nav__toggle:focus,
.o-nav__toggle.s-open {
  color: #666;
  outline: none;
  text-decoration: none; }

/*
 * Icon
 */
/* Hover + Focus */
/* Subtitle
 ========================================================================== */
.o-nav__subtitle {
  font-size: 14px;
  text-transform: uppercase; }

/* Style modifiers
 ========================================================================== */
/* Dropdown
 ========================================================================== */
/*
 * 1. Hide by default
 * 2. Set position
 * 3. Set a default width
 * 4. Style
 */
.o-nav__dropdown {
  /* 1 */
  display: none;
  /* 2 */
  position: absolute;
  z-index: 500;
  /* 3 */
  box-sizing: border-box;
  width: 200px;
  /* 4 */
  padding: 15px;
  background: transparent;
  color: #666; }

/* Show */
.o-nav__dropdown.s-open {
  display: block; }

/*
 * Direction / Alignment modifiers
 */
/* Direction */
[class*='o-nav__dropdown-top'] {
  margin-top: 0; }

[class*='o-nav__dropdown-bottom'] {
  margin-top: 0; }

[class*='o-nav__dropdown-left'] {
  margin-left: 0; }

[class*='o-nav__dropdown-right'] {
  margin-left: 0; }

/*
 * Width modifier
 */
.o-nav__dropdown-width-2:not(.o-nav__dropdown-stack) {
  width: 400px; }

.o-nav__dropdown-width-3:not(.o-nav__dropdown-stack) {
  width: 600px; }

.o-nav__dropdown-width-4:not(.o-nav__dropdown-stack) {
  width: 800px; }

.o-nav__dropdown-width-5:not(.o-nav__dropdown-stack) {
  width: 1000px; }

/*
 * Dropbar modifier
 */
.o-nav__dropdown-dropbar {
  margin-top: 0;
  margin-bottom: 0; }

/* Dropdown Nav
 ========================================================================== */
.o-nav__dropdown-nav {
  list-style: none;
  padding: 0; }

/*
 * Items
 */
.o-nav__dropdown-nav > li > a {
  border: none;
  color: #a6192e; }

.o-nav__dropdown-nav > li:not(.o-nav__header):not(.o-nav__divider) {
  padding: 0.5em 0; }

/* Hover + Focus */
.o-nav__dropdown-nav > li > a:hover,
.o-nav__dropdown-nav > li > a:focus {
  color: #7a1222; }

/* Active */
.o-nav__dropdown-nav > li.s-active > a {
  color: #a6192e; }

/*
 * Header
 */
.o-nav__dropdown-nav .o-nav__header {
  color: inherit;
  font-size: 0.875em;
  font-weight: 500;
  text-transform: uppercase; }

/*
 * Divider
 */
.o-nav__dropdown-nav .o-nav__divider {
  border-top: 1px solid #e5e5e5; }

/*
 * Sublists
 */
.o-nav__dropdown-nav .o-nav__sub a {
  color: #939598; }

.o-nav__dropdown-nav .o-nav__sub a:hover,
.o-nav__dropdown-nav .o-nav__sub a:focus {
  color: #666; }

/* Dropbar
 ========================================================================== */
.o-nav__dropbar:empty {
  opacity: 0;
  transform: translateY(-10px); }

.o-nav__dropbar {
  background: transparent;
  opacity: 1;
  transform: translateY(0);
  transition: all 0.2s ease-out; }

/*
 * Slide modifier
 */
.o-nav__dropbar-slide {
  position: absolute;
  z-index: 400;
  left: 0;
  right: 0; }

/*
 * Show dropdown inside dropbar
 */
.o-nav__dropbar .o-nav__dropdown {
  display: block;
  position: relative;
  width: auto; }

/* Mobile Sliding Dropdown
 ========================================================================== */
.o-nav__menu {
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  height: 0;
  list-style: none;
  margin: 0;
  opacity: 0;
  padding: 0;
  pointer-events: none;
  transform: translateY(10px);
  width: 100%; }

.o-nav__menu--open {
  height: auto;
  margin: 1.5em 0;
  opacity: 1;
  pointer-events: auto;
  transform: translateY(0px); }

/* Animate menu as it drops down */
.o-nav__menu-toggle {
  transition: all 0.3s ease; }

.o-nav__menu-wrapper li:first-child {
  border-top: 1px solid #939598;
  padding-left: 0;
  padding-right: 0; }

/*
 * Links
 */
.o-nav__menu-wrapper a:not(.a-button) {
  border-bottom: 1px solid #939598;
  color: inherit;
  display: block;
  font-size: 1em;
  font-weight: 500;
  padding-bottom: 2em;
  padding-top: 2em;
  position: relative;
  text-align: center;
  text-transform: uppercase;
  white-space: nowrap;
  width: 100%;
  z-index: 100; }
  .o-nav__menu-wrapper a:not(.a-button):hover {
    border-bottom-color: #939598; }
  .o-nav__menu-wrapper a:not(.a-button):focus {
    outline: dotted thin; }

/*
 * Buttons
 * ugly sizing fix
 */
.o-nav__menu-wrapper .a-button--expand {
  margin-top: 1em; }

/*
 * Inner Menus
 */
.o-nav__submenu {
  padding: 0;
  list-style: none;
  transform-style: preserve-3d; }

/* Hide the inner submenus */
.o-nav li .o-nav__submenu {
  display: none; }

/*
 * Animation
 *
 * When a submenu is openend, we will hide all li siblings.
 * For that we give a class to the parent menu called "o-nav__subview".
 * We also hide the submenu link.
 * The opened submenu will get the class "o-nav__subviewopen".
 * All this is done for any sub-level being entered.
 */
.o-nav__menu.o-nav__subview li,
.o-nav__menu.o-nav__subview li.o-nav__subview--open > a,
.o-nav__menu.o-nav__subview li.o-nav__subview > a {
  display: none; }

.o-nav__menu.o-nav__subview li.o-nav__subview,
.o-nav__menu.o-nav__subview li.o-nav__subview .o-nav__submenu,
.o-nav__menu.o-nav__subview li.o-nav__subview--open,
.o-nav__menu.o-nav__subview li.o-nav__subview--open > .o-nav__submenu,
.o-nav__menu.o-nav__subview li.o-nav__subview--open > .o-nav__submenu > li {
  display: block; }

/* Dynamically added submenu outside of the menu context */
.o-nav__menu-wrapper > .o-nav__submenu {
  left: 0;
  margin: 1.5em 0 0;
  position: absolute;
  top: 0;
  width: 100%; }

/* Animation classes for moving out and in */
.o-nav__menu.o-nav--animate-out {
  animation: MenuAnimOut2 0.3s ease-in-out; }

@keyframes MenuAnimOut2 {
  0% { }
  100% {
    transform: translateX(-100%);
    opacity: 0; } }

.o-nav__menu.o-nav--animate-in {
  animation: MenuAnimIn2 0.3s ease-in-out; }

@keyframes MenuAnimIn2 {
  0% {
    transform: translateX(-100%);
    opacity: 0; }
  100% {
    transform: translateX(0px);
    opacity: 1; } }

.o-nav__submenu.o-nav--animate-in {
  animation: SubMenuAnimIn2 0.3s ease-in-out; }

@keyframes SubMenuAnimIn2 {
  0% {
    transform: translateX(100%);
    opacity: 0; }
  100% {
    transform: translateX(0px);
    opacity: 1; } }

.o-nav__submenu.o-nav--animate-out {
  animation: SubMenuAnimOut2 0.3s ease-in-out; }

@keyframes SubMenuAnimOut2 {
  0% {
    transform: translateX(0%);
    opacity: 1; }
  100% {
    transform: translateX(100%);
    opacity: 0; } }

/*
 * No JS Fallback
 */
.no-js .o-nav__menu-wrapper .o-nav__menu {
  position: relative;
  opacity: 1;
  transform: none; }

.no-js .o-nav__menu-wrapper li .o-nav__submenu {
  display: block; }

.no-js .o-nav__menu-wrapper li.o-nav__item--back {
  display: none; }

.no-js .o-nav__menu-wrapper li > a:not(:only-child) {
  background: rgba(0, 0, 0, 0.1); }

.no-js .o-nav__menu-wrapper li > a:not(:only-child):after {
  content: ''; }

.o-modal {
  display: none; }

.js-vanilla-modal .o-modal {
  display: block;
  content: "";
  z-index: -1;
  opacity: 0;
  transition: opacity 0.2s, z-index 0s 0.2s;
  text-align: center;
  overflow: hidden;
  overflow-y: auto;
  white-space: nowrap;
  -webkit-overflow-scrolling: touch; }

.js-vanilla-modal .o-modal > * {
  display: inline-block;
  white-space: normal;
  vertical-align: middle;
  text-align: left; }

.js-vanilla-modal .o-modal:before {
  display: inline-block;
  overflow: hidden;
  width: 0;
  height: 100%;
  vertical-align: middle;
  content: ""; }

.js-vanilla-modal.is-visible .o-modal {
  z-index: 600;
  opacity: 1;
  transition: opacity 0.2s; }

.o-modal__inner {
  position: relative;
  overflow: hidden;
  max-width: 90%;
  max-height: 90%;
  overflow-x: hidden;
  overflow-y: auto;
  background: #fff;
  z-index: -1;
  opacity: 0;
  padding: 1.5em;
  transform: scale(0);
  transition: opacity 0.2s, transform 0.2s, z-index 0s 0.2s; }

.is-visible .o-modal__inner {
  z-index: 100;
  opacity: 1;
  transform: scale(1);
  transition: opacity 0.2s, transform 0.2s; }

@media (min-width: 48rem) {
  .o-modal__inner--xsmall {
    width: 30vw; }
  .o-modal__inner--small {
    width: 40vw; }
  .o-modal__inner--medium {
    width: 60vw; }
  .o-modal__inner--large {
    width: 70vw; }
  .o-modal__inner--xlarge {
    width: 90vw; }
  .o-modal__inner--super {
    height: 100vh;
    width: 100vw; } }

.o-modal__close {
  cursor: pointer; }

/*doc
---
title: Sections
name: sections
category: Organisms
---

Sections are generic wrappers. The only styling associated with the `o-section` class is a bit of padding on the top and bottom.

```html_example
<section class="o-section">
	<div class="l-container  l-container--medium">
		<h2 class="o-section__header">Section</h2>
		<!-- content goes here -->
	</div>
</section>
```

### Sizes

Use the modifier classes `o-section--small`, `o-section--large`, or `o-section--xlarge` to decrease or increase vertical padding respectively.

```html_example
<section class="o-section  o-section--small">
	<div class="l-container  l-container--medium">
		<h2 class="o-section__header">Small Section</h2>
	</div>
</section>
```

```html_example
<section class="o-section  o-section--large">
	<div class="l-container  l-container--medium">
		<h2 class="o-section__header">Large Section</h2>
	</div>
</section>
```

```html_example
<section class="o-section  o-section--xlarge">
	<div class="l-container  l-container--medium">
		<h2 class="o-section__header">Xlarge Section</h2>
	</div>
</section>
```

### Colors

To apply different background colors, add one of the following classes.

| Class                   | Description                                     |
|:------------------------|:------------------------------------------------|
| `.c-section-emphasis`  | Adds a muted background color.                  |
| `.c-section-gradient`  | Adds a gradient background color.               |
| `.c-section-brand`     | Adds a brand background color.                  |
| `.c-section-secondary` | Adds a secondary background color.              |
| `.c-section-tertiary`  | Adds a secondary background color.              |
| `.c-section-inverse`   | Inverses background color and text color.       |

The `o-section--emphasis` class gives the section a light grey background and inset drop shadows to draw a bit of extra attention. Typically we use these sections to wrap the "Find Something" tool.

```html_example
<section class="o-section  o-section--emphasis">
	<div class="l-container  l-container--medium">
		<h2 class="o-section__header">Section with Emphasis</h2>
	</div>
</section>
<section class="o-section  o-section--gradient">
	<div class="l-container  l-container--medium">
		<h2 class="o-section__header">Section with Gradient Background</h2>
	</div>
</section>
<section class="o-section  o-section--brand">
	<div class="l-container  l-container--medium">
		<h2 class="o-section__header">Section with Brand Background</h2>
	</div>
</section>
<section class="o-section  o-section--secondary">
	<div class="l-container  l-container--medium">
		<h2 class="o-section__header">Section with Secondary Background</h2>
	</div>
</section>
<section class="o-section  o-section--tertiary">
	<div class="l-container  l-container--medium">
		<h2 class="o-section__header">Section with Tertiary Background</h2>
	</div>
</section>
<section class="o-section  o-section--inverse">
	<div class="l-container  l-container--medium">
		<h2 class="o-section__header">Inverted Section</h2>
	</div>
</section>
```

*/
/* Size modifiers
 ========================================================================== */
.o-section--xsmall {
  padding-bottom: .5em;
  padding-top: .5em; }

.o-section--small {
  padding-bottom: 1em;
  padding-top: 1em; }

.o-section,
.o-section--medium {
  padding-bottom: 1.5em;
  padding-top: 1.5em; }

.o-section--large {
  padding-bottom: 2em;
  padding-top: 2em; }

.o-section--xlarge {
  padding-bottom: 2.5em;
  padding-top: 2.5em; }

@media (min-width: 48rem) {
  .o-section--xsmall {
    padding-bottom: 1em;
    padding-top: 1em; }
  .o-section--small {
    padding-bottom: 2em;
    padding-top: 2em; }
  .o-section,
  .o-section--medium {
    padding-bottom: 3em;
    padding-top: 3em; }
  .o-section--large {
    padding-bottom: 4em;
    padding-top: 4em; }
  .o-section--xlarge {
    padding-bottom: 5em;
    padding-top: 5em; } }

/* Style modifiers
 ========================================================================== */
.o-section--emphasis {
  background: #F2F2F2;
  box-shadow: inset 0px 2px 1px rgba(65, 64, 66, 0.2), inset 0px -2px 1px rgba(65, 64, 66, 0.2); }
  @media (max-width: 47.99rem) {
    .o-section--emphasis {
      background: none;
      box-shadow: none; } }

.o-section--gradient {
  background: linear-gradient(180deg, #FFF 0%, #F2F2F2 100%); }

.o-section--brand,
.o-section--secondary,
.o-section--tertiary,
.o-section--dark-blue,
.o-section--grey,
.o-section--inverse {
  color: #FFF; }
  .o-section--brand .o-section__header,
  .o-section--secondary .o-section__header,
  .o-section--tertiary .o-section__header,
  .o-section--dark-blue .o-section__header,
  .o-section--grey .o-section__header,
  .o-section--inverse .o-section__header {
    color: #FFF; }
  .o-section--brand a:not([class]),
  .o-section--secondary a:not([class]),
  .o-section--tertiary a:not([class]),
  .o-section--dark-blue a:not([class]),
  .o-section--grey a:not([class]),
  .o-section--inverse a:not([class]) {
    color: #FFF; }
  .o-section--brand a:hover:not([class]),
  .o-section--secondary a:hover:not([class]),
  .o-section--tertiary a:hover:not([class]),
  .o-section--dark-blue a:hover:not([class]),
  .o-section--grey a:hover:not([class]),
  .o-section--inverse a:hover:not([class]) {
    border-color: rgba(255, 255, 255, 0.7);
    color: rgba(255, 255, 255, 0.7); }

.o-section--brand {
  background-color: #a6192e; }

.o-section--secondary {
  background-color: #4F868E; }

.o-section--tertiary {
  background-color: #7EDDD3; }

.o-section--inverse {
  background-color: #111; }

.o-section--light-grey {
  background-color: #F4F4F5; }

.o-section--light-red {
  background-color: #eed0d4; }

.o-section--light-blue {
  background-color: #cbf1ed; }

.o-section--dark-blue {
  background-color: #729ea4; }

.o-section--grey {
  background-color: #9f9fa0; }

.o-section__header {
  margin-bottom: .75em;
  margin-top: 0.5em;
  text-align: center; }
  @media (min-width: 48rem) {
    .o-section__header {
      margin-bottom: 1em; } }

h2.o-section__header {
  letter-spacing: 0.075em;
  text-transform: uppercase; }

#table-of-contents,
.o-section--toc {
  padding-bottom: 0;
  padding-top: 0; }
  @media (min-width: 48rem) {
    #table-of-contents,
    .o-section--toc {
      padding-top: 2em; } }

.o-section--fts {
  border-color: #414042;
  border-style: solid;
  border-width: 0 1px 1px 1px; }

.o-section--clinical-letters li a {
  pointer-events: none;
  cursor: default;
  color: #939598;
  border: 1px solid #939598; }
  .o-section--clinical-letters li a.active {
    color: #a6192e;
    border: 1px solid #a6192e;
    cursor: pointer !important;
    pointer-events: auto !important; }

.o-section--bottom-cta {
  -ms-flex-order: 10;
      order: 10;
  margin-top: 6em;
  margin-bottom: -6em;
  position: relative;
  z-index: 1; }

.o-section--bottom-cta::after {
  background-color: inherit;
  content: '';
  display: block;
  height: 20px;
  left: 50%;
  margin-left: -10px;
  position: absolute;
  bottom: -10px;
  transform: rotate(45deg);
  width: 20px; }

@media screen and (max-width: 47.99rem) {
  .o-section__accordion {
    border-top: 1px solid #797b7f;
    cursor: pointer; }
  .o-section__accordion:last-of-type {
    border-bottom: 1px solid #797b7f; }
  /*.o-section__accordion-header {
		text-align: left;
	}*/
  .o-section__mobile-content {
    display: none;
    cursor: default; }
  .o-section__accordion-tap.o-section__accordion-active + .o-section__mobile-content {
    display: block; } }

.o-section--search-results {
  width: 100%;
  float: left;
  background-color: #FFF;
  border-left: 1px solid #797b7f;
  border-right: 1px solid #797b7f;
  border-bottom: 1px solid #797b7f;
  border-bottom-right-radius: 3px;
  border-bottom-left-radius: 3px;
  overflow: hidden;
  overflow-y: auto;
  cursor: auto; }
  .o-section--search-results h3 {
    font-weight: 400; }
  @media (max-width: 29.99rem) {
    .o-section--search-results .doc_image {
      width: 100%; } }
  .o-section--search-results .doc_name,
  .o-section--search-results .doc_specialties {
    line-height: 1.2;
    width: 100%; }

.o-search--header {
  border-bottom: 1px solid #414042; }

.o-section--general-search-tabs li.m-button-group__link:not(:disabled):hover {
  background-color: #a6192e; }
  .o-section--general-search-tabs li.m-button-group__link:not(:disabled):hover a {
    color: #FFF; }

.o-section--general-search-tabs li.active {
  background-color: #F2F2F2; }
  .o-section--general-search-tabs li.active a {
    color: #a6192e; }

.o-section--general-search-tabs li a {
  color: #414042;
  width: 100%;
  border: none; }

.custom-combobox {
  display: block;
  margin-bottom: 1em;
  max-height: 250px;
  overflow-y: auto; }
  .custom-combobox input {
    padding-right: 1em; }
  .custom-combobox a {
    width: 18px;
    right: 0;
    border: none;
    background: none;
    color: #414042; }
    .custom-combobox a:hover, .custom-combobox a:focus {
      border: none;
      background: none;
      color: #414042; }
      .custom-combobox a:hover span.ui-icon-triangle-1-s, .custom-combobox a:focus span.ui-icon-triangle-1-s {
        background: url(data:image/png;base64,R0lGODlhDwAUAIABAAAAAP///yH5BAEAAAEALAAAAAAPABQAAAIXjI+py+0Po5wH2HsXzmw//lHiSJZmUAAAOw==) 99% 50% no-repeat transparent; }
    .custom-combobox a span.ui-icon-triangle-1-s {
      background: url(data:image/png;base64,R0lGODlhDwAUAIABAAAAAP///yH5BAEAAAEALAAAAAAPABQAAAIXjI+py+0Po5wH2HsXzmw//lHiSJZmUAAAOw==) 99% 50% no-repeat transparent; }

.custom-combobox-toggle {
  max-height: 250px; }

#locations-results .result img {
  width: 100%;
  max-width: 250px; }

/**
 * Swiper 3.4.1
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 *
 * http://www.idangero.us/swiper/
 *
 * Copyright 2016, Vladimir Kharlampidi
 * The iDangero.us
 * http://www.idangero.us/
 *
 * Licensed under MIT
 *
 * Released on: December 13, 2016
 */
/*doc
---
title: Swiper
name: swiper
category: Organisms
---

Swiper is a free, modern touch slider with hardware accelerated transitions. We use two instances of Swiper on our sites: one on the homepage, and another slider for sub-pages. This documentation focusses on the latter.

To use Swiper, create a `div` with the following classes: `js-swiper--medium`, `o-swiper`, and `o-swiper--medium`. Inside that, create another `div` with the class `o-swiper__wrapper`. The wrapper is what contains our slides.

Slides are created with the `o-swiper__slide` class. Additionally, the modifier `o-swiper__slide--gradient` will add a dark gradient to the bottom half of the slide. The gradient increases caption visibility. Slides can contain anything, but we typically only use Swiper for images.

Ideally, images used in Swiper will be consistent in size. It's also good practice to lazy load images so they aren't downloaded until the user cycles through the slideshow. To lazy load images, add the `o-swiper__image--lazy` class to the image, and add a blank `div` with the `o-swiper__preloader` after each image.

Captions can be added to slides with the `o-swiper__caption` class. Captions will appear at the bottom of the slide.

For more detailed information about Swiper, check out [the official documentaion](http://idangero.us/swiper/).

```html_example
<div class="js-swiper--medium  o-swiper  o-swiper--medium">
	<!-- Additional required wrapper -->
	<div class="o-swiper__wrapper">
		<!-- Slides -->
		<div class="o-swiper__slide  o-swiper__slide--gradient">
			<img class="o-swiper__image--lazy" data-src="https://placehold.it/1200x400/ACC7BF/fff">
			<div class="o-swiper__preloader"></div>
			<div class="o-swiper__caption">
				<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Curabitur sagittis eleifend mi, in lacinia dui rhoncus id. Sed posuere aliquam mauris fermentum mollis. <a href="#" class="o-swiper__caption-link">Learn More</a></p>
			</div>
		</div>
		<div class="o-swiper__slide  o-swiper__slide--gradient">
			<img class="o-swiper__image--lazy" data-src="https://placehold.it/1200x400/C37070/fff">
			<div class="o-swiper__preloader"></div>
			<div class="o-swiper__caption">
				<p>Fusce ac nunc in justo dictum cursus. Mauris posuere, massa sodales viverra hendrerit, sem nunc dapibus odio, a vestibulum tortor felis eget neque. Quisque posuere nunc vel elementum congue. Vestibulum.</p>
			</div>
		</div>
	</div>
	<!-- Prev/Next Arrows -->
	<div class="o-swiper__button  o-swiper__button--prev">
		<svg class="o-swiper__icon  a-icon  a-icon--large">
			<use xlink:href="../icons/icons.svg#arrow-left" />
		</svg>
	</div>
	<div class="o-swiper__button  o-swiper__button--next">
		<svg class="o-swiper__icon  a-icon  a-icon--large">
			<use xlink:href="../icons/icons.svg#arrow-right" />
		</svg>
	</div>
</div>
```

*/
.o-swiper {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  /* Fix of Webkit flickering */
  z-index: 1; }

.o-swiper-container__no-flexbox .o-swiper__slide {
  float: left; }

.o-swiper-container--vertical > .o-swiper__wrapper {
  -ms-flex-direction: column;
  flex-direction: column; }

.o-swiper__wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: -ms-flexbox;
  display: flex;
  transition-property: transform;
  box-sizing: content-box; }

.o-swiper--android .o-swiper__slide,
.o-swiper__wrapper {
  transform: translate3d(0px, 0, 0); }

.o-swiper--multirow > .o-swiper__wrapper {
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap; }

.o-swiper--free-mode > .o-swiper__wrapper {
  transition-timing-function: ease-out;
  margin: 0 auto; }

.o-swiper__slide {
  -webkit-flex-shrink: 0;
  -ms-flex: 0 0 auto;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 100%;
  position: relative; }

/*.o-swiper__slide--gradient {
  background-image: linear-gradient(to bottom, rgba(0,0,0,0) 50%,rgba(0,0,0,0.65) 100%);

  & > img {
	  position: relative;
	  z-index: -1;
  }
}*/
.o-swiper__slide--gradient:after {
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0.65) 100%);
  bottom: 0;
  content: '';
  display: inline-block;
  left: 0;
  position: absolute;
  right: 0;
  top: 0; }

/* Auto Height */
.o-swiper--autoheight,
.o-swiper--autoheight .o-swiper__slide {
  height: auto; }

.o-swiper--autoheight .o-swiper__wrapper {
  -ms-flex-align: start;
  align-items: flex-start;
  transition-property: transform, height; }

/* a11y */
.o-swiper .o-swiper__notification {
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
  opacity: 0;
  z-index: -1000; }

/* IE10 Windows Phone 8 Fixes */
.o-swiper--wp8-horizontal {
  -ms-touch-action: pan-y;
  touch-action: pan-y; }

.o-swiper--wp8-vertical {
  -ms-touch-action: pan-x;
  touch-action: pan-x; }

/* Images */
.o-swiper__image {
  width: 100%; }

/* Arrows */
.o-swiper__button {
  cursor: pointer; }

.o-swiper__button.is-disabled {
  opacity: 0.35;
  cursor: auto;
  pointer-events: none; }

.o-swiper__button .o-swiper__icon {
  color: #FFF;
  transition: fill 0.1s; }

.o-swiper__button:hover .o-swiper__icon {
  color: #a6192e; }

.o-swiper--medium .o-swiper__button {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 1; }

.o-swiper--medium .o-swiper__button--prev {
  left: .75em; }

.o-swiper--medium .o-swiper__button--next {
  right: .75em; }

.o-swiper__caption-container--medium .o-swiper__button .o-swiper__icon {
  color: #a6192e; }

/*  Caption Container */
.o-swiper__caption-container {
  margin-bottom: 1.5em;
  position: relative;
  z-index: 1; }

.o-swiper__caption-container--medium {
  border-bottom-left-radius: 3px;
  border-bottom-right-radius: 3px;
  border-color: #adafb1;
  border-style: solid;
  border-width: 0 1px 1px 1px; }

.o-swiper__caption {
  color: #FFF;
  text-shadow: 0px 1px 1px rgba(0, 0, 0, 0.5); }

.o-swiper--medium .o-swiper__caption {
  bottom: 0;
  font-size: 0.875em;
  line-height: 1.4;
  padding: 1.5em 3em 0;
  position: absolute;
  z-index: 1; }
  @media (min-width: 48rem) {
    .o-swiper--medium .o-swiper__caption {
      font-size: 1em;
      line-height: 1.5; } }

.o-swiper__caption-container .o-swiper__caption {
  background: rgba(0, 0, 0, 0.3);
  border: 1px solid white;
  border-radius: 3px;
  margin-bottom: 0.5em;
  margin-top: 0.5em;
  padding: 1em;
  text-align: center; }
  @media (min-width: 48rem) {
    .o-swiper__caption-container .o-swiper__caption {
      margin-bottom: 1em;
      margin-top: 1em; } }

.o-swiper__caption-headline {
  color: white;
  font-size: 1.25em;
  letter-spacing: .075em;
  line-height: 1.125;
  margin: 0 0 0.25em;
  text-transform: uppercase; }
  @media (min-width: 30rem) {
    .o-swiper__caption-headline {
      font-size: 1.5em; } }
  @media (min-width: 48rem) {
    .o-swiper__caption-headline {
      font-size: 2em; } }

.o-swiper__caption-link {
  border-bottom-color: white;
  color: white;
  text-transform: uppercase; }

/* Pagination Styles */
.o-swiper__pagination {
  text-align: center;
  transition: 300ms;
  transform: translate3d(0, 0, 0);
  z-index: 10; }

.o-swiper__pagination--medium {
  bottom: 1em;
  position: absolute;
  right: 1em; }

.o-swiper__pagination.o-swiper__pagination-hidden {
  opacity: 0; }

/* Common Styles */
.o-swiper__pagination-fraction,
.o-swiper__pagination-custom,
.o-swiper--horizontal > .o-swiper__pagination-bullets {
  bottom: 10px;
  left: 0;
  width: 100%; }

/* Bullets */
.o-swiper__pagination-bullet {
  width: 14px;
  height: 14px;
  display: inline-block;
  border-radius: 100%;
  border: 1px solid white;
  margin: 0 7px; }
  @media (min-width: 48rem) {
    .o-swiper__pagination-bullet {
      height: 20px;
      margin: 0 10px;
      width: 20px; } }

button.o-swiper__pagination-bullet {
  border: none;
  margin: 0;
  padding: 0;
  box-shadow: none;
  -moz-appearance: none;
  -ms-appearance: none;
  -webkit-appearance: none;
  appearance: none; }

.o-swiper__pagination-clickable .o-swiper__pagination-bullet {
  cursor: pointer; }

.o-swiper__pagination--white .o-swiper__pagination-bullet {
  background: #fff; }

.o-swiper__pagination-bullet.is-active {
  opacity: 1;
  background: white; }

.o-swiper__pagination--white .o-swiper__pagination-bullet.is-active {
  background: #fff; }

.o-swiper__pagination--black .o-swiper__pagination-bullet.is-active {
  background: #000; }

.o-swiper--vertical > .o-swiper__pagination-bullets {
  right: 10px;
  top: 50%;
  transform: translate3d(0px, -50%, 0); }

.o-swiper--vertical > .o-swiper__pagination-bullets .o-swiper__pagination-bullet {
  margin: 5px 0;
  display: block; }

.o-swiper--horizontal > .o-swiper__pagination-bullets .o-swiper__pagination-bullet {
  margin: 0 5px; }

/* Progress */
.o-swiper__pagination-progress {
  background: rgba(0, 0, 0, 0.25);
  position: absolute; }

.o-swiper__pagination-progress .o-swiper__pagination-progressbar {
  background: #007aff;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  transform: scale(0);
  transform-origin: left top; }

.o-swiper--horizontal > .o-swiper__pagination-progress {
  width: 100%;
  height: 4px;
  left: 0;
  top: 0; }

.o-swiper--vertical > .o-swiper__pagination-progress {
  width: 4px;
  height: 100%;
  left: 0;
  top: 0; }

.o-swiper__pagination-progress.o-swiper__pagination-white {
  background: rgba(255, 255, 255, 0.5); }

.o-swiper__pagination-progress.o-swiper__pagination-white .o-swiper__pagination-progressbar {
  background: #fff; }

.o-swiper__pagination-progress.o-swiper__pagination-black .o-swiper__pagination-progressbar {
  background: #000; }

/* 3D Container */
.swiper-container-3d {
  -o-perspective: 1200px;
  perspective: 1200px; }

.swiper-container-3d .o-swiper__wrapper,
.swiper-container-3d .o-swiper__slide,
.swiper-container-3d .o-swiper__slide-shadow-left,
.swiper-container-3d .o-swiper__slide-shadow-right,
.swiper-container-3d .o-swiper__slide-shadow-top,
.swiper-container-3d .o-swiper__slide-shadow-bottom,
.swiper-container-3d .swiper-cube-shadow {
  transform-style: preserve-3d; }

.swiper-container-3d .o-swiper__slide-shadow-left,
.swiper-container-3d .o-swiper__slide-shadow-right,
.swiper-container-3d .o-swiper__slide-shadow-top,
.swiper-container-3d .o-swiper__slide-shadow-bottom {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10; }

.swiper-container-3d .o-swiper__slide-shadow-left {
  /* Safari 4+, Chrome */
  /* Chrome 10+, Safari 5.1+, iOS 5+ */
  /* Firefox 3.6-15 */
  /* Opera 11.10-12.00 */
  background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  /* Firefox 16+, IE10, Opera 12.50+ */ }

.swiper-container-3d .o-swiper__slide-shadow-right {
  /* Safari 4+, Chrome */
  /* Chrome 10+, Safari 5.1+, iOS 5+ */
  /* Firefox 3.6-15 */
  /* Opera 11.10-12.00 */
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  /* Firefox 16+, IE10, Opera 12.50+ */ }

.swiper-container-3d .o-swiper__slide-shadow-top {
  /* Safari 4+, Chrome */
  /* Chrome 10+, Safari 5.1+, iOS 5+ */
  /* Firefox 3.6-15 */
  /* Opera 11.10-12.00 */
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  /* Firefox 16+, IE10, Opera 12.50+ */ }

.swiper-container-3d .o-swiper__slide-shadow-bottom {
  /* Safari 4+, Chrome */
  /* Chrome 10+, Safari 5.1+, iOS 5+ */
  /* Firefox 3.6-15 */
  /* Opera 11.10-12.00 */
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  /* Firefox 16+, IE10, Opera 12.50+ */ }

/* Coverflow */
.swiper-container-coverflow .o-swiper__wrapper,
.swiper-container-flip .o-swiper__wrapper {
  /* Windows 8 IE 10 fix */
  -ms-perspective: 1200px; }

/* Cube + Flip */
.swiper-container-cube,
.swiper-container-flip {
  overflow: visible; }

.swiper-container-cube .o-swiper__slide,
.swiper-container-flip .o-swiper__slide {
  pointer-events: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  z-index: 1; }

.swiper-container-cube .o-swiper__slide .o-swiper__slide,
.swiper-container-flip .o-swiper__slide .o-swiper__slide {
  pointer-events: none; }

.swiper-container-cube .o-swiper__slide.is-active,
.swiper-container-flip .o-swiper__slide.is-active,
.swiper-container-cube .o-swiper__slide.is-active .o-swiper__slide.is-active,
.swiper-container-flip .o-swiper__slide.is-active .o-swiper__slide.is-active {
  pointer-events: auto; }

.swiper-container-cube .o-swiper__slide-shadow-top,
.swiper-container-flip .o-swiper__slide-shadow-top,
.swiper-container-cube .o-swiper__slide-shadow-bottom,
.swiper-container-flip .o-swiper__slide-shadow-bottom,
.swiper-container-cube .o-swiper__slide-shadow-left,
.swiper-container-flip .o-swiper__slide-shadow-left,
.swiper-container-cube .o-swiper__slide-shadow-right,
.swiper-container-flip .o-swiper__slide-shadow-right {
  z-index: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden; }

/* Cube */
.swiper-container-cube .o-swiper__slide {
  visibility: hidden;
  transform-origin: 0 0;
  width: 100%;
  height: 100%; }

.swiper-container-cube .o-swiper__slide.is-active,
.swiper-container-cube .o-swiper__slide-next,
.swiper-container-cube .o-swiper__slide-prev,
.swiper-container-cube .o-swiper__slide-next + .o-swiper__slide {
  pointer-events: auto;
  visibility: visible; }

.swiper-container-cube .swiper-cube-shadow {
  position: absolute;
  left: 0;
  bottom: 0px;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: 0.6;
  filter: blur(50px);
  z-index: 0; }

/* Fade */
.swiper-container-fade.swiper-container-free-mode .o-swiper__slide {
  transition-timing-function: ease-out; }

.swiper-container-fade .o-swiper__slide {
  pointer-events: none;
  transition-property: opacity; }

.swiper-container-fade .o-swiper__slide .o-swiper__slide {
  pointer-events: none; }

.swiper-container-fade .o-swiper__slide.is-active,
.swiper-container-fade .o-swiper__slide.is-active .o-swiper__slide.is-active {
  pointer-events: auto; }

.swiper-zoom-container {
  width: 100%;
  height: 100%;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-align: center;
  align-items: center;
  text-align: center; }

.swiper-zoom-container > img,
.swiper-zoom-container > svg,
.swiper-zoom-container > canvas {
  max-width: 100%;
  max-height: 100%;
  -o-object-fit: contain;
     object-fit: contain; }

/* Scrollbar */
.o-swiper__scrollbar {
  border-radius: 10px;
  position: relative;
  -ms-touch-action: none;
  background: rgba(0, 0, 0, 0.1); }

.o-swiper--horizontal > .o-swiper__scrollbar {
  position: absolute;
  left: 1%;
  bottom: 3px;
  z-index: 50;
  height: 5px;
  width: 98%; }

.o-swiper--vertical > .o-swiper__scrollbar {
  position: absolute;
  right: 3px;
  top: 1%;
  z-index: 50;
  width: 5px;
  height: 98%; }

.o-swiper__scrollbar--drag {
  height: 100%;
  width: 100%;
  position: relative;
  background: rgba(0, 0, 0, 0.5);
  border-radius: 10px;
  left: 0;
  top: 0; }

.o-swiper__scrollbar--cursor-drag {
  cursor: move; }

/* Preloader */
.o-swiper__preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  transform-origin: 50%;
  animation: swiper-preloader-spin 1s steps(12, end) infinite; }

.o-swiper__preloader:after {
  display: block;
  content: "";
  width: 100%;
  height: 100%;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D'0%200%20120%20120'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20xmlns%3Axlink%3D'http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink'%3E%3Cdefs%3E%3Cline%20id%3D'l'%20x1%3D'60'%20x2%3D'60'%20y1%3D'7'%20y2%3D'27'%20stroke%3D'%236c6c6c'%20stroke-width%3D'11'%20stroke-linecap%3D'round'%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(30%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(60%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(90%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(120%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(150%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.37'%20transform%3D'rotate(180%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.46'%20transform%3D'rotate(210%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.56'%20transform%3D'rotate(240%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.66'%20transform%3D'rotate(270%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.75'%20transform%3D'rotate(300%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.85'%20transform%3D'rotate(330%2060%2C60)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
  background-position: 50%;
  background-size: 100%;
  background-repeat: no-repeat; }

.o-swiper__preloader--white:after {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D'0%200%20120%20120'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20xmlns%3Axlink%3D'http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink'%3E%3Cdefs%3E%3Cline%20id%3D'l'%20x1%3D'60'%20x2%3D'60'%20y1%3D'7'%20y2%3D'27'%20stroke%3D'%23fff'%20stroke-width%3D'11'%20stroke-linecap%3D'round'%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(30%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(60%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(90%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(120%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(150%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.37'%20transform%3D'rotate(180%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.46'%20transform%3D'rotate(210%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.56'%20transform%3D'rotate(240%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.66'%20transform%3D'rotate(270%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.75'%20transform%3D'rotate(300%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.85'%20transform%3D'rotate(330%2060%2C60)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E"); }

@keyframes swiper-preloader-spin {
  100% {
    transform: rotate(360deg); } }

/*doc
---
title: Tabs
name: tabs
category: Organisms
---

Tabbed content is useful for toggling between content without jumping around the page or across pages.

Tab headings are created with the "button-group" organism. Modifiers can be added, such as `m-button-group--equal` for equal width tab headings. Similarly, icons can be added to tab headings. See [the button-group documentation][button-groups] for more information.

**Note:** Tabs are not yet functional.

```html_example
<div class="js-tabs  o-tabs">
	<ul class="o-tabs__headings  m-button-group">
		<li class="o-tabs__heading  o-tabs__heading--active  m-button-group__item">
			<a class="m-button-group__link" href="#tab1">
				Building
			</a>
		</li>
		<li class="o-tabs__heading  m-button-group__item">
			<a class="m-button-group__link" href="#tab2">
				Urgent Care
			</a>
		</li>
		<li class="o-tabs__heading  m-button-group__item">
			<a class="m-button-group__link" href="#tab3">
				Pharmacy
			</a>
		</li>
		<li class="o-tabs__heading  m-button-group__item">
			<a class="m-button-group__link" href="#tab4">
				Clinic
			</a>
		</li>
	</ul>
	<div class="o-tabs__panel  o-tabs__panel--active" id="tab1">
		<p>Panel 1</p>
	</div>
	<div class="o-tabs__panel" id="tab2">
		<p>Panel 2</p>
	</div>
	<div class="o-tabs__panel" id="tab3">
		<p>Panel 3</p>
	</div>
	<div class="o-tabs__panel" id="tab4">
		<p>Panel 4</p>
	</div>
</div>
```

*/
.o-tabs {
  display: block; }

.o-tabs__headings {
  cursor: pointer;
  margin: 0; }

.o-tabs__heading .m-button-group__link {
  background-color: #F2F2F2; }

.o-tabs__heading .m-button-group__icon {
  fill: currentColor; }

.o-tabs__heading--active .m-button-group__link {
  background-color: #FFF;
  border-bottom-color: #FFF;
  color: #a6192e; }

.o-tabs__heading--active .m-button-group__icon {
  fill: currentColor; }

.o-tabs__locations .m-button-group__link.is-active {
  background-color: #F2F2F2;
  color: #a6192e; }

.o-tabs__locations .m-button-group__icon {
  fill: currentColor; }

.o-tabs__heading--disabled {
  background-color: initial;
  color: #797b7f;
  cursor: not-allowed; }

.o-tabs__panel {
  border-color: #414042;
  border-style: solid;
  border-width: 0 1px 1px 1px; }

.o-tabs__panel {
  display: none;
  padding: 1.5em; }
  .o-tabs__panel > *:last-child {
    margin-bottom: 0; }

.o-tabs__panel--active {
  display: block; }

/*doc
---
title: Big Lists
name: big-lists
category: Molecules
---
*Last Updated: December 3, 2018*

Big lists are for long lists, mainly lists of links, that would otherwise look plain and boring.

## Use

Generally, big lists are only used on pages where the list is the only content on the page, like on conditions/treatments listing pages. Therefore, big lists typically include a filter box at the top.

All list items when a stand-alone item, or a heading for a sub-list, or as a sub-list item can include an anchor, but this isn't required. (If it's not linked, it will not be underlined.)

## Code

```html_example_table
<ul class="m-big-list">
	<li class="m-big-list__item"><a class="m-big-list__link" href="#">Item 1</a></li>			
	<li class="m-big-list__item"><span class="m-big-list__heading">Item 2, No Link</span></li>			
	<li class="m-big-list__item"><a class="m-big-list__link" href="#">Item 3</a>
		<ul class="m-big-list__sub-list">
			<li class="m-big-list__sub-item"><a class="m-big-list__sub-link" href="#">Sub-Item 1</a></li>
			<li class="m-big-list__sub-item"><a class="m-big-list__sub-link" href="#">Sub-Item 2</a></li>
		</ul>
	</li>
	
</ul>
```

*/
.m-big-list {
  display: block;
  list-style: none;
  margin: 0;
  padding: 0;
  list-style-position: outside; }

.m-big-list__item {
  border-bottom: 1px solid #797b7f;
  padding: 1em 0; }
  .m-big-list__item:last-child {
    border-bottom: none; }
  @media (min-width: 48rem) {
    .m-big-list__item {
      padding: 1.5em; } }

.m-big-list__link,
.m-big-list__heading {
  border-color: currentColor;
  color: #a6192e;
  font-size: 1.5em;
  font-weight: 500;
  letter-spacing: 0.075em;
  padding: 0;
  text-transform: uppercase; }

.m-big-list__sub-list {
  list-style: none;
  padding: 0.5em 0 0; }

.m-big-list__sub-item {
  padding: 0.5em 0 0.5em 1em; }

.m-big-list__sub-link {
  border-color: currentColor;
  color: #414042; }

.m-osrm li {
  cursor: pointer; }
  .m-osrm li:hover {
    background-color: #F2F2F2; }

/*doc
---
title: Breadcrumbs
name: breadcrumbs
category: Molecules
---
*Last Updated: December 3, 2018*

Basic breadcrumb element.

## Use

Breadcrumbs are a secondary navigation element that helps provide a sense of place (where am I?), and provides error correction if a user feels they are not where they should be.

These are automatically-generated molecules that should never be hardcoded or used anywhere other than the following locations within the site UI:

<figure class="a-figure--ds">
	<img data-original="../images/pattern-library/molecules/breadcrumbs-grey-billboard.png" alt="Example of breadcrumbs in a grey billboard"/>
	<figcaption>Fig 1: Example of breadcrumbs used in a grey billboard.</figcaption>
</figure>
<figure class="a-figure--ds">
	<img data-original="../images/pattern-library/molecules/breadcrumbs-img-billboard.jpg" alt="Example of breadcrumbs in an image billboard"/>
	<figcaption>Fig 2: Example of breadcrumbs used in an image billboard.</figcaption>
</figure>

## Code

```html_example_table
<ol class="m-breadcrumbs">
	<li class="m-breadcrumbs__crumb"><a class="a-link">Home</a></li>
	<li class="m-breadcrumbs__crumb"><a class="a-link">Sub Page</a></li>
</ol>
```

*/
.m-breadcrumbs {
  display: block;
  margin: 0 0 1em;
  padding: 0;
  list-style: none; }

.m-breadcrumbs__crumb {
  display: inline-block;
  width: auto;
  padding: 0; }
  .m-breadcrumbs__crumb:not(:last-child):after {
    padding: 0 0.25em 0 0.5em;
    color: #a6192e;
    content: "/"; }

.m-breadcrumbs .a-link {
  color: inherit; }

/*doc
---
title: Button Groups
name: button-groups
category: Molecules
---
*Last Updated: December 3, 2018*

Button groups are a way to visually group buttons with related functions. These should be used judiciously, primarily to provide UI fuctionality (such as to mimic navigational tabs), or as call-to-action buttons.

## Use

Can be styled as follows:

* [Horizontal](#btn-grp_horizontal)
* [Equal (Horizontal) Widths](#btn-grp_equal)
* [Vertical](#btn-grp_vertical)
* [Icons](#btn-grp_icons)
* [Dropdowns](#btn-grp_dropdowns)

### <a name="btn-grp_horizontal"></a>Horizontal

To group related buttons together you can use the `.m-button-group` wrapping element. This will bunch the buttons together and remove the spacing between them.

`m-button-group--nowrap` will stop the text inside from wrapping to new lines. `m-button-group--flex-nowrap` will stop the buttons themselves from wrapping to new lines.

#### Code

```html_example_table
<ul class="m-button-group">
	<li class="m-button-group__item"><a href="#" class="m-button-group__link">Button</a></li>
	<li class="m-button-group__item"><a href="#" class="m-button-group__link">Button</a></li>
	<li class="m-button-group__item"><a href="#" class="m-button-group__link">Button</a></li>
</ul>
```

### <a name="btn-grp_equal"></a>Equal Widths

Adding the `m-button-group--equal` class will make buttons equal width even if text lengths are significantly different.

#### Code

```html_example
<ul class="m-button-group  m-button-group--equal">
	<li class="m-button-group__item"><a href="#" class="m-button-group__link">Short Text</a></li>
	<li class="m-button-group__item"><a href="#" class="m-button-group__link">A Button With Much Longer Text</a></li>
	<li class="m-button-group__item"><a href="#" class="m-button-group__link">More Short Text</a></li>
</ul>
```

### <a name="btn-grp_vertical"></a>Vertical

Button groups can be made vertical by adding the `.m-button-group--vertical` class.

#### Code

```html_example_table
<ul class="m-button-group  m-button-group--vertical">
	<li class="m-button-group__item"><a href="#" class="m-button-group__link">Button</a></li>
	<li class="m-button-group__item"><a href="#" class="m-button-group__link">Button</a></li>
	<li class="m-button-group__item"><a href="#" class="m-button-group__link">Button</a></li>
</ul>
```

### <a name="btn-grp_icons"></a>Icons

To add icons to button groups, add a `m-button-group__link--icon-horizontal` or `m-button-group__link--icon-vertical` class to the link and add the SVG inside the link. The icon must also have two classes, `m-button-group__icon` and a directional modifier class: `m-button-group__icon--top`, `m-button-group__icon--left`, `m-button-group__icon--bottom`, `m-button-group__icon--right`.

#### Code

```html_example
<ul class="m-button-group  m-button-group--equal">
	<li class="m-button-group__item">
		<a class="m-button-group__link  m-button-group__link--icon-vertical" href="#">
			<svg class="a-icon  m-button-group__icon  m-button-group__icon--top">
				<use xlink:href="../images/svg/icons.svg#doctor"></use>
			</svg>
			Button 1
		</a>
	</li>
	<li class="m-button-group__item">
		<a class="m-button-group__link  m-button-group__link--icon-vertical" href="#">
			<svg class="a-icon  m-button-group__icon  m-button-group__icon--top">
				<use xlink:href="../images/svg/icons.svg#location"></use>
			</svg>
			Button 2
		</a>
	</li>
	<li class="m-button-group__item">
		<a class="m-button-group__link  m-button-group__link--icon-vertical" href="#">
			<svg class="a-icon  m-button-group__icon  m-button-group__icon--top">
				<use xlink:href="../images/svg/icons.svg#stethoscope"></use>
			</svg>
			Button 3
		</a>
	</li>
</ul>
```

```html_example_table
<ul class="m-button-group  m-button-group--vertical">
	<li class="m-button-group__item">
		<a class="m-button-group__link  m-button-group__link--icon-horizontal" href="#">
			<svg class="a-icon  m-button-group__icon  m-button-group__icon--left">
				<use xlink:href="../images/svg/icons.svg#doctor"></use>
			</svg>
			Button 1
		</a>
	</li>
	<li class="m-button-group__item">
		<a class="m-button-group__link  m-button-group__link--icon-horizontal" href="#">
			<svg class="a-icon  m-button-group__icon  m-button-group__icon--left">
				<use xlink:href="../images/svg/icons.svg#location"></use>
			</svg>
			Button 2
		</a>
	</li>
	<li class="m-button-group__item">
		<a class="m-button-group__link  m-button-group__link--icon-horizontal" href="#">
			<svg class="a-icon  m-button-group__icon  m-button-group__icon--left">
				<use xlink:href="../images/svg/icons.svg#stethoscope"></use>
			</svg>
			Button 3
		</a>
	</li>
</ul>
```

### <a name="btn-grp_dropdowns"></a>Dropdowns

*Dropdowns are not currently implemented on the website.* Dropdowns can be added to buttons in the button group when HTML is formatted in the following manner.

#### Code

```html_example
<ul class="m-button-group">
	<li class="m-button-group__item">
		<a class="m-button-group__link" href="#">Button 1</a>
	</li>
	<li class="m-button-group__item  m-button-group__link--icon-horizontal  has-dropdown">
		<a class="m-button-group__link" href="#resources">
			Button 2
			<svg class="m-button-group__icon--right  a-icon  a-icon--xsmall  u-fill-currentColor">
				<use xlink:href="../images/svg/icons.svg#arrow-down"></use>
			</svg>
		</a>
		<ul class="m-button-group__dropdown-list  u-higher">
			<li class="m-button-group__dropdown-item">
				<a class="m-button-group__dropdown-link" href="#">Dropdown Button 1</a>
			</li>
			<li class="m-button-group__dropdown-item">
				<a class="m-button-group__dropdown-link" href="#">Dropdown Button 2</a>
			</li>
			<li class="m-button-group__dropdown-item">
				<a class="m-button-group__dropdown-link" href="#">Dropdown Button 3</a>
			</li>
		</ul>
	</li>
	<li class="m-button-group__item">
		<a class="m-button-group__link" href="#">Button 3</a>
	</li>
</ul>
```

*/
.m-button-group {
  border-color: #414042;
  border-style: solid;
  border-width: 1px 0 0 1px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  list-style: none;
  padding: 0; }

.m-button-group--vertical {
  -ms-flex-direction: column;
      flex-direction: column; }

.m-button-group--flex-nowrap {
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap; }

.m-button-group--nowrap {
  white-space: nowrap; }

/*.m-button-group + .m-button-group {
	border-top: none;
}*/
/**
 * Items
 * 1. flex: 1 stops items from wrapping in Safari
 */
.m-button-group__item {
  display: -ms-flexbox;
  display: flex;
  -ms-flex: 1 1 auto;
      flex: 1 1 auto;
  /* [1] */
  position: relative; }

.m-button-group__item--shrink {
  -ms-flex: 0 0 auto;
      flex: 0 0 auto; }

/**
 * Equal Width Buttons
 * 1. Force Safari to wrap on small screens
 */
.m-button-group--equal .m-button-group__item {
  -ms-flex: 1;
      flex: 1;
  min-width: 120px;
  /* [1] */ }

/**
 * Button styling
 */
.m-button-group__link {
  border: 1px solid #414042;
  background-color: #FFF;
  color: #414042;
  letter-spacing: 0.025em;
  display: inline-block;
  max-width: 100%;
  margin: 0;
  padding: 0.5em;
  border-radius: 3px;
  outline: 0;
  font-family: inherit;
  font-size: 1em;
  line-height: normal;
  text-align: center;
  text-decoration: none;
  text-overflow: ellipsis;
  white-space: wrap;
  cursor: pointer;
  overflow: hidden;
  vertical-align: middle;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  font-weight: 500;
  -ms-flex-align: center;
      align-items: center;
  border-radius: 0;
  border-width: 0 1px 1px 0;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  padding: 2em 1em;
  width: 100%;
  /*&:focus:not(:disabled) {
		border-color: map-get($colors, brand);
	}*/ }
  .m-button-group__link.button--active {
    border-color: #282728;
    background-color: #282728;
    color: #FFF; }
  .m-button-group__link:not(:disabled) {
    /*&:focus {
			border-color: $button-focus-border-color;
			box-shadow: $button-focus-box-shadow;
		}*/ }
    .m-button-group__link:not(:disabled):hover {
      background-color: #a6192e;
      border: 1px solid #a6192e;
      color: #FFF; }
    .m-button-group__link:not(:disabled):active {
      border-color: #7a1222;
      background-color: #7a1222;
      color: #FFF; }
  .m-button-group__link:disabled {
    cursor: not-allowed;
    opacity: 0.5; }
  .m-button-group__link:not(:disabled):hover {
    border-width: 0 1px 1px 0; }

.is-stuck .m-button-group--sticky {
  position: relative;
  z-index: 300 + 1; }

.m-button-group--sticky .m-button-group__link {
  font-weight: 300;
  font-size: 1em;
  letter-spacing: inherit;
  padding: 1em 0.5em;
  text-transform: inherit; }
  @media (min-width: 64rem) {
    .m-button-group--sticky .m-button-group__link {
      font-size: 1.25em;
      padding: 1.5em 1em; } }

.m-button-group__link--icon-horizontal {
  -ms-flex-direction: row;
      flex-direction: row; }

.m-button-group__link--icon-vertical {
  -ms-flex-direction: column;
      flex-direction: column; }

.m-button-group__link--more {
  background-color: #F2F2F2;
  min-width: 100px; }

.m-button-group__icon {
  height: 2.5em;
  min-height: 1em;
  min-width: 1em;
  width: 2.5em; }

.m-button-group__icon--top {
  margin-bottom: .75em; }

.m-button-group__icon--right {
  margin-left: 4%; }

.m-button-group__icon--bottom {
  margin-top: .75em; }

.m-button-group__icon--left {
  margin-right: 4%; }

.m-button-group__link .m-button-group__icon {
  color: #939598; }

.m-button-group__link:hover .m-button-group__icon {
  color: inherit; }

/**
 * Button styling when button group is stuck to window
 *
.is-stuck .m-button-group__link {
	padding: $spacing-medium;
}*/
/**
 * Button styling when window is scrolled to item
 */
.m-button-group__link.is-active {
  border-bottom: 8px solid #a6192e;
  color: #a6192e;
  font-weight: 500;
  padding-bottom: calc(2em - 7px);
  position: relative; }
  .m-button-group__link.is-active:not(:disabled):hover {
    border-width: 0 1px 8px 0; }
  .m-button-group__link.is-active:not(:disabled):active {
    border-width: 0 1px 8px 0; }

.m-button-group--sticky .m-button-group__link.is-active {
  padding-bottom: calc(1em - 7px); }
  @media (min-width: 64rem) {
    .m-button-group--sticky .m-button-group__link.is-active {
      padding-bottom: calc(1.5em - 7px); } }

.m-button-group__link.is-active::after {
  background-color: #a6192e;
  content: '';
  display: block;
  height: 12px;
  left: 50%;
  margin-left: -6px;
  position: absolute;
  bottom: -6px;
  transform: rotate(45deg);
  width: 12px; }

.m-button-group__link.is-active:active::after {
  background-color: #7a1222; }

.m-button-group__link.is-active:active::after,
.m-button-group__link.is-active:hover::after {
  z-index: -1; }

/**
 * Dropdown styling
 */
.m-button-group__item.has-dropdown:hover > .m-button-group__link {
  background: #F2F2F2;
  border-color: #414042;
  color: #a6192e; }

.m-button-group__item.has-dropdown:hover > .m-button-group__link.is-active {
  border-bottom-color: #a6192e; }

.m-button-group__item.has-dropdown:hover > .m-button-group__link.is-active::after {
  z-index: 1; }

.m-button-group__dropdown-list {
  display: none;
  left: -1px;
  list-style: none;
  padding: 0;
  position: absolute;
  right: 0;
  top: 100%;
  z-index: 100; }

.m-button-group__item.has-dropdown:hover > .m-button-group__dropdown-list {
  display: block; }

.m-button-group__dropdown-link {
  border: 1px solid #414042;
  background-color: #FFF;
  color: #414042;
  letter-spacing: 0.025em;
  display: inline-block;
  max-width: 100%;
  margin: 0;
  padding: 0.5em;
  border-radius: 3px;
  outline: 0;
  font-family: inherit;
  font-size: 1em;
  line-height: normal;
  text-align: center;
  text-decoration: none;
  text-overflow: ellipsis;
  white-space: wrap;
  cursor: pointer;
  overflow: hidden;
  vertical-align: middle;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  font-weight: 500;
  border-radius: 0;
  border-width: 0 1px 1px 1px;
  font-weight: 300;
  letter-spacing: inherit;
  padding: 1em;
  text-transform: inherit;
  width: 100%; }
  .m-button-group__dropdown-link.button--active {
    border-color: #282728;
    background-color: #282728;
    color: #FFF; }
  .m-button-group__dropdown-link:not(:disabled) {
    /*&:focus {
			border-color: $button-focus-border-color;
			box-shadow: $button-focus-box-shadow;
		}*/ }
    .m-button-group__dropdown-link:not(:disabled):hover {
      background-color: #a6192e;
      border: 1px solid #a6192e;
      color: #FFF; }
    .m-button-group__dropdown-link:not(:disabled):active {
      border-color: #7a1222;
      background-color: #7a1222;
      color: #FFF; }
  .m-button-group__dropdown-link:disabled {
    cursor: not-allowed;
    opacity: 0.5; }
  .m-button-group__dropdown-link:not(:disabled):hover {
    background-color: #F2F2F2;
    border-color: #414042;
    border-width: 0 1px 1px 1px;
    color: #a6192e; }

/**
 * Homepage Buttong Group
 * this element is tricky because it's a button list on small screens
 * and a button group on large screens
 */
@media (min-width: 48rem) {
  .m-button-group__home-wrapper {
    background: #a6192e;
    -webkit-clip-path: polygon(0% 0%, 0% 100%, 100% 100%, 100% 0%, calc(50% + 1em) 0%, 50% 1em, calc(50% - 1em) 0%);
            clip-path: polygon(0% 0%, 0% 100%, 100% 100%, 100% 0%, calc(50% + 1em) 0%, 50% 1em, calc(50% - 1em) 0%);
    position: relative;
    padding-bottom: .3em; } }

.m-button-group--home {
  border: none; }
  @media (min-width: 48rem) {
    .m-button-group--home {
      background: white;
      border-left: 1px solid #939598;
      -webkit-clip-path: polygon(0% 0%, 0% 100%, 100% 100%, 100% 0%, calc(50% + 1.125em) 0%, 50% 1.125em, calc(50% - 1.125em) 0%);
              clip-path: polygon(0% 0%, 0% 100%, 100% 100%, 100% 0%, calc(50% + 1.125em) 0%, 50% 1.125em, calc(50% - 1.125em) 0%);
      position: relative;
      top: .3em; } }

.m-button-group--home .m-button-group__item {
  -ms-flex: 0 0 100%;
      flex: 0 0 100%;
  max-width: 100%;
  margin-bottom: 1.5em; }
  @media (min-width: 20.01rem) {
    .m-button-group--home .m-button-group__item {
      -ms-flex: 0 0 50%;
          flex: 0 0 50%;
      max-width: 50%; } }
  @media (min-width: 48rem) {
    .m-button-group--home .m-button-group__item {
      -ms-flex: 0 0 25%;
          flex: 0 0 25%;
      margin-bottom: 0;
      max-width: 25%;
      padding-left: 0;
      padding-right: 0; } }

.m-button-group--home .m-button-group__link {
  border-color: #939598;
  color: #a6192e; }
  @media (max-width: 47.99rem) {
    .m-button-group--home .m-button-group__link {
      border: 1px solid #939598;
      border-radius: 3px;
      -ms-flex-direction: column;
          flex-direction: column;
      padding-bottom: 1em;
      padding-top: 1em; }
      .m-button-group--home .m-button-group__link:not(:disabled):hover {
        border-width: 1px; } }
  @media (min-width: 48rem) {
    .m-button-group--home .m-button-group__link {
      border-top: 0;
      -ms-flex-direction: row;
          flex-direction: row; } }

.m-button-group--home .m-button-group__icon {
  margin: 0 0 .75em; }
  @media (min-width: 48rem) {
    .m-button-group--home .m-button-group__icon {
      margin: 0 4% 0 0; } }

/*
.m-button-group--home :not(:hover) .m-button-group__icon {
	color: map-get($colors, grey);
}
*/
/*doc
---
title: Button Lists
name: button-lists
category: Molecules
---
*Last Updated: December 3, 2018*

Used for a list of links to provide more visual interest than a simple `<ul>` or `<ol>`. Comes in standard-size or big button flavors.

## Standard Buttons

### Use

The styling for button lists is minimal. The bulk comes from the grid classes and button classes.

#### Recommended 👍

Use for lists of links with items containing no more than a line or two of text.

On desktop, should usually be spread across three columns.

#### Not Recommended 👎

Avoid using with lists that have a large number of list items (more than 9 or so); larger lists present usability issues (such as: lower scanability). For longer lists consider using the [A-Z Lists][a-z-lists] organism instead.

### Code

```html_example
<ul class="m-button-list  l-grid">
	<li class="m-button-list__item  l-grid__item  1/1  1/2@small  1/3@large">
		<a class="m-button-list__button  a-button  a-button--expand  a-button--small" href="#">Button</a>
	</li>
	<li class="m-button-list__item  l-grid__item  1/1  1/2@small  1/3@large">
		<a class="m-button-list__button  a-button  a-button--expand  a-button--small" href="#">Lists</a>
	</li>
	<li class="m-button-list__item  l-grid__item  1/1  1/2@small  1/3@large">
		<a class="m-button-list__button  a-button  a-button--expand  a-button--small" href="#">are</a>
	</li>
	<li class="m-button-list__item  l-grid__item  1/1  1/2@small  1/3@large">
		<a class="m-button-list__button  a-button  a-button--expand  a-button--small" href="#">Lots</a>
	</li>
	<li class="m-button-list__item  l-grid__item  1/1  1/2@small  1/3@large">
		<a class="m-button-list__button  a-button  a-button--expand  a-button--small" href="#">of</a>
	</li>
	<li class="m-button-list__item  l-grid__item  1/1  1/2@small  1/3@large">
		<a class="m-button-list__button  a-button  a-button--expand  a-button--small" href="#">Fun</a>
	</li>
	<li class="m-button-list__item  l-grid__item  1/1">
		<a class="m-button-list__button  a-button  a-button--expand" href="#">View All</a>
	</li>
</ul>
```

## Big Buttons

### Use

To be used with content that requires stronger visual distinction and/or with longer text.

### Code

```html_example
<ul class="m-button-list  m-button-list--large  l-grid">
	<li class="m-button-list__item  l-grid__item  1/1  1/2@medium">
		<a class="m-button-list__button  a-button  a-button--expand  a-button--large" href="#">How do you get cancer of the anus?</a>
	</li>
	<li class="m-button-list__item  l-grid__item  1/1  1/2@medium">
		<a class="m-button-list__button  a-button  a-button--expand  a-button--large" href="#">How can doctors tell if anal cancer has spread?</a>
	</li>
	<li class="m-button-list__item  l-grid__item  1/1  1/2@medium">
		<a class="m-button-list__button  a-button  a-button--expand  a-button--large" href="#">How does cancer spread?</a>
	</li>
	<li class="m-button-list__item  l-grid__item  1/1  1/2@medium">
		<a class="m-button-list__button  a-button  a-button--expand  a-button--large" href="#">Treatments for anal cancer at Huntsman Institute</a>
	</li>
</ul>
```

*/
.m-button-list {
  padding-top: 1em; }

.m-button-list__item {
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 1em; }
  @media (min-width: 30rem) {
    .m-button-list__item {
      margin-bottom: 2em; } }

.m-button-list__button {
  display: -ms-flexbox !important;
  display: flex !important;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-pack: center;
      justify-content: center; }

.m-button-list--large .m-button-list__button {
  border-color: #a6192e;
  font-weight: 300;
  padding: 2em; }

/*doc
---
title: Callout Boxes
name: callout-boxes
category: Molecules
---
*Last Updated: December 3, 2018*

Callout boxes are used for the main call-to-action on a page.

## Use

### Recommended 👍

They're used to present phone number and appointment request buttons. They can additionally display a reffering doctor link.

These boxes will fill the available space. Wrap inside a grid element to achieve the desired width.

### Not Recommended 👎

Do not use these callout boxes within the body of a page. Instead, use the [simple unlinked card](#card_simple-unlinked) molecule.

### Standard

By default, callout boxes have no background.

#### Code

```html_example_table
<div class="m-callout">
	<a class="m-callout__phone" href="tel:1-800-555-5555">(800) 555-5555</a>
	<a class="m-callout__button" href="#">Schedule an Appointment</a>
	<a class="m-callout__refer" href="#">Refer a Patient</a>
</div>
```

### Background

Adding the `m-callout--white` class will give the callout a slightly transparent white background. This is mainly used for image billboards.

#### Code

```html_example_table
<div class="u-bg-black" style="padding:1em;">
	<div class="m-callout  m-callout--white">
		<a class="m-callout__phone" href="tel:1-800-555-5555">(800) 555-5555</a>
		<a class="m-callout__button" href="#">Schedule an Appointment</a>
		<a class="m-callout__refer" href="#">Refer a Patient</a>
	</div>
</div>
```

*/
.m-callout {
  border-radius: 3px;
  padding: 1em 0;
  text-align: center; }
  @media (min-width: 48rem) {
    .m-callout {
      padding: 1em; } }

.m-callout--white {
  background: rgba(255, 255, 255, 0.85); }

@media (max-width: 47.99rem) {
  .m-callout__phone {
    border: 1px solid #414042;
    background-color: #FFF;
    color: #414042;
    letter-spacing: 0.025em;
    display: inline-block;
    max-width: 100%;
    margin: 0;
    padding: 0.5em;
    border-radius: 3px;
    outline: 0;
    font-family: inherit;
    font-size: 1em;
    line-height: normal;
    text-align: center;
    text-decoration: none;
    text-overflow: ellipsis;
    white-space: wrap;
    cursor: pointer;
    overflow: hidden;
    vertical-align: middle;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;
    font-weight: 500;
    border: 1px solid #a6192e;
    background-color: #FFF;
    color: #a6192e;
    display: block;
    margin-bottom: 1em; }
    .m-callout__phone.button--active {
      border-color: #282728;
      background-color: #282728;
      color: #FFF; }
    .m-callout__phone:not(:disabled) {
      /*&:focus {
			border-color: $button-focus-border-color;
			box-shadow: $button-focus-box-shadow;
		}*/ }
      .m-callout__phone:not(:disabled):hover {
        background-color: #a6192e;
        border: 1px solid #a6192e;
        color: #FFF; }
      .m-callout__phone:not(:disabled):active {
        border-color: #7a1222;
        background-color: #7a1222;
        color: #FFF; }
    .m-callout__phone:disabled {
      cursor: not-allowed;
      opacity: 0.5; }
    .m-callout__phone.button--active {
      border-color: #7a1222;
      background-color: #7a1222;
      color: #FFF; }
    .m-callout__phone:not(:disabled) {
      /*&:focus {
			border-color: $button-focus-border-color;
			box-shadow: $button-focus-box-shadow;
		}*/ }
      .m-callout__phone:not(:disabled):hover {
        background-color: #a6192e;
        border: 1px solid #a6192e;
        color: #FFF; }
      .m-callout__phone:not(:disabled):active {
        border-color: #7a1222;
        background-color: #7a1222;
        color: #FFF; } }

@media (min-width: 48rem) {
  .m-callout__phone {
    border: none;
    color: inherit;
    display: inline-block;
    font-size: 1.5em;
    font-weight: inherit;
    margin-bottom: 0.5em; } }

.m-callout__button {
  border: 1px solid #414042;
  background-color: #FFF;
  color: #414042;
  letter-spacing: 0.025em;
  display: inline-block;
  max-width: 100%;
  margin: 0;
  padding: 0.5em;
  border-radius: 3px;
  outline: 0;
  font-family: inherit;
  font-size: 1em;
  line-height: normal;
  text-align: center;
  text-decoration: none;
  text-overflow: ellipsis;
  white-space: wrap;
  cursor: pointer;
  overflow: hidden;
  vertical-align: middle;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  font-weight: 500;
  border: 1px solid transparent;
  background-color: #a6192e;
  color: #FFF;
  letter-spacing: 0.1em;
  display: block;
  text-transform: uppercase; }
  .m-callout__button.button--active {
    border-color: #282728;
    background-color: #282728;
    color: #FFF; }
  .m-callout__button:not(:disabled) {
    /*&:focus {
			border-color: $button-focus-border-color;
			box-shadow: $button-focus-box-shadow;
		}*/ }
    .m-callout__button:not(:disabled):hover {
      background-color: #a6192e;
      border: 1px solid #a6192e;
      color: #FFF; }
    .m-callout__button:not(:disabled):active {
      border-color: #7a1222;
      background-color: #7a1222;
      color: #FFF; }
  .m-callout__button:disabled {
    cursor: not-allowed;
    opacity: 0.5; }
  .m-callout__button.button--active {
    background-color: #7a1222; }
  .m-callout__button:not(:disabled) {
    /*&:focus {
			border-color: $button-focus-border-color;
			box-shadow: $button-focus-box-shadow;
		}*/ }
    .m-callout__button:not(:disabled):hover {
      background-color: #d2203a; }
    .m-callout__button:not(:disabled):active {
      background-color: #7a1222; }

.m-callout__refer {
  display: block;
  border-bottom: none;
  text-transform: uppercase;
  margin-top: 1em; }

.m-callout__refer .a-icon {
  margin-right: 0.5em; }

.m-callout__phone + .m-callout__refer {
  margin-top: 0.5em; }

@media (min-width: 48rem) {
  .m-callout__button.is-stuck {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
    display: block;
    position: fixed;
    right: 0;
    top: 50%;
    transform: rotate(270deg) translate(60%, 0);
    transform-origin: bottom right;
    z-index: 600; } }

/*doc
---
title: Image Captions
name: image-captions
category: Molecules
---
*Last Updated: December 3, 2018*

These classes create caption overlays for images. They are primarily used in conjunction with the [billboard][billboards] or [swiper][swiper] organisms.

## Use

Can be used with the following options:

* **Colors & Boxes** (use one)
	- [Dark](#captions_dark)
	- [Light](#captions_light)
	- [Boxed](#captions_boxed)
* **Positioning** (use one, in conjunction with one of the above style classes)
	- [Bottom](#captions_bottom)
	- [Top](#captions_top)

### <a name="captions_dark"></a>Dark

Dark captions have a darkened, semi-transparent background with light text.

####Code

```html_example
<header class="o-billboard  o-billboard--bg-image  o-billboard--small  l-container  l-container--super  l-container--flush" role="banner">
	<div class="o-billboard__image-wrapper  o-billboard__image-wrapper--gradient" style="background-image:url('https://placehold.it/1200x400/ACC7BF/fff');">
		<img alt="" class="o-billboard__image o-billboard__image-wrapper--gradient" style="opacity:0;" src="https://placehold.it/1200x400/ACC7BF/fff">
	</div>
	<div class="o-billboard__content">
		<div class="o-billboard__header"></div>
		<div class="o-billboard__body"></div>
		<div class="o-billboard__footer">
			<div class="m-caption  m-caption--dark">
				<div class="l-container  l-container--large">
					<h1 class="m-caption__heading">Heading</h1>
					<p class="m-caption__subheading">Subheading</p>
				</div>
			</div>
		</div>
	</div>
</header>
```

### <a name="captions_light"></a>Light

Light captions have a lightened, semi-transparent background and dark text.

####Code

```html_example
<header class="o-billboard  o-billboard--bg-image  o-billboard--small  l-container  l-container--super  l-container--flush" role="banner">
	<div class="o-billboard__image-wrapper  o-billboard__image-wrapper--gradient" style="background-image:url('https://placehold.it/1200x400/ACC7BF/fff');">
		<img alt="" class="o-billboard__image o-billboard__image-wrapper--gradient" style="opacity:0;" src="https://placehold.it/1200x400/ACC7BF/fff">
	</div>
	<div class="o-billboard__content">
		<div class="o-billboard__header"></div>
		<div class="o-billboard__body"></div>
		<div class="o-billboard__footer">
			<div class="m-caption  m-caption--light">
				<div class="l-container  l-container--large">
					<h1 class="m-caption__heading">Heading</h1>
					<p class="m-caption__subheading">Subheading</p>
				</div>
			</div>
		</div>
	</div>
</header>
```

### <a name="captions_boxed"></a>Boxed Captions

To enclose the caption with a border and center align text. Currently only used on the homepage slider.

####Code

```html_example
<header class="o-billboard  o-billboard--bg-image  o-billboard--small  l-container  l-container--super  l-container--flush" role="banner">
	<div class="o-billboard__image-wrapper  o-billboard__image-wrapper--gradient" style="background-image:url('https://placehold.it/1200x400/ACC7BF/fff');">
		<img alt="" class="o-billboard__image o-billboard__image-wrapper--gradient" style="opacity:0;" src="https://placehold.it/1200x400/ACC7BF/fff">
	</div>
	<div class="o-billboard__content">
		<div class="o-billboard__header"></div>
		<div class="o-billboard__body"></div>
		<div class="o-billboard__footer">
			<div class="l-container  l-container--large">
				<div class="m-caption  m-caption--box  m-caption--dark  u-space-bottom--medium">
					<h1 class="m-caption__heading">Heading</h1>
					<p class="m-caption__subheading">Subheading</p>
				</div>
			</div>
		</div>
	</div>
</header>
```

### <a name="captions_bottom"></a>Bottom

To position the caption at the bottom of the image, place `<div class="m-caption m-caption--">` within the `<div class="o-billboard__footer">`. This is the recommended positioning for most images.

####Code

```html_example
<header class="o-billboard  o-billboard--bg-image  o-billboard--small  l-container  l-container--super  l-container--flush" role="banner">
	<div class="o-billboard__image-wrapper  o-billboard__image-wrapper--gradient" style="background-image:url('https://placehold.it/1200x400/ACC7BF/fff');">
		<img alt="" class="o-billboard__image o-billboard__image-wrapper--gradient" style="opacity:0;" src="https://placehold.it/1200x400/ACC7BF/fff">
	</div>
	<div class="o-billboard__content">
		<div class="o-billboard__header"></div>
		<div class="o-billboard__body"></div>
		<div class="o-billboard__footer">
			<div class="m-caption  m-caption--dark">
				<div class="l-container  l-container--large">
					<h1 class="m-caption__heading">Heading</h1>
					<p class="m-caption__subheading">Subheading</p>
				</div>
			</div>
		</div>
	</div>
</header>
```

### <a name="captions_top"></a>Top

To position the caption at the top of the image, place `<div class="m-caption m-caption--">` within the `<div class="o-billboard__header">`. Use only when a caption positioned in the bottom would obscure the primary focus of the image.

####Code

```html_example
<header class="o-billboard  o-billboard--bg-image  o-billboard--small  l-container  l-container--super  l-container--flush" role="banner">
	<div class="o-billboard__image-wrapper  o-billboard__image-wrapper--gradient" style="background-image:url('https://placehold.it/1200x400/ACC7BF/fff');">
		<img alt="" class="o-billboard__image o-billboard__image-wrapper--gradient" style="opacity:0;" src="https://placehold.it/1200x400/ACC7BF/fff">
	</div>
	<div class="o-billboard__content">
		<div class="o-billboard__header">
			<div class="m-caption  m-caption--dark">
				<div class="l-container  l-container--large">
					<h1 class="m-caption__heading">Heading</h1>
					<p class="m-caption__subheading">Subheading</p>
				</div>
			</div>
		</div>
		<div class="o-billboard__body"></div>
		<div class="o-billboard__footer"></div>
	</div>
</header>
```

*/
.m-caption {
  padding-bottom: 3em;
  padding-top: 3em; }

.m-caption--super {
  padding-bottom: 3em;
  padding-top: 3em; }

.m-caption--xlarge {
  padding-bottom: 2em;
  padding-top: 2em; }

.m-caption--large {
  padding-bottom: 1.5em;
  padding-top: 1.5em; }

.m-caption--medium {
  padding-bottom: 1em;
  padding-top: 1em; }

.m-caption--small {
  padding-bottom: 0.5em;
  padding-top: 0.5em; }

.m-caption--xsmall {
  padding-bottom: 0.25em;
  padding-top: 0.25em; }

@media (min-width: 20rem) {
  .m-caption--super\@xsmall {
    padding-bottom: 3em;
    padding-top: 3em; }
  .m-caption--xlarge\@xsmall {
    padding-bottom: 2em;
    padding-top: 2em; }
  .m-caption--large\@xsmall {
    padding-bottom: 1.5em;
    padding-top: 1.5em; }
  .m-caption--medium\@xsmall {
    padding-bottom: 1em;
    padding-top: 1em; }
  .m-caption--small\@xsmall {
    padding-bottom: 0.5em;
    padding-top: 0.5em; }
  .m-caption--xsmall\@xsmall {
    padding-bottom: 0.25em;
    padding-top: 0.25em; } }

@media (min-width: 30rem) {
  .m-caption--super\@small {
    padding-bottom: 3em;
    padding-top: 3em; }
  .m-caption--xlarge\@small {
    padding-bottom: 2em;
    padding-top: 2em; }
  .m-caption--large\@small {
    padding-bottom: 1.5em;
    padding-top: 1.5em; }
  .m-caption--medium\@small {
    padding-bottom: 1em;
    padding-top: 1em; }
  .m-caption--small\@small {
    padding-bottom: 0.5em;
    padding-top: 0.5em; }
  .m-caption--xsmall\@small {
    padding-bottom: 0.25em;
    padding-top: 0.25em; } }

@media (min-width: 48rem) {
  .m-caption--super\@medium {
    padding-bottom: 3em;
    padding-top: 3em; }
  .m-caption--xlarge\@medium {
    padding-bottom: 2em;
    padding-top: 2em; }
  .m-caption--large\@medium {
    padding-bottom: 1.5em;
    padding-top: 1.5em; }
  .m-caption--medium\@medium {
    padding-bottom: 1em;
    padding-top: 1em; }
  .m-caption--small\@medium {
    padding-bottom: 0.5em;
    padding-top: 0.5em; }
  .m-caption--xsmall\@medium {
    padding-bottom: 0.25em;
    padding-top: 0.25em; } }

@media (min-width: 64rem) {
  .m-caption--super\@large {
    padding-bottom: 3em;
    padding-top: 3em; }
  .m-caption--xlarge\@large {
    padding-bottom: 2em;
    padding-top: 2em; }
  .m-caption--large\@large {
    padding-bottom: 1.5em;
    padding-top: 1.5em; }
  .m-caption--medium\@large {
    padding-bottom: 1em;
    padding-top: 1em; }
  .m-caption--small\@large {
    padding-bottom: 0.5em;
    padding-top: 0.5em; }
  .m-caption--xsmall\@large {
    padding-bottom: 0.25em;
    padding-top: 0.25em; } }

@media (min-width: 78rem) {
  .m-caption--super\@xlarge {
    padding-bottom: 3em;
    padding-top: 3em; }
  .m-caption--xlarge\@xlarge {
    padding-bottom: 2em;
    padding-top: 2em; }
  .m-caption--large\@xlarge {
    padding-bottom: 1.5em;
    padding-top: 1.5em; }
  .m-caption--medium\@xlarge {
    padding-bottom: 1em;
    padding-top: 1em; }
  .m-caption--small\@xlarge {
    padding-bottom: 0.5em;
    padding-top: 0.5em; }
  .m-caption--xsmall\@xlarge {
    padding-bottom: 0.25em;
    padding-top: 0.25em; } }

@media (min-width: 125rem) {
  .m-caption--super\@super {
    padding-bottom: 3em;
    padding-top: 3em; }
  .m-caption--xlarge\@super {
    padding-bottom: 2em;
    padding-top: 2em; }
  .m-caption--large\@super {
    padding-bottom: 1.5em;
    padding-top: 1.5em; }
  .m-caption--medium\@super {
    padding-bottom: 1em;
    padding-top: 1em; }
  .m-caption--small\@super {
    padding-bottom: 0.5em;
    padding-top: 0.5em; }
  .m-caption--xsmall\@super {
    padding-bottom: 0.25em;
    padding-top: 0.25em; } }

.m-caption--light {
  background-color: rgba(255, 255, 255, 0.65); }

.m-caption--dark {
  background-color: rgba(0, 0, 0, 0.3); }
  @media (max-width: 47.99rem) {
    .m-caption--dark {
      background-color: rgba(0, 0, 0, 0.8); } }

.m-caption--box {
  border-radius: 3px;
  border-style: solid;
  border-width: 1px;
  padding: 1.5em;
  text-align: center; }

.m-caption--light.m-caption--box {
  border-color: #414042; }

.m-caption--dark.m-caption--box {
  border-color: #FFF; }
  @media (max-width: 47.99rem) {
    .m-caption--dark.m-caption--box {
      background-color: rgba(0, 0, 0, 0.3); } }

.m-caption__heading,
.m-caption__link {
  text-transform: uppercase; }

.m-caption__heading:last-child,
.m-caption__subheading:last-child,
.m-caption__link:last-child {
  margin-bottom: 0; }

.m-caption__heading {
  font-size: 1.25em;
  letter-spacing: .075em;
  line-height: 1.2;
  margin: 0 0 0.25em; }
  @media (min-width: 30rem) {
    .m-caption__heading {
      font-size: 1.5em; } }
  @media (min-width: 48rem) {
    .m-caption__heading {
      font-size: 2em; } }

.m-caption--dark .m-caption__heading,
.m-caption--dark .m-caption__subheading,
.m-caption--dark .m-caption__link {
  color: #FFF;
  text-shadow: 0px 1px 3px rgba(0, 0, 0, 0.5); }

.m-caption--light .m-caption__heading,
.m-caption--light .m-caption__subheading,
.m-caption--light .m-caption__link {
  color: #414042;
  text-shadow: 0px 1px 3px rgba(255, 255, 255, 0.5); }

.m-caption--dark .m-caption__link {
  border-bottom-color: #FFF; }

.m-caption--light .m-caption__link {
  border-bottom-color: #414042; }

/*doc
---
title: Cards
name: cards
category: Molecules
---
*Last Updated: December 3, 2018*

Cards are a common minimalistic design tool used to segregate sections of content. We're using cards to link to pages that aren't specialties, procedures, or programs.

## Use

Cards are a good way to separate certain content from the rest of a pages content. They can be grouped (using [grid][grids] classes) to group cards with related content (such as a related articles section).

Notice the entire card is wrapped in an anchor tag, and the call-to-action is a `button`. This makes the entire card clickable. (Excepting [simple unlinked cards](#card_simple-unlinked), of course.)

Available versions:

* [Default, with no border](#card_default)
* [Bordered](#card_bordered)
* [Simple linked](#card_simple-linked)
* [Simple unlinked](#card_simple-unlinked)
* [Locations unlinked (a.k.a. find a location cards)](#card_locations)

### <a name="card_simple-default"></a>No Border (default)

Better used as full-width or two-column cards. Any more than that and each card may not have enough visual separation from the others.

<figure class="a-figure--ds">
	<img src="../images/pattern-library/molecules/cards-default.jpg" alt="Example of default cards in use"/>
	<figcaption>Fig 1: Example of default cards in use</figcaption>
</figure>

#### Code

```html_example_table
<a class="m-card" href="#">
	<img class="m-card__image" data-original="https://placehold.it/900x360">
	<header class="m-card__header">
		<h3 class="m-card__heading">Card Title</h3>
	</header>
	<div class="m-card__body">
		<p class="a-paragraph">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin imperdiet facilisis est sed faucibus. Mauris et dolor at neque tincidunt feugiat ut at turpis. Suspendisse potenti...</p>
	</div>
	<footer class="m-card__footer">
		<button class="a-button  a-button--brand  a-button--expand">Read More</button>
	</footer>
</a>
```

### <a name="card_bordered"></a>Bordered

<figure class="a-figure--ds">
	<img src="../images/pattern-library/molecules/cards-bordered.jpg" alt="Example of bordered cards in use"/>
	<figcaption>Fig 2: Example of bordered cards in use</figcaption>
</figure>

#### Code

```html_example_table
<a class="m-card  m-card--bordered" href="#">
	<img class="m-card__image" data-original="https://placehold.it/900x360">
	<header class="m-card__header">
		<h3 class="m-card__heading">Card Title</h3>
	</header>
	<div class="m-card__body">
		<p class="a-paragraph">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin imperdiet facilisis est sed faucibus. Mauris et dolor at neque tincidunt feugiat ut at turpis. Suspendisse potenti...</p>
	</div>
	<footer class="m-card__footer">
		<button class="a-button  a-button--brand  a-button--expand">Read More</button>
	</footer>
</a>
```

### <a name="card_simple-linked"></a>Simple Linked Cards

<figure class="a-figure--ds">
	<img src="../images/pattern-library/molecules/cards-simple-linked.png" alt="Example of simple linked cards in use"/>
	<figcaption>Fig 3: Example of simple linked cards in use</figcaption>
</figure>

Simple cards are an icon with a heading. These are often used inside a grid layout.

#### Code

```html_example
<div class="l-grid  u-space-top--medium  u-space-top--large@medium">
	<div class="l-grid__item  1/1  1/2@small  1/3@large  u-flex">
		<a class="m-card  m-card--bordered  u-flex-grow" href="#">
			<svg class="m-card__image  a-icon  a-icon--super">
				<use xlink:href="../images/svg/icons.svg#family"></use>
			</svg>
			<header class="m-card__header">
				<h5 class="m-card__heading">Example 1</h5>
			</header>
		</a>
	</div>
	<div class="l-grid__item  1/1  1/2@small  1/3@large  u-flex">
		<a class="m-card  m-card--bordered  u-flex-grow" href="#">
			<svg class="m-card__image  a-icon  a-icon--super">
				<use xlink:href="../images/svg/icons.svg#baby"></use>
			</svg>
			<header class="m-card__header">
				<h5 class="m-card__heading">Example 2</h5>
			</header>
		</a>
	</div>
	<div class="l-grid__item  1/1  1/2@small  1/3@large  u-flex">
		<a class="m-card  m-card--bordered  u-flex-grow" href="#">
			<svg class="m-card__image  a-icon  a-icon--super">
				<use xlink:href="../images/svg/icons.svg#stethoscope"></use>
			</svg>
			<header class="m-card__header">
				<h5 class="m-card__heading">Example 3</h5>
			</header>
		</a>
	</div>
</div>
```

### <a name="card_simple-unlinked"></a>Simple Unlinked Cards

Best used as a single card, wrapped in "u-pull-right" `<div>`. Use `<h3>` (placed before the "m-card" `<div>` and inside the "u-pull-right" `<div>`) to give the card a title; may also use `<small class="u-color-grey">` (placed after the "m-card" `<div>` and inside the "u-pull-right" `<div>`) as a caption/footnote to the card.

<figure class="a-figure--ds">
	<img src="../images/pattern-library/molecules/cards-simple-unlinked.png" alt="Example of simple unlinked cards in use"/>
	<figcaption>Fig 4: Example of simple unlinked cards in use</figcaption>
</figure>

#### Code

```html_example
<div class="o-content">
	<div class="u-pull-right  u-text-align--center">
		<h3 class="u-space-top--xsmall">Procedure Cost</h3>
		<div class="m-card  m-card--bordered  u-flex-grow  u-space-bottom--xsmall">
			<header class="m-card__header">
				<p class="u-large  u-no-space">Liposuction (one area)</p>
				<p class="u-xlarge  u-bold  u-color-brand  u-no-space">$3,300*</p>
			</header>
		</div>
		<small class="u-color-grey">* Price listed is an estimate.</small>
	</div>
	<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque tincidunt suscipit faucibus. Ut eleifend risus vitae eros rutrum, interdum dapibus nibh aliquam. Sed et felis mauris. Aliquam elit dui, accumsan nec erat id, blandit pulvinar orci.</p>
	<p>Vestibulum elit tellus, convallis efficitur justo id, consectetur pretium diam. Aenean pretium a massa quis posuere. Etiam vel malesuada velit. Duis est diam, rutrum condimentum ullamcorper eget, egestas ac massa. Praesent ligula leo, iaculis ut sem in, interdum porttitor augue. Maecenas consectetur eros in porttitor blandit.</p>
</div>
```

### <a name="card_locations"></a>Find A Location Cards

Full-featured cards that can list more location-related info such as phone numbers, hours, addresses, etc. The whole card is not clickable, but contains links on the image, button, "Get Directions" text, and any other relevant links.

Provides filter-based highlighted areas (such as when the pharmacy filter is selected, the pharmacy hours are highlighted).

<figure class="a-figure--ds">
	<img src="../images/pattern-library/molecules/cards-locations.jpg" alt="Example of find a location cards in use"/>
	<figcaption>Fig 5: Example of find a location cards in use</figcaption>
</figure>

#### Code

```html_example_table
<div class="m-dropdown-items u-flex u-justify-between l-grid__item 3/4 u-space-bottom--medium ng-scope">
	<div class="m-card u-border-all u-border--grey">
		<a class="u-border-none" target="_self" href="//healthcare.utah.edu/locations/farmington/index.php">
		    <div class="u-ratio  u-ratio--21x9 u-ratio--2x1@medium" style="background-image: url(//healthcare.utah.edu/locations/_images/farmington-new.jpg); background-size: cover;background-position: center;"></div>
		</a>
		<a class="u-border-none" target="_self" href="//healthcare.utah.edu/locations/farmington/index.php">
		    <div class="u-large u-color-brand u-bold u-space-top--medium ng-binding">Farmington Health Center</div>
		</a>
		<div class="m-card__body">
			<p class="u-bold u-no-space u-space-top--xsmall u-space-bottom--small ng-binding">801-213-3200</p>
			<p class="u-no-space u-space-bottom--large ng-binding">165 N. University Ave<br> Farmington, UT 84025<br><a target="_blank" href="https://www.google.com/maps/dir//165 N. University Ave Farmington UT 84025">Get Directions</a></p>
			<div class="u-space-bottom--small">
				<div class="u-bold u-color-brand">General Building Hours:</div>
				<div style="white-space: pre;" class="ng-binding">Mon-Sun 7 AM -  11 PM</div>
			</div>
			<div class="seperate-hours urgent-hours u-space-bottom--small" style="">
				<div class="u-bold u-color-brand">Urgent Care Hours:</div>
				<div style="white-space: pre;" class="ng-binding">Mon-Sun 7 AM -  11 PM</div>
			</div>
			<div class="seperate-hours pharmacy-hours u-space-bottom--small">
				<div class="u-bold u-color-brand">Pharmacy Hours:</div>
				<div style="white-space: pre;" class="ng-binding">Mon-Sun 7 AM -  11 PM</div>
			</div>
		</div>
        <div class="m-card__footer">
	        <a class="a-button a-button--brand a-button--expand ng-binding" target="_self" href="//healthcare.utah.edu/locations/farmington/index.php">About Farmington Health Center</a>
        </div>
	</div>
</div>
```

*/
.m-card {
  padding: 0;
  list-style: none;
  background-color: #FFF;
  border: none;
  border-radius: 3px;
  color: inherit;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  font-weight: inherit;
  overflow: hidden;
  margin-bottom: 1em;
  padding: 1em;
  width: 100%; }
  .m-card > .o-image:not(:first-child) {
    padding: 1em 0 0; }

a.m-card:not(.m-card--profile):hover {
  background-color: #F2F2F2;
  box-shadow: 0 0 1px rgba(65, 64, 66, 0.25), 0 3px 6px -2px rgba(65, 64, 66, 0.2);
  color: currentColor; }

.m-card--bordered,
.m-card--bordered:hover {
  border: 1px solid #adafb1; }

@media (min-width: 48rem) {
  .m-card--bordered {
    margin-bottom: 2em; } }

.a-field + .m-card {
  cursor: pointer; }

.a-field:checked + .m-card,
.a-field:checked + * .m-card__heading {
  border-color: #a6192e;
  color: #a6192e; }

.m-card--sticky {
  max-height: 90vh;
  overflow-y: scroll;
  position: -webkit-sticky;
  position: sticky;
  top: 1.5em;
  z-index: 100; }

@media (min-width: 20rem) {
  .m-card--sticky\@xsmall {
    max-height: 90vh;
    overflow-y: scroll;
    position: -webkit-sticky;
    position: sticky;
    top: 1.5em;
    z-index: 100; } }

@media (min-width: 30rem) {
  .m-card--sticky\@small {
    max-height: 90vh;
    overflow-y: scroll;
    position: -webkit-sticky;
    position: sticky;
    top: 1.5em;
    z-index: 100; } }

@media (min-width: 48rem) {
  .m-card--sticky\@medium {
    max-height: 90vh;
    overflow-y: scroll;
    position: -webkit-sticky;
    position: sticky;
    top: 1.5em;
    z-index: 100; } }

@media (min-width: 64rem) {
  .m-card--sticky\@large {
    max-height: 90vh;
    overflow-y: scroll;
    position: -webkit-sticky;
    position: sticky;
    top: 1.5em;
    z-index: 100; } }

@media (min-width: 78rem) {
  .m-card--sticky\@xlarge {
    max-height: 90vh;
    overflow-y: scroll;
    position: -webkit-sticky;
    position: sticky;
    top: 1.5em;
    z-index: 100; } }

@media (min-width: 125rem) {
  .m-card--sticky\@super {
    max-height: 90vh;
    overflow-y: scroll;
    position: -webkit-sticky;
    position: sticky;
    top: 1.5em;
    z-index: 100; } }

@media (min-width: 48rem) {
  .m-card--sticky-below-nav\@medium {
    top: 4.75em; } }

@media (min-width: 64rem) {
  .m-card--sticky-below-nav\@large {
    top: 7em; } }

.m-card--square {
  border-radius: 0; }

.m-card--round {
  border-radius: 30em; }

.m-card__image {
  margin-left: auto;
  margin-right: auto; }

/* fix IE10-11 image scaling */
.m-card__image:not(svg) {
  -ms-flex-item-align: center;
      -ms-grid-row-align: center;
      align-self: center;
  -ms-flex: none;
      flex: none; }

.m-card__header {
  -ms-flex-negative: 1;
      flex-shrink: 1; }

.m-card__heading {
  color: #414042;
  margin: 0.5em 0 0.25em;
  text-align: center; }

.m-card__heading--no-caps {
  text-transform: none; }

.m-card--profile .m-card__heading {
  font-weight: 300;
  text-transform: none; }

.m-card__item + .m-card__footer--block {
  padding: 0; }

.m-card__body {
  -ms-flex-positive: 1;
      flex-grow: 1;
  text-align: left; }

.m-card__body p:last-child {
  margin-bottom: 0; }

.m-card__body--bottom {
  -ms-flex-positive: 0;
      flex-grow: 0;
  margin-top: auto;
  margin-bottom: inherit; }

.m-card__body--top {
  -ms-flex-positive: 0;
      flex-grow: 0;
  margin-top: inherit;
  margin-bottom: auto; }

.m-card__footer {
  -ms-flex-negative: 1;
      flex-shrink: 1;
  padding-top: 1.5em; }

.m-card__footer--block {
  padding: 0.5em 0 0; }
  .m-card__footer--block .c-input-group .c-button:first-child {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0; }
  .m-card__footer--block .c-input-group .c-button:last-child {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0; }

/*.m-card__item:not(:last-child) {
	border-bottom: $card-item-border-bottom;
}*/
.m-card--accordion label.m-card__item {
  display: block;
  position: relative;
  width: 100%;
  padding-left: 2em;
  cursor: pointer; }
  .m-card--accordion label.m-card__item:before {
    position: absolute;
    left: .75em;
    content: "+"; }

.m-card--accordion > input {
  display: none; }

.m-card--accordion > input + .m-card__item + .m-card__item {
  display: none; }

.m-card--accordion > input:checked + .m-card__item + .m-card__item {
  display: block; }

.m-card--accordion > input:checked + .m-card__item:before {
  transform: rotate(45deg); }

.m-card--menu {
  display: block;
  width: 100%;
  max-height: 280px;
  margin: 0.5em 0 0 0;
  z-index: 100;
  overflow-y: auto;
  overflow-x: hidden;
  -webkit-overflow-scrolling: touch; }

.m-card--grouped .m-card__item:not(:last-child) {
  border-bottom: 0; }

.m-card__divider {
  height: 1px;
  background-color: #797b7f;
  overflow: hidden; }

.m-card__item--divider {
  background-color: #797b7f;
  color: #FFF;
  font-weight: 500; }

.m-card--brand,
.m-card__item--brand {
  background-color: #a6192e;
  color: #FFF; }

.m-card__item--disabled {
  cursor: not-allowed;
  opacity: 0.6; }

.m-card--menu .m-card__item:not(.m-card__item--disabled):not(.m-card__item--divider):hover,
.m-card--accordion label.m-card__item:not(.m-card__item--disabled):not(.m-card__item--divider):hover {
  background-color: #c7c8ca;
  cursor: pointer; }

.m-card__item--active,
.m-card--accordion > input:checked + .m-card__item {
  background-color: rgba(173, 175, 177, 0.5);
  font-weight: 500; }

.m-card__date {
  position: absolute;
  color: #a6192e;
  font-weight: 500;
  padding: 0.1rem 0.45rem;
  background-color: #FFF; }

figcaption.m-card__date {
  font-size: 1rem; }

p.m-card__date {
  position: relative;
  text-align: center;
  margin-bottom: -0.25rem; }

.m-card__news-source {
  color: #939598;
  font-weight: 500;
  margin-top: 1rem;
  margin-bottom: -0.7rem;
  text-align: center; }

/*doc
---
title: Content Banner
name: content-banner
category: Molecules
---
*Last Updated: December 3, 2018*

Content banners are a great way to showcase patient stories and other content.

## Use

Typically content banners are used in conjunction with `o-section` organisms.

If the background image is dark, use the `o-section--inverse` class to make the text white.

<figure class="a-figure--ds">
	<img src="../images/pattern-library/molecules/content-banner-1.jpg" alt="Example of a content banner in use"/>
	<figcaption>Fig 1: Example of  a content banner in use</figcaption>
</figure>

## Code

```html_example
<section class="o-section  o-section--inverse  m-content-banner" style="background-image:url('../images/pattern-library/molecules/content-banner.jpg');">
	<div class="l-container  l-container--large">
		<h2 class="o-section__header  m-content-banner__heading">In Vitro Fertilization Helps Couple Become a Family</h2>
		<p class="m-content-banner__message  a-paragraph">Melissa and Sam Olson always wanted children. However, their attempts to conceive had been unsuccessful due to a condition called endometriosis which affected Melissa's reproductive organs...</p>
		<div class="m-content-banner__cta">
			<a class="a-button  a-button--brand" href="#">Read Full Story</a>
		</div>
	</div>
</section>
```

*/
.m-content-banner {
  background-size: cover;
  text-align: center; }

.m-content-banner__heading {
  margin-bottom: 1rem;
  text-transform: inherit; }

@media (min-width: 48rem) {
  .m-content-banner__message {
    font-size: 1.125em; } }

.m-content-banner__cta {
  padding: 0.5em 0 1.5em; }
  @media (min-width: 48rem) {
    .m-content-banner__cta {
      padding: 0.5em 0; } }

.m-dropdown .dropdown-field {
  position: relative;
  min-height: 62px; }

.m-dropdown .m-dropdown-specialties {
  position: relative; }
  .m-dropdown .m-dropdown-specialties .dropdown-field {
    cursor: pointer; }

.m-dropdown .dropdown-filter__data {
  max-height: 175px;
  overflow: hidden;
  overflow-y: auto; }

.m-dropdown .a-dropdown--field {
  cursor: pointer;
  right: .5em;
  height: 1em;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 1em; }

.m-dropdown .m-dropdown-option input[type=checkbox] {
  display: none; }

.m-dropdown .m-dropdown-option input[type=checkbox]:checked + label {
  font-weight: bold;
  color: #a6192e;
  background-color: #F2F2F2; }

.m-dropdown .m-dropdown-option label:hover {
  font-weight: bold;
  color: #a6192e;
  background-color: #ddd !important; }

.m-dropdown .m-dropdown-option label {
  cursor: pointer;
  width: 100%; }
  .m-dropdown .m-dropdown-option label input {
    display: none; }

.m-dropdown .inner-search-icon {
  right: 1em !important; }

input.m-dropdown-services + label {
  outline: 0;
  cursor: pointer;
  overflow: hidden;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none; }

input.m-dropdown-services:checked + label {
  background-color: #a6192e;
  color: #FFF; }
  input.m-dropdown-services:checked + label:hover {
    background-color: #7a1222; }

input.m-dropdown-services {
  display: none; }

.m-dropdown-list {
  position: absolute;
  left: 0;
  right: 0;
  display: none;
  background-color: #FFF;
  border-left: 1px solid #909090;
  border-right: 1px solid #909090;
  border-bottom: 1px solid #909090;
  border-bottom-right-radius: 3px;
  border-bottom-left-radius: 3px;
  overflow: hidden; }

.m-dropdown-selected {
  position: relative;
  cursor: pointer; }

.m-dropdown-title {
  border-radius: 3px; }

.m-dropdown-close {
  border-radius: 10px;
  position: absolute;
  right: 7px;
  top: -2px;
  line-height: 0;
  padding: 2px; }

.m-dropdown-services {
  cursor: pointer; }

#scheduleAppointment .dropdown-filter__data {
  max-height: 180px;
  overflow-y: auto; }

/*doc
---
title: Events
name: events
category: Molecules
---
*Last Updated: December 3, 2018*

Events is a molecule used to display calendar events. 

## Use

Currently, only used on main landing pages. Used sparingly.

Displayed as a single column next to other content.

<figure class="a-figure--ds l-container l-container--xsmall">
	<img src="../images/pattern-library/molecules/events.png" alt="Example of an event molecule in use"/>
	<figcaption>Fig 1: Example of  an event molecule in use</figcaption>
</figure>

## Code

```html_example_table
<div class="m-events  u-bg-white  u-high  u-space-bottom--medium  u-space-bottom--xlarge@small">
	<div class="m-events__day">
        <h3 class="m-events__heading">
			<span>Dec 03</span>
			<span> | </span>
			<span class="u-color-grey">Mon</span>
	    </h3>
        <div class="m-events__event">
			<a class="m-events__event-title" href="#">Resistance Training</a>
			<p class="m-events__event-description">Resistance Training - Fitness Class... <a href="#">Learn More</a></p>
	    </div>
	    <div class="m-events__event">
			<a class="m-events__event-title" href="#">Resistance Training</a>
			<p class="m-events__event-description">Fitness Class... <a href="#">Learn More</a></p>
	    </div>
	    <div class="m-events__event">
			<a class="m-events__event-title" href="#">Core &amp; Stretch</a>
			<p class="m-events__event-description">Core &amp;amp; Stretch - Fitness Class... <a href="#">Learn More</a></p>
	    </div>
	    <div class="m-events__event">
			<a class="m-events__event-title" href="#">Zumba®</a>
			<p class="m-events__event-description">Zumba® - Fitness Class... <a href="#">Learn More</a></p>
	    </div>
	    <div class="m-events__event">
			<a class="m-events__event-title" href="#">Minding Motion™</a>
			<p class="m-events__event-description">Minding Motion™ - Fitness... <a href="#">Learn More</a></p>
	    </div>
	</div>
    <div class="u-padding--medium">
		<a class="a-button  a-button--brand  a-button--expand" href="#">View All Events</a>
	</div>
</div>
```

*/
.m-events__day {
  padding: 1.5em 1.5em 0.5em; }

.m-events__day:not(:first-child) {
  border-top: 1px solid #939598; }

.m-events__heading {
  font-weight: 300;
  margin: 0.5em 0;
  text-align: center; }

.m-events__event {
  line-height: 1.4;
  margin-bottom: 2em; }

.m-events__event-title {
  border: none;
  display: block;
  margin-bottom: 0.5em; }

.m-events__event-description {
  font-size: 0.875em; }

/*doc
---
title: Forms + Input Molecules
name: forms
category: Molecules
---

Some form elements are collections of atoms. Therefore, these are molecules. For other form inputs see the [inputs section][inputs] in atoms.

## <a name="forms_accessibility"></a>Accessibility Considerations

### Placeholder text

Placeholder text should not be used to give instructions to a user on how to use a form field. Most screen readers do not read the placeholder text. The `<label>` tag should be used for this text. In some cases, the "u-visuallyhidden" [visibility class][visibility] can be used to hide the label from all users, except those using screen readers.

## Use

The available form input molecules are:

* [Inputs with icons (such as a search bar)](#forms_icons)
* [Fieldsets and legends](#forms_fieldsets)
* [Labels and form elements](#forms_labels)
* [Filtering data](#forms_filter)
* [Dropdown search/filter](#forms_dropdown-search)

### <a name="forms_icons"></a>Inputs with Icons (Read: Search Bar)

Generally, this will only be used with the search icon.

#### Code

```html_example
<div class="m-field  m-field--icon-left u-space-bottom--medium">
	<svg class="a-icon">
		<use xlink:href="../images/svg/icons.svg#search-icon"></use>
	</svg>
	<input class="a-field" type="text">
</div>
```

### <a name="forms_fieldsets"></a>Fieldsets and Legends

Use `.m-fieldset` and `.m-fieldset__legend` classes to apply consistent fieldset behaviours.

#### Code

```html_example_table
<fieldset class="m-fieldset">
	<legend class="m-fieldset__legend">A group of controls</legend>
	<label class="a-field  a-field--choice">
		<input type="radio" name="optionsRadios">
		Option one
	</label>
	<label class="a-field  a-field--choice">
		<input type="radio" name="optionsRadios">
		Option two
	</label>
	<label class="a-field  a-field--choice">
		<input type="radio" name="optionsRadios">
		Option three
	</label>
	<label class="a-field  a-field--choice">
		<input type="radio" name="optionsRadios">
		Option four
	</label>
</fieldset>
```

### <a name="forms_labels"></a>Labels and Form Elements

See [Accessibility Considerations](#forms_accessibility) above for why labels should be used, not just placeholder text.

#### Code

```html_example_table
<!-- Approach one -->
<div class="m-form-element">
	<label class="a-label" for="nickname">Nickname:</label>
	<input id="nickname" placeholder="Nickname" class="a-field">
</div>
<!-- Approach two -->
<label class="a-label  m-form-element">
	Real name:
	<input class="a-field  a-field--label" placeholder="Real name">
</label>
```

### <a name="forms_filter"></a>Filtering Data

Filtering data is a combination of an input element and a simple dataset--usually an unordered list. Add the `js-filter__input` class to an input, add the `js-filter__data` class to a list, and create a message to display if all results are filtered with the `js-filter__empty` class. Utility classes can be added to any element to adjust styling. For example: the `u-2col` class can be added to the list to split it into two columns.

**Note:** Currently only one filter can be used per page.

#### Code

```html_example_table
<div class="m-field  u-space-bottom--small">
  <input class="js-filter__input  a-field  a-field--emphasis  u-low" type="text" placeholder="Filtering Example" />
</div>
<p class="js-filter__empty  u-xlarge" style="display: none;">Sorry, no results were found.</p>
<ul class="js-filter__data  a-list--unstyled">
  <li class="u-padding-top--large  u-padding--bottom--large"><a class="u-color-black" href="#">Allergy</a></li>
  <li class="u-padding-top--large  u-padding--bottom--large"><a class="u-color-black" href="#">Bariatric Surgery</a></li>
  <li class="u-padding-top--large  u-padding--bottom--large"><a class="u-color-black" href="#">Behavioral Health</a></li>
  <li class="u-padding-top--large  u-padding--bottom--large"><a class="u-color-black" href="#">Cardiology</a></li>
</ul>
```

### <a name="forms_dropdown-search"></a>Dropdown Search/Filter

Used to filter search results when there is a long list of available filters.

<figure class="a-figure--ds">
	<img src="../images/pattern-library/molecules/dropdown-search.png" alt="Example of dropdown filters in use"/>
	<figcaption>Fig 1: Example of dropdown filters in use</figcaption>
</figure>

#### Code

Due to lack of necessary code to display this molecule here, please visit the [Find A Location page](//healthcare.utah.edu/locations/) to see it in action.
*/
.m-field {
  position: relative; }
  .m-field .a-field:disabled ~ .a-icon {
    fill: #797b7f; }
  .m-field .a-icon {
    height: 1em;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 1em; }

.m-field--icon-right .a-field + .a-icon {
  right: 0.5em; }

.m-field--icon-right .a-field {
  padding-right: 2em; }

.m-field--icon-left .a-icon:first-child {
  left: 0.5em; }

.m-field--icon-left .a-field {
  padding-left: 2em; }

.m-fieldset,
.m-fieldset.a-list {
  display: block;
  width: 100%;
  margin: 0.5em 0;
  padding: 0;
  border: 0; }

.m-fieldset__legend {
  cursor: pointer;
  display: block;
  font-weight: 500;
  padding: 1em 0;
  text-transform: uppercase;
  width: 100%;
  padding: 0.25em 0; }

.m-fieldset--disabled .a-field,
.m-fieldset:disabled .a-field {
  color: #797b7f;
  cursor: not-allowed;
  border-color: #797b7f;
  background-color: #c7c8ca; }
  .m-fieldset--disabled .a-field.a-field--choice,
  .m-fieldset:disabled .a-field.a-field--choice {
    background-color: transparent; }

.m-form-element {
  position: relative;
  padding: 1em 0; }
  .m-form-element .a-label:first-child {
    padding: 0 0 0.5em 0; }

/*doc
---
title: Pagination
name: pagination
category: Molecules
---
*Last Updated: December 4, 2018*

Used to separate long lists of content into multiple pages. Primarily used in search results and index pages for sites such as The Scope, HealthFeed, etc.

## Use

<figure class="a-figure--ds">
	<img src="../images/pattern-library/molecules/pagination-1.png" alt="Example of pagination on a search results page"/>
	<figcaption>Fig 1: Example of pagination on a search results page</figcaption>
</figure>

<figure class="a-figure--ds">
	<img src="../images/pattern-library/molecules/pagination-2.jpg" alt="Example of pagination on The Scope podcasts index page"/>
	<figcaption>Fig 1: Example of pagination on The Scope podcasts index page</figcaption>
</figure>

```html_example
<div class="m-pagination">
	<div class="m-pagination__controls  m-pagination__controls--backward">
		<!--<button class="m-pagination__control">« First</button>-->
		<button class="m-pagination__control">‹ Prev</button>
	</div>
	<div class="m-pagination__controls">
		<button class="m-pagination__page">1</button>
		<button class="m-pagination__page  m-pagination__page--current">2</button>
		<button class="m-pagination__page">3</button>
	</div>
	<div class="m-pagination__controls  m-pagination__controls--forward">
		<button class="m-pagination__control">Next ›</button>
		<!--<button class="m-pagination__control">Last »</button>-->
	</div>
</div>
```

*/
.m-pagination {
  display: block;
  width: 100%;
  padding: 1em 0;
  font-size: 0.875em;
  text-align: center; }

.m-pagination__controls {
  display: inline-block;
  text-align: center; }

.m-pagination__controls--backward {
  float: left;
  text-align: left; }

.m-pagination__controls--forward {
  float: right;
  text-align: right; }

.m-pagination__control,
.m-pagination__page {
  border: 1px solid #414042;
  background-color: #FFF;
  color: #414042;
  letter-spacing: 0.025em;
  display: inline-block;
  max-width: 100%;
  margin: 0;
  padding: 0.5em;
  border-radius: 3px;
  outline: 0;
  font-family: inherit;
  font-size: 1em;
  line-height: normal;
  text-align: center;
  text-decoration: none;
  text-overflow: ellipsis;
  white-space: wrap;
  cursor: pointer;
  overflow: hidden;
  vertical-align: middle;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  font-weight: 500;
  border: 1px solid #414042;
  background-color: #FFF;
  color: #414042;
  min-width: 2.4em;
  border-color: transparent;
  border-radius: 30em;
  padding: 0.5em; }
  .m-pagination__control.button--active,
  .m-pagination__page.button--active {
    border-color: #282728;
    background-color: #282728;
    color: #FFF; }
  .m-pagination__control:not(:disabled),
  .m-pagination__page:not(:disabled) {
    /*&:focus {
			border-color: $button-focus-border-color;
			box-shadow: $button-focus-box-shadow;
		}*/ }
    .m-pagination__control:not(:disabled):hover,
    .m-pagination__page:not(:disabled):hover {
      background-color: #a6192e;
      border: 1px solid #a6192e;
      color: #FFF; }
    .m-pagination__control:not(:disabled):active,
    .m-pagination__page:not(:disabled):active {
      border-color: #7a1222;
      background-color: #7a1222;
      color: #FFF; }
  .m-pagination__control:disabled,
  .m-pagination__page:disabled {
    cursor: not-allowed;
    opacity: 0.5; }
  .m-pagination__control.button--active,
  .m-pagination__page.button--active {
    border-color: #282728;
    background-color: #282728;
    color: #FFF; }
  .m-pagination__control:not(:disabled),
  .m-pagination__page:not(:disabled) {
    /*&:focus {
			border-color: $button-focus-border-color;
			box-shadow: $button-focus-box-shadow;
		}*/ }
    .m-pagination__control:not(:disabled):hover,
    .m-pagination__page:not(:disabled):hover {
      background-color: #a6192e;
      border: 1px solid #a6192e;
      color: #FFF; }
    .m-pagination__control:not(:disabled):active,
    .m-pagination__page:not(:disabled):active {
      border-color: #7a1222;
      background-color: #7a1222;
      color: #FFF; }

.m-pagination__page--current {
  background-color: transparent;
  border-color: #a6192e;
  border-width: 1px;
  color: #a6192e; }

.m-pagination__ellipsis {
  padding: 0 1em; }

.m-rating {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column; }

.m-rating__description {
  margin: 0; }

.m-rating__value {
  font-size: 2.5rem;
  margin: auto 0 0; }

/*doc
---
title: Signpost
name: signpost
category: Molecules
---
*Last Updated: December 4, 2018*

Signposts are button-like elements that can be used when there is a bit too much text for a standard button.

## Use

Typically the [card molecule][cards] is used instead of the signpost; however on pages dominated by cards, the use of a signpost may help add visual interest to the content contained inside.

If the signpost is completely enclosed within an `<a>` tag, the entire element will operate like a button.

### Code

*(**Ignore the "l-grid" divs, they are used here for presentation purposes only.**)*

```html_example
<div class="l-grid">
	<div class="l-grid__item">
		<div class="m-signpost">
		    <div class="m-signpost__header">
		        <h4 class="m-signpost__heading u-color-black">Signpost Heading</h4>
				<p class="m-signpost__copy">Only the call-to-action button is linked on this signpost.</p>
		    </div>
		    <a href="#" class="m-signpost__footer u-border-none">
		        Call to Action
		    </a>
		</div>
	</div>
	<div class="l-grid__item">
		<a class="m-signpost" href="#">
			<div class="m-signpost__header">
				<h4 class="m-signpost__heading u-color-black">Signpost Heading</h4>
				<p class="m-signpost__copy u-regular">This entire signpost is a link.</p>
			</div>
			<div class="m-signpost__footer">
				Call to Action
			</div>
		</a>
	</div>
</div>
```
	
```html_example
<div class="l-grid">
	<div class="l-grid__item">
		<div class="m-signpost m-signpost--brand">
		    <div class="m-signpost__header">
		        <h4 class="m-signpost__heading">Signpost Heading</h4>
				<p class="m-signpost__copy">Only the call-to-action button is linked on this signpost.</p>
		    </div>
		    <a href="#" class="m-signpost__footer u-border-none">
		        Call to Action
		    </a>
		</div>
	</div>
	<div class="l-grid__item">
		<a class="m-signpost m-signpost--brand" href="#">
			<div class="m-signpost__header">
				<h4 class="m-signpost__heading">Signpost Heading</h4>
				<p class="m-signpost__copy u-regular">This entire signpost is a link.</p>
			</div>
			<div class="m-signpost__footer">
				Call to Action
			</div>
		</a>
	</div>
</div>
```

*/
.m-signpost {
  background-color: #414042;
  background-clip: border-box;
  border-color: #797b7f;
  border-radius: 3px;
  border-width: 1px;
  border-style: solid;
  box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.2);
  color: #414042;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  margin: 0 0 1.5em;
  overflow: hidden;
  text-align: center; }
  .m-signpost:hover {
    background-color: #282728;
    border-color: darker(#414042, 10);
    color: #414042; }
  .m-signpost:focus {
    border-color: #a6192e;
    color: #414042; }
  .m-signpost:active {
    background-color: #5b595c; }

.m-signpost--brand {
  background-color: #a6192e;
  border-color: #a6192e; }
  .m-signpost--brand:hover {
    background-color: #7a1222;
    border-color: #7a1222;
    color: #414042; }
  .m-signpost--brand:focus {
    border-color: #a6192e; }
  .m-signpost--brand:active {
    background-color: #d2203a; }

.m-signpost__heading,
.m-signpost__footer {
  font-size: 0.875em;
  font-weight: 500;
  letter-spacing: 0.1em;
  line-height: 1.325;
  margin: 0;
  text-transform: uppercase; }

.m-signpost__header {
  background-color: #FFF;
  padding: 1em 1.5em; }

.m-signpost__copy {
  margin: 0.25em 0 0.5em; }

.m-signpost__footer {
  color: #FFF;
  padding: 1em 1.5em;
  position: relative; }

.m-signpost__footer:hover {
  color: #FFF; }

.m-signpost__footer::after {
  background-color: #FFF;
  content: '';
  display: block;
  height: 8px;
  margin-left: -4px;
  position: absolute;
  left: 50%;
  top: -4px;
  transform: rotate(45deg);
  width: 8px; }

/*doc
---
title: Tiles
name: tiles
category: Molecules
---
*Last Updated: December 4, 2018*

Tiles are what we call images with text overlaid. Tiles can be combined with ratio utilities to maintain proper aspect ratios, such as a square, at all screen sizes.

## Accessibility Considerations

Due to legibility issues with placing text on top of an image, tiles should be used judiciously. Ensure that the image used provides sufficient contrast to the overlaid text.

## Use

### Not Recommended 👎

Tiles should be used sparingly and should not be used for an important call-to-action. Usability studies have repeatedly shown that many users will completely ignore any element that closely mirrors design conventions used for online advertising; with text over an image being the most common ad.

### Recommended 👍

Tiles are made up of a wrapper element: `m-tiles`, individual tiles: `m-tile`, and each tile contains three children to position text: `m-tile__header`, `m-tile__body`, `m-tile__footer`. The wrapper element uses the new CSS display:grid property to maintain proper heights and widths for each tile.

Each individual tile has a minimum height of roughly 200px. Featured tiles -- described below -- have a minimum height of about 400px.

Available options for tiles are:

* [Default](#tiles_default)
* [Columns](#tiles_columns)
* [Gutter modifiers](#tiles_gutters)
* [Text placement](#tiles_text)
* [Theme modifiers (text color)](#tiles_theme)
* [Featured tiles](#tiles_featured)

### <a name="tiles_default"></a>Default
```html_example_table
<div class="m-tiles  m-tiles--2@medium">
	<div class="u-ratio  u-ratio--1x1">
		<div class="u-ratio__content">
			<div class="m-tile  m-tile--dark" style="background-image:url('../images/pattern-library/molecules/tiles-s-dark.jpg')">
				<div class="m-tile__header u-xlarge"></div>
				<div class="m-tile__body">
					<p class="u-xlarge  u-line-height--title  u-text-align--center">Centered Text</p>
				</div>
				<div class="m-tile__footer u-xlarge"></div>
			</div>
		</div>
	</div>
	<div class="u-ratio  u-ratio--1x1">
		<div class="u-ratio__content">
			<div class="m-tile  m-tile--dark" style="background-image:url('../images/pattern-library/molecules/tiles-s-dark.jpg')">
				<div class="m-tile__header u-xlarge"></div>
				<div class="m-tile__body">
					<p class="u-xlarge  u-line-height--title  u-text-align--center">Centered Text</p>
				</div>
				<div class="m-tile__footer u-xlarge"></div>
			</div>
		</div>
	</div>
</div>
```

### <a name="tiles_columns"></a>Columns

The `m-tiles` wrapper can be used to set how many tiles appear in each row, with a maximum of 4. Small screens force tiles into a single column, however, on larger screens the number of tiles can be set with classes in this format: `m-tiles--2@small`, `m-tiles--3@medium`, `m-tiles--4@large`, etc.

```html_example
<div class="m-tiles">
	<div class="m-tile m-tile--dark" style="background-image:url('../images/pattern-library/molecules/tiles-super-dark.jpg')">
		<div class="m-tile__header u-xlarge">one column</div>
		<div class="m-tile__body u-xlarge"></div>
		<div class="m-tile__footer u-xlarge"></div>
	</div>
</div>
```

```html_example
<div class="m-tiles  m-tiles--2@medium">
	<div class="m-tile m-tile--dark" style="background-image:url('../images/pattern-library/molecules/tiles-xl-dark.jpg')">
		<div class="m-tile__header u-xlarge">two columns</div>
		<div class="m-tile__body u-xlarge"></div>
		<div class="m-tile__footer u-xlarge"></div>
	</div>
	<div class="m-tile m-tile--dark" style="background-image:url('../images/pattern-library/molecules/tiles-xl-dark.jpg')">
		<div class="m-tile__header u-xlarge">two columns</div>
		<div class="m-tile__body u-xlarge"></div>
		<div class="m-tile__footer u-xlarge"></div>
	</div>
</div>
```

```html_example
<div class="m-tiles  m-tiles--3@medium">
	<div class="m-tile m-tile--dark" style="background-image:url('../images/pattern-library/molecules/tiles-l-dark.jpg')">
		<div class="m-tile__header u-xlarge">three columns</div>
		<div class="m-tile__body u-xlarge"></div>
		<div class="m-tile__footer u-xlarge"></div>
	</div>
	<div class="m-tile m-tile--dark" style="background-image:url('../images/pattern-library/molecules/tiles-l-dark.jpg')">
		<div class="m-tile__header u-xlarge">three columns</div>
		<div class="m-tile__body u-xlarge"></div>
		<div class="m-tile__footer u-xlarge"></div>
	</div>
	<div class="m-tile m-tile--dark" style="background-image:url('../images/pattern-library/molecules/tiles-l-dark.jpg')">
		<div class="m-tile__header u-xlarge">three columns</div>
		<div class="m-tile__body u-xlarge"></div>
		<div class="m-tile__footer u-xlarge"></div>
	</div>
</div>
```

```html_example
<div class="m-tiles  m-tiles--4@medium">
	<div class="m-tile m-tile--dark" style="background-image:url('../images/pattern-library/molecules/tiles-m-dark.jpg')">
		<div class="m-tile__header u-xlarge">four columns</div>
		<div class="m-tile__body u-xlarge"></div>
		<div class="m-tile__footer u-xlarge"></div>
	</div>
	<div class="m-tile m-tile--dark" style="background-image:url('../images/pattern-library/molecules/tiles-m-dark.jpg')">
		<div class="m-tile__header u-xlarge">four columns</div>
		<div class="m-tile__body u-xlarge"></div>
		<div class="m-tile__footer u-xlarge"></div>
	</div>
	<div class="m-tile m-tile--dark" style="background-image:url('../images/pattern-library/molecules/tiles-m-dark.jpg')">
		<div class="m-tile__header u-xlarge">four columns</div>
		<div class="m-tile__body u-xlarge"></div>
		<div class="m-tile__footer u-xlarge"></div>
	</div>
	<div class="m-tile m-tile--dark" style="background-image:url('../images/pattern-library/molecules/tiles-m-dark.jpg')">
		<div class="m-tile__header u-xlarge">four columns</div>
		<div class="m-tile__body u-xlarge"></div>
		<div class="m-tile__footer u-xlarge"></div>
	</div>
</div>
```

### <a name="tiles_gutters"></a>Gutter Modifiers

To give tiles a different gutter, add one of the following modifier classes to the `m-tiles` element:
`m-tiles--gutter-xsmall`, `m-tiles--gutter-small`, `m-tiles--gutter-medium`, `m-tiles--gutter-large`, `m-tiles--gutter-xlarge`, `m-tiles--gutter-super`.

```html_example
<div class="m-tiles  m-tiles--gutter-xsmall  m-tiles--3@medium">
	<div class="m-tile  m-tile--dark" style="background-image:url('../images/pattern-library/molecules/tiles-l-dark.jpg')">
		<div class="m-tile__header u-xlarge">xsmall</div>
		<div class="m-tile__body u-xlarge"></div>
		<div class="m-tile__footer u-xlarge"></div>
	</div>
	<div class="m-tile  m-tile--dark" style="background-image:url('../images/pattern-library/molecules/tiles-l-dark.jpg')">
		<div class="m-tile__header u-xlarge">xsmall</div>
		<div class="m-tile__body u-xlarge"></div>
		<div class="m-tile__footer u-xlarge"></div>
	</div>
	<div class="m-tile  m-tile--dark" style="background-image:url('../images/pattern-library/molecules/tiles-l-dark.jpg')">
		<div class="m-tile__header u-xlarge">xsmall</div>
		<div class="m-tile__body u-xlarge"></div>
		<div class="m-tile__footer u-xlarge"></div>
	</div>
</div>
```

```html_example
<div class="m-tiles  m-tiles--gutter-small  m-tiles--3@medium">
	<div class="m-tile  m-tile--dark" style="background-image:url('../images/pattern-library/molecules/tiles-l-dark.jpg')">
		<div class="m-tile__header u-xlarge">small</div>
		<div class="m-tile__body u-xlarge"></div>
		<div class="m-tile__footer u-xlarge"></div>
	</div>
	<div class="m-tile  m-tile--dark" style="background-image:url('../images/pattern-library/molecules/tiles-l-dark.jpg')">
		<div class="m-tile__header u-xlarge">small</div>
		<div class="m-tile__body u-xlarge"></div>
		<div class="m-tile__footer u-xlarge"></div>
	</div>
	<div class="m-tile  m-tile--dark" style="background-image:url('../images/pattern-library/molecules/tiles-l-dark.jpg')">
		<div class="m-tile__header u-xlarge">small</div>
		<div class="m-tile__body u-xlarge"></div>
		<div class="m-tile__footer u-xlarge"></div>
	</div>
</div>
```

```html_example
<div class="m-tiles  m-tiles--gutter-medium  m-tiles--3@medium">
	<div class="m-tile  m-tile--dark" style="background-image:url('../images/pattern-library/molecules/tiles-l-dark.jpg')">
		<div class="m-tile__header u-xlarge">medium</div>
		<div class="m-tile__body u-xlarge"></div>
		<div class="m-tile__footer u-xlarge"></div>
	</div>
	<div class="m-tile  m-tile--dark" style="background-image:url('../images/pattern-library/molecules/tiles-l-dark.jpg')">
		<div class="m-tile__header u-xlarge">medium</div>
		<div class="m-tile__body u-xlarge"></div>
		<div class="m-tile__footer u-xlarge"></div>
	</div>
	<div class="m-tile  m-tile--dark" style="background-image:url('../images/pattern-library/molecules/tiles-l-dark.jpg')">
		<div class="m-tile__header u-xlarge">medium</div>
		<div class="m-tile__body u-xlarge"></div>
		<div class="m-tile__footer u-xlarge"></div>
	</div>
</div>
```

```html_example
<div class="m-tiles  m-tiles--gutter-large  m-tiles--3@medium">
	<div class="m-tile  m-tile--dark" style="background-image:url('../images/pattern-library/molecules/tiles-l-dark.jpg')">
		<div class="m-tile__header u-xlarge">large</div>
		<div class="m-tile__body u-xlarge"></div>
		<div class="m-tile__footer u-xlarge"></div>
	</div>
	<div class="m-tile  m-tile--dark" style="background-image:url('../images/pattern-library/molecules/tiles-l-dark.jpg')">
		<div class="m-tile__header u-xlarge">large</div>
		<div class="m-tile__body u-xlarge"></div>
		<div class="m-tile__footer u-xlarge"></div>
	</div>
	<div class="m-tile  m-tile--dark" style="background-image:url('../images/pattern-library/molecules/tiles-l-dark.jpg')">
		<div class="m-tile__header u-xlarge">large</div>
		<div class="m-tile__body u-xlarge"></div>
		<div class="m-tile__footer u-xlarge"></div>
	</div>
</div>
```

```html_example
<div class="m-tiles  m-tiles--gutter-xlarge  m-tiles--3@medium">
	<div class="m-tile  m-tile--dark" style="background-image:url('../images/pattern-library/molecules/tiles-l-dark.jpg')">
		<div class="m-tile__header u-xlarge">xlarge</div>
		<div class="m-tile__body u-xlarge"></div>
		<div class="m-tile__footer u-xlarge"></div>
	</div>
	<div class="m-tile  m-tile--dark" style="background-image:url('../images/pattern-library/molecules/tiles-l-dark.jpg')">
		<div class="m-tile__header u-xlarge">xlarge</div>
		<div class="m-tile__body u-xlarge"></div>
		<div class="m-tile__footer u-xlarge"></div>
	</div>
	<div class="m-tile  m-tile--dark" style="background-image:url('../images/pattern-library/molecules/tiles-l-dark.jpg')">
		<div class="m-tile__header u-xlarge">xlarge</div>
		<div class="m-tile__body u-xlarge"></div>
		<div class="m-tile__footer u-xlarge"></div>
	</div>
</div>
```

### <a name="tiles_text"></a>Placing Text

Each tile contains three child elements, `m-tile__header`, `m-tile__body`, `m-tile__footer`, which can be used to vertically position text at the top, in the middle, or at the bottom of a tile.

To position items horizontally, use the text alignment utilities: `u-text-align--center`, `u-text-align--right`.

#### Top

```html_example_table
<div class="m-tile  m-tile--light" style="background-image:url('../images/pattern-library/molecules/tiles-xl-light.jpg')">
	<div class="m-tile__header u-xlarge">top</div>
	<div class="m-tile__body u-xlarge"></div>
	<div class="m-tile__footer u-xlarge"></div>
</div>
```

#### Middle

```html_example_table
<div class="m-tile  m-tile--dark" style="background-image:url('../images/pattern-library/molecules/tiles-xl-dark.jpg')">
	<div class="m-tile__header u-xlarge"></div>
	<div class="m-tile__body u-xlarge">middle</div>
	<div class="m-tile__footer u-xlarge"></div>
</div>
```

#### Bottom

```html_example_table
<div class="m-tile  m-tile--light" style="background-image:url('../images/pattern-library/molecules/tiles-xl-light.jpg')">
	<div class="m-tile__header u-xlarge"></div>
	<div class="m-tile__body u-xlarge"></div>
	<div class="m-tile__footer u-xlarge">bottom</div>
</div>
```

#### Center Horizontally

```html_example_table
<div class="m-tile  m-tile--dark" style="background-image:url('../images/pattern-library/molecules/tiles-l-dark.jpg')">
	<div class="m-tile__header u-xlarge"></div>
	<div class="m-tile__body u-xlarge u-text-align--center">center</div>
	<div class="m-tile__footer u-xlarge"></div>
</div>
```

#### Right

```html_example_table
<div class="m-tile  m-tile--light" style="background-image:url('../images/pattern-library/molecules/tiles-l-light.jpg')">
	<div class="m-tile__header u-xlarge"></div>
	<div class="m-tile__body u-xlarge u-text-align--right">right</div>
	<div class="m-tile__footer u-xlarge"></div>
</div>
```

### <a name="tiles_theme"></a>Theme Modifiers

As images vary in color, we offer two themes, light and dark. Use the modifier `m-tile--light` when the image is light and you want dark text. Use the modifier `m-tile--dark` when the image is dark and you want light text.

```html_example
<div class="m-tiles  m-tiles--2@medium">
	<div class="m-tile  m-tile--light" style="background-image:url('../images/pattern-library/molecules/tiles-m-light.jpg')">
		<div class="m-tile__header u-xlarge"></div>
		<div class="m-tile__body u-xlarge"></div>
		<div class="m-tile__footer u-xlarge">light</div>
	</div>
	<div class="m-tile  m-tile--dark" style="background-image:url('../images/pattern-library/molecules/tiles-super-dark.jpg')">
		<div class="m-tile__header u-xlarge"></div>
		<div class="m-tile__body u-xlarge"></div>
		<div class="m-tile__footer u-xlarge u-text-align--center">dark</div>
	</div>
</div>
```

### <a name="tiles_featured"></a>Featured Tiles

Featured tiles span two columns and have a large minimum height to show their importance. This is primarily used for news tiles.

```html_example
<div class="m-tiles  m-tiles--2@medium">
	<a class="m-tile  m-tile--dark  m-tile--featured" href="#" style="background-image:url('../images/pattern-library/molecules/tiles-xl-dark.jpg')">
		<div class="m-tile__header u-xlarge"></div>
		<div class="m-tile__body u-xlarge"></div>
		<div class="m-tile__footer u-xlarge">Featured Tile</div>
	</a>
	<a class="m-tile u-xlarge m-tile--light" href="#" style="background-image:url('../images/pattern-library/molecules/tiles-l-light.jpg')">Regular Tile</a>
	<a class="m-tile u-xlarge m-tile--dark" href="#" style="background-image:url('../images/pattern-library/molecules/tiles-l-dark.jpg')">Regular Tile</a>
</div>
```

*/
.m-tiles {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }

.m-tiles--2 > * {
  max-width: 50%; }

.m-tiles--3 > * {
  max-width: 33.333%; }

.m-tiles--4 > * {
  max-width: 25%; }

@media (min-width: 20rem) {
  .m-tiles--2\@xsmall > * {
    max-width: 50%; }
  .m-tiles--3\@xsmall > * {
    max-width: 33.333%; }
  .m-tiles--4\@xsmall > * {
    max-width: 25%; } }

@media (min-width: 30rem) {
  .m-tiles--2\@small > * {
    max-width: 50%; }
  .m-tiles--3\@small > * {
    max-width: 33.333%; }
  .m-tiles--4\@small > * {
    max-width: 25%; } }

@media (min-width: 48rem) {
  .m-tiles--2\@medium > * {
    max-width: 50%; }
  .m-tiles--3\@medium > * {
    max-width: 33.333%; }
  .m-tiles--4\@medium > * {
    max-width: 25%; } }

@media (min-width: 64rem) {
  .m-tiles--2\@large > * {
    max-width: 50%; }
  .m-tiles--3\@large > * {
    max-width: 33.333%; }
  .m-tiles--4\@large > * {
    max-width: 25%; } }

@media (min-width: 78rem) {
  .m-tiles--2\@xlarge > * {
    max-width: 50%; }
  .m-tiles--3\@xlarge > * {
    max-width: 33.333%; }
  .m-tiles--4\@xlarge > * {
    max-width: 25%; } }

@media (min-width: 125rem) {
  .m-tiles--2\@super > * {
    max-width: 50%; }
  .m-tiles--3\@super > * {
    max-width: 33.333%; }
  .m-tiles--4\@super > * {
    max-width: 25%; } }

@supports (display: grid) {
  .m-tiles {
    display: -ms-grid;
    display: grid;
    grid-gap: .75em;
    -ms-grid-columns: auto;
        grid-template-columns: auto;
    -ms-grid-rows: auto;
        grid-template-rows: auto; }
  .m-tiles--2 {
    -ms-grid-columns: (1fr)[2];
        grid-template-columns: repeat(2, 1fr); }
  .m-tiles--3 {
    -ms-grid-columns: (1fr)[3];
        grid-template-columns: repeat(3, 1fr); }
  .m-tiles--4 {
    -ms-grid-columns: (1fr)[4];
        grid-template-columns: repeat(4, 1fr); }
  @media (min-width: 20rem) {
    .m-tiles--2\@xsmall {
      -ms-grid-columns: (1fr)[2];
          grid-template-columns: repeat(2, 1fr); }
    .m-tiles--3\@xsmall {
      -ms-grid-columns: (1fr)[3];
          grid-template-columns: repeat(3, 1fr); }
    .m-tiles--4\@xsmall {
      -ms-grid-columns: (1fr)[4];
          grid-template-columns: repeat(4, 1fr); } }
  @media (min-width: 30rem) {
    .m-tiles--2\@small {
      -ms-grid-columns: (1fr)[2];
          grid-template-columns: repeat(2, 1fr); }
    .m-tiles--3\@small {
      -ms-grid-columns: (1fr)[3];
          grid-template-columns: repeat(3, 1fr); }
    .m-tiles--4\@small {
      -ms-grid-columns: (1fr)[4];
          grid-template-columns: repeat(4, 1fr); } }
  @media (min-width: 48rem) {
    .m-tiles--2\@medium {
      -ms-grid-columns: (1fr)[2];
          grid-template-columns: repeat(2, 1fr); }
    .m-tiles--3\@medium {
      -ms-grid-columns: (1fr)[3];
          grid-template-columns: repeat(3, 1fr); }
    .m-tiles--4\@medium {
      -ms-grid-columns: (1fr)[4];
          grid-template-columns: repeat(4, 1fr); } }
  @media (min-width: 64rem) {
    .m-tiles--2\@large {
      -ms-grid-columns: (1fr)[2];
          grid-template-columns: repeat(2, 1fr); }
    .m-tiles--3\@large {
      -ms-grid-columns: (1fr)[3];
          grid-template-columns: repeat(3, 1fr); }
    .m-tiles--4\@large {
      -ms-grid-columns: (1fr)[4];
          grid-template-columns: repeat(4, 1fr); } }
  @media (min-width: 78rem) {
    .m-tiles--2\@xlarge {
      -ms-grid-columns: (1fr)[2];
          grid-template-columns: repeat(2, 1fr); }
    .m-tiles--3\@xlarge {
      -ms-grid-columns: (1fr)[3];
          grid-template-columns: repeat(3, 1fr); }
    .m-tiles--4\@xlarge {
      -ms-grid-columns: (1fr)[4];
          grid-template-columns: repeat(4, 1fr); } }
  @media (min-width: 125rem) {
    .m-tiles--2\@super {
      -ms-grid-columns: (1fr)[2];
          grid-template-columns: repeat(2, 1fr); }
    .m-tiles--3\@super {
      -ms-grid-columns: (1fr)[3];
          grid-template-columns: repeat(3, 1fr); }
    .m-tiles--4\@super {
      -ms-grid-columns: (1fr)[4];
          grid-template-columns: repeat(4, 1fr); } }
  .m-tiles--gutter-xsmall {
    grid-gap: .5em; }
  .m-tiles--gutter-small {
    grid-gap: .75em; }
  .m-tiles--gutter-medium {
    grid-gap: 1em; }
  .m-tiles--gutter-large {
    grid-gap: 1.5em; }
  .m-tiles--gutter-xlarge {
    grid-gap: 2em; }
  .m-tiles--gutter-super {
    grid-gap: 3em; }
  .m-tiles > * {
    max-width: none; } }

.m-tile {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  height: 100%;
  min-height: 12.5em;
  padding: 1em;
  width: 100%; }

a.m-tile,
.m-tiles a {
  border: none;
  cursor: pointer;
  text-decoration: none; }

.m-tile--featured {
  min-height: 25em; }
  @media (min-width: 48rem) {
    .m-tile--featured {
      -ms-grid-column-span: 2;
          grid-column-end: span 2; } }
  @media (min-width: 64rem) {
    .m-tile--featured {
      -ms-grid-row-span: 2;
          grid-row-end: span 2; } }

@media (min-width: 48rem) {
  @supports (display: grid) {
    .m-tile--featured {
      -ms-grid-column-span: 2;
          grid-column-end: span 2; } } }

.m-tile--light,
a.m-tile--light,
a.m-tile--light:hover {
  background-color: rgba(255, 255, 255, 0.65);
  color: #414042;
  text-shadow: 0px 1px 3px rgba(255, 255, 255, 0.5); }

.m-tile--dark,
a.m-tile--dark,
a.m-tile--dark:hover {
  background-color: rgba(65, 64, 66, 0.65);
  color: #FFF;
  text-shadow: 0px 1px 3px rgba(0, 0, 0, 0.5); }

.m-tile--bg-overlay {
  background-blend-mode: multiply; }

.m-tiles--gutter-xsmall .m-tile {
  margin-bottom: .25em; }

.m-tiles--gutter-small .m-tile {
  margin-bottom: .75em; }

.m-tiles--gutter-medium .m-tile {
  margin-bottom: 1em; }

.m-tiles--gutter-large .m-tile {
  margin-bottom: 1.5em; }

.m-tiles--gutter-xlarge .m-tile {
  margin-bottom: 2em; }

.m-tiles--gutter-super .m-tile {
  margin-bottom: 3em; }

@supports (display: grid) {
  .m-tiles--gutter-xsmall .m-tile,
  .m-tiles--gutter-small .m-tile,
  .m-tiles--gutter-medium .m-tile,
  .m-tiles--gutter-large .m-tile,
  .m-tiles--gutter-xlarge .m-tile,
  .m-tiles--gutter-super .m-tile {
    margin-bottom: 0; } }

.m-tile__header {
  margin-bottom: auto; }

.m-tile__body {
  margin-bottom: auto;
  margin-top: auto; }

.m-tile__footer {
  margin-top: auto; }

.m-tile *:last-child,
.m-tile__header *:last-child,
.m-tile__body *:last-child,
.m-tile__footer *:last-child {
  margin-bottom: 0; }

.m-tile__title {
  color: inherit;
  font-size: 1.125em;
  letter-spacing: initial;
  margin-top: auto;
  text-transform: initial; }

.m-tile__description {
  font-size: .925em;
  line-height: 1.35; }

.m-tile__caption {
  left: 50%;
  padding: 1.5em;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 100%; }

.m-tile__caption--bottom {
  bottom: 0;
  top: auto;
  left: 0;
  transform: translate(0, 0);
  padding: 0.5em; }

.m-tile__image {
  max-width: 100%; }

.m-tile__content {
  color: #FFF;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  height: 100%;
  padding: 1em; }

.m-tile__content--hover {
  opacity: 0; }

.m-tile:hover .m-tile__content--hover,
.m-tile:focus .m-tile__content--hover,
.m-tile:active .m-tile__content--hover {
  background-color: rgba(0, 0, 0, 0.6);
  opacity: 1;
  transition: all .6s ease-in-out; }

#new-brand-modal {
  position: absolute;
  top: -100px; }
  @media (max-width: 48rem) {
    #new-brand-modal {
      display: none; } }

#new-brand-arrow {
  float: left; }

#new-brand-modal-text {
  float: left;
  border: 2px solid #a6192e;
  border-radius: 3px; }

#new-brand-close-modal {
  position: relative;
  cursor: pointer;
  bottom: 25px;
  line-height: 0;
  border: 2px solid #a6192e;
  border-radius: 15px; }

/*doc
---
title: Typography
name: typography
category: Atoms
---
*Last Updated: August 23, 2018*

## Use

All inline tags (`<strong>`, `<em>`, etc.) can be used in conjuction with each other when appropriate.

A [typographic utility class][typographic-utilities] in a `<span>` block should never be used in place of the associated html tag.

* `<p>`: Use for actual paragraph text.
    - **Do** enclose every paragraph of text in its own `<p></p>` tags
    - **Don't use** <br> to break up paragraphs, unless specifically instructed for certain Pattern Library elements
    - **Don't use** for layout blocks (use `<div>` for layout elements unrelated to text)
* `<strong>`: Use to bold text.
    - **Don't use** when a header (`<h1>` - `<h6>`) tag is needed to semantically organize content
    - **Don't use** the deprecated `<b>` tag
* `<em>`: Use to italicize text.
    - **Don't use** the deprecated `<i>` tag
* `<sup>`: Used for superscripts.
    - **Do use** for footnotes (usually in conjunction with an `<a>` tag)
    - **Don't use** to simply make text smaller (use `<small>` for that)
    
## Code Examples

Here is an example paragraph containing most of the basic typographic tags.

```html_example_table
<p><strong>Pellentesque habitant morbi tristique</strong> senectus et netus et malesuada fames ac turpis egestas<sup>2</sup>. Vestibulum tortor quam, feugiat vitae <abbr title="Abbreviation">abbr</abbr>, ultricies eget, tempor sit amet, ante. Donec eu libero sit amet quam egestas semper. <em>Aenean ultricies mi vitae est.</em> Mauris placerat eleifend leo. Quisque sit amet est et sapien ullamcorper pharetra. Vestibulum erat wisi, condimentum sed, <code>commodo vitae</code>, ornare sit amet, wisi. Aenean fermentum, elit eget tincidunt condimentum, eros ipsum rutrum orci, <mark>sagittis tempus</mark> lacus enim ac dui. <a href="#">Donec non enim</a> in turpis pulvinar facilisis. <small>Ut felis.</small></p>
```

*/
html {
  font-size: 1em; }

body {
  color: #414042;
  font-family: "sofia-pro", "Century Gothic", "Merriweather Sans", sans-serif;
  font-size: 1em;
  font-style: normal;
  font-weight: 300;
  letter-spacing: 0.025em;
  line-height: 1.625; }

/* Paragraph
   ========================================================================== */
p {
  margin-bottom: 1.5em; }

small {
  font-size: 0.875em; }

.hyphenate {
  overflow-wrap: break-word;
  word-wrap: break-word;
  -webkit-hyphens: auto;
      -ms-hyphens: auto;
          hyphens: auto; }

b,
strong {
  font-weight: 500; }

em,
i,
cite,
dfn,
var {
  font-style: italic; }

sub,
sup {
  position: relative;
  margin-left: .25rem;
  font-size: 85%;
  line-height: 0;
  vertical-align: baseline; }

sup {
  top: -.5rem; }

sub {
  bottom: -.25rem; }

abbr[title] {
  border-bottom: 0.0625rem dotted #414042;
  text-decoration: none; }

mark {
  background-color: yellow;
  color: #414042;
  padding: .25rem; }

::-moz-selection {
  color: #fff;
  background: #a6192e; }

::selection {
  color: #fff;
  background: #a6192e; }

/*doc
---
title: Headings
name: headings
category: Atoms
---
*Last Updated: August 21, 2018*

Headings (`<h1>` - `<h6>`) are used for content structure, not presesentation.

## Accessibility Considerations

To avoid confusing users who navigate with a screen reader, avoid skipping heading levels.

## Use

Headings define the hierarchy of page content. They provide consistent, reliable points of reference to a user while scanning a page's content. They are not for changing the visual design of text. To modify the look and feel of text, please use the appropriate utility classes ([colors][colors], [alignment][alignment], [line height][line-heights], [size][sizes], [etc.][typographic-utilities]).

Some considerations to follow:

* Avoid skipping heading levels (i.e.: h1, h2, h3, h6)
* Only use `<h1>` once on every page (unless you're using Hologram to build a pattern library :0)
* Use our built-in utility classes when wanting to alter text appearance

## Code Example

```html_example_table
<h1 class="a-h1">h1 40px</h1>
<h2 class="a-h2">h2 28px</h2>
<h3 class="a-h3">h3 22px</h3>
<h4 class="a-h4">h4 19px</h4>
<h5 class="a-h5">h5 17px</h5>
<h6 class="a-h6">h6 16px</h6>
```

## External Resources

* [MDN Entry for the HTML Section Heading Elements](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/Heading_Elements)

***

*/
h1, h2, h3, h4, h5, h6,
.a-h1, .a-h2, .a-h3, .a-h4, .a-h5, .a-h6 {
  color: #414042;
  font-weight: 500;
  position: relative; }

/*
h1:first-child,
h2:first-child,
h3:first-child,
h4:first-child,
h5:first-child,
h6:first-child,
.a-h1:first-child,
.a-h2:first-child,
.a-h3:first-child,
.a-h4:first-child,
.a-h5:first-child,
.a-h6:first-child {
	margin-top: inherit;
}
*/
h1, h2,
.a-h1, .a-h2 {
  color: #a6192e; }

h1,
.a-h1 {
  font-size: 2em;
  letter-spacing: 0.1em;
  line-height: 1.125;
  margin-bottom: 1em;
  margin-top: 1em;
  text-transform: uppercase; }
  @media (min-width: 48rem) {
    h1,
    .a-h1 {
      font-size: 2.25em; } }
  @media (min-width: 64rem) {
    h1,
    .a-h1 {
      font-size: 2.5em; } }

h2,
.a-h2 {
  font-size: 1.5em;
  line-height: 1.25;
  margin-bottom: .5em;
  margin-top: .5em; }
  @media (min-width: 48rem) {
    h2,
    .a-h2 {
      font-size: 1.625em; } }
  @media (min-width: 64rem) {
    h2,
    .a-h2 {
      font-size: 1.75em; } }

* + h2,
* + .a-h2 {
  margin-top: 2.5em; }

h3,
.a-h3 {
  font-size: 1.25em;
  line-height: 1.25;
  margin-bottom: .5em;
  margin-top: .5em; }
  @media (min-width: 48rem) {
    h3,
    .a-h3 {
      font-size: 1.3em; } }
  @media (min-width: 64rem) {
    h3,
    .a-h3 {
      font-size: 1.375em; } }

* + h3,
* + .a-h3 {
  margin-top: 2em; }

h4,
.a-h4 {
  font-size: 1.2em;
  line-height: 1.25;
  margin-bottom: .5em;
  margin-top: .5em; }

* + h4,
* + .a-h4 {
  margin-top: 1.5em; }

h5,
.a-h5 {
  font-size: 1.1em;
  line-height: 1.125;
  margin-bottom: .5em;
  margin-top: .5em; }

* + h5,
* + .a-h5 {
  margin-top: 2em; }

h6,
.a-h6 {
  font-size: 1em;
  line-height: 1.125;
  margin-bottom: .5em;
  margin-top: .5em; }

* + h3,
* + .a-h3 {
  margin-top: 2em; }

h1 + h2,
.a-h1 + .a-h2 {
  margin-top: 1.625px;
  margin-top: 1.625rem; }

h2 + h3,
.a-h2 + .a-h3,
h3 + h4,
.a-h3 + .a-h4,
h4 + h5,
.a-h4 + .a-h5 {
  margin-top: 0.8125px;
  margin-top: 0.8125rem; }

h5 + h6,
.a-h5 + .a-h6 {
  margin-top: 0.24375px;
  margin-top: 0.24375rem; }

h6,
.a-h6 {
  font-weight: normal; }

hgroup,
.a-hgroup {
  display: block; }

/*doc
---
title: Addresses
name: address
category: Atoms
---
*Last Updated: August 20, 2018*

Use only for . . . addresses?

## Code Example
```html_example_table
<address class="a-address">
	<span class="a-address__heading">The Simpsons,</span>
	742 Evergreen Terrace,<br>
	Springfield,<br>
	80085,<br>
	USA
</address>
```

## External Resources

* [MDN Entry for The Contact Address Element](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/address)

***

*/
address,
.a-address {
  display: block;
  font-style: 300;
  margin-bottom: 1.5em; }

.a-address__heading {
  display: block;
  font-weight: 500; }

/*doc
---
title: Avatars
name: avatars
category: Atoms
---
*Last Updated: December 4, 2018*

Avatars are useful for quotations, profile pictures and account photos.

## Accessibility Considerations

Same considerations as the [image atom][images], with the primary concern being the inclusion of the alt attribute. Since the avatar atom should never be used merely as a decorative element, the alt description **must be included**, without exception.

Ensure that the alt attribute thoroughly describes the image; never simply place the file name here. In most cases the avatar will contain a portrait, so a good alt description would be "John Q. Public, MD, Cardiothoracic Surgeon," not "Dr. Public" or "public-john.jpg."

## Use

Primarily used in the [content banner molecule][content-banner].

### Recommended 👍

<figure class="a-figure--ds__good">
	<img data-original="../images/pattern-library/molecules/content-banner-1.jpg" alt="Example of an avatar use within a content banner molecule"/>
	<figcaption>Fig 1: Example of an avatar use within a content banner molecule.</figcaption>
</figure>

### Not Recommended 👎

<figure class="a-figure--ds__bad">
	<img src="../images/pattern-library/atoms/avatar-no.jpg" alt="Example of avatar used floated to the right in a paragraph"/>
	<figcaption>Fig 2: Example of how not to use an avatar (floated to the right in a paragraph).</figcaption>
</figure>

## Code Examples (with variations)

```html_example
<div class="a-avatar  a-avatar--super">
  <img class="a-avatar__img" src="https://source.unsplash.com/random/200x200">
  <p class="u-text-align--center u-color-black"><strong>Super</strong></p>
</div>
<div class="a-avatar  a-avatar--xlarge">
  <img class="a-avatar__img" src="https://source.unsplash.com/random/200x200">
  <p class="u-text-align--center u-color-black"><strong>XLarge</strong></p>
</div>
<div class="a-avatar  a-avatar--large">
  <img class="a-avatar__img" src="https://source.unsplash.com/random/200x200">
  <p class="u-text-align--center u-color-black"><strong>Large</strong></p>
</div>
<div class="a-avatar">
  <img class="a-avatar__img" src="https://source.unsplash.com/random/200x200">
  <p class="u-text-align--center u-color-black"><strong>Medium</strong></p>
</div>
<div class="a-avatar  a-avatar--small">
  <img class="a-avatar__img" src="https://source.unsplash.com/random/200x200">
  <p class="u-text-align--center u-color-black u-xsmall"><strong>Small</strong></p>
</div>
<div class="a-avatar  a-avatar--xsmall">
  <img class="a-avatar__img" src="https://source.unsplash.com/random/200x200">
  <p class="u-text-align--center u-color-black u-xsmall"><strong>XSmall</strong></p>
</div>
```

### Initials

If no picture is available, use `data-text` to add initials.

```html_example_table
<div class="a-avatar" data-text="MR"></div>
```

### Corners

If no picture is available, use `data-text` to add initials.

```html_example_table
<div class="a-avatar  a-avatar--square">
  <img class="a-avatar__img" src="https://source.unsplash.com/random/200x200">
</div>
<div class="a-avatar  a-avatar--radius">
  <img class="a-avatar__img" src="https://source.unsplash.com/random/200x200">
</div>
<div class="a-avatar  a-avatar--round">
  <img class="a-avatar__img" src="https://source.unsplash.com/random/200x200">
</div>
```

## External Resources

* [MDN Entry for Image Element](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/img)

***

*/
.a-avatar {
  display: inline-block;
  position: relative;
  width: 4em;
  height: 4em;
  margin: 0;
  border-radius: 30em;
  background-color: #a6192e;
  color: #FFF; }

.a-avatar[data-text]:after {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  content: attr(data-text); }

.a-avatar__img {
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 30em;
  overflow: hidden; }

.a-avatar--square,
.a-avatar--square .a-avatar__img {
  border-radius: 0; }

.a-avatar--round,
.a-avatar--round .a-avatar__img {
  border-radius: 30em; }

.a-avatar--radius,
.a-avatar--radius .a-avatar__img {
  border-radius: 3px; }

.a-avatar--xsmall {
  height: 1em;
  width: 1em; }

.a-avatar--small {
  height: 2em;
  width: 2em; }

.a-avatar--medium {
  height: 4em;
  width: 4em; }

.a-avatar--large {
  height: 6em;
  width: 6em; }

.a-avatar--xlarge {
  height: 8em;
  width: 8em; }

.a-avatar--super {
  height: 10em;
  width: 10em; }

/*doc
---
title: Badges
name: badges
category: Atoms
---
*Last Updated: August 20, 2018*

Badges are useful when you want to show additional info like status, tags, or categories.

Typically badges will use a `<span>` element.

## Code Example

```html_example_table
<span class="a-badge">Badge</span>

<span class="a-badge  a-badge--brand">Brand</span>

<span class="a-badge  a-badge--square">Square</span>

<span class="a-badge  a-badge--round">Round</span>
```
***

*/
.a-badge {
  border: 1px solid #797b7f;
  background-color: transparent;
  color: #797b7f;
  border-radius: 3px;
  display: inline-block;
  font-size: 1em;
  font-weight: 300;
  letter-spacing: 0.075em;
  line-height: 1.2;
  margin: 0;
  padding: 0.25em 0.5em;
  text-transform: uppercase; }

.a-badge--brand {
  border: 1px solid #a6192e;
  background-color: transparent;
  color: #a6192e; }

.a-badge--square {
  border-radius: 0; }

.a-badge--round {
  border-radius: 30em; }

.a-badge--round-square {
  border-radius: 3px; }

/*doc
---
title: Blockquotes
name: blockquote
category: Atoms
---
*Last Updated: August 21, 2018*

A blockquote is a callout section that is quoted from another source, or highlight quoted from within the article itself.

## Use

When used as a callout to an in-page quotation, `<cite>` is not required (but can be used if someone other than the article's author is being quoted). For all other quotes, `<cite>` must be used and should include as much of the following as possible:

* Author's name
* Title of work
* Url containing original quote, or author's work (place in the 'cite' attribute within the `<blockquote>` tag and in the 'href' attribute in the `<a>` tag sorrounding the source text in the `<cite>` tag)
* Location of the quotation within the cited work

## Code Examples

```html_example_table
<blockquote class="a-blockquote" cite="https://www.deepthoughtsbyjackhandey.com/">
	<div class="a-blockquote__body">
		Children need encouragement. If a kid gets an answer right, tell him it was a lucky guess. That way he develops a good, lucky feeling.
	</div>
	<footer class="a-blockquote__footer">
		<cite class="a-cite">Jack Handey, <a href="https://www.deepthoughtsbyjackhandey.com/" target="_blank"><em>Deep Thoughts</em></a></cite>
	</footer>
</blockquote>
```

```html_example_table
<blockquote class="a-blockquote  a-blockquote--emphasis">
	<div class="a-blockquote__body">
		<p>A lot of people are afraid of heights. Not me. I'm afraid of widths.</p>
	</div>
	<footer class="a-blockquote__footer">
		<cite class="a-cite">Steven Wright</cite>
	</footer>
</blockquote>
```

## External Resources

* [MDN Entry for the Blockquote Element](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/blockquote)
* [MDN Entry for the Cite Element](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/cite)

***

*/
blockquote,
.a-blockquote {
  border-left: 1px solid #797b7f;
  color: #a6192e;
  display: block;
  font-family: "sofia-pro", "Century Gothic", "Merriweather Sans", sans-serif;
  font-size: 1.5em;
  line-height: 1.25;
  margin-bottom: 1.5em;
  padding: 0 1em; }

blockquote p,
.a-blockquote p {
  margin: 0; }
  blockquote p + p,
  .a-blockquote p + p {
    margin-top: 0.5em; }
  blockquote p:first-of-type::before, blockquote p:last-of-type::after,
  .a-blockquote p:first-of-type::before,
  .a-blockquote p:last-of-type::after {
    font-size: 1.25em;
    line-height: 1; }

blockquote cite,
.a-blockquote .a-cite {
  display: block;
  margin: 0;
  padding: 0.5em 0;
  color: #797b7f;
  font-size: 1rem;
  font-style: normal;
  margin-top: 0.5em;
  /*&::before {
		content: "\2014 \2009";
	}*/ }

/*.a-blockquote__body,
%a-blockquote__body {
	@include paragraph;
	font-size: $blockquote-font-size;
	padding-top: 0;
	position: relative;

	p:first-child::before,
	p:last-child::after {
		font-size: $text-font-size-large;
	}
	p:first-child::before {
	    content: '\201C';
	}
	p:last-child::after {
	    content: '\201D';
	}
}

.a-blockquote__footer,
%a-blockquote__footer {
	@include paragraph;
	color: $blockquote-footer-color;
	font-size: $blockquote-footer-font-size;
	//font-style: $blockquote-footer-font-style;
	padding-bottom: 0;
}*/
/*.a-blockquote--brand,
%a-blockquote--brand {
	border-left-color: $blockquote-brand-border-color;
}*/
.a-blockquote--emphasis {
  border-left: none;
  margin-left: auto;
  margin-right: auto;
  padding: 1.625px 0px;
  padding: 1.625rem 0rem; }
  @media (min-width: 64rem) {
    .a-blockquote--emphasis {
      padding: 3.25px 0px 1.625px;
      padding: 3.25rem 0rem 1.625rem;
      text-align: center; } }
  .a-blockquote--emphasis > p,
  .a-blockquote--emphasis .a-blockquote__body {
    font-size: 27px;
    font-size: 1.6875rem;
    line-height: 1.5; }

@media (min-width: 30rem) {
  .a-blockquote--right {
    float: right;
    margin-left: 1em; }
  .a-blockquote--left {
    float: left;
    margin-right: 1em; }
  .a-blockquote--right,
  .a-blockquote--left {
    max-width: 20rem;
    padding: 0px 1.625px;
    padding: 0rem 1.625rem; } }

/*doc
---
title: Buttons
name: button
category: Atoms
---
*Last Updated: August 21, 2018*

Buttons add visual interest and draw the user's eye, when used appropriately.

## Use

Button styles can be applied to any element. Typically you'll want
to use either a `<button>` or an `<a>` element:

If your button is actually a link to another page, please use the
`<a>` element, while if your button performs an action, such as
submitting a form or triggering some javascript event, then use a
`<button>` element.

### Recommended 👍

<figure class="a-figure--ds__good">
	<img src="../images/pattern-library/atoms/button-fig-1.png" alt="Example of button use in the page's primary call-to-action"/>
	<figcaption>Fig 1: Example of button use in the page's primary call-to-action</figcaption>
</figure>

### Not Recommended 👎

<figure class="a-figure--ds__bad">
	<img src="../images/pattern-library/atoms/button-fig-2.png" alt="Example of button use in the page's primary call-to-action"/>
	<figcaption>Fig 2: Example of how not to use a button.</figcaption>
</figure>

## Code Examples & Variations

```html_example_table
<button class="a-button">Button</button>
```

### Button Colors

```html_example_table
<a class="a-button  a-button--brand" href="#">Brand</a>
```

```html_example_table
<a class="a-button  a-button--brand-fill" href="#">Brand-Fill</a>
```

### Button Sizes

```html_example_table
<a class="a-button  a-button--xsmall" href="#">xsmall</a>

<a class="a-button  a-button--small" href="#">small</a>

<a class="a-button  a-button--medium" href="#">medium</a>

<a class="a-button  a-button--large" href="#">large</a>

<a class="a-button  a-button--xlarge" href="#">xlarge</a>

<a class="a-button  a-button--super" href="#">super</a>
```

### Button Corners

```html_example_table
<a class="a-button  a-button--square" href="#">square</a>

<a class="a-button  a-button--round" href="#">round</a>
```

### Full-Width Buttons

```html_example_table
<a class="a-button  a-button--expand" href="#">expand</a>
```

### Disabled Buttons

```html_example_table
<a class="a-button  a-button--disabled" href="#">disabled</a>
```
***

*/
.a-button {
  border: 1px solid #414042;
  background-color: #FFF;
  color: #414042;
  letter-spacing: 0.025em;
  display: inline-block;
  max-width: 100%;
  margin: 0;
  padding: 0.5em;
  border-radius: 3px;
  outline: 0;
  font-family: inherit;
  font-size: 1em;
  line-height: normal;
  text-align: center;
  text-decoration: none;
  text-overflow: ellipsis;
  white-space: wrap;
  cursor: pointer;
  overflow: hidden;
  vertical-align: middle;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  font-weight: 500;
  box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.2); }
  .a-button.button--active {
    border-color: #282728;
    background-color: #282728;
    color: #FFF; }
  .a-button:not(:disabled) {
    /*&:focus {
			border-color: $button-focus-border-color;
			box-shadow: $button-focus-box-shadow;
		}*/ }
    .a-button:not(:disabled):hover {
      background-color: #a6192e;
      border: 1px solid #a6192e;
      color: #FFF; }
    .a-button:not(:disabled):active {
      border-color: #7a1222;
      background-color: #7a1222;
      color: #FFF; }
  .a-button:disabled {
    cursor: not-allowed;
    opacity: 0.5; }
  .a-button:focus {
    outline: dotted thin; }

.a-button--reset-text {
  text-transform: initial;
  letter-spacing: initial; }

.a-button--brand {
  border: 1px solid #a6192e;
  background-color: #FFF;
  color: #a6192e; }
  .a-button--brand.button--active {
    border-color: #7a1222;
    background-color: #7a1222;
    color: #FFF; }
  .a-button--brand:not(:disabled) {
    /*&:focus {
			border-color: $button-focus-border-color;
			box-shadow: $button-focus-box-shadow;
		}*/ }
    .a-button--brand:not(:disabled):hover {
      background-color: #a6192e;
      border: 1px solid #a6192e;
      color: #FFF; }
    .a-button--brand:not(:disabled):active {
      border-color: #7a1222;
      background-color: #7a1222;
      color: #FFF; }

.a-button--brand-fill {
  border: 1px solid transparent;
  background-color: #a6192e;
  color: #FFF; }
  .a-button--brand-fill.button--active {
    background-color: #7a1222; }
  .a-button--brand-fill:not(:disabled) {
    /*&:focus {
			border-color: $button-focus-border-color;
			box-shadow: $button-focus-box-shadow;
		}*/ }
    .a-button--brand-fill:not(:disabled):hover {
      background-color: #d2203a; }
    .a-button--brand-fill:not(:disabled):active {
      background-color: #7a1222; }

.a-button--ghost {
  background-color: rgba(0, 0, 0, 0.3);
  border-color: white;
  color: white; }
  .a-button--ghost:hover {
    background-color: rgba(0, 0, 0, 0.8); }

.a-button--xsmall {
  font-size: 0.75em; }

.a-button--small {
  font-size: 0.875em; }

.a-button--medium {
  font-size: 1em; }

.a-button--large {
  font-size: 1.25em; }

.a-button--xlarge {
  font-size: 1.5em; }

.a-button--super {
  font-size: 2em; }

.a-button__icon-left {
  padding-right: 0.5em; }

.a-button__icon-right {
  padding-left: 0.5em; }

.a-button--square {
  border-radius: 0; }

.a-button--round {
  border-radius: 30em; }

.a-button--expand,
input[type="submit"].a-button--expand,
input[type="reset"].a-button--expand,
input[type="button"].a-button--expand {
  margin-right: 0;
  margin-left: 0;
  padding-right: 0.5em;
  padding-left: 0.5em;
  display: inline-block;
  width: 100%; }

button[disabled],
.a-button--disabled {
  pointer-events: none;
  border: 1px solid #939598;
  color: #939598; }

/* Removed from the Pattern Library as of 8/21/2018
---
title: Code
name: code
category: Atoms
---

It is unlikely you will need to use `code` elements outside of the styleguide.

```html_example_table
<code class="a-code">
	Hello World!
</code>
```
*/
code,
kbd,
pre,
samp,
.a-code,
.a-pre {
  font-family: Consolas, "Andale Mono WT", "Andale Mono", "Lucida Console", "Lucida Sans Typewriter", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Liberation Mono", "Nimbus Mono L", Monaco, "Courier New", Courier, monospace;
  font-weight: normal;
  font-size: .875rem;
  color: #414042; }

pre,
.a-pre {
  margin: 0 0 1.5em 0;
  padding: 1rem;
  background-color: #F2F2F2;
  white-space: pre-wrap;
  word-wrap: break-word;
  overflow: auto;
  -moz-tab-size: 2;
    -o-tab-size: 2;
       tab-size: 2; }

code,
.a-code {
  border-radius: 3px;
  padding: .25rem;
  background-color: #F2F2F2; }

pre code,
.a-pre .a-code {
  padding: 0;
  background-color: transparent; }

.a-code--multiline {
  border-radius: 3px;
  display: block;
  overflow-x: auto;
  padding: 0.5em 1em;
  white-space: pre; }

/*doc
---
title: Figures (Move to Molecules?)
name: figures
category: Atoms
---
*Last Updated: August 21, 2018*

Figures are self-contained content, referenced in the main body of a page, but can be placed anywhere on that page without affecting the flow of the page. Typically includes an [`<img>`][images] and a `<figcaption>`.

## Accessibility Considerations

When using `<img>`, with the `src` as a raster image (.jpg, .png, .gif), the same considerations as the [image atom][images] apply, with the primary concern being the inclusion of the alt attribute. Since the figure molecule should never be used merely as a decorative element, the alt description **must be included**, without exception.

Ensure that the alt attribute thoroughly describes the image; never simply place the file name here. Also, try to make the alt description distinct from the `<figcaption>` text. For example: "white goat, stands on the back of brown cow," not "cow-goat.jpg."

## Use

A figure includes illustrative content used as additional information to strengthen the main text. Its value remains, regardless of where it's placed with the page; however, it is typically placed immediately below its first reference within the main text.

The figure body commonly contains a photo (.jpg, .png, .gif), vector graphic, infographic (svg), or data visualization (svg).

**Note:** notice the `img` elements have a `data-original` attribute instead of a `src`. This is for lazy loading. These images will not load until they are in the viewport. This saves bandwidth for us and the user. If you do not wish to lazy load images, use `src`.

```html_example_table
<figure class="a-figure">
	<img class="a-figure__image" data-original="http://placehold.it/600x300" alt="placeholder image">
	<figcaption class="a-figure__caption">This is a caption</figcaption>
</figure>
```

### Figure Alignment

```html_example_table
<figure class="a-figure  a-figure--left">
	<img class="a-figure__image" data-original="http://placehold.it/200x200" alt="placeholder image">
	<figcaption class="a-figure__caption">This is a left-aligned figure</figcaption>
</figure>

<figure class="a-figure  a-figure--right">
	<img class="a-figure__image" data-original="http://placehold.it/200x200" alt="placeholder image">
	<figcaption class="a-figure__caption">This is a right-aligned figure</figcaption>
</figure>
```

## Sizing

On larger screens, figures have a max width of 300px. In order to increase or decrease the size of figure, use one of these modifiers: `a-figure--small`, `a-figure--large`, `a-figure--xlarge`.

## External Resources

* [MDN Entry for the Figure Element](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/figure)
* [MDN Entry for the Figcapiton Element](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/figcaption)

***

*/
figure,
.a-figure {
  display: table;
  margin: 0 0 1.5em;
  max-width: 100%; }

.a-figure__image {
  display: block;
  margin-left: auto;
  margin-right: auto; }

figcaption,
.a-figure__caption {
  caption-side: bottom;
  color: #939598;
  display: table-caption;
  font-size: 0.875em;
  margin-bottom: 0;
  padding: 0.25em 0;
  text-align: left; }

.a-figure--center figcaption,
.a-figure--center .a-figure__caption {
  text-align: center; }

@media (min-width: 30rem) {
  .a-figure--center {
    margin-left: auto;
    margin-right: auto; }
  .a-figure--right {
    float: right;
    margin-left: 1em; }
  .a-figure--left {
    float: left;
    margin-right: 1em; }
  .a-figure--right,
  .a-figure--left {
    max-width: 18.75rem;
    /*@if $paragraph-indent == true {
			@include padding-equal(1);
			@include margin-bottom(0);
		} @else {
			@include padding(0, 1);
		}*/ }
  .a-figure--small {
    max-width: 9.375rem; }
  /* 150px */
  /* .a-figure--medium { max-width: 18.75rem; }   300px, default */
  .a-figure--large {
    max-width: 28.125rem; }
  /* 450px */
  .a-figure--xlarge {
    max-width: 37.5rem; }
  /* 600px */ }

/*doc
---
title: Horizontal Rules
name: hr
category: Atoms
---
*Last Updated: August 21, 2018*

Horizontal rules are used to separate content or define a change in an HTML page.

## Code Example

```html_example_table
<hr class="a-hr">

<hr class="a-hr  a-hr--block">

<hr class="a-hr  a-hr--type">
```

***

*/
hr,
.a-hr {
  margin-top: 1.625px;
  margin-top: 1.625rem;
  margin-bottom: 1.625px;
  margin-bottom: 1.625rem;
  background-image: linear-gradient(to bottom, transparent 50%, white 50%, #939598 calc(50% + 1px), transparent calc(50% + 1px));
  background-position: 0 100%;
  background-repeat: repeat-x;
  box-sizing: content-box;
  border: 0;
  color: #939598;
  display: block;
  height: 1.625px;
  height: 1.625rem;
  margin-right: auto;
  margin-left: auto;
  width: 100%; }

.a-hr--block {
  background-repeat: no-repeat;
  background-size: 100% 16px;
  background-size: 100% 1.625rem;
  background-image: linear-gradient(to bottom, transparent 1px, transparent 6px, #939598 6px, #939598 10px, transparent 10px, transparent 16px);
  width: 100px; }

.a-hr--type {
  background: none;
  text-align: center; }
  .a-hr--type:before {
    content: "***";
    letter-spacing: 0.3em;
    vertical-align: -.3em; }

/*doc
---
title: Icons
name: icons
category: Atoms
---
*Last Updated: December 4, 2018*

Icons are served via an SVG sprite system. For a full list of available icons, check out the [Icon Library](../icons/).

## Use

Icons can provide a simple way to draw a user's eye to a specific element; but only if they're used sparingly and are accompanied by explanatory text. On its own, an icon's meaning is open to broad interpretation, with few exceptions. While icons can add visual interest to an element they, generally speaking, add little benefit to the usability of said element.

## Code Examples

### Sizes

Size modifiers change the size of icons.

```html_example
<svg class="a-icon  a-icon--xsmall">
	<use xlink:href="../images/svg/icons.svg#search-icon"></use>
</svg>
<svg class="a-icon  a-icon--small">
	<use xlink:href="../images/svg/icons.svg#search-icon"></use>
</svg>
<svg class="a-icon  a-icon--medium">
	<use xlink:href="../images/svg/icons.svg#search-icon"></use>
</svg>
<svg class="a-icon  a-icon--large">
	<use xlink:href="../images/svg/icons.svg#search-icon"></use>
</svg>
<svg class="a-icon  a-icon--xlarge">
	<use xlink:href="../images/svg/icons.svg#search-icon"></use>
</svg>
<svg class="a-icon  a-icon--super">
	<use xlink:href="../images/svg/icons.svg#search-icon"></use>
</svg>
```

### Social Media

Social media modifiers can be used to fill icons with each network's brand color.

```html_example_table
<svg class="a-icon  a-icon--facebook">
	<use xlink:href="../images/svg/icons.svg#facebook"></use>
</svg>
<svg class="a-icon  a-icon--twitter">
	<use xlink:href="../images/svg/icons.svg#twitter"></use>
</svg>
```

***

*/
.a-icon {
  color: currentColor;
  max-width: 100%; }

.a-icon--fst {
  width: 20px;
  height: 20px; }

.a-icon--fst-location {
  position: relative;
  top: 5px;
  color: #a6192e; }

.a-icon--xsmall {
  height: 0.75em;
  width: 0.75em; }

.a-icon--small {
  height: 1em;
  width: 1em; }

.a-icon--medium {
  height: 1.25em;
  width: 1.25em; }

.a-icon--large {
  height: 1.75em;
  width: 1.75em; }

.a-icon--xlarge {
  height: 2.5em;
  width: 2.5em; }

.a-icon--super {
  height: 4em;
  width: 4em; }

.a-icon--videoplay {
  height: 8em;
  width: 8em; }

.a-icon--facebook {
  color: #3b5998; }

.a-icon--github {
  color: #171515; }

.a-icon--google-plus {
  color: #dd4b39; }

.a-icon--instagram {
  color: #517fa4; }

.a-icon--linkedin {
  color: #007bb6; }

.a-icon--skype {
  color: #00AFF0; }

.a-icon--soundcloud {
  color: #ff3a00; }

.a-icon--tumblr {
  color: #32506d; }

.a-icon--twitter {
  color: #00aced; }

.a-icon--vimeo {
  color: #aad450; }

.a-icon--vk {
  color: #45668e; }

.a-icon--youtube {
  color: #bb0000; }

.a-icon--rss {
  color: #FF6600; }

@media (max-width: 47.99rem) {
  .a-icon--accordion-minus {
    display: none; }
  .o-section__accordion-tap.o-section__accordion-active .a-icon--accordion-minus {
    display: block; }
  .o-section__accordion-tap.o-section__accordion-active .a-icon--accordion-plus {
    display: none; } }

@media print {
  .a-icon--accordion-plus,
  .a-icon--accordion-minus {
    display: none; } }

.a-kAudioOnly .kWidgetPlayBtn {
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center; }
  .a-kAudioOnly .kWidgetPlayBtn:hover {
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center; }

.a-kAudioOnly img {
  display: none; }

/*doc
---
title: Inputs
name: inputs
category: Atoms
---
*Last Updated: December 4, 2018*

Inputs are tricky because some are atoms and some are molecules. Keep an eye on the namespacing. For other form element which combine two or more atoms, see [forms][forms] in molecules.

## Use

### Accessiblity Considerations

Placeholder text should not be used to give instructions to a user on how to use a form field. Most screen readers do not read the placeholder text. The `<label>` tag should be used for this text. In some cases, the "u-visuallyhidden" [visibility class][visibility] can be used to hide the label from all users, except those using screen readers.

## Code Examples

### Text Inputs

```html_example_table
<label for="text-input">Standard Text Input</label>
<input id="text-input" class="a-field" type="text">

<label for="select-box">Choose one of the following:</label>
<select id="select-box" class="a-field">
	<option>Choose me...</option>
	<option>No, choose me</option>
	<option>No, choose MEEEE!!!</option>
</select>

<label for="text-area">Use this type of field for multi-line input</label>
<textarea id="text-area" class="a-field"></textarea>
```

### Colors

```html_example_table
<input class="a-field  a-field--success" type="text" placeholder=".a-field--success">

<input class="a-field  a-field--error" type="text" placeholder=".a-field--error">

<input class="a-field" disabled type="text" placeholder="disabled">
```

### Icons

Technically, input elements with icons are molecules, not atoms. Therefore, they are prefixed with `m-` instead of `a-`.

```html_example_table
<div class="m-field  m-field--icon-left">
	<svg class="a-icon">
		<use xlink:href="#search-icon"></use>
	</svg>
	<input class="a-field" type="text">
</div>
```

### Sizes

To change the size of `input` elements we will use utility classes.

```html_example_table
<input class="a-field  u-xsmall" type="text" placeholder=".u-xsmall">

<input class="a-field  u-small" type="text" placeholder=".u-small">

<input class="a-field  u-medium" type="text" placeholder=".u-medium">

<input class="a-field  u-large" type="text" placeholder=".u-large">

<input class="a-field  u-xlarge" type="text" placeholder=".u-xlarge">

<input class="a-field  u-super" type="text" placeholder=".u-super">
```

### Checkboxes and Radios

Place your checkboxes and radios within labels and append the `.a-field--choice` modifier class.

```html_example_table
<label class="a-field  a-field--choice">
	<input type="checkbox"> Tick the box
</label>

<label class="a-field  a-field--choice">
	<input name="radios" type="radio" checked> Yes, this is a standard radio
</label>
<label class="a-field  a-field--choice">
	<input id="no-radio" name="radios" type="radio"> No, the is a regular radio
</label>
```

### Checkbox Button Grid

An alternate styling, currently only in use on the [Find A Location page](https://healthcare.utah.edu/locations/). For more grid options see the [grids section in layouts][grids].

```html_example
<div class="l-grid">
	<div class="l-grid__item 1/3">
		<label class="m-dropdown-services a-button  a-button--brand a-button--small a-button--expand u-space-bottom--medium" for="option-one">One</label>
		<input class="m-dropdown-services" id="option-one" type="checkbox" name="filter" value="option-one">
	</div>
	<div class="l-grid__item 1/3">
		<label class="m-dropdown-services a-button  a-button--brand a-button--small a-button--expand u-space-bottom--medium" for="option-two">Two</label>
		<input class="m-dropdown-services" id="option-two" type="checkbox" name="filter" value="option-two">
	</div>
	<div class="l-grid__item 1/3">
		<label class="m-dropdown-services a-button  a-button--brand a-button--small a-button--expand u-space-bottom--medium" for="option-c">C</label>
		<input class="m-dropdown-services" id="option-c" type="checkbox" name="filter" value="option-c">
	</div>
</div>
```

## External Resources

* [MDN Entry for the Input (Form Input) Element](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input)

***

*/
.a-label {
  cursor: pointer;
  display: block;
  font-weight: 500;
  padding: 1em 0;
  text-transform: uppercase;
  width: 100%; }

.a-field {
  display: block;
  width: 100%;
  margin: 0;
  padding: 0.5em;
  border: 1px solid #797b7f;
  border-radius: 3px;
  outline: 0;
  background-color: #FFF;
  font-family: inherit;
  font-size: 1em;
  font-weight: 300;
  resize: vertical;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none; }
  .a-field:focus {
    border-color: #a6192e;
    box-shadow: inset 0 0 0 1px #d2203a; }

select.a-field {
  cursor: pointer; }

select.a-field:not([multiple]) {
  padding-right: 1em;
  background: url("data:image/png;base64,R0lGODlhDwAUAIABAAAAAP///yH5BAEAAAEALAAAAAAPABQAAAIXjI+py+0Po5wH2HsXzmw//lHiSJZmUAAAOw==") no-repeat 99% 50%;
  background-color: #fff; }

.a-field input {
  margin-right: 0.125em;
  outline: 0;
  font-size: 1em; }

.a-field--label {
  margin: 0.5em 0 0 0; }

.a-field--error {
  border-color: #C8102E;
  color: #C8102E; }

.a-field--success {
  border-color: #008755;
  color: inherit; }

.a-field--choice {
  border: 0;
  border-radius: 0;
  background-color: transparent; }

.a-field--disabled,
.a-field:disabled {
  color: #797b7f;
  cursor: not-allowed;
  border-color: #797b7f;
  background-color: #c7c8ca; }
  .a-field--disabled.a-field--choice,
  .a-field:disabled.a-field--choice {
    background-color: transparent; }

.a-field input:disabled {
  color: #797b7f;
  cursor: not-allowed; }

::-webkit-input-placeholder {
  color: #939598; }

::-moz-placeholder {
  color: #939598; }

:-ms-input-placeholder {
  color: #939598; }

.a-field--emphasis::-webkit-input-placeholder {
  color: #414042; }

.a-field--emphasis::-moz-placeholder {
  color: #414042;
  opacity: 1; }

.a-field--emphasis :-ms-input-placeholder {
  color: #414042; }

/*doc
---
title: Images
name: images
category: Atoms
---
*Last Updated: August 22, 2018*

No classes necessary for images. They will behave responsively by default.

## Accessibility Considerations

Take special consideration to the `alt` attribute. If the image is purely decorative, inconsequential to the surrounding content, use the alt attribute, but leave it blank (`alt=""`). Otherwise, thoroughly describe the image so that users with screen readers or other assistive devices benefit from the full message. The file name never belongs in the alt description. For example, `alt="Four kids playing basketball outside on a sunny day"`, not `alt="basketball"` or `alt="DSC_0007865.jpg"`.

## Use

Note: notice the `img` elements have a `data-original` attribute instead of a `src`. This is for lazy loading. These images will not load until they are in the viewport. This saves bandwidth for us and the user. If you do not wish to lazy load images, use `src`.

## Code Example

```html_example_table
<img alt="placeholder" data-original="https://placehold.it/200x200"/>
```

## External Resources

* [MDN Entry for the Image Embed Element](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/img)

***

*/
img,
svg {
  max-width: 100%; }

img {
  border: 0;
  display: block;
  margin: inherit auto; }

img:not([src]) {
  visibility: hidden; }

/*doc
---
title: Links
name: links
category: Atoms
---
*Last Updated: August 22, 2018*

Our standard, in-text link is red, slightly-bolded with a solid underline. Used for in-page anchor links or links to other pages, specifying the target window.

## Accessibility Considerations

Links that have `target="_blank"` should provide an indication that a new window will open (i.e. `<a href="http://google.com" target="_blank">`[Google (opens an external page in a new window/tab)](htttp://google.com)`</a>`).

When linking to a non-html doctument, indicate what type of file the link will open.

## Use

We use `target="_blank"` for all links to webpages outside of our domains (healthcare.utah.edu, medicine.utah.edu, etc.).

For internal links, avoid using `target="_blank"`.

Main body text links should not be restyled in any way (even using utility classes).

## Code Example

```html_example_table
<a class="a-link">hyper-link</a>
```

## External Resources

* [MDN Entry for the Anchor Element](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a)

***

*/
a,
.a-link {
  border-bottom: 0.125rem solid currentColor;
  color: #a6192e;
  cursor: pointer;
  font-weight: 400;
  text-decoration: none;
  transition: color 0.3s, border-color 0.3s;
  word-wrap: break-word;
  /*&:visited {
		color: $color-purple;
	}*/
  /*&:hover img {
		border: none;
		background: none;
		opacity: 0.9;
		filter: alpha(opacity=90);
	}*/ }
  a:active, a:hover,
  .a-link:active,
  .a-link:hover {
    outline: 0;
    text-decoration: none; }
  a:hover,
  .a-link:hover {
    border-bottom-color: #7a1222;
    color: #7a1222; }
  a:active,
  .a-link:active {
    color: #d2203a; }
  a img,
  .a-link img {
    border: none;
    background: none; }

/*
 * Visited Color
 * description: only make visited links purple if link has no classes
 */
a:visited:not([class]) {
  color: #6C54A3; }

/* main {

	a:not(.a-button):not(.m-callout__button):not(.m-card):not(.m-button-group__link):not(.m-pagination__page):not(.m-pagination__control):not(.m-tile):not(.o-swiper__caption-link):not([class^="u-color"]):not([href=""]):not(:hover):visited {
		color: $color-purple;
	}

} */
.a-link--borderless {
  border-bottom: none; }

.a-link--muted,
.a-link--muted a {
  color: #939598; }

.a-link--muted:hover,
.a-link--muted a:hover {
  color: #797b7f; }

.a-link--text:not(:hover),
.a-link--text a:not(:hover) {
  color: inherit; }

.a-link--anchorjs {
  border: none;
  color: #939598; }

.a-quick-links {
  font-size: 0.875em;
  list-style: none;
  padding-left: 0;
  position: relative;
  text-align: center;
  text-transform: uppercase;
  z-index: 1; }

@media (min-width: 48rem) {
  .a-quick-links--left,
  .a-quick-links--right {
    max-width: 50vw; }
  .a-quick-links--left {
    border-right: 1px solid #797b7f;
    float: left;
    margin-right: 1.5em;
    padding-right: 1.5em; }
  .a-quick-links--right {
    border-left: 1px solid #797b7f;
    float: right;
    margin-left: 1.5em;
    padding-left: 1.5em; } }

.a-quick-links__item {
  padding: 1em 2em; }

.a-quick-links__item:not(:last-child) {
  border-bottom: 1px solid #797b7f; }

.a-quick-links__link {
  border-bottom: none; }

/*doc
---
title: Lists
name: lists
category: Atoms
---
*Last Updated: August 23, 2018*

Lists group related items into an easy to scan block for better content legibility. Lists can be nested as needed for lists within lists within lists within . . .

## Use

Unordered lists (`<ul>`) contain items whose order is unimportant to the meaning of the content. The item order could be changed without changing the meaning.

Ordered lists (`<ol>`) contain items whose order is essential to the meaning and/or flow of the content.

## Code Examples

### Unordered

```html_example_table
<ul class="a-list">
	<li class="a-list__item">Lorem ipsum dolor sit amet</li>
	<li class="a-list__item">Consectetur adipiscing elit</li>
	<li class="a-list__item">Nulla volutpat aliquam velit
		<ul class="a-list">
			<li class="a-list__item">Phasellus iaculis neque</li>
			<li class="a-list__item">Purus sodales ultricies</li>
			<li class="a-list__item">Vestibulum laoreet porttitor sem</li>
			<li class="a-list__item">Ac tristique libero volutpat at</li>
		</ul>
	</li>
	<li class="a-list__item">Faucibus porta lacus fringilla vel</li>
</ul>
```

### Ordered

```html_example_table
<ol class="a-list">
	<li class="a-list__item">Lorem ipsum dolor sit amet</li>
	<li class="a-list__item">Consectetur adipiscing elit</li>
	<li class="a-list__item">Nulla volutpat aliquam velit
		<ol class="a-list">
			<li class="a-list__item">Phasellus iaculis neque</li>
			<li class="a-list__item">Purus sodales ultricies</li>
			<li class="a-list__item">Vestibulum laoreet porttitor sem</li>
			<li class="a-list__item">Ac tristique libero volutpat at</li>
		</ol>
	</li>
	<li class="a-list__item">Faucibus porta lacus fringilla vel</li>
</ol>
```
### Variations

#### Divider

Add lines between list items. Used primarily in navigational elements, such as a related content sidebar.

```html_example_table
<ul class="a-list  a-list--divider">
	<li class="a-list__item">Lorem ipsum dolor sit amet</li>
	<li class="a-list__item">Consectetur adipiscing elit</li>
	<li class="a-list__item">Faucibus porta lacus fringilla vel</li>
</ul>
```

### Un-styled

Applying `.a-list--unstyled` to a list will remove the bullet points.

You can remove bullet points on individual items by adding the `.a-list__item--unstyled` modifier.

```html_example_table
<ul class="a-list  a-list--unstyled">
	<li class="a-list__item"><strong>I'm an unstyled list</strong></li>
	<li class="a-list__item">Consectetur adipiscing elit</li>
	<li class="a-list__item">Nulla volutpat aliquam velit
		<ul class="a-list"> <!-- Has bullet points-->
			<li class="a-list__item">Phasellus iaculis neque</li>
			<li class="a-list__item">Purus sodales ultricies</li>
			<li class="a-list__item  a-list__item--unstyled"><strong>I'm an unstyled item</strong></li>
			<li class="a-list__item">Ac tristique libero volutpat at</li>
		</ul>
	</li>
	<li class="a-list__item">Faucibus porta lacus fringilla vel</li>
</ul>
```

### Inline

To make your list items flow left to right apply the `.a-list--inline` modifier. Use with small lists with low-word count iteams.

```html_example_table
<ul class="a-list  a-list--inline">
	<li class="a-list__item">Lorem</li>
	<li class="a-list__item">ipsum</li>
	<li class="a-list__item">dolor</li>
</ul>
```

## External Resources

* [MDN Entry for the Unordered List Element](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/ul)
* [MDN Entry for the Ordered List Element](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/ol)
* [MDN Entry for the List Item List Element](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/li)

***

*/
ul,
ol,
dl,
.a-list {
  display: block;
  margin: 0 0 1.5em;
  padding: 0 0 0 1em;
  font-family: inherit; }

ul ul,
ul ol,
ol ol,
ol ul,
.a-list .a-list {
  margin-bottom: 0;
  padding: 0 0 0 1em; }

ul {
  list-style-type: disc; }
  ul ul {
    list-style-type: square; }
    ul ul ul {
      list-style-type: circle; }

ol {
  list-style-type: decimal; }
  ol ol {
    list-style-type: upper-alpha; }
    ol ol ol {
      list-style-type: lower-roman; }

li::marker {
  color: #a6192e; }

dl {
  margin-left: 0; }

dt {
  font-weight: 500; }

dd {
  margin-bottom: 1.5em; }

.a-list--unstyled,
.a-list--ordered {
  margin-left: 0;
  padding: 0;
  list-style-type: none; }

.a-list--inline {
  margin-left: 0;
  padding: 0; }
  .a-list--inline .a-list__item {
    display: inline-block;
    width: auto;
    padding-right: 1em; }
  .a-list--inline:not(.a-list--unstyled) .a-list__item:before {
    padding: 0 0.5em 0 0;
    content: "•"; }

.a-list--ordered {
  counter-reset: ordered; }
  .a-list--ordered .a-list__item:before {
    padding: 0 0.5em 0 0;
    content: counters(ordered, ".") " ";
    counter-increment: ordered; }

.a-list--divider {
  list-style: none;
  padding-left: 0; }

.a-list--divider > li:nth-child(n+2) {
  margin-top: 0.5em;
  padding-top: 0.5em;
  border-top: 1px solid #adafb1; }

.a-list__item {
  padding: 0; }

.a-list__item--unstyled {
  list-style-type: none; }

/*doc
---
title: Overlays
name: overlays
category: Atoms
---
*Last Updated: August 23, 2018*

Overlays are used to blackout the background context of the page.

## Use

Overlays are only used on our sites in conjunction with the modal molecule. Because overlays, especially full-page ones, disrupt a user's flow use judiciously. Use when the user's attention on the modal is essential to him/her accomplishing his/her goal.

To contain an overlay within an element set the parent element CSS to `position: relative;`

<figure class="a-figure--ds">
	<img src="../images/pattern-library/molecules/modal.jpg" alt="Example of a full-page overlay used in a modal"/>
	<figcaption>Fig 1: Example a full-page overlay used in a modal</figcaption>
</figure>

## Code Examples

```html_example_table
<div class="u-bg-black  u-padding--medium" style="position:relative;">
	<div class="a-overlay"></div>
</div>
```

### Dismissable

Dismissable overlays change the mouse cursor to a hand on mouseover.

```html_example_table
<div class="u-bg-black  u-padding--medium" style="position:relative;">
	<div class="a-overlay  a-overlay--dismissable"></div>
</div>
```

### Transparent

Overlays don't necessarily need to be visible, they can appear transparent to provide functionality but no visual cues. If so use the `a-overlay--transparent` modifier. 

```html_example_table
<div class="u-bg-black  u-padding--medium" style="position:relative;">
	<div class="a-overlay  a-overlay--transparent"></div>
</div>
```

### White

The `a-overlay--white` class will make the overlay a transparent white color.

```html_example_table
<div class="u-bg-black  u-padding--medium" style="position:relative;">
	<div class="a-overlay  a-overlay--white"></div>
</div>
```

### Full Page

You can make overlays cover the entire page by adding the `a-overlay--fullpage` modifier. The overlay will remain in a fixed position behind the content you want to promote.

***

*/
.a-overlay {
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.8);
  z-index: 500; }

.a-overlay--fullpage {
  padding-top: 5em;
  position: fixed; }

.a-overlay--transparent {
  background-color: transparent; }

.a-overlay--white {
  background-color: rgba(255, 255, 255, 0.8); }

.a-overlay--dismissable {
  cursor: pointer; }

/*doc
---
title: Progress
name: progress
category: Atoms
---
*Last Updated: August 23, 2018*

Progress bars are used to help set user expectations on how long a certain task will take and where he/she is in the process.

## Use

These are primary used in one-thing-at-a-time forms, where the form is broken up into individual chunks to improve the overall completion rate of the form. Should not be used as an **estimate** of how much the user has remaining, but rather as an exact number.

Use the `style="width:00%"` attribute, using width to set the "percentage" remaining. The text overlaid on the progress bar is placed within the same `<div>` that has said style attribute.

<figure class="a-figure--ds">
	<img src="../images/pattern-library/atoms/progress.png" alt="Example of a progress bar used in a one-thing-at-a-time form used on the Virtual Visits site"/>
	<figcaption>Fig 1: Example of a progress bar used in a one-thing-at-a-time form used on the Virtual Visits site</figcaption>
</figure>

## Code Examples

```html_example
<div class="a-progress u-space-bottom--small">
	<div class="a-progress__bar" style="width:15%;"></div>
</div>
```

### Rounded

```html_example
<div class="a-progress  a-progress--rounded u-space-bottom--small">
	<div class="a-progress__bar" style="width:15%;"></div>
</div>
```

### Colors

```html_example
<div class="a-progress u-space-bottom--small">
	<div class="a-progress__bar  a-progress__bar--brand" style="width:15%;"></div>
</div>
```

### Sizes

```html_example_table
<div class="a-progress  u-xsmall">
	<div class="a-progress__bar" style="width:5%;">5%</div>
</div><br>
<div class="a-progress  u-small">
	<div class="a-progress__bar" style="width:15%;">15%</div>
</div><br>
<div class="a-progress  u-medium">
	<div class="a-progress__bar" style="width:20%;">20%</div>
</div><br>
<div class="a-progress  u-large">
	<div class="a-progress__bar" style="width:25%;">25%</div>
</div><br>
<div class="a-progress  u-xlarge">
	<div class="a-progress__bar" style="width:45%;">45%</div>
</div><br>
<div class="a-progress  u-super">
	<div class="a-progress__bar" style="width:65%;">65%</div>
</div>
```

***

*/
.a-progress {
  border: 0;
  border-radius: 3px;
  background-color: #c7c8ca;
  color: #FFF;
  display: block;
  overflow: hidden;
  text-align: center;
  vertical-align: baseline; }

.a-progress--rounded {
  border-radius: 30em; }

.a-progress__bar {
  background-color: #797b7f;
  border-radius: 0;
  display: block;
  float: left;
  height: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap; }

.a-progress__bar:after {
  color: transparent !important;
  content: "-"; }

.a-progress__bar--brand {
  background-color: #a6192e; }

/*doc
---
title: Social Share Kit
name: ssk
category: Atoms
---
*Last Updated: August 23, 2018*

Social Share Kit is a library of decent and good looking CSS/JavaScript social sharing tools like social network icons, share buttons, share count, floating/sticky button bar and popups.

## Use & Code Examples

In order for the buttons to work, these CSS and JS files must be included on the page.

```html_example
<link href="https://cdnjs.cloudflare.com/ajax/libs/social-share-kit/1.0.13/css/social-share-kit.css" media="all" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/social-share-kit/1.0.13/js/social-share-kit.min.js"></script>
<script type="text/javascript">
SocialShareKit.init();
</script>
```

Then the following code can be used to have social buttons.

```html_example_table
<div class="ssk-group ssk-xs a-ssk">
    <a href="" class="ssk ssk-facebook"></a>
    <a href="" class="ssk ssk-twitter"></a>
    <a href="" class="ssk ssk-google-plus"></a>
    <a href="" class="ssk ssk-pinterest"></a>
</div>
```

### Alignment

Button alignments can be changed with the following modifiers: `a-ssk--center`, `a-ssk--left`, `a-ssk--right`.

```html_example_table
<div class="ssk-group  ssk-xs  a-ssk  a-ssk--center">
    <a href="" class="ssk ssk-facebook"></a>
    <a href="" class="ssk ssk-twitter"></a>
</div>
```

```html_example_table
<div class="ssk-group  ssk-xs  a-ssk  a-ssk--right">
    <a href="" class="ssk ssk-facebook"></a>
    <a href="" class="ssk ssk-twitter"></a>
</div>
```

## External Resources

* For more information, visit the [Social Share Kit site](http://socialsharekit.com/).

***

*/
.a-ssk {
  display: -ms-flexbox;
  display: flex; }

/**
 * Vertical
 */
.a-ssk--vertical {
  -ms-flex-direction: column;
      flex-direction: column; }

/**
 * Align Items
 */
.a-ssk--center {
  -ms-flex-pack: center;
      justify-content: center; }

.a-ssk--left {
  -ms-flex-pack: start;
      justify-content: flex-start; }

.a-ssk--right {
  -ms-flex-pack: end;
      justify-content: flex-end; }

/**
 * Links
 */
.a-ssk a {
  border-bottom: none; }

.a-star-ratings {
  position: relative;
  top: .2em; }

/*doc
---
title: Tables
name: tables
category: Atoms
---
*Last Updated: August 23, 2018*

Tables should **never** be used for layout, only for displaying tabular data.

## Accessibility Considerations

Use the `<caption>` tag (nested after the opening `<table>` tag, but before `<tbody>`) to announce the table's purpose to screen reader users so they can more easily decide whether to skip the entire table or not. In most cases, it's acceptable to use the [visibility utility classes][visibility] `u-visually` and `hidden  u-focusable` to hide the caption from all user agents except screen readers.

## Use

Use the `<thead>` section (which precedes `<tbody>`) to define each columns header (which should be enclosed in `<th>` tags, not `<td>`).

## Code Examples and Variations

```html_example
<table class="a-table">
	<caption class="a-table__caption">Basic table</caption>
	<thead class="a-table__head">
		<tr class="a-table__row a-table__row--heading">
			<th class="a-table__cell">First name</th>
			<th class="a-table__cell">Last name</th>
			<th class="a-table__cell">Username</th>
		</tr>
	</thead>
	<tbody class="a-table__body">
		<tr class="a-table__row">
			<td class="a-table__cell">Jim</td>
			<td class="a-table__cell">Kirk</td>
			<td class="a-table__cell">@captaink</td>
		</tr>
		<tr class="a-table__row">
			<td class="a-table__cell">Mr.</td>
			<td class="a-table__cell">Spock</td>
			<td class="a-table__cell">@science101</td>
		</tr>
		<tr class="a-table__row">
			<td class="a-table__cell">Nyota</td>
			<td class="a-table__cell">Uhura</td>
			<td class="a-table__cell">@comms</td>
		</tr>
	</tbody>
</table>
```

### Striped

```html_example
<table class="a-table a-table--striped">
	<caption class="a-table__caption">Striped rows</caption>
	<thead class="a-table__head">
		<tr class="a-table__row a-table__row--heading">
			<th class="a-table__cell">First name</th>
			<th class="a-table__cell">Last name</th>
			<th class="a-table__cell">Username</th>
		</tr>
	</thead>
	<tbody class="a-table__body">
		<tr class="a-table__row">
			<td class="a-table__cell">Jim</td>
			<td class="a-table__cell">Kirk</td>
			<td class="a-table__cell">@captaink</td>
		</tr>
		<tr class="a-table__row">
			<td class="a-table__cell">Mr.</td>
			<td class="a-table__cell">Spock</td>
			<td class="a-table__cell">@science101</td>
		</tr>
		<tr class="a-table__row">
			<td class="a-table__cell">Nyota</td>
			<td class="a-table__cell">Uhura</td>
			<td class="a-table__cell">@comms</td>
		</tr>
	</tbody>
</table>
```

### Condensed

```html_example
<table class="a-table a-table--condensed">
	<caption class="a-table__caption">Small table and text</caption>
	<thead class="a-table__head">
		<tr class="a-table__row a-table__row--heading">
			<th class="a-table__cell">First name</th>
			<th class="a-table__cell">Last name</th>
			<th class="a-table__cell">Username</th>
		</tr>
	</thead>
	<tbody class="a-table__body">
		<tr class="a-table__row">
			<td class="a-table__cell">Jim</td>
			<td class="a-table__cell">Kirk</td>
			<td class="a-table__cell">@captaink</td>
		</tr>
		<tr class="a-table__row">
			<td class="a-table__cell">Mr.</td>
			<td class="a-table__cell">Spock</td>
			<td class="a-table__cell">@science101</td>
		</tr>
		<tr class="a-table__row">
			<td class="a-table__cell">Nyota</td>
			<td class="a-table__cell">Uhura</td>
			<td class="a-table__cell">@comms</td>
		</tr>
	</tbody>
</table>
```

## External Resources

* [MDN Entry for the Table Element](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/table)
* [MDN Entry for the Table Head Element](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/thead)
* [MDN Entry for the Table Body Element](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/tbody)
* [MDN Entry for the Table Foot Element](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/tfoot)
* [MDN Entry for the Table Row Element](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/tr)
* [MDN Entry for the Table Data Cell Element](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/td)
* [MDN Entry for the Table Heading Element](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/th)
* [MDN Entry for the Table Caption Element](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/caption)

***

*/
table,
.a-table {
  width: 100%;
  margin: 0 auto 1.5em;
  padding: 0;
  border: 0;
  border-collapse: collapse;
  border-spacing: 0; }

caption,
.a-table__caption {
  max-width: 100%;
  padding: 0.5em 0;
  color: #797b7f;
  font-size: 0.875em;
  text-align: left; }

thead,
tr,
tbody,
.a-table__row,
.a-table__head,
.a-table__body {
  max-width: 100%; }

.a-table--striped :not(.a-table__row--heading).a-table__row:nth-of-type(odd) {
  background-color: #F2F2F2;
  color: initial; }

td,
.a-table__cell {
  padding: 0.5em;
  text-align: left;
  overflow: auto; }

.a-table__cell--middle {
  vertical-align: middle; }

.a-table__cell--bottom {
  vertical-align: bottom; }

th,
.a-table__row--heading .a-table__cell {
  border-bottom: 1px solid #adafb1;
  background-color: #F2F2F2;
  color: initial;
  font-size: 1em;
  font-weight: 500; }

.a-table--striped .a-table__row--heading .a-table__cell {
  background-color: #FFF;
  color: initial; }

.a-table--clickable :not(.a-table__row--heading).a-table__row:hover .a-table__cell,
.a-table__row--clickable:hover .a-table__cell {
  background-color: initial;
  color: #a6192e;
  cursor: pointer; }

.a-table__row--disabled {
  background-color: initial;
  color: #797b7f;
  cursor: default; }

.a-table--clickable :not(.a-table__row--heading).a-table__row--disabled:hover .a-table__cell,
.a-table__row--disabled:hover .a-table__cell {
  background-color: initial;
  color: #797b7f;
  cursor: not-allowed; }

.a-table--condensed {
  font-size: 0.875em; }
  .a-table--condensed .a-table__cell {
    padding: 0.25em; }

/*doc
---
title: Tooltips
name: tooltips
category: Atoms
---
*Last Updated: August 23, 2018*

<figure class="a-figure--ds__bad 1/2">
	<img src="../images/pattern-library/atoms/bad-tool-tip-mobile.png" alt="We need to review how these are displayed on mobile!!"/>
	<figcaption><mark class="u-large"><strong>We need to review how these are displayed on mobile!!</strong></mark></figcaption>
</figure>

Provides supplementary information without removing the user from the flow of the main content.

## Use

Tooltips are activated on hover in desktop browsers and on click/tap on mobile.

A tooltip's content is entered in the `aria-label` attribute within the associated `<span>`.

<figure class="a-figure--ds">
	<img src="../images/pattern-library/atoms/tooltip.png" alt="Example of tooltip use in a form, on a desktop browser"/>
	<figcaption>Fig 1: Example of tooltip use in a form, on a desktop browser</figcaption>
</figure>

## Code Examples

### Hint

The hint modifier gives text an dotted underline and question mark cursor on hover.

```html_example_table
<span class="a-tooltip  a-tooltip--top  a-tooltip--hint" aria-label="This is a tooltip">Hover over me...</span>
```


### Position

#### Top
```html_example_table
<span class="a-tooltip  a-tooltip--top" aria-label="This is a tooltip">Hover over me...</span>
```

#### Right
```html_example_table
<span class="a-tooltip  a-tooltip--right  a-tooltip--hint" aria-label="This is a tooltip">Hover over me...</span>
```

#### Bottom
```html_example_table
<span class="a-tooltip  a-tooltip--bottom" aria-label="This is a tooltip">Hover over me...</span>
```

#### Left
```html_example_table
<span class="a-tooltip  a-tooltip--left" aria-label="This is a tooltip">Hover over me...</span>
```

### Size

#### Small
```html_example_table
<span class="a-tooltip  a-tooltip--top  a-tooltip--small" aria-label="Hi.">I'm a small tooltip</span>
```

#### Medium
```html_example_table
<span class="a-tooltip  a-tooltip--top  a-tooltip--medium" aria-label="Now that's a super big text we have over here right? Lorem ipsum dolor sit I'm done.">I'm a medium tooltip</span>
```

#### Large
```html_example_table
<span class="a-tooltip  a-tooltip--top  a-tooltip--large" aria-label="What about something really big? This may surpass your window dimensions. Imagine you're on that boring class with that boring teacher and you didn't slept so well last night. Suddenly you're sleeping in class. Can you believe it?!">I'm a large tooltip</span>
```

#### Xlarge
```html_example_table
<span class="a-tooltip  a-tooltip--top  a-tooltip--xlarge" aria-label="What about something really big? This may surpass your window dimensions. Imagine you're on that boring class with that boring teacher and you didn't slept so well last night. Suddenly you're sleeping in class. Can you believe it?!">I'm a xlarge tooltip</span>
```

#### Fit
```html_example_table
<span class="a-tooltip  a-tooltip--top  a-tooltip--fit" aria-label="What about something really big? This may surpass your window dimensions. Imagine you're on that boring class with that boring teacher and you didn't slept so well last night. Suddenly you're sleeping in class. Can you believe it?!">This tooltip's width will fit the element</span>
```

***

*/
.a-tooltip {
  position: relative;
  overflow: visible; }
  .a-tooltip:before, .a-tooltip:after {
    visibility: hidden;
    z-index: 300; }
  .a-tooltip:before {
    position: absolute;
    border: 10px solid transparent;
    content: ""; }
  .a-tooltip:after {
    position: absolute;
    padding: .25em .5em;
    border: 1px solid #414042;
    border-radius: 3px;
    background-color: #414042;
    color: #FFF;
    font-size: normal;
    line-height: 1.45;
    white-space: nowrap;
    content: attr(aria-label);
    visibility: hidden;
    font-size: initial;
    text-transform: none;
    font-weight: initial;
    letter-spacing: initial; }
  .a-tooltip:hover:before, .a-tooltip:hover:after {
    visibility: visible; }

.a-tooltip--hint {
  border-bottom: dotted 1px #939598;
  cursor: help; }

.a-tooltip--top:before {
  bottom: 100%;
  left: 50%;
  transform: translate(-50%, 0);
  transform-origin: top;
  border-top-color: #414042; }

.a-tooltip--top:after {
  bottom: 100%;
  left: 50%;
  transform: translate(-50%, -16px);
  transform-origin: top; }

.a-tooltip--right:before {
  top: 50%;
  left: 100%;
  transform: translate(0, -50%);
  transform-origin: top;
  border-right-color: #414042; }

.a-tooltip--right:after {
  top: 50%;
  left: 100%;
  transform: translate(16px, -50%);
  transform-origin: top; }

.a-tooltip--bottom:before {
  top: 100%;
  left: 50%;
  transform: translate(-50%, 0);
  transform-origin: top;
  border-bottom-color: #414042; }

.a-tooltip--bottom:after {
  top: 100%;
  left: 50%;
  transform: translate(-50%, 1em);
  transform-origin: top; }

.a-tooltip--left:before {
  top: 50%;
  right: 100%;
  transform: translate(0, -50%);
  transform-origin: top;
  border-left-color: #414042; }

.a-tooltip--left:after {
  top: 50%;
  right: 100%;
  transform: translate(-16px, -50%);
  transform-origin: top; }

.a-tooltip--small:after {
  white-space: normal;
  width: 80px; }

.a-tooltip--medium:after {
  white-space: normal;
  width: 150px; }

.a-tooltip--large:after {
  white-space: normal;
  width: 260px; }

.a-tooltip--xlarge:after {
  white-space: normal;
  width: 380px; }
  @media screen and (max-width: 768px) {
    .a-tooltip--xlarge:after {
      white-space: normal;
      width: 90vw; } }

.a-tooltip--fit:after {
  white-space: normal;
  width: 100%; }

/*doc
---
title: To Top
name: totop
category: Atoms
---
*Last Updated: January 31, 2018*

The "Back to top" link allows users to smoothly scroll back to the top of the page. It's a little detail which enhances navigation experience on website with long pages.

*/
.a-totop {
  display: inline-block;
  padding: 10px;
  position: fixed;
  bottom: 40px;
  right: 10px;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.05);
  /* image replacement properties */
  overflow: hidden;
  white-space: nowrap;
  background-color: #a6192e;
  visibility: hidden;
  opacity: 0;
  transition: opacity .3s 0s, visibility 0s .3s, background-color .3s 0s;
  z-index: 500;
  color: white;
  border: none;
  line-height: 0; }

.a-totop.a-totop--show,
.a-totop.a-totop--fade-out,
.a-totop:hover {
  transition: opacity .3s 0s, visibility 0s 0s, background-color .3s 0s; }

.a-totop.a-totop--show {
  /* the button becomes visible */
  visibility: visible;
  opacity: 1; }

.a-totop.a-totop--fade-out {
  /* if the user keeps scrolling down, the button is out of focus and becomes less visible */
  opacity: .5; }

.a-totop:hover {
  background-color: #d2203a;
  opacity: 1;
  color: white; }

@media screen and (min-width: 48rem) {
  .a-totop {
    right: 20px;
    bottom: 20px; } }

@media screen and (min-width: 64rem) {
  .a-totop {
    padding: 20px;
    right: 30px;
    bottom: 30px; } }

/*doc
---
title: Alignment
name: alignment
category: Utilities
---

Alignment utilities allow for quick repositioning of elements.

### Text Alignment

```html_example_table
<p class="u-text-align--left">Left</p>

<p class="u-text-align--center">Center</p>

<p class="u-text-align--right">Right</p>

<p class="u-text-align--justify">Justify</p>
```

In addition, class suffixes (`@xsmall`, `@small`, `@medium`, `@large`, `@xlarge`, `@super`) can be used to change alignment based on viewport width.

```html_example
<p class="u-text-align--left@small  u-text-align--center@medium  u-text-align--right@large">This sentence will change aligment based on window size.</p>
```

### Floats

`u-float--left`, `u-float--center`, and `u-float--right` classes can be used to float items. Keep in mind there is no such thing as floating something to the center, that class simply sets the left and right margin to auto.

```html_example_table
<img class="u-float--left" src="https://placehold.it/40x40" alt="" />

<img class="u-float--right" src="https://placehold.it/40x40" alt="" />

<img class="u-float--center" src="https://placehold.it/40x40" alt="" />
```

In addition, class suffixes (`@xsmall`, `@small`, `@medium`, `@large`, `@xlarge`, `@super`) can be used to change floats based on viewport width.

```html_example_table
<p><img class="u-float--left@small  u-float--center@medium  u-float--right@large" src="https://placehold.it/40x40" alt="" />Change browser size to see where the image goes.</p>
```

### Center Image

```html_example_table
<img class="u-img--center" src="https://placehold.it/40x40" alt="" />
```

### Content Blocks

Note: The outer element needs some height if you want it to be centered vertically.

```html_example_table
<div class="u-center-block" style="border: 1px solid black; height: 200px;">
	<div class="u-center-block__content">
		Centered
	</div>
</div>

<div class="u-center-block" style="border: 1px solid black; height: 200px;">
	<div class="u-center-block__content  u-center-block__content--vertical">
		Centered Vertically
	</div>
</div>

<div class="u-center-block" style="border: 1px solid black; height: 200px;">
	<div class="u-center-block__content  u-center-block__content--horizontal">
		Centered Horizontally
	</div>
</div>
```

*/
.u-text-align--left {
  text-align: left; }

.u-text-align--center {
  text-align: center; }

.u-text-align--right {
  text-align: right; }

.u-text-align--justify {
  text-align: justify; }

@media (min-width: 20rem) {
  .u-text-align--left\@xsmall {
    text-align: left; }
  .u-text-align--center\@xsmall {
    text-align: center; }
  .u-text-align--right\@xsmall {
    text-align: right; }
  .u-text-align--justify\@xsmall {
    text-align: justify; } }

@media (min-width: 30rem) {
  .u-text-align--left\@small {
    text-align: left; }
  .u-text-align--center\@small {
    text-align: center; }
  .u-text-align--right\@small {
    text-align: right; }
  .u-text-align--justify\@small {
    text-align: justify; } }

@media (min-width: 48rem) {
  .u-text-align--left\@medium {
    text-align: left; }
  .u-text-align--center\@medium {
    text-align: center; }
  .u-text-align--right\@medium {
    text-align: right; }
  .u-text-align--justify\@medium {
    text-align: justify; } }

@media (min-width: 64rem) {
  .u-text-align--left\@large {
    text-align: left; }
  .u-text-align--center\@large {
    text-align: center; }
  .u-text-align--right\@large {
    text-align: right; }
  .u-text-align--justify\@large {
    text-align: justify; } }

@media (min-width: 78rem) {
  .u-text-align--left\@xlarge {
    text-align: left; }
  .u-text-align--center\@xlarge {
    text-align: center; }
  .u-text-align--right\@xlarge {
    text-align: right; }
  .u-text-align--justify\@xlarge {
    text-align: justify; } }

@media (min-width: 125rem) {
  .u-text-align--left\@super {
    text-align: left; }
  .u-text-align--center\@super {
    text-align: center; }
  .u-text-align--right\@super {
    text-align: right; }
  .u-text-align--justify\@super {
    text-align: justify; } }

@media (min-width: 30rem) {
  .u-pull-left,
  .u-pull-right {
    max-width: 50vw;
    width: 20rem; }
  .u-pull-left {
    float: left;
    margin-right: 1.5em; }
  .u-pull-right {
    float: right;
    margin-left: 1.5em; } }

.u-float--left {
  float: left; }

.u-float--center {
  float: none;
  margin-left: auto;
  margin-right: auto; }

.u-float--right {
  float: right; }

@media (min-width: 20rem) {
  .u-float--left\@xsmall {
    float: left; }
  .u-float--center\@xsmall {
    float: none;
    margin-left: auto;
    margin-right: auto; }
  .u-float--right\@xsmall {
    float: right; } }

@media (min-width: 30rem) {
  .u-float--left\@small {
    float: left; }
  .u-float--center\@small {
    float: none;
    margin-left: auto;
    margin-right: auto; }
  .u-float--right\@small {
    float: right; } }

@media (min-width: 48rem) {
  .u-float--left\@medium {
    float: left; }
  .u-float--center\@medium {
    float: none;
    margin-left: auto;
    margin-right: auto; }
  .u-float--right\@medium {
    float: right; } }

@media (min-width: 64rem) {
  .u-float--left\@large {
    float: left; }
  .u-float--center\@large {
    float: none;
    margin-left: auto;
    margin-right: auto; }
  .u-float--right\@large {
    float: right; } }

@media (min-width: 78rem) {
  .u-float--left\@xlarge {
    float: left; }
  .u-float--center\@xlarge {
    float: none;
    margin-left: auto;
    margin-right: auto; }
  .u-float--right\@xlarge {
    float: right; } }

@media (min-width: 125rem) {
  .u-float--left\@super {
    float: left; }
  .u-float--center\@super {
    float: none;
    margin-left: auto;
    margin-right: auto; }
  .u-float--right\@super {
    float: right; } }

.u-img--center {
  display: block;
  margin: 0 auto 1.5em auto; }

.u-center-block {
  position: relative; }

.u-center-block--expand {
  height: 100%;
  width: 100%; }

.u-center-block__content,
.u-absolute-center {
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%); }

.u-center-block__content--vertical {
  left: auto;
  transform: translateY(-50%); }

.u-center-block__content--horizontal {
  top: auto;
  transform: translateX(-50%); }

/*doc
---
title: Borders
name: borders
category: Utilities
---

Add a border to an element on any given side, all sides, or remove borders.

```html_example_table
<p class="u-border-none">remove all borders</p>

<p class="u-border-all">border all</p>

<p class="u-border-top">border top</p>

<p class="u-border-right">border right</p>

<p class="u-border-bottom">border bottom</p>

<p class="u-border-left">border left</p>
```

### Border Colors

```html_example_table
<p class="u-border-all  u-border--grey">light grey borders</p>

<p class="u-border-all  u-border--light-grey">light grey borders</p>

<p class="u-border-all  u-border--brand">brand borders</p>
```

### Media Queries

Class suffixes (`@xsmall`, `@small`, `@medium`, `@large`, `@xlarge`, `@super`) can be used to change borders based on viewport width.

```html_example_table
<p class="u-border-top  u-border-right@small  u-border-bottom@medium  u-border-left@large">Borders will be added to this paragraph as the viewport width increases.</p>
```

*/
.u-border-none {
  border-style: none;
  border-width: 0; }

.u-border-all {
  border-style: solid;
  border-width: 1px; }

.u-border-top {
  border-top-style: solid;
  border-top-width: 1px; }

.u-border-right {
  border-right-style: solid;
  border-right-width: 1px; }

.u-border-bottom {
  border-bottom-style: solid;
  border-bottom-width: 1px; }

.u-border-left {
  border-left-style: solid;
  border-left-width: 1px; }

@media (min-width: 20rem) {
  .u-border-none\@xsmall {
    border-style: none;
    border-width: 0; }
  .u-border-all\@xsmall {
    border-style: solid;
    border-width: 1px; }
  .u-border-top\@xsmall {
    border-top-style: solid;
    border-top-width: 1px; }
  .u-border-right\@xsmall {
    border-right-style: solid;
    border-right-width: 1px; }
  .u-border-bottom\@xsmall {
    border-bottom-style: solid;
    border-bottom-width: 1px; }
  .u-border-left\@xsmall {
    border-left-style: solid;
    border-left-width: 1px; } }

@media (min-width: 30rem) {
  .u-border-none\@small {
    border-style: none;
    border-width: 0; }
  .u-border-all\@small {
    border-style: solid;
    border-width: 1px; }
  .u-border-top\@small {
    border-top-style: solid;
    border-top-width: 1px; }
  .u-border-right\@small {
    border-right-style: solid;
    border-right-width: 1px; }
  .u-border-bottom\@small {
    border-bottom-style: solid;
    border-bottom-width: 1px; }
  .u-border-left\@small {
    border-left-style: solid;
    border-left-width: 1px; } }

@media (min-width: 48rem) {
  .u-border-none\@medium {
    border-style: none;
    border-width: 0; }
  .u-border-all\@medium {
    border-style: solid;
    border-width: 1px; }
  .u-border-top\@medium {
    border-top-style: solid;
    border-top-width: 1px; }
  .u-border-right\@medium {
    border-right-style: solid;
    border-right-width: 1px; }
  .u-border-bottom\@medium {
    border-bottom-style: solid;
    border-bottom-width: 1px; }
  .u-border-left\@medium {
    border-left-style: solid;
    border-left-width: 1px; } }

@media (min-width: 64rem) {
  .u-border-none\@large {
    border-style: none;
    border-width: 0; }
  .u-border-all\@large {
    border-style: solid;
    border-width: 1px; }
  .u-border-top\@large {
    border-top-style: solid;
    border-top-width: 1px; }
  .u-border-right\@large {
    border-right-style: solid;
    border-right-width: 1px; }
  .u-border-bottom\@large {
    border-bottom-style: solid;
    border-bottom-width: 1px; }
  .u-border-left\@large {
    border-left-style: solid;
    border-left-width: 1px; } }

@media (min-width: 78rem) {
  .u-border-none\@xlarge {
    border-style: none;
    border-width: 0; }
  .u-border-all\@xlarge {
    border-style: solid;
    border-width: 1px; }
  .u-border-top\@xlarge {
    border-top-style: solid;
    border-top-width: 1px; }
  .u-border-right\@xlarge {
    border-right-style: solid;
    border-right-width: 1px; }
  .u-border-bottom\@xlarge {
    border-bottom-style: solid;
    border-bottom-width: 1px; }
  .u-border-left\@xlarge {
    border-left-style: solid;
    border-left-width: 1px; } }

@media (min-width: 125rem) {
  .u-border-none\@super {
    border-style: none;
    border-width: 0; }
  .u-border-all\@super {
    border-style: solid;
    border-width: 1px; }
  .u-border-top\@super {
    border-top-style: solid;
    border-top-width: 1px; }
  .u-border-right\@super {
    border-right-style: solid;
    border-right-width: 1px; }
  .u-border-bottom\@super {
    border-bottom-style: solid;
    border-bottom-width: 1px; }
  .u-border-left\@super {
    border-left-style: solid;
    border-left-width: 1px; } }

.u-border--grey {
  border-color: #939598 !important; }

.u-border--light-grey {
  border-color: #F2F2F2 !important; }

.u-border--brand {
  border-color: #a6192e !important; }

.u-border--white {
  border-color: #FFF !important; }

/*doc
---
title: Clearfix
name: clearfix
category: Utilities
---

Easily clear floats by adding `.u-clearfix` to the parent element.

```html_example_table
<div class="u-clearfix" style="border:1px solid black">
	<p class="u-float--left">Clearfix stops the outer element from collapsing even though this paragraph is floated to the left</p>
</div>
```

*/
.u-clearfix {
  *zoom: 1 .u-clearfix, %u-clearfix; }
  .u-clearfix :before, .u-clearfix:after {
    display: table; }
  .u-clearfix:after {
    content: "";
    clear: both; }

/*doc
---
title: Colors
name: colors
category: Utilities
---

Easily change text color or background color.

### Text Color

See `settings.global` for full list of colors available.

```html_example_table
<ul>
	<li class="u-color-grey-light">u-color-grey-light</li>
	<li class="u-color-brand">u-color-brand</li>
	<li class="u-color-black">u-color-black</li>
	<li class="u-color-beige">u-color-beige</li>
	<li class="u-color-green">u-color-green</li>
	<li class="u-color-blue-lighter">u-color-blue-lighter</li>
	<li class="u-color-blue-light">u-color-blue-light</li>
	<li class="u-color-blue">u-color-blue</li>
	<li class="u-color-blue-dark">u-color-blue-dark</li>
	<li class="u-color-blue-darker">u-color-blue-darker</li>
</ul>
```

### Background Color

See `settings.global` for full list of colors available.

```html_example_table
<ul>
	<li class="u-bg-grey-light  u-color-black">u-bg-grey-light</li>
	<li class="u-bg-brand  u-color-white">u-bg-brand</li>
	<li class="u-bg-black  u-color-white">u-bg-black</li>
	<li class="u-bg-beige  u-color-black">u-bg-beige</li>
	<li class="u-bg-orange  u-color-white">u-bg-orange</li>
	<li class="u-bg-purple-lighter  u-color-white">u-bg-purple-lighter</li>
	<li class="u-bg-purple-light  u-color-white">u-bg-purple-light</li>
	<li class="u-bg-purple  u-color-white">u-bg-purple</li>
	<li class="u-bg-purple-dark  u-color-white">u-bg-purple-dark</li>
	<li class="u-bg-purple-darker  u-color-white">u-bg-purple-darker</li>
</ul>
```

### Fill

Fill classes are only used for SVGs.

```html_example_table
<svg class="a-icon  u-fill-brand">
	<use xlink:href="#search-icon"></use>
</svg>

<svg class="a-icon  u-fill-green">
	<use xlink:href="#search-icon"></use>
</svg>

<svg class="a-icon  u-fill-black">
	<use xlink:href="#search-icon"></use>
</svg>
```
*/
.u-color-currentColor {
  color: currentColor; }

.u-fill-currentColor {
  fill: currentColor; }

.u-bg-none {
  background: none !important; }

.u-color-black {
  color: #414042; }

.u-bg-black {
  background-color: #414042; }

.u-fill-black {
  fill: #414042; }

.u-color-grey {
  color: #939598; }

.u-bg-grey {
  background-color: #939598; }

.u-fill-grey {
  fill: #939598; }

.u-color-light-grey {
  color: #F2F2F2; }

.u-bg-light-grey {
  background-color: #F2F2F2; }

.u-fill-light-grey {
  fill: #F2F2F2; }

.u-color-white {
  color: #FFF; }

.u-bg-white {
  background-color: #FFF; }

.u-fill-white {
  fill: #FFF; }

.u-color-beige {
  color: #F2F2EA; }

.u-bg-beige {
  background-color: #F2F2EA; }

.u-fill-beige {
  fill: #F2F2EA; }

.u-color-red {
  color: #C8102E; }

.u-bg-red {
  background-color: #C8102E; }

.u-fill-red {
  fill: #C8102E; }

.u-color-pink {
  color: #E91E63; }

.u-bg-pink {
  background-color: #E91E63; }

.u-fill-pink {
  fill: #E91E63; }

.u-color-purple {
  color: #6C54A3; }

.u-bg-purple {
  background-color: #6C54A3; }

.u-fill-purple {
  fill: #6C54A3; }

.u-color-blue {
  color: #2196F3; }

.u-bg-blue {
  background-color: #2196F3; }

.u-fill-blue {
  fill: #2196F3; }

.u-color-green {
  color: #008755; }

.u-bg-green {
  background-color: #008755; }

.u-fill-green {
  fill: #008755; }

.u-color-light-green {
  color: #6CC24A; }

.u-bg-light-green {
  background-color: #6CC24A; }

.u-fill-light-green {
  fill: #6CC24A; }

.u-color-teal {
  color: #4F868E; }

.u-bg-teal {
  background-color: #4F868E; }

.u-fill-teal {
  fill: #4F868E; }

.u-color-cyan {
  color: #7EDDD3; }

.u-bg-cyan {
  background-color: #7EDDD3; }

.u-fill-cyan {
  fill: #7EDDD3; }

.u-color-yellow {
  color: #FFB500; }

.u-bg-yellow {
  background-color: #FFB500; }

.u-fill-yellow {
  fill: #FFB500; }

.u-color-orange {
  color: #F68A33; }

.u-bg-orange {
  background-color: #F68A33; }

.u-fill-orange {
  fill: #F68A33; }

.u-color-brown {
  color: #795548; }

.u-bg-brown {
  background-color: #795548; }

.u-fill-brown {
  fill: #795548; }

.u-color-brand {
  color: #a6192e; }

.u-bg-brand {
  background-color: #a6192e; }

.u-fill-brand {
  fill: #a6192e; }

.u-color-secondary {
  color: #4F868E; }

.u-bg-secondary {
  background-color: #4F868E; }

.u-fill-secondary {
  fill: #4F868E; }

.u-color-tertiary {
  color: #7EDDD3; }

.u-bg-tertiary {
  background-color: #7EDDD3; }

.u-fill-tertiary {
  fill: #7EDDD3; }

.u-color-info {
  color: #2196F3; }

.u-bg-info {
  background-color: #2196F3; }

.u-fill-info {
  fill: #2196F3; }

.u-color-warning {
  color: #F68A33; }

.u-bg-warning {
  background-color: #F68A33; }

.u-fill-warning {
  fill: #F68A33; }

.u-color-success {
  color: #008755; }

.u-bg-success {
  background-color: #008755; }

.u-fill-success {
  fill: #008755; }

.u-color-error {
  color: #C8102E; }

.u-bg-error {
  background-color: #C8102E; }

.u-fill-error {
  fill: #C8102E; }

.u-color-default {
  color: #797b7f; }

.u-bg-default {
  background-color: #797b7f; }

.u-fill-default {
  fill: #797b7f; }

.u-color-disabled {
  color: #797b7f; }

.u-bg-disabled {
  background-color: #797b7f; }

.u-fill-disabled {
  fill: #797b7f; }

.u-color-quiet {
  color: #797b7f; }

.u-bg-quiet {
  background-color: #797b7f; }

.u-fill-quiet {
  fill: #797b7f; }

.u-color-grey-dark {
  color: #797b7f; }

.u-bg-grey-dark {
  background-color: #797b7f; }

.u-fill-grey-dark {
  fill: #797b7f; }

.u-color-red-dark {
  color: #990c23; }

.u-bg-red-dark {
  background-color: #990c23; }

.u-fill-red-dark {
  fill: #990c23; }

.u-color-pink-dark {
  color: #c1134e; }

.u-bg-pink-dark {
  background-color: #c1134e; }

.u-fill-pink-dark {
  fill: #c1134e; }

.u-color-purple-dark {
  color: #564381; }

.u-bg-purple-dark {
  background-color: #564381; }

.u-fill-purple-dark {
  fill: #564381; }

.u-color-blue-dark {
  color: #0c7cd5; }

.u-bg-blue-dark {
  background-color: #0c7cd5; }

.u-fill-blue-dark {
  fill: #0c7cd5; }

.u-color-green-dark {
  color: #005435; }

.u-bg-green-dark {
  background-color: #005435; }

.u-fill-green-dark {
  fill: #005435; }

.u-color-cyan-dark {
  color: #56d2c5; }

.u-bg-cyan-dark {
  background-color: #56d2c5; }

.u-fill-cyan-dark {
  fill: #56d2c5; }

.u-color-yellow-dark {
  color: #cc9100; }

.u-bg-yellow-dark {
  background-color: #cc9100; }

.u-fill-yellow-dark {
  fill: #cc9100; }

.u-color-orange-dark {
  color: #ec6f0a; }

.u-bg-orange-dark {
  background-color: #ec6f0a; }

.u-fill-orange-dark {
  fill: #ec6f0a; }

.u-color-brown-dark {
  color: #593f35; }

.u-bg-brown-dark {
  background-color: #593f35; }

.u-fill-brown-dark {
  fill: #593f35; }

.u-color-grey-darker {
  color: #606265; }

.u-bg-grey-darker {
  background-color: #606265; }

.u-fill-grey-darker {
  fill: #606265; }

.u-color-red-darker {
  color: #6a0818; }

.u-bg-red-darker {
  background-color: #6a0818; }

.u-fill-red-darker {
  fill: #6a0818; }

.u-color-grey-light {
  color: #adafb1; }

.u-bg-grey-light {
  background-color: #adafb1; }

.u-fill-grey-light {
  fill: #adafb1; }

.u-color-red-light {
  color: #ed1e40; }

.u-bg-red-light {
  background-color: #ed1e40; }

.u-fill-red-light {
  fill: #ed1e40; }

.u-color-pink-light {
  color: #ee4c83; }

.u-bg-pink-light {
  background-color: #ee4c83; }

.u-fill-pink-light {
  fill: #ee4c83; }

.u-color-purple-light {
  color: #8873b7; }

.u-bg-purple-light {
  background-color: #8873b7; }

.u-fill-purple-light {
  fill: #8873b7; }

.u-color-blue-light {
  color: #51adf6; }

.u-bg-blue-light {
  background-color: #51adf6; }

.u-fill-blue-light {
  fill: #51adf6; }

.u-color-green-light {
  color: #00ba75; }

.u-bg-green-light {
  background-color: #00ba75; }

.u-fill-green-light {
  fill: #00ba75; }

.u-color-cyan-light {
  color: #a6e8e1; }

.u-bg-cyan-light {
  background-color: #a6e8e1; }

.u-fill-cyan-light {
  fill: #a6e8e1; }

.u-color-yellow-light {
  color: #ffc433; }

.u-bg-yellow-light {
  background-color: #ffc433; }

.u-fill-yellow-light {
  fill: #ffc433; }

.u-color-orange-light {
  color: #f8a664; }

.u-bg-orange-light {
  background-color: #f8a664; }

.u-fill-orange-light {
  fill: #f8a664; }

.u-color-brown-light {
  color: #996b5b; }

.u-bg-brown-light {
  background-color: #996b5b; }

.u-fill-brown-light {
  fill: #996b5b; }

.u-color-grey-lighter {
  color: #c7c8ca; }

.u-bg-grey-lighter {
  background-color: #c7c8ca; }

.u-fill-grey-lighter {
  fill: #c7c8ca; }

.u-color-red-lighter {
  color: #f14d68; }

.u-bg-red-lighter {
  background-color: #f14d68; }

.u-fill-red-lighter {
  fill: #f14d68; }

.u-color-pink-lighter {
  color: #f27ba3; }

.u-bg-pink-lighter {
  background-color: #f27ba3; }

.u-fill-pink-lighter {
  fill: #f27ba3; }

.u-color-purple-lighter {
  color: #a495c8; }

.u-bg-purple-lighter {
  background-color: #a495c8; }

.u-fill-purple-lighter {
  fill: #a495c8; }

.u-color-blue-lighter {
  color: #82c4f8; }

.u-bg-blue-lighter {
  background-color: #82c4f8; }

.u-fill-blue-lighter {
  fill: #82c4f8; }

.u-color-green-lighter {
  color: #00ed95; }

.u-bg-green-lighter {
  background-color: #00ed95; }

.u-fill-green-lighter {
  fill: #00ed95; }

.u-color-cyan-lighter {
  color: #cff2ef; }

.u-bg-cyan-lighter {
  background-color: #cff2ef; }

.u-fill-cyan-lighter {
  fill: #cff2ef; }

.u-color-yellow-lighter {
  color: #ffd366; }

.u-bg-yellow-lighter {
  background-color: #ffd366; }

.u-fill-yellow-lighter {
  fill: #ffd366; }

.u-color-orange-lighter {
  color: #fac295; }

.u-bg-orange-lighter {
  background-color: #fac295; }

.u-fill-orange-lighter {
  fill: #fac295; }

.u-color-brown-lighter {
  color: #af8778; }

.u-bg-brown-lighter {
  background-color: #af8778; }

.u-fill-brown-lighter {
  fill: #af8778; }

.u-color-pink-darker {
  color: #930e3b; }

.u-bg-pink-darker {
  background-color: #930e3b; }

.u-fill-pink-darker {
  fill: #930e3b; }

.u-color-purple-darker {
  color: #3f3160; }

.u-bg-purple-darker {
  background-color: #3f3160; }

.u-fill-purple-darker {
  fill: #3f3160; }

.u-color-blue-darker {
  color: #0960a5; }

.u-bg-blue-darker {
  background-color: #0960a5; }

.u-fill-blue-darker {
  fill: #0960a5; }

.u-color-green-darker {
  color: #002115; }

.u-bg-green-darker {
  background-color: #002115; }

.u-fill-green-darker {
  fill: #002115; }

.u-color-cyan-darker {
  color: #33c2b3; }

.u-bg-cyan-darker {
  background-color: #33c2b3; }

.u-fill-cyan-darker {
  fill: #33c2b3; }

.u-color-yellow-darker {
  color: #996d00; }

.u-bg-yellow-darker {
  background-color: #996d00; }

.u-fill-yellow-darker {
  fill: #996d00; }

.u-color-orange-darker {
  color: #bb5808; }

.u-bg-orange-darker {
  background-color: #bb5808; }

.u-fill-orange-darker {
  fill: #bb5808; }

.u-color-brown-darker {
  color: #392822; }

.u-bg-brown-darker {
  background-color: #392822; }

.u-fill-brown-darker {
  fill: #392822; }

.u-color-brand-dark {
  color: #7a1222; }

.u-bg-brand-dark {
  background-color: #7a1222; }

.u-fill-brand-dark {
  fill: #7a1222; }

.u-color-brand-darker {
  color: #4d0c15; }

.u-bg-brand-darker {
  background-color: #4d0c15; }

.u-fill-brand-darker {
  fill: #4d0c15; }

.u-color-brand-light {
  color: #d2203a; }

.u-bg-brand-light {
  background-color: #d2203a; }

.u-fill-brand-light {
  fill: #d2203a; }

.u-color-brand-lighter {
  color: #e3425a; }

.u-bg-brand-lighter {
  background-color: #e3425a; }

.u-fill-brand-lighter {
  fill: #e3425a; }

.u-color-secondary-dark {
  color: #3d676d; }

.u-bg-secondary-dark {
  background-color: #3d676d; }

.u-fill-secondary-dark {
  fill: #3d676d; }

.u-color-secondary-darker {
  color: #2b484c; }

.u-bg-secondary-darker {
  background-color: #2b484c; }

.u-fill-secondary-darker {
  fill: #2b484c; }

.u-color-secondary-light {
  color: #66a1aa; }

.u-bg-secondary-light {
  background-color: #66a1aa; }

.u-fill-secondary-light {
  fill: #66a1aa; }

.u-color-secondary-lighter {
  color: #b8d4d8; }

.u-bg-secondary-lighter {
  background-color: #b8d4d8; }

.u-fill-secondary-lighter {
  fill: #b8d4d8; }

.u-color-info-dark {
  color: #0c7cd5; }

.u-bg-info-dark {
  background-color: #0c7cd5; }

.u-fill-info-dark {
  fill: #0c7cd5; }

.u-color-info-darker {
  color: #0960a5; }

.u-bg-info-darker {
  background-color: #0960a5; }

.u-fill-info-darker {
  fill: #0960a5; }

.u-color-info-light {
  color: #51adf6; }

.u-bg-info-light {
  background-color: #51adf6; }

.u-fill-info-light {
  fill: #51adf6; }

.u-color-info-lighter {
  color: #82c4f8; }

.u-bg-info-lighter {
  background-color: #82c4f8; }

.u-fill-info-lighter {
  fill: #82c4f8; }

.u-color-warning-dark {
  color: #ec6f0a; }

.u-bg-warning-dark {
  background-color: #ec6f0a; }

.u-fill-warning-dark {
  fill: #ec6f0a; }

.u-color-warning-darker {
  color: #bb5808; }

.u-bg-warning-darker {
  background-color: #bb5808; }

.u-fill-warning-darker {
  fill: #bb5808; }

.u-color-warning-light {
  color: #f8a664; }

.u-bg-warning-light {
  background-color: #f8a664; }

.u-fill-warning-light {
  fill: #f8a664; }

.u-color-warning-lighter {
  color: #fac295; }

.u-bg-warning-lighter {
  background-color: #fac295; }

.u-fill-warning-lighter {
  fill: #fac295; }

.u-color-success-dark {
  color: #005435; }

.u-bg-success-dark {
  background-color: #005435; }

.u-fill-success-dark {
  fill: #005435; }

.u-color-success-darker {
  color: #002115; }

.u-bg-success-darker {
  background-color: #002115; }

.u-fill-success-darker {
  fill: #002115; }

.u-color-success-light {
  color: #00ba75; }

.u-bg-success-light {
  background-color: #00ba75; }

.u-fill-success-light {
  fill: #00ba75; }

.u-color-success-lighter {
  color: #00ed95; }

.u-bg-success-lighter {
  background-color: #00ed95; }

.u-fill-success-lighter {
  fill: #00ed95; }

.u-color-error-dark {
  color: #990c23; }

.u-bg-error-dark {
  background-color: #990c23; }

.u-fill-error-dark {
  fill: #990c23; }

.u-color-error-darker {
  color: #6a0818; }

.u-bg-error-darker {
  background-color: #6a0818; }

.u-fill-error-darker {
  fill: #6a0818; }

.u-color-error-light {
  color: #ed1e40; }

.u-bg-error-light {
  background-color: #ed1e40; }

.u-fill-error-light {
  fill: #ed1e40; }

.u-color-error-lighter {
  color: #f14d68; }

.u-bg-error-lighter {
  background-color: #f14d68; }

.u-fill-error-lighter {
  fill: #f14d68; }

@media (min-width: 20rem) {
  .u-bg-none\@xsmall {
    background: none !important; }
  .u-color-black\@xsmall {
    color: #414042; }
  .u-bg-black\@xsmall {
    background-color: #414042; }
  .u-fill-black\@xsmall {
    fill: #414042; }
  .u-color-grey\@xsmall {
    color: #939598; }
  .u-bg-grey\@xsmall {
    background-color: #939598; }
  .u-fill-grey\@xsmall {
    fill: #939598; }
  .u-color-light-grey\@xsmall {
    color: #F2F2F2; }
  .u-bg-light-grey\@xsmall {
    background-color: #F2F2F2; }
  .u-fill-light-grey\@xsmall {
    fill: #F2F2F2; }
  .u-color-white\@xsmall {
    color: #FFF; }
  .u-bg-white\@xsmall {
    background-color: #FFF; }
  .u-fill-white\@xsmall {
    fill: #FFF; }
  .u-color-beige\@xsmall {
    color: #F2F2EA; }
  .u-bg-beige\@xsmall {
    background-color: #F2F2EA; }
  .u-fill-beige\@xsmall {
    fill: #F2F2EA; }
  .u-color-red\@xsmall {
    color: #C8102E; }
  .u-bg-red\@xsmall {
    background-color: #C8102E; }
  .u-fill-red\@xsmall {
    fill: #C8102E; }
  .u-color-pink\@xsmall {
    color: #E91E63; }
  .u-bg-pink\@xsmall {
    background-color: #E91E63; }
  .u-fill-pink\@xsmall {
    fill: #E91E63; }
  .u-color-purple\@xsmall {
    color: #6C54A3; }
  .u-bg-purple\@xsmall {
    background-color: #6C54A3; }
  .u-fill-purple\@xsmall {
    fill: #6C54A3; }
  .u-color-blue\@xsmall {
    color: #2196F3; }
  .u-bg-blue\@xsmall {
    background-color: #2196F3; }
  .u-fill-blue\@xsmall {
    fill: #2196F3; }
  .u-color-green\@xsmall {
    color: #008755; }
  .u-bg-green\@xsmall {
    background-color: #008755; }
  .u-fill-green\@xsmall {
    fill: #008755; }
  .u-color-light-green\@xsmall {
    color: #6CC24A; }
  .u-bg-light-green\@xsmall {
    background-color: #6CC24A; }
  .u-fill-light-green\@xsmall {
    fill: #6CC24A; }
  .u-color-teal\@xsmall {
    color: #4F868E; }
  .u-bg-teal\@xsmall {
    background-color: #4F868E; }
  .u-fill-teal\@xsmall {
    fill: #4F868E; }
  .u-color-cyan\@xsmall {
    color: #7EDDD3; }
  .u-bg-cyan\@xsmall {
    background-color: #7EDDD3; }
  .u-fill-cyan\@xsmall {
    fill: #7EDDD3; }
  .u-color-yellow\@xsmall {
    color: #FFB500; }
  .u-bg-yellow\@xsmall {
    background-color: #FFB500; }
  .u-fill-yellow\@xsmall {
    fill: #FFB500; }
  .u-color-orange\@xsmall {
    color: #F68A33; }
  .u-bg-orange\@xsmall {
    background-color: #F68A33; }
  .u-fill-orange\@xsmall {
    fill: #F68A33; }
  .u-color-brown\@xsmall {
    color: #795548; }
  .u-bg-brown\@xsmall {
    background-color: #795548; }
  .u-fill-brown\@xsmall {
    fill: #795548; }
  .u-color-brand\@xsmall {
    color: #a6192e; }
  .u-bg-brand\@xsmall {
    background-color: #a6192e; }
  .u-fill-brand\@xsmall {
    fill: #a6192e; }
  .u-color-secondary\@xsmall {
    color: #4F868E; }
  .u-bg-secondary\@xsmall {
    background-color: #4F868E; }
  .u-fill-secondary\@xsmall {
    fill: #4F868E; }
  .u-color-tertiary\@xsmall {
    color: #7EDDD3; }
  .u-bg-tertiary\@xsmall {
    background-color: #7EDDD3; }
  .u-fill-tertiary\@xsmall {
    fill: #7EDDD3; }
  .u-color-info\@xsmall {
    color: #2196F3; }
  .u-bg-info\@xsmall {
    background-color: #2196F3; }
  .u-fill-info\@xsmall {
    fill: #2196F3; }
  .u-color-warning\@xsmall {
    color: #F68A33; }
  .u-bg-warning\@xsmall {
    background-color: #F68A33; }
  .u-fill-warning\@xsmall {
    fill: #F68A33; }
  .u-color-success\@xsmall {
    color: #008755; }
  .u-bg-success\@xsmall {
    background-color: #008755; }
  .u-fill-success\@xsmall {
    fill: #008755; }
  .u-color-error\@xsmall {
    color: #C8102E; }
  .u-bg-error\@xsmall {
    background-color: #C8102E; }
  .u-fill-error\@xsmall {
    fill: #C8102E; }
  .u-color-default\@xsmall {
    color: #797b7f; }
  .u-bg-default\@xsmall {
    background-color: #797b7f; }
  .u-fill-default\@xsmall {
    fill: #797b7f; }
  .u-color-disabled\@xsmall {
    color: #797b7f; }
  .u-bg-disabled\@xsmall {
    background-color: #797b7f; }
  .u-fill-disabled\@xsmall {
    fill: #797b7f; }
  .u-color-quiet\@xsmall {
    color: #797b7f; }
  .u-bg-quiet\@xsmall {
    background-color: #797b7f; }
  .u-fill-quiet\@xsmall {
    fill: #797b7f; }
  .u-color-grey-dark\@xsmall {
    color: #797b7f; }
  .u-bg-grey-dark\@xsmall {
    background-color: #797b7f; }
  .u-fill-grey-dark\@xsmall {
    fill: #797b7f; }
  .u-color-red-dark\@xsmall {
    color: #990c23; }
  .u-bg-red-dark\@xsmall {
    background-color: #990c23; }
  .u-fill-red-dark\@xsmall {
    fill: #990c23; }
  .u-color-pink-dark\@xsmall {
    color: #c1134e; }
  .u-bg-pink-dark\@xsmall {
    background-color: #c1134e; }
  .u-fill-pink-dark\@xsmall {
    fill: #c1134e; }
  .u-color-purple-dark\@xsmall {
    color: #564381; }
  .u-bg-purple-dark\@xsmall {
    background-color: #564381; }
  .u-fill-purple-dark\@xsmall {
    fill: #564381; }
  .u-color-blue-dark\@xsmall {
    color: #0c7cd5; }
  .u-bg-blue-dark\@xsmall {
    background-color: #0c7cd5; }
  .u-fill-blue-dark\@xsmall {
    fill: #0c7cd5; }
  .u-color-green-dark\@xsmall {
    color: #005435; }
  .u-bg-green-dark\@xsmall {
    background-color: #005435; }
  .u-fill-green-dark\@xsmall {
    fill: #005435; }
  .u-color-cyan-dark\@xsmall {
    color: #56d2c5; }
  .u-bg-cyan-dark\@xsmall {
    background-color: #56d2c5; }
  .u-fill-cyan-dark\@xsmall {
    fill: #56d2c5; }
  .u-color-yellow-dark\@xsmall {
    color: #cc9100; }
  .u-bg-yellow-dark\@xsmall {
    background-color: #cc9100; }
  .u-fill-yellow-dark\@xsmall {
    fill: #cc9100; }
  .u-color-orange-dark\@xsmall {
    color: #ec6f0a; }
  .u-bg-orange-dark\@xsmall {
    background-color: #ec6f0a; }
  .u-fill-orange-dark\@xsmall {
    fill: #ec6f0a; }
  .u-color-brown-dark\@xsmall {
    color: #593f35; }
  .u-bg-brown-dark\@xsmall {
    background-color: #593f35; }
  .u-fill-brown-dark\@xsmall {
    fill: #593f35; }
  .u-color-grey-darker\@xsmall {
    color: #606265; }
  .u-bg-grey-darker\@xsmall {
    background-color: #606265; }
  .u-fill-grey-darker\@xsmall {
    fill: #606265; }
  .u-color-red-darker\@xsmall {
    color: #6a0818; }
  .u-bg-red-darker\@xsmall {
    background-color: #6a0818; }
  .u-fill-red-darker\@xsmall {
    fill: #6a0818; }
  .u-color-grey-light\@xsmall {
    color: #adafb1; }
  .u-bg-grey-light\@xsmall {
    background-color: #adafb1; }
  .u-fill-grey-light\@xsmall {
    fill: #adafb1; }
  .u-color-red-light\@xsmall {
    color: #ed1e40; }
  .u-bg-red-light\@xsmall {
    background-color: #ed1e40; }
  .u-fill-red-light\@xsmall {
    fill: #ed1e40; }
  .u-color-pink-light\@xsmall {
    color: #ee4c83; }
  .u-bg-pink-light\@xsmall {
    background-color: #ee4c83; }
  .u-fill-pink-light\@xsmall {
    fill: #ee4c83; }
  .u-color-purple-light\@xsmall {
    color: #8873b7; }
  .u-bg-purple-light\@xsmall {
    background-color: #8873b7; }
  .u-fill-purple-light\@xsmall {
    fill: #8873b7; }
  .u-color-blue-light\@xsmall {
    color: #51adf6; }
  .u-bg-blue-light\@xsmall {
    background-color: #51adf6; }
  .u-fill-blue-light\@xsmall {
    fill: #51adf6; }
  .u-color-green-light\@xsmall {
    color: #00ba75; }
  .u-bg-green-light\@xsmall {
    background-color: #00ba75; }
  .u-fill-green-light\@xsmall {
    fill: #00ba75; }
  .u-color-cyan-light\@xsmall {
    color: #a6e8e1; }
  .u-bg-cyan-light\@xsmall {
    background-color: #a6e8e1; }
  .u-fill-cyan-light\@xsmall {
    fill: #a6e8e1; }
  .u-color-yellow-light\@xsmall {
    color: #ffc433; }
  .u-bg-yellow-light\@xsmall {
    background-color: #ffc433; }
  .u-fill-yellow-light\@xsmall {
    fill: #ffc433; }
  .u-color-orange-light\@xsmall {
    color: #f8a664; }
  .u-bg-orange-light\@xsmall {
    background-color: #f8a664; }
  .u-fill-orange-light\@xsmall {
    fill: #f8a664; }
  .u-color-brown-light\@xsmall {
    color: #996b5b; }
  .u-bg-brown-light\@xsmall {
    background-color: #996b5b; }
  .u-fill-brown-light\@xsmall {
    fill: #996b5b; }
  .u-color-grey-lighter\@xsmall {
    color: #c7c8ca; }
  .u-bg-grey-lighter\@xsmall {
    background-color: #c7c8ca; }
  .u-fill-grey-lighter\@xsmall {
    fill: #c7c8ca; }
  .u-color-red-lighter\@xsmall {
    color: #f14d68; }
  .u-bg-red-lighter\@xsmall {
    background-color: #f14d68; }
  .u-fill-red-lighter\@xsmall {
    fill: #f14d68; }
  .u-color-pink-lighter\@xsmall {
    color: #f27ba3; }
  .u-bg-pink-lighter\@xsmall {
    background-color: #f27ba3; }
  .u-fill-pink-lighter\@xsmall {
    fill: #f27ba3; }
  .u-color-purple-lighter\@xsmall {
    color: #a495c8; }
  .u-bg-purple-lighter\@xsmall {
    background-color: #a495c8; }
  .u-fill-purple-lighter\@xsmall {
    fill: #a495c8; }
  .u-color-blue-lighter\@xsmall {
    color: #82c4f8; }
  .u-bg-blue-lighter\@xsmall {
    background-color: #82c4f8; }
  .u-fill-blue-lighter\@xsmall {
    fill: #82c4f8; }
  .u-color-green-lighter\@xsmall {
    color: #00ed95; }
  .u-bg-green-lighter\@xsmall {
    background-color: #00ed95; }
  .u-fill-green-lighter\@xsmall {
    fill: #00ed95; }
  .u-color-cyan-lighter\@xsmall {
    color: #cff2ef; }
  .u-bg-cyan-lighter\@xsmall {
    background-color: #cff2ef; }
  .u-fill-cyan-lighter\@xsmall {
    fill: #cff2ef; }
  .u-color-yellow-lighter\@xsmall {
    color: #ffd366; }
  .u-bg-yellow-lighter\@xsmall {
    background-color: #ffd366; }
  .u-fill-yellow-lighter\@xsmall {
    fill: #ffd366; }
  .u-color-orange-lighter\@xsmall {
    color: #fac295; }
  .u-bg-orange-lighter\@xsmall {
    background-color: #fac295; }
  .u-fill-orange-lighter\@xsmall {
    fill: #fac295; }
  .u-color-brown-lighter\@xsmall {
    color: #af8778; }
  .u-bg-brown-lighter\@xsmall {
    background-color: #af8778; }
  .u-fill-brown-lighter\@xsmall {
    fill: #af8778; }
  .u-color-pink-darker\@xsmall {
    color: #930e3b; }
  .u-bg-pink-darker\@xsmall {
    background-color: #930e3b; }
  .u-fill-pink-darker\@xsmall {
    fill: #930e3b; }
  .u-color-purple-darker\@xsmall {
    color: #3f3160; }
  .u-bg-purple-darker\@xsmall {
    background-color: #3f3160; }
  .u-fill-purple-darker\@xsmall {
    fill: #3f3160; }
  .u-color-blue-darker\@xsmall {
    color: #0960a5; }
  .u-bg-blue-darker\@xsmall {
    background-color: #0960a5; }
  .u-fill-blue-darker\@xsmall {
    fill: #0960a5; }
  .u-color-green-darker\@xsmall {
    color: #002115; }
  .u-bg-green-darker\@xsmall {
    background-color: #002115; }
  .u-fill-green-darker\@xsmall {
    fill: #002115; }
  .u-color-cyan-darker\@xsmall {
    color: #33c2b3; }
  .u-bg-cyan-darker\@xsmall {
    background-color: #33c2b3; }
  .u-fill-cyan-darker\@xsmall {
    fill: #33c2b3; }
  .u-color-yellow-darker\@xsmall {
    color: #996d00; }
  .u-bg-yellow-darker\@xsmall {
    background-color: #996d00; }
  .u-fill-yellow-darker\@xsmall {
    fill: #996d00; }
  .u-color-orange-darker\@xsmall {
    color: #bb5808; }
  .u-bg-orange-darker\@xsmall {
    background-color: #bb5808; }
  .u-fill-orange-darker\@xsmall {
    fill: #bb5808; }
  .u-color-brown-darker\@xsmall {
    color: #392822; }
  .u-bg-brown-darker\@xsmall {
    background-color: #392822; }
  .u-fill-brown-darker\@xsmall {
    fill: #392822; }
  .u-color-brand-dark\@xsmall {
    color: #7a1222; }
  .u-bg-brand-dark\@xsmall {
    background-color: #7a1222; }
  .u-fill-brand-dark\@xsmall {
    fill: #7a1222; }
  .u-color-brand-darker\@xsmall {
    color: #4d0c15; }
  .u-bg-brand-darker\@xsmall {
    background-color: #4d0c15; }
  .u-fill-brand-darker\@xsmall {
    fill: #4d0c15; }
  .u-color-brand-light\@xsmall {
    color: #d2203a; }
  .u-bg-brand-light\@xsmall {
    background-color: #d2203a; }
  .u-fill-brand-light\@xsmall {
    fill: #d2203a; }
  .u-color-brand-lighter\@xsmall {
    color: #e3425a; }
  .u-bg-brand-lighter\@xsmall {
    background-color: #e3425a; }
  .u-fill-brand-lighter\@xsmall {
    fill: #e3425a; }
  .u-color-secondary-dark\@xsmall {
    color: #3d676d; }
  .u-bg-secondary-dark\@xsmall {
    background-color: #3d676d; }
  .u-fill-secondary-dark\@xsmall {
    fill: #3d676d; }
  .u-color-secondary-darker\@xsmall {
    color: #2b484c; }
  .u-bg-secondary-darker\@xsmall {
    background-color: #2b484c; }
  .u-fill-secondary-darker\@xsmall {
    fill: #2b484c; }
  .u-color-secondary-light\@xsmall {
    color: #66a1aa; }
  .u-bg-secondary-light\@xsmall {
    background-color: #66a1aa; }
  .u-fill-secondary-light\@xsmall {
    fill: #66a1aa; }
  .u-color-secondary-lighter\@xsmall {
    color: #b8d4d8; }
  .u-bg-secondary-lighter\@xsmall {
    background-color: #b8d4d8; }
  .u-fill-secondary-lighter\@xsmall {
    fill: #b8d4d8; }
  .u-color-info-dark\@xsmall {
    color: #0c7cd5; }
  .u-bg-info-dark\@xsmall {
    background-color: #0c7cd5; }
  .u-fill-info-dark\@xsmall {
    fill: #0c7cd5; }
  .u-color-info-darker\@xsmall {
    color: #0960a5; }
  .u-bg-info-darker\@xsmall {
    background-color: #0960a5; }
  .u-fill-info-darker\@xsmall {
    fill: #0960a5; }
  .u-color-info-light\@xsmall {
    color: #51adf6; }
  .u-bg-info-light\@xsmall {
    background-color: #51adf6; }
  .u-fill-info-light\@xsmall {
    fill: #51adf6; }
  .u-color-info-lighter\@xsmall {
    color: #82c4f8; }
  .u-bg-info-lighter\@xsmall {
    background-color: #82c4f8; }
  .u-fill-info-lighter\@xsmall {
    fill: #82c4f8; }
  .u-color-warning-dark\@xsmall {
    color: #ec6f0a; }
  .u-bg-warning-dark\@xsmall {
    background-color: #ec6f0a; }
  .u-fill-warning-dark\@xsmall {
    fill: #ec6f0a; }
  .u-color-warning-darker\@xsmall {
    color: #bb5808; }
  .u-bg-warning-darker\@xsmall {
    background-color: #bb5808; }
  .u-fill-warning-darker\@xsmall {
    fill: #bb5808; }
  .u-color-warning-light\@xsmall {
    color: #f8a664; }
  .u-bg-warning-light\@xsmall {
    background-color: #f8a664; }
  .u-fill-warning-light\@xsmall {
    fill: #f8a664; }
  .u-color-warning-lighter\@xsmall {
    color: #fac295; }
  .u-bg-warning-lighter\@xsmall {
    background-color: #fac295; }
  .u-fill-warning-lighter\@xsmall {
    fill: #fac295; }
  .u-color-success-dark\@xsmall {
    color: #005435; }
  .u-bg-success-dark\@xsmall {
    background-color: #005435; }
  .u-fill-success-dark\@xsmall {
    fill: #005435; }
  .u-color-success-darker\@xsmall {
    color: #002115; }
  .u-bg-success-darker\@xsmall {
    background-color: #002115; }
  .u-fill-success-darker\@xsmall {
    fill: #002115; }
  .u-color-success-light\@xsmall {
    color: #00ba75; }
  .u-bg-success-light\@xsmall {
    background-color: #00ba75; }
  .u-fill-success-light\@xsmall {
    fill: #00ba75; }
  .u-color-success-lighter\@xsmall {
    color: #00ed95; }
  .u-bg-success-lighter\@xsmall {
    background-color: #00ed95; }
  .u-fill-success-lighter\@xsmall {
    fill: #00ed95; }
  .u-color-error-dark\@xsmall {
    color: #990c23; }
  .u-bg-error-dark\@xsmall {
    background-color: #990c23; }
  .u-fill-error-dark\@xsmall {
    fill: #990c23; }
  .u-color-error-darker\@xsmall {
    color: #6a0818; }
  .u-bg-error-darker\@xsmall {
    background-color: #6a0818; }
  .u-fill-error-darker\@xsmall {
    fill: #6a0818; }
  .u-color-error-light\@xsmall {
    color: #ed1e40; }
  .u-bg-error-light\@xsmall {
    background-color: #ed1e40; }
  .u-fill-error-light\@xsmall {
    fill: #ed1e40; }
  .u-color-error-lighter\@xsmall {
    color: #f14d68; }
  .u-bg-error-lighter\@xsmall {
    background-color: #f14d68; }
  .u-fill-error-lighter\@xsmall {
    fill: #f14d68; } }

@media (min-width: 30rem) {
  .u-bg-none\@small {
    background: none !important; }
  .u-color-black\@small {
    color: #414042; }
  .u-bg-black\@small {
    background-color: #414042; }
  .u-fill-black\@small {
    fill: #414042; }
  .u-color-grey\@small {
    color: #939598; }
  .u-bg-grey\@small {
    background-color: #939598; }
  .u-fill-grey\@small {
    fill: #939598; }
  .u-color-light-grey\@small {
    color: #F2F2F2; }
  .u-bg-light-grey\@small {
    background-color: #F2F2F2; }
  .u-fill-light-grey\@small {
    fill: #F2F2F2; }
  .u-color-white\@small {
    color: #FFF; }
  .u-bg-white\@small {
    background-color: #FFF; }
  .u-fill-white\@small {
    fill: #FFF; }
  .u-color-beige\@small {
    color: #F2F2EA; }
  .u-bg-beige\@small {
    background-color: #F2F2EA; }
  .u-fill-beige\@small {
    fill: #F2F2EA; }
  .u-color-red\@small {
    color: #C8102E; }
  .u-bg-red\@small {
    background-color: #C8102E; }
  .u-fill-red\@small {
    fill: #C8102E; }
  .u-color-pink\@small {
    color: #E91E63; }
  .u-bg-pink\@small {
    background-color: #E91E63; }
  .u-fill-pink\@small {
    fill: #E91E63; }
  .u-color-purple\@small {
    color: #6C54A3; }
  .u-bg-purple\@small {
    background-color: #6C54A3; }
  .u-fill-purple\@small {
    fill: #6C54A3; }
  .u-color-blue\@small {
    color: #2196F3; }
  .u-bg-blue\@small {
    background-color: #2196F3; }
  .u-fill-blue\@small {
    fill: #2196F3; }
  .u-color-green\@small {
    color: #008755; }
  .u-bg-green\@small {
    background-color: #008755; }
  .u-fill-green\@small {
    fill: #008755; }
  .u-color-light-green\@small {
    color: #6CC24A; }
  .u-bg-light-green\@small {
    background-color: #6CC24A; }
  .u-fill-light-green\@small {
    fill: #6CC24A; }
  .u-color-teal\@small {
    color: #4F868E; }
  .u-bg-teal\@small {
    background-color: #4F868E; }
  .u-fill-teal\@small {
    fill: #4F868E; }
  .u-color-cyan\@small {
    color: #7EDDD3; }
  .u-bg-cyan\@small {
    background-color: #7EDDD3; }
  .u-fill-cyan\@small {
    fill: #7EDDD3; }
  .u-color-yellow\@small {
    color: #FFB500; }
  .u-bg-yellow\@small {
    background-color: #FFB500; }
  .u-fill-yellow\@small {
    fill: #FFB500; }
  .u-color-orange\@small {
    color: #F68A33; }
  .u-bg-orange\@small {
    background-color: #F68A33; }
  .u-fill-orange\@small {
    fill: #F68A33; }
  .u-color-brown\@small {
    color: #795548; }
  .u-bg-brown\@small {
    background-color: #795548; }
  .u-fill-brown\@small {
    fill: #795548; }
  .u-color-brand\@small {
    color: #a6192e; }
  .u-bg-brand\@small {
    background-color: #a6192e; }
  .u-fill-brand\@small {
    fill: #a6192e; }
  .u-color-secondary\@small {
    color: #4F868E; }
  .u-bg-secondary\@small {
    background-color: #4F868E; }
  .u-fill-secondary\@small {
    fill: #4F868E; }
  .u-color-tertiary\@small {
    color: #7EDDD3; }
  .u-bg-tertiary\@small {
    background-color: #7EDDD3; }
  .u-fill-tertiary\@small {
    fill: #7EDDD3; }
  .u-color-info\@small {
    color: #2196F3; }
  .u-bg-info\@small {
    background-color: #2196F3; }
  .u-fill-info\@small {
    fill: #2196F3; }
  .u-color-warning\@small {
    color: #F68A33; }
  .u-bg-warning\@small {
    background-color: #F68A33; }
  .u-fill-warning\@small {
    fill: #F68A33; }
  .u-color-success\@small {
    color: #008755; }
  .u-bg-success\@small {
    background-color: #008755; }
  .u-fill-success\@small {
    fill: #008755; }
  .u-color-error\@small {
    color: #C8102E; }
  .u-bg-error\@small {
    background-color: #C8102E; }
  .u-fill-error\@small {
    fill: #C8102E; }
  .u-color-default\@small {
    color: #797b7f; }
  .u-bg-default\@small {
    background-color: #797b7f; }
  .u-fill-default\@small {
    fill: #797b7f; }
  .u-color-disabled\@small {
    color: #797b7f; }
  .u-bg-disabled\@small {
    background-color: #797b7f; }
  .u-fill-disabled\@small {
    fill: #797b7f; }
  .u-color-quiet\@small {
    color: #797b7f; }
  .u-bg-quiet\@small {
    background-color: #797b7f; }
  .u-fill-quiet\@small {
    fill: #797b7f; }
  .u-color-grey-dark\@small {
    color: #797b7f; }
  .u-bg-grey-dark\@small {
    background-color: #797b7f; }
  .u-fill-grey-dark\@small {
    fill: #797b7f; }
  .u-color-red-dark\@small {
    color: #990c23; }
  .u-bg-red-dark\@small {
    background-color: #990c23; }
  .u-fill-red-dark\@small {
    fill: #990c23; }
  .u-color-pink-dark\@small {
    color: #c1134e; }
  .u-bg-pink-dark\@small {
    background-color: #c1134e; }
  .u-fill-pink-dark\@small {
    fill: #c1134e; }
  .u-color-purple-dark\@small {
    color: #564381; }
  .u-bg-purple-dark\@small {
    background-color: #564381; }
  .u-fill-purple-dark\@small {
    fill: #564381; }
  .u-color-blue-dark\@small {
    color: #0c7cd5; }
  .u-bg-blue-dark\@small {
    background-color: #0c7cd5; }
  .u-fill-blue-dark\@small {
    fill: #0c7cd5; }
  .u-color-green-dark\@small {
    color: #005435; }
  .u-bg-green-dark\@small {
    background-color: #005435; }
  .u-fill-green-dark\@small {
    fill: #005435; }
  .u-color-cyan-dark\@small {
    color: #56d2c5; }
  .u-bg-cyan-dark\@small {
    background-color: #56d2c5; }
  .u-fill-cyan-dark\@small {
    fill: #56d2c5; }
  .u-color-yellow-dark\@small {
    color: #cc9100; }
  .u-bg-yellow-dark\@small {
    background-color: #cc9100; }
  .u-fill-yellow-dark\@small {
    fill: #cc9100; }
  .u-color-orange-dark\@small {
    color: #ec6f0a; }
  .u-bg-orange-dark\@small {
    background-color: #ec6f0a; }
  .u-fill-orange-dark\@small {
    fill: #ec6f0a; }
  .u-color-brown-dark\@small {
    color: #593f35; }
  .u-bg-brown-dark\@small {
    background-color: #593f35; }
  .u-fill-brown-dark\@small {
    fill: #593f35; }
  .u-color-grey-darker\@small {
    color: #606265; }
  .u-bg-grey-darker\@small {
    background-color: #606265; }
  .u-fill-grey-darker\@small {
    fill: #606265; }
  .u-color-red-darker\@small {
    color: #6a0818; }
  .u-bg-red-darker\@small {
    background-color: #6a0818; }
  .u-fill-red-darker\@small {
    fill: #6a0818; }
  .u-color-grey-light\@small {
    color: #adafb1; }
  .u-bg-grey-light\@small {
    background-color: #adafb1; }
  .u-fill-grey-light\@small {
    fill: #adafb1; }
  .u-color-red-light\@small {
    color: #ed1e40; }
  .u-bg-red-light\@small {
    background-color: #ed1e40; }
  .u-fill-red-light\@small {
    fill: #ed1e40; }
  .u-color-pink-light\@small {
    color: #ee4c83; }
  .u-bg-pink-light\@small {
    background-color: #ee4c83; }
  .u-fill-pink-light\@small {
    fill: #ee4c83; }
  .u-color-purple-light\@small {
    color: #8873b7; }
  .u-bg-purple-light\@small {
    background-color: #8873b7; }
  .u-fill-purple-light\@small {
    fill: #8873b7; }
  .u-color-blue-light\@small {
    color: #51adf6; }
  .u-bg-blue-light\@small {
    background-color: #51adf6; }
  .u-fill-blue-light\@small {
    fill: #51adf6; }
  .u-color-green-light\@small {
    color: #00ba75; }
  .u-bg-green-light\@small {
    background-color: #00ba75; }
  .u-fill-green-light\@small {
    fill: #00ba75; }
  .u-color-cyan-light\@small {
    color: #a6e8e1; }
  .u-bg-cyan-light\@small {
    background-color: #a6e8e1; }
  .u-fill-cyan-light\@small {
    fill: #a6e8e1; }
  .u-color-yellow-light\@small {
    color: #ffc433; }
  .u-bg-yellow-light\@small {
    background-color: #ffc433; }
  .u-fill-yellow-light\@small {
    fill: #ffc433; }
  .u-color-orange-light\@small {
    color: #f8a664; }
  .u-bg-orange-light\@small {
    background-color: #f8a664; }
  .u-fill-orange-light\@small {
    fill: #f8a664; }
  .u-color-brown-light\@small {
    color: #996b5b; }
  .u-bg-brown-light\@small {
    background-color: #996b5b; }
  .u-fill-brown-light\@small {
    fill: #996b5b; }
  .u-color-grey-lighter\@small {
    color: #c7c8ca; }
  .u-bg-grey-lighter\@small {
    background-color: #c7c8ca; }
  .u-fill-grey-lighter\@small {
    fill: #c7c8ca; }
  .u-color-red-lighter\@small {
    color: #f14d68; }
  .u-bg-red-lighter\@small {
    background-color: #f14d68; }
  .u-fill-red-lighter\@small {
    fill: #f14d68; }
  .u-color-pink-lighter\@small {
    color: #f27ba3; }
  .u-bg-pink-lighter\@small {
    background-color: #f27ba3; }
  .u-fill-pink-lighter\@small {
    fill: #f27ba3; }
  .u-color-purple-lighter\@small {
    color: #a495c8; }
  .u-bg-purple-lighter\@small {
    background-color: #a495c8; }
  .u-fill-purple-lighter\@small {
    fill: #a495c8; }
  .u-color-blue-lighter\@small {
    color: #82c4f8; }
  .u-bg-blue-lighter\@small {
    background-color: #82c4f8; }
  .u-fill-blue-lighter\@small {
    fill: #82c4f8; }
  .u-color-green-lighter\@small {
    color: #00ed95; }
  .u-bg-green-lighter\@small {
    background-color: #00ed95; }
  .u-fill-green-lighter\@small {
    fill: #00ed95; }
  .u-color-cyan-lighter\@small {
    color: #cff2ef; }
  .u-bg-cyan-lighter\@small {
    background-color: #cff2ef; }
  .u-fill-cyan-lighter\@small {
    fill: #cff2ef; }
  .u-color-yellow-lighter\@small {
    color: #ffd366; }
  .u-bg-yellow-lighter\@small {
    background-color: #ffd366; }
  .u-fill-yellow-lighter\@small {
    fill: #ffd366; }
  .u-color-orange-lighter\@small {
    color: #fac295; }
  .u-bg-orange-lighter\@small {
    background-color: #fac295; }
  .u-fill-orange-lighter\@small {
    fill: #fac295; }
  .u-color-brown-lighter\@small {
    color: #af8778; }
  .u-bg-brown-lighter\@small {
    background-color: #af8778; }
  .u-fill-brown-lighter\@small {
    fill: #af8778; }
  .u-color-pink-darker\@small {
    color: #930e3b; }
  .u-bg-pink-darker\@small {
    background-color: #930e3b; }
  .u-fill-pink-darker\@small {
    fill: #930e3b; }
  .u-color-purple-darker\@small {
    color: #3f3160; }
  .u-bg-purple-darker\@small {
    background-color: #3f3160; }
  .u-fill-purple-darker\@small {
    fill: #3f3160; }
  .u-color-blue-darker\@small {
    color: #0960a5; }
  .u-bg-blue-darker\@small {
    background-color: #0960a5; }
  .u-fill-blue-darker\@small {
    fill: #0960a5; }
  .u-color-green-darker\@small {
    color: #002115; }
  .u-bg-green-darker\@small {
    background-color: #002115; }
  .u-fill-green-darker\@small {
    fill: #002115; }
  .u-color-cyan-darker\@small {
    color: #33c2b3; }
  .u-bg-cyan-darker\@small {
    background-color: #33c2b3; }
  .u-fill-cyan-darker\@small {
    fill: #33c2b3; }
  .u-color-yellow-darker\@small {
    color: #996d00; }
  .u-bg-yellow-darker\@small {
    background-color: #996d00; }
  .u-fill-yellow-darker\@small {
    fill: #996d00; }
  .u-color-orange-darker\@small {
    color: #bb5808; }
  .u-bg-orange-darker\@small {
    background-color: #bb5808; }
  .u-fill-orange-darker\@small {
    fill: #bb5808; }
  .u-color-brown-darker\@small {
    color: #392822; }
  .u-bg-brown-darker\@small {
    background-color: #392822; }
  .u-fill-brown-darker\@small {
    fill: #392822; }
  .u-color-brand-dark\@small {
    color: #7a1222; }
  .u-bg-brand-dark\@small {
    background-color: #7a1222; }
  .u-fill-brand-dark\@small {
    fill: #7a1222; }
  .u-color-brand-darker\@small {
    color: #4d0c15; }
  .u-bg-brand-darker\@small {
    background-color: #4d0c15; }
  .u-fill-brand-darker\@small {
    fill: #4d0c15; }
  .u-color-brand-light\@small {
    color: #d2203a; }
  .u-bg-brand-light\@small {
    background-color: #d2203a; }
  .u-fill-brand-light\@small {
    fill: #d2203a; }
  .u-color-brand-lighter\@small {
    color: #e3425a; }
  .u-bg-brand-lighter\@small {
    background-color: #e3425a; }
  .u-fill-brand-lighter\@small {
    fill: #e3425a; }
  .u-color-secondary-dark\@small {
    color: #3d676d; }
  .u-bg-secondary-dark\@small {
    background-color: #3d676d; }
  .u-fill-secondary-dark\@small {
    fill: #3d676d; }
  .u-color-secondary-darker\@small {
    color: #2b484c; }
  .u-bg-secondary-darker\@small {
    background-color: #2b484c; }
  .u-fill-secondary-darker\@small {
    fill: #2b484c; }
  .u-color-secondary-light\@small {
    color: #66a1aa; }
  .u-bg-secondary-light\@small {
    background-color: #66a1aa; }
  .u-fill-secondary-light\@small {
    fill: #66a1aa; }
  .u-color-secondary-lighter\@small {
    color: #b8d4d8; }
  .u-bg-secondary-lighter\@small {
    background-color: #b8d4d8; }
  .u-fill-secondary-lighter\@small {
    fill: #b8d4d8; }
  .u-color-info-dark\@small {
    color: #0c7cd5; }
  .u-bg-info-dark\@small {
    background-color: #0c7cd5; }
  .u-fill-info-dark\@small {
    fill: #0c7cd5; }
  .u-color-info-darker\@small {
    color: #0960a5; }
  .u-bg-info-darker\@small {
    background-color: #0960a5; }
  .u-fill-info-darker\@small {
    fill: #0960a5; }
  .u-color-info-light\@small {
    color: #51adf6; }
  .u-bg-info-light\@small {
    background-color: #51adf6; }
  .u-fill-info-light\@small {
    fill: #51adf6; }
  .u-color-info-lighter\@small {
    color: #82c4f8; }
  .u-bg-info-lighter\@small {
    background-color: #82c4f8; }
  .u-fill-info-lighter\@small {
    fill: #82c4f8; }
  .u-color-warning-dark\@small {
    color: #ec6f0a; }
  .u-bg-warning-dark\@small {
    background-color: #ec6f0a; }
  .u-fill-warning-dark\@small {
    fill: #ec6f0a; }
  .u-color-warning-darker\@small {
    color: #bb5808; }
  .u-bg-warning-darker\@small {
    background-color: #bb5808; }
  .u-fill-warning-darker\@small {
    fill: #bb5808; }
  .u-color-warning-light\@small {
    color: #f8a664; }
  .u-bg-warning-light\@small {
    background-color: #f8a664; }
  .u-fill-warning-light\@small {
    fill: #f8a664; }
  .u-color-warning-lighter\@small {
    color: #fac295; }
  .u-bg-warning-lighter\@small {
    background-color: #fac295; }
  .u-fill-warning-lighter\@small {
    fill: #fac295; }
  .u-color-success-dark\@small {
    color: #005435; }
  .u-bg-success-dark\@small {
    background-color: #005435; }
  .u-fill-success-dark\@small {
    fill: #005435; }
  .u-color-success-darker\@small {
    color: #002115; }
  .u-bg-success-darker\@small {
    background-color: #002115; }
  .u-fill-success-darker\@small {
    fill: #002115; }
  .u-color-success-light\@small {
    color: #00ba75; }
  .u-bg-success-light\@small {
    background-color: #00ba75; }
  .u-fill-success-light\@small {
    fill: #00ba75; }
  .u-color-success-lighter\@small {
    color: #00ed95; }
  .u-bg-success-lighter\@small {
    background-color: #00ed95; }
  .u-fill-success-lighter\@small {
    fill: #00ed95; }
  .u-color-error-dark\@small {
    color: #990c23; }
  .u-bg-error-dark\@small {
    background-color: #990c23; }
  .u-fill-error-dark\@small {
    fill: #990c23; }
  .u-color-error-darker\@small {
    color: #6a0818; }
  .u-bg-error-darker\@small {
    background-color: #6a0818; }
  .u-fill-error-darker\@small {
    fill: #6a0818; }
  .u-color-error-light\@small {
    color: #ed1e40; }
  .u-bg-error-light\@small {
    background-color: #ed1e40; }
  .u-fill-error-light\@small {
    fill: #ed1e40; }
  .u-color-error-lighter\@small {
    color: #f14d68; }
  .u-bg-error-lighter\@small {
    background-color: #f14d68; }
  .u-fill-error-lighter\@small {
    fill: #f14d68; } }

@media (min-width: 48rem) {
  .u-bg-none\@medium {
    background: none !important; }
  .u-color-black\@medium {
    color: #414042; }
  .u-bg-black\@medium {
    background-color: #414042; }
  .u-fill-black\@medium {
    fill: #414042; }
  .u-color-grey\@medium {
    color: #939598; }
  .u-bg-grey\@medium {
    background-color: #939598; }
  .u-fill-grey\@medium {
    fill: #939598; }
  .u-color-light-grey\@medium {
    color: #F2F2F2; }
  .u-bg-light-grey\@medium {
    background-color: #F2F2F2; }
  .u-fill-light-grey\@medium {
    fill: #F2F2F2; }
  .u-color-white\@medium {
    color: #FFF; }
  .u-bg-white\@medium {
    background-color: #FFF; }
  .u-fill-white\@medium {
    fill: #FFF; }
  .u-color-beige\@medium {
    color: #F2F2EA; }
  .u-bg-beige\@medium {
    background-color: #F2F2EA; }
  .u-fill-beige\@medium {
    fill: #F2F2EA; }
  .u-color-red\@medium {
    color: #C8102E; }
  .u-bg-red\@medium {
    background-color: #C8102E; }
  .u-fill-red\@medium {
    fill: #C8102E; }
  .u-color-pink\@medium {
    color: #E91E63; }
  .u-bg-pink\@medium {
    background-color: #E91E63; }
  .u-fill-pink\@medium {
    fill: #E91E63; }
  .u-color-purple\@medium {
    color: #6C54A3; }
  .u-bg-purple\@medium {
    background-color: #6C54A3; }
  .u-fill-purple\@medium {
    fill: #6C54A3; }
  .u-color-blue\@medium {
    color: #2196F3; }
  .u-bg-blue\@medium {
    background-color: #2196F3; }
  .u-fill-blue\@medium {
    fill: #2196F3; }
  .u-color-green\@medium {
    color: #008755; }
  .u-bg-green\@medium {
    background-color: #008755; }
  .u-fill-green\@medium {
    fill: #008755; }
  .u-color-light-green\@medium {
    color: #6CC24A; }
  .u-bg-light-green\@medium {
    background-color: #6CC24A; }
  .u-fill-light-green\@medium {
    fill: #6CC24A; }
  .u-color-teal\@medium {
    color: #4F868E; }
  .u-bg-teal\@medium {
    background-color: #4F868E; }
  .u-fill-teal\@medium {
    fill: #4F868E; }
  .u-color-cyan\@medium {
    color: #7EDDD3; }
  .u-bg-cyan\@medium {
    background-color: #7EDDD3; }
  .u-fill-cyan\@medium {
    fill: #7EDDD3; }
  .u-color-yellow\@medium {
    color: #FFB500; }
  .u-bg-yellow\@medium {
    background-color: #FFB500; }
  .u-fill-yellow\@medium {
    fill: #FFB500; }
  .u-color-orange\@medium {
    color: #F68A33; }
  .u-bg-orange\@medium {
    background-color: #F68A33; }
  .u-fill-orange\@medium {
    fill: #F68A33; }
  .u-color-brown\@medium {
    color: #795548; }
  .u-bg-brown\@medium {
    background-color: #795548; }
  .u-fill-brown\@medium {
    fill: #795548; }
  .u-color-brand\@medium {
    color: #a6192e; }
  .u-bg-brand\@medium {
    background-color: #a6192e; }
  .u-fill-brand\@medium {
    fill: #a6192e; }
  .u-color-secondary\@medium {
    color: #4F868E; }
  .u-bg-secondary\@medium {
    background-color: #4F868E; }
  .u-fill-secondary\@medium {
    fill: #4F868E; }
  .u-color-tertiary\@medium {
    color: #7EDDD3; }
  .u-bg-tertiary\@medium {
    background-color: #7EDDD3; }
  .u-fill-tertiary\@medium {
    fill: #7EDDD3; }
  .u-color-info\@medium {
    color: #2196F3; }
  .u-bg-info\@medium {
    background-color: #2196F3; }
  .u-fill-info\@medium {
    fill: #2196F3; }
  .u-color-warning\@medium {
    color: #F68A33; }
  .u-bg-warning\@medium {
    background-color: #F68A33; }
  .u-fill-warning\@medium {
    fill: #F68A33; }
  .u-color-success\@medium {
    color: #008755; }
  .u-bg-success\@medium {
    background-color: #008755; }
  .u-fill-success\@medium {
    fill: #008755; }
  .u-color-error\@medium {
    color: #C8102E; }
  .u-bg-error\@medium {
    background-color: #C8102E; }
  .u-fill-error\@medium {
    fill: #C8102E; }
  .u-color-default\@medium {
    color: #797b7f; }
  .u-bg-default\@medium {
    background-color: #797b7f; }
  .u-fill-default\@medium {
    fill: #797b7f; }
  .u-color-disabled\@medium {
    color: #797b7f; }
  .u-bg-disabled\@medium {
    background-color: #797b7f; }
  .u-fill-disabled\@medium {
    fill: #797b7f; }
  .u-color-quiet\@medium {
    color: #797b7f; }
  .u-bg-quiet\@medium {
    background-color: #797b7f; }
  .u-fill-quiet\@medium {
    fill: #797b7f; }
  .u-color-grey-dark\@medium {
    color: #797b7f; }
  .u-bg-grey-dark\@medium {
    background-color: #797b7f; }
  .u-fill-grey-dark\@medium {
    fill: #797b7f; }
  .u-color-red-dark\@medium {
    color: #990c23; }
  .u-bg-red-dark\@medium {
    background-color: #990c23; }
  .u-fill-red-dark\@medium {
    fill: #990c23; }
  .u-color-pink-dark\@medium {
    color: #c1134e; }
  .u-bg-pink-dark\@medium {
    background-color: #c1134e; }
  .u-fill-pink-dark\@medium {
    fill: #c1134e; }
  .u-color-purple-dark\@medium {
    color: #564381; }
  .u-bg-purple-dark\@medium {
    background-color: #564381; }
  .u-fill-purple-dark\@medium {
    fill: #564381; }
  .u-color-blue-dark\@medium {
    color: #0c7cd5; }
  .u-bg-blue-dark\@medium {
    background-color: #0c7cd5; }
  .u-fill-blue-dark\@medium {
    fill: #0c7cd5; }
  .u-color-green-dark\@medium {
    color: #005435; }
  .u-bg-green-dark\@medium {
    background-color: #005435; }
  .u-fill-green-dark\@medium {
    fill: #005435; }
  .u-color-cyan-dark\@medium {
    color: #56d2c5; }
  .u-bg-cyan-dark\@medium {
    background-color: #56d2c5; }
  .u-fill-cyan-dark\@medium {
    fill: #56d2c5; }
  .u-color-yellow-dark\@medium {
    color: #cc9100; }
  .u-bg-yellow-dark\@medium {
    background-color: #cc9100; }
  .u-fill-yellow-dark\@medium {
    fill: #cc9100; }
  .u-color-orange-dark\@medium {
    color: #ec6f0a; }
  .u-bg-orange-dark\@medium {
    background-color: #ec6f0a; }
  .u-fill-orange-dark\@medium {
    fill: #ec6f0a; }
  .u-color-brown-dark\@medium {
    color: #593f35; }
  .u-bg-brown-dark\@medium {
    background-color: #593f35; }
  .u-fill-brown-dark\@medium {
    fill: #593f35; }
  .u-color-grey-darker\@medium {
    color: #606265; }
  .u-bg-grey-darker\@medium {
    background-color: #606265; }
  .u-fill-grey-darker\@medium {
    fill: #606265; }
  .u-color-red-darker\@medium {
    color: #6a0818; }
  .u-bg-red-darker\@medium {
    background-color: #6a0818; }
  .u-fill-red-darker\@medium {
    fill: #6a0818; }
  .u-color-grey-light\@medium {
    color: #adafb1; }
  .u-bg-grey-light\@medium {
    background-color: #adafb1; }
  .u-fill-grey-light\@medium {
    fill: #adafb1; }
  .u-color-red-light\@medium {
    color: #ed1e40; }
  .u-bg-red-light\@medium {
    background-color: #ed1e40; }
  .u-fill-red-light\@medium {
    fill: #ed1e40; }
  .u-color-pink-light\@medium {
    color: #ee4c83; }
  .u-bg-pink-light\@medium {
    background-color: #ee4c83; }
  .u-fill-pink-light\@medium {
    fill: #ee4c83; }
  .u-color-purple-light\@medium {
    color: #8873b7; }
  .u-bg-purple-light\@medium {
    background-color: #8873b7; }
  .u-fill-purple-light\@medium {
    fill: #8873b7; }
  .u-color-blue-light\@medium {
    color: #51adf6; }
  .u-bg-blue-light\@medium {
    background-color: #51adf6; }
  .u-fill-blue-light\@medium {
    fill: #51adf6; }
  .u-color-green-light\@medium {
    color: #00ba75; }
  .u-bg-green-light\@medium {
    background-color: #00ba75; }
  .u-fill-green-light\@medium {
    fill: #00ba75; }
  .u-color-cyan-light\@medium {
    color: #a6e8e1; }
  .u-bg-cyan-light\@medium {
    background-color: #a6e8e1; }
  .u-fill-cyan-light\@medium {
    fill: #a6e8e1; }
  .u-color-yellow-light\@medium {
    color: #ffc433; }
  .u-bg-yellow-light\@medium {
    background-color: #ffc433; }
  .u-fill-yellow-light\@medium {
    fill: #ffc433; }
  .u-color-orange-light\@medium {
    color: #f8a664; }
  .u-bg-orange-light\@medium {
    background-color: #f8a664; }
  .u-fill-orange-light\@medium {
    fill: #f8a664; }
  .u-color-brown-light\@medium {
    color: #996b5b; }
  .u-bg-brown-light\@medium {
    background-color: #996b5b; }
  .u-fill-brown-light\@medium {
    fill: #996b5b; }
  .u-color-grey-lighter\@medium {
    color: #c7c8ca; }
  .u-bg-grey-lighter\@medium {
    background-color: #c7c8ca; }
  .u-fill-grey-lighter\@medium {
    fill: #c7c8ca; }
  .u-color-red-lighter\@medium {
    color: #f14d68; }
  .u-bg-red-lighter\@medium {
    background-color: #f14d68; }
  .u-fill-red-lighter\@medium {
    fill: #f14d68; }
  .u-color-pink-lighter\@medium {
    color: #f27ba3; }
  .u-bg-pink-lighter\@medium {
    background-color: #f27ba3; }
  .u-fill-pink-lighter\@medium {
    fill: #f27ba3; }
  .u-color-purple-lighter\@medium {
    color: #a495c8; }
  .u-bg-purple-lighter\@medium {
    background-color: #a495c8; }
  .u-fill-purple-lighter\@medium {
    fill: #a495c8; }
  .u-color-blue-lighter\@medium {
    color: #82c4f8; }
  .u-bg-blue-lighter\@medium {
    background-color: #82c4f8; }
  .u-fill-blue-lighter\@medium {
    fill: #82c4f8; }
  .u-color-green-lighter\@medium {
    color: #00ed95; }
  .u-bg-green-lighter\@medium {
    background-color: #00ed95; }
  .u-fill-green-lighter\@medium {
    fill: #00ed95; }
  .u-color-cyan-lighter\@medium {
    color: #cff2ef; }
  .u-bg-cyan-lighter\@medium {
    background-color: #cff2ef; }
  .u-fill-cyan-lighter\@medium {
    fill: #cff2ef; }
  .u-color-yellow-lighter\@medium {
    color: #ffd366; }
  .u-bg-yellow-lighter\@medium {
    background-color: #ffd366; }
  .u-fill-yellow-lighter\@medium {
    fill: #ffd366; }
  .u-color-orange-lighter\@medium {
    color: #fac295; }
  .u-bg-orange-lighter\@medium {
    background-color: #fac295; }
  .u-fill-orange-lighter\@medium {
    fill: #fac295; }
  .u-color-brown-lighter\@medium {
    color: #af8778; }
  .u-bg-brown-lighter\@medium {
    background-color: #af8778; }
  .u-fill-brown-lighter\@medium {
    fill: #af8778; }
  .u-color-pink-darker\@medium {
    color: #930e3b; }
  .u-bg-pink-darker\@medium {
    background-color: #930e3b; }
  .u-fill-pink-darker\@medium {
    fill: #930e3b; }
  .u-color-purple-darker\@medium {
    color: #3f3160; }
  .u-bg-purple-darker\@medium {
    background-color: #3f3160; }
  .u-fill-purple-darker\@medium {
    fill: #3f3160; }
  .u-color-blue-darker\@medium {
    color: #0960a5; }
  .u-bg-blue-darker\@medium {
    background-color: #0960a5; }
  .u-fill-blue-darker\@medium {
    fill: #0960a5; }
  .u-color-green-darker\@medium {
    color: #002115; }
  .u-bg-green-darker\@medium {
    background-color: #002115; }
  .u-fill-green-darker\@medium {
    fill: #002115; }
  .u-color-cyan-darker\@medium {
    color: #33c2b3; }
  .u-bg-cyan-darker\@medium {
    background-color: #33c2b3; }
  .u-fill-cyan-darker\@medium {
    fill: #33c2b3; }
  .u-color-yellow-darker\@medium {
    color: #996d00; }
  .u-bg-yellow-darker\@medium {
    background-color: #996d00; }
  .u-fill-yellow-darker\@medium {
    fill: #996d00; }
  .u-color-orange-darker\@medium {
    color: #bb5808; }
  .u-bg-orange-darker\@medium {
    background-color: #bb5808; }
  .u-fill-orange-darker\@medium {
    fill: #bb5808; }
  .u-color-brown-darker\@medium {
    color: #392822; }
  .u-bg-brown-darker\@medium {
    background-color: #392822; }
  .u-fill-brown-darker\@medium {
    fill: #392822; }
  .u-color-brand-dark\@medium {
    color: #7a1222; }
  .u-bg-brand-dark\@medium {
    background-color: #7a1222; }
  .u-fill-brand-dark\@medium {
    fill: #7a1222; }
  .u-color-brand-darker\@medium {
    color: #4d0c15; }
  .u-bg-brand-darker\@medium {
    background-color: #4d0c15; }
  .u-fill-brand-darker\@medium {
    fill: #4d0c15; }
  .u-color-brand-light\@medium {
    color: #d2203a; }
  .u-bg-brand-light\@medium {
    background-color: #d2203a; }
  .u-fill-brand-light\@medium {
    fill: #d2203a; }
  .u-color-brand-lighter\@medium {
    color: #e3425a; }
  .u-bg-brand-lighter\@medium {
    background-color: #e3425a; }
  .u-fill-brand-lighter\@medium {
    fill: #e3425a; }
  .u-color-secondary-dark\@medium {
    color: #3d676d; }
  .u-bg-secondary-dark\@medium {
    background-color: #3d676d; }
  .u-fill-secondary-dark\@medium {
    fill: #3d676d; }
  .u-color-secondary-darker\@medium {
    color: #2b484c; }
  .u-bg-secondary-darker\@medium {
    background-color: #2b484c; }
  .u-fill-secondary-darker\@medium {
    fill: #2b484c; }
  .u-color-secondary-light\@medium {
    color: #66a1aa; }
  .u-bg-secondary-light\@medium {
    background-color: #66a1aa; }
  .u-fill-secondary-light\@medium {
    fill: #66a1aa; }
  .u-color-secondary-lighter\@medium {
    color: #b8d4d8; }
  .u-bg-secondary-lighter\@medium {
    background-color: #b8d4d8; }
  .u-fill-secondary-lighter\@medium {
    fill: #b8d4d8; }
  .u-color-info-dark\@medium {
    color: #0c7cd5; }
  .u-bg-info-dark\@medium {
    background-color: #0c7cd5; }
  .u-fill-info-dark\@medium {
    fill: #0c7cd5; }
  .u-color-info-darker\@medium {
    color: #0960a5; }
  .u-bg-info-darker\@medium {
    background-color: #0960a5; }
  .u-fill-info-darker\@medium {
    fill: #0960a5; }
  .u-color-info-light\@medium {
    color: #51adf6; }
  .u-bg-info-light\@medium {
    background-color: #51adf6; }
  .u-fill-info-light\@medium {
    fill: #51adf6; }
  .u-color-info-lighter\@medium {
    color: #82c4f8; }
  .u-bg-info-lighter\@medium {
    background-color: #82c4f8; }
  .u-fill-info-lighter\@medium {
    fill: #82c4f8; }
  .u-color-warning-dark\@medium {
    color: #ec6f0a; }
  .u-bg-warning-dark\@medium {
    background-color: #ec6f0a; }
  .u-fill-warning-dark\@medium {
    fill: #ec6f0a; }
  .u-color-warning-darker\@medium {
    color: #bb5808; }
  .u-bg-warning-darker\@medium {
    background-color: #bb5808; }
  .u-fill-warning-darker\@medium {
    fill: #bb5808; }
  .u-color-warning-light\@medium {
    color: #f8a664; }
  .u-bg-warning-light\@medium {
    background-color: #f8a664; }
  .u-fill-warning-light\@medium {
    fill: #f8a664; }
  .u-color-warning-lighter\@medium {
    color: #fac295; }
  .u-bg-warning-lighter\@medium {
    background-color: #fac295; }
  .u-fill-warning-lighter\@medium {
    fill: #fac295; }
  .u-color-success-dark\@medium {
    color: #005435; }
  .u-bg-success-dark\@medium {
    background-color: #005435; }
  .u-fill-success-dark\@medium {
    fill: #005435; }
  .u-color-success-darker\@medium {
    color: #002115; }
  .u-bg-success-darker\@medium {
    background-color: #002115; }
  .u-fill-success-darker\@medium {
    fill: #002115; }
  .u-color-success-light\@medium {
    color: #00ba75; }
  .u-bg-success-light\@medium {
    background-color: #00ba75; }
  .u-fill-success-light\@medium {
    fill: #00ba75; }
  .u-color-success-lighter\@medium {
    color: #00ed95; }
  .u-bg-success-lighter\@medium {
    background-color: #00ed95; }
  .u-fill-success-lighter\@medium {
    fill: #00ed95; }
  .u-color-error-dark\@medium {
    color: #990c23; }
  .u-bg-error-dark\@medium {
    background-color: #990c23; }
  .u-fill-error-dark\@medium {
    fill: #990c23; }
  .u-color-error-darker\@medium {
    color: #6a0818; }
  .u-bg-error-darker\@medium {
    background-color: #6a0818; }
  .u-fill-error-darker\@medium {
    fill: #6a0818; }
  .u-color-error-light\@medium {
    color: #ed1e40; }
  .u-bg-error-light\@medium {
    background-color: #ed1e40; }
  .u-fill-error-light\@medium {
    fill: #ed1e40; }
  .u-color-error-lighter\@medium {
    color: #f14d68; }
  .u-bg-error-lighter\@medium {
    background-color: #f14d68; }
  .u-fill-error-lighter\@medium {
    fill: #f14d68; } }

@media (min-width: 64rem) {
  .u-bg-none\@large {
    background: none !important; }
  .u-color-black\@large {
    color: #414042; }
  .u-bg-black\@large {
    background-color: #414042; }
  .u-fill-black\@large {
    fill: #414042; }
  .u-color-grey\@large {
    color: #939598; }
  .u-bg-grey\@large {
    background-color: #939598; }
  .u-fill-grey\@large {
    fill: #939598; }
  .u-color-light-grey\@large {
    color: #F2F2F2; }
  .u-bg-light-grey\@large {
    background-color: #F2F2F2; }
  .u-fill-light-grey\@large {
    fill: #F2F2F2; }
  .u-color-white\@large {
    color: #FFF; }
  .u-bg-white\@large {
    background-color: #FFF; }
  .u-fill-white\@large {
    fill: #FFF; }
  .u-color-beige\@large {
    color: #F2F2EA; }
  .u-bg-beige\@large {
    background-color: #F2F2EA; }
  .u-fill-beige\@large {
    fill: #F2F2EA; }
  .u-color-red\@large {
    color: #C8102E; }
  .u-bg-red\@large {
    background-color: #C8102E; }
  .u-fill-red\@large {
    fill: #C8102E; }
  .u-color-pink\@large {
    color: #E91E63; }
  .u-bg-pink\@large {
    background-color: #E91E63; }
  .u-fill-pink\@large {
    fill: #E91E63; }
  .u-color-purple\@large {
    color: #6C54A3; }
  .u-bg-purple\@large {
    background-color: #6C54A3; }
  .u-fill-purple\@large {
    fill: #6C54A3; }
  .u-color-blue\@large {
    color: #2196F3; }
  .u-bg-blue\@large {
    background-color: #2196F3; }
  .u-fill-blue\@large {
    fill: #2196F3; }
  .u-color-green\@large {
    color: #008755; }
  .u-bg-green\@large {
    background-color: #008755; }
  .u-fill-green\@large {
    fill: #008755; }
  .u-color-light-green\@large {
    color: #6CC24A; }
  .u-bg-light-green\@large {
    background-color: #6CC24A; }
  .u-fill-light-green\@large {
    fill: #6CC24A; }
  .u-color-teal\@large {
    color: #4F868E; }
  .u-bg-teal\@large {
    background-color: #4F868E; }
  .u-fill-teal\@large {
    fill: #4F868E; }
  .u-color-cyan\@large {
    color: #7EDDD3; }
  .u-bg-cyan\@large {
    background-color: #7EDDD3; }
  .u-fill-cyan\@large {
    fill: #7EDDD3; }
  .u-color-yellow\@large {
    color: #FFB500; }
  .u-bg-yellow\@large {
    background-color: #FFB500; }
  .u-fill-yellow\@large {
    fill: #FFB500; }
  .u-color-orange\@large {
    color: #F68A33; }
  .u-bg-orange\@large {
    background-color: #F68A33; }
  .u-fill-orange\@large {
    fill: #F68A33; }
  .u-color-brown\@large {
    color: #795548; }
  .u-bg-brown\@large {
    background-color: #795548; }
  .u-fill-brown\@large {
    fill: #795548; }
  .u-color-brand\@large {
    color: #a6192e; }
  .u-bg-brand\@large {
    background-color: #a6192e; }
  .u-fill-brand\@large {
    fill: #a6192e; }
  .u-color-secondary\@large {
    color: #4F868E; }
  .u-bg-secondary\@large {
    background-color: #4F868E; }
  .u-fill-secondary\@large {
    fill: #4F868E; }
  .u-color-tertiary\@large {
    color: #7EDDD3; }
  .u-bg-tertiary\@large {
    background-color: #7EDDD3; }
  .u-fill-tertiary\@large {
    fill: #7EDDD3; }
  .u-color-info\@large {
    color: #2196F3; }
  .u-bg-info\@large {
    background-color: #2196F3; }
  .u-fill-info\@large {
    fill: #2196F3; }
  .u-color-warning\@large {
    color: #F68A33; }
  .u-bg-warning\@large {
    background-color: #F68A33; }
  .u-fill-warning\@large {
    fill: #F68A33; }
  .u-color-success\@large {
    color: #008755; }
  .u-bg-success\@large {
    background-color: #008755; }
  .u-fill-success\@large {
    fill: #008755; }
  .u-color-error\@large {
    color: #C8102E; }
  .u-bg-error\@large {
    background-color: #C8102E; }
  .u-fill-error\@large {
    fill: #C8102E; }
  .u-color-default\@large {
    color: #797b7f; }
  .u-bg-default\@large {
    background-color: #797b7f; }
  .u-fill-default\@large {
    fill: #797b7f; }
  .u-color-disabled\@large {
    color: #797b7f; }
  .u-bg-disabled\@large {
    background-color: #797b7f; }
  .u-fill-disabled\@large {
    fill: #797b7f; }
  .u-color-quiet\@large {
    color: #797b7f; }
  .u-bg-quiet\@large {
    background-color: #797b7f; }
  .u-fill-quiet\@large {
    fill: #797b7f; }
  .u-color-grey-dark\@large {
    color: #797b7f; }
  .u-bg-grey-dark\@large {
    background-color: #797b7f; }
  .u-fill-grey-dark\@large {
    fill: #797b7f; }
  .u-color-red-dark\@large {
    color: #990c23; }
  .u-bg-red-dark\@large {
    background-color: #990c23; }
  .u-fill-red-dark\@large {
    fill: #990c23; }
  .u-color-pink-dark\@large {
    color: #c1134e; }
  .u-bg-pink-dark\@large {
    background-color: #c1134e; }
  .u-fill-pink-dark\@large {
    fill: #c1134e; }
  .u-color-purple-dark\@large {
    color: #564381; }
  .u-bg-purple-dark\@large {
    background-color: #564381; }
  .u-fill-purple-dark\@large {
    fill: #564381; }
  .u-color-blue-dark\@large {
    color: #0c7cd5; }
  .u-bg-blue-dark\@large {
    background-color: #0c7cd5; }
  .u-fill-blue-dark\@large {
    fill: #0c7cd5; }
  .u-color-green-dark\@large {
    color: #005435; }
  .u-bg-green-dark\@large {
    background-color: #005435; }
  .u-fill-green-dark\@large {
    fill: #005435; }
  .u-color-cyan-dark\@large {
    color: #56d2c5; }
  .u-bg-cyan-dark\@large {
    background-color: #56d2c5; }
  .u-fill-cyan-dark\@large {
    fill: #56d2c5; }
  .u-color-yellow-dark\@large {
    color: #cc9100; }
  .u-bg-yellow-dark\@large {
    background-color: #cc9100; }
  .u-fill-yellow-dark\@large {
    fill: #cc9100; }
  .u-color-orange-dark\@large {
    color: #ec6f0a; }
  .u-bg-orange-dark\@large {
    background-color: #ec6f0a; }
  .u-fill-orange-dark\@large {
    fill: #ec6f0a; }
  .u-color-brown-dark\@large {
    color: #593f35; }
  .u-bg-brown-dark\@large {
    background-color: #593f35; }
  .u-fill-brown-dark\@large {
    fill: #593f35; }
  .u-color-grey-darker\@large {
    color: #606265; }
  .u-bg-grey-darker\@large {
    background-color: #606265; }
  .u-fill-grey-darker\@large {
    fill: #606265; }
  .u-color-red-darker\@large {
    color: #6a0818; }
  .u-bg-red-darker\@large {
    background-color: #6a0818; }
  .u-fill-red-darker\@large {
    fill: #6a0818; }
  .u-color-grey-light\@large {
    color: #adafb1; }
  .u-bg-grey-light\@large {
    background-color: #adafb1; }
  .u-fill-grey-light\@large {
    fill: #adafb1; }
  .u-color-red-light\@large {
    color: #ed1e40; }
  .u-bg-red-light\@large {
    background-color: #ed1e40; }
  .u-fill-red-light\@large {
    fill: #ed1e40; }
  .u-color-pink-light\@large {
    color: #ee4c83; }
  .u-bg-pink-light\@large {
    background-color: #ee4c83; }
  .u-fill-pink-light\@large {
    fill: #ee4c83; }
  .u-color-purple-light\@large {
    color: #8873b7; }
  .u-bg-purple-light\@large {
    background-color: #8873b7; }
  .u-fill-purple-light\@large {
    fill: #8873b7; }
  .u-color-blue-light\@large {
    color: #51adf6; }
  .u-bg-blue-light\@large {
    background-color: #51adf6; }
  .u-fill-blue-light\@large {
    fill: #51adf6; }
  .u-color-green-light\@large {
    color: #00ba75; }
  .u-bg-green-light\@large {
    background-color: #00ba75; }
  .u-fill-green-light\@large {
    fill: #00ba75; }
  .u-color-cyan-light\@large {
    color: #a6e8e1; }
  .u-bg-cyan-light\@large {
    background-color: #a6e8e1; }
  .u-fill-cyan-light\@large {
    fill: #a6e8e1; }
  .u-color-yellow-light\@large {
    color: #ffc433; }
  .u-bg-yellow-light\@large {
    background-color: #ffc433; }
  .u-fill-yellow-light\@large {
    fill: #ffc433; }
  .u-color-orange-light\@large {
    color: #f8a664; }
  .u-bg-orange-light\@large {
    background-color: #f8a664; }
  .u-fill-orange-light\@large {
    fill: #f8a664; }
  .u-color-brown-light\@large {
    color: #996b5b; }
  .u-bg-brown-light\@large {
    background-color: #996b5b; }
  .u-fill-brown-light\@large {
    fill: #996b5b; }
  .u-color-grey-lighter\@large {
    color: #c7c8ca; }
  .u-bg-grey-lighter\@large {
    background-color: #c7c8ca; }
  .u-fill-grey-lighter\@large {
    fill: #c7c8ca; }
  .u-color-red-lighter\@large {
    color: #f14d68; }
  .u-bg-red-lighter\@large {
    background-color: #f14d68; }
  .u-fill-red-lighter\@large {
    fill: #f14d68; }
  .u-color-pink-lighter\@large {
    color: #f27ba3; }
  .u-bg-pink-lighter\@large {
    background-color: #f27ba3; }
  .u-fill-pink-lighter\@large {
    fill: #f27ba3; }
  .u-color-purple-lighter\@large {
    color: #a495c8; }
  .u-bg-purple-lighter\@large {
    background-color: #a495c8; }
  .u-fill-purple-lighter\@large {
    fill: #a495c8; }
  .u-color-blue-lighter\@large {
    color: #82c4f8; }
  .u-bg-blue-lighter\@large {
    background-color: #82c4f8; }
  .u-fill-blue-lighter\@large {
    fill: #82c4f8; }
  .u-color-green-lighter\@large {
    color: #00ed95; }
  .u-bg-green-lighter\@large {
    background-color: #00ed95; }
  .u-fill-green-lighter\@large {
    fill: #00ed95; }
  .u-color-cyan-lighter\@large {
    color: #cff2ef; }
  .u-bg-cyan-lighter\@large {
    background-color: #cff2ef; }
  .u-fill-cyan-lighter\@large {
    fill: #cff2ef; }
  .u-color-yellow-lighter\@large {
    color: #ffd366; }
  .u-bg-yellow-lighter\@large {
    background-color: #ffd366; }
  .u-fill-yellow-lighter\@large {
    fill: #ffd366; }
  .u-color-orange-lighter\@large {
    color: #fac295; }
  .u-bg-orange-lighter\@large {
    background-color: #fac295; }
  .u-fill-orange-lighter\@large {
    fill: #fac295; }
  .u-color-brown-lighter\@large {
    color: #af8778; }
  .u-bg-brown-lighter\@large {
    background-color: #af8778; }
  .u-fill-brown-lighter\@large {
    fill: #af8778; }
  .u-color-pink-darker\@large {
    color: #930e3b; }
  .u-bg-pink-darker\@large {
    background-color: #930e3b; }
  .u-fill-pink-darker\@large {
    fill: #930e3b; }
  .u-color-purple-darker\@large {
    color: #3f3160; }
  .u-bg-purple-darker\@large {
    background-color: #3f3160; }
  .u-fill-purple-darker\@large {
    fill: #3f3160; }
  .u-color-blue-darker\@large {
    color: #0960a5; }
  .u-bg-blue-darker\@large {
    background-color: #0960a5; }
  .u-fill-blue-darker\@large {
    fill: #0960a5; }
  .u-color-green-darker\@large {
    color: #002115; }
  .u-bg-green-darker\@large {
    background-color: #002115; }
  .u-fill-green-darker\@large {
    fill: #002115; }
  .u-color-cyan-darker\@large {
    color: #33c2b3; }
  .u-bg-cyan-darker\@large {
    background-color: #33c2b3; }
  .u-fill-cyan-darker\@large {
    fill: #33c2b3; }
  .u-color-yellow-darker\@large {
    color: #996d00; }
  .u-bg-yellow-darker\@large {
    background-color: #996d00; }
  .u-fill-yellow-darker\@large {
    fill: #996d00; }
  .u-color-orange-darker\@large {
    color: #bb5808; }
  .u-bg-orange-darker\@large {
    background-color: #bb5808; }
  .u-fill-orange-darker\@large {
    fill: #bb5808; }
  .u-color-brown-darker\@large {
    color: #392822; }
  .u-bg-brown-darker\@large {
    background-color: #392822; }
  .u-fill-brown-darker\@large {
    fill: #392822; }
  .u-color-brand-dark\@large {
    color: #7a1222; }
  .u-bg-brand-dark\@large {
    background-color: #7a1222; }
  .u-fill-brand-dark\@large {
    fill: #7a1222; }
  .u-color-brand-darker\@large {
    color: #4d0c15; }
  .u-bg-brand-darker\@large {
    background-color: #4d0c15; }
  .u-fill-brand-darker\@large {
    fill: #4d0c15; }
  .u-color-brand-light\@large {
    color: #d2203a; }
  .u-bg-brand-light\@large {
    background-color: #d2203a; }
  .u-fill-brand-light\@large {
    fill: #d2203a; }
  .u-color-brand-lighter\@large {
    color: #e3425a; }
  .u-bg-brand-lighter\@large {
    background-color: #e3425a; }
  .u-fill-brand-lighter\@large {
    fill: #e3425a; }
  .u-color-secondary-dark\@large {
    color: #3d676d; }
  .u-bg-secondary-dark\@large {
    background-color: #3d676d; }
  .u-fill-secondary-dark\@large {
    fill: #3d676d; }
  .u-color-secondary-darker\@large {
    color: #2b484c; }
  .u-bg-secondary-darker\@large {
    background-color: #2b484c; }
  .u-fill-secondary-darker\@large {
    fill: #2b484c; }
  .u-color-secondary-light\@large {
    color: #66a1aa; }
  .u-bg-secondary-light\@large {
    background-color: #66a1aa; }
  .u-fill-secondary-light\@large {
    fill: #66a1aa; }
  .u-color-secondary-lighter\@large {
    color: #b8d4d8; }
  .u-bg-secondary-lighter\@large {
    background-color: #b8d4d8; }
  .u-fill-secondary-lighter\@large {
    fill: #b8d4d8; }
  .u-color-info-dark\@large {
    color: #0c7cd5; }
  .u-bg-info-dark\@large {
    background-color: #0c7cd5; }
  .u-fill-info-dark\@large {
    fill: #0c7cd5; }
  .u-color-info-darker\@large {
    color: #0960a5; }
  .u-bg-info-darker\@large {
    background-color: #0960a5; }
  .u-fill-info-darker\@large {
    fill: #0960a5; }
  .u-color-info-light\@large {
    color: #51adf6; }
  .u-bg-info-light\@large {
    background-color: #51adf6; }
  .u-fill-info-light\@large {
    fill: #51adf6; }
  .u-color-info-lighter\@large {
    color: #82c4f8; }
  .u-bg-info-lighter\@large {
    background-color: #82c4f8; }
  .u-fill-info-lighter\@large {
    fill: #82c4f8; }
  .u-color-warning-dark\@large {
    color: #ec6f0a; }
  .u-bg-warning-dark\@large {
    background-color: #ec6f0a; }
  .u-fill-warning-dark\@large {
    fill: #ec6f0a; }
  .u-color-warning-darker\@large {
    color: #bb5808; }
  .u-bg-warning-darker\@large {
    background-color: #bb5808; }
  .u-fill-warning-darker\@large {
    fill: #bb5808; }
  .u-color-warning-light\@large {
    color: #f8a664; }
  .u-bg-warning-light\@large {
    background-color: #f8a664; }
  .u-fill-warning-light\@large {
    fill: #f8a664; }
  .u-color-warning-lighter\@large {
    color: #fac295; }
  .u-bg-warning-lighter\@large {
    background-color: #fac295; }
  .u-fill-warning-lighter\@large {
    fill: #fac295; }
  .u-color-success-dark\@large {
    color: #005435; }
  .u-bg-success-dark\@large {
    background-color: #005435; }
  .u-fill-success-dark\@large {
    fill: #005435; }
  .u-color-success-darker\@large {
    color: #002115; }
  .u-bg-success-darker\@large {
    background-color: #002115; }
  .u-fill-success-darker\@large {
    fill: #002115; }
  .u-color-success-light\@large {
    color: #00ba75; }
  .u-bg-success-light\@large {
    background-color: #00ba75; }
  .u-fill-success-light\@large {
    fill: #00ba75; }
  .u-color-success-lighter\@large {
    color: #00ed95; }
  .u-bg-success-lighter\@large {
    background-color: #00ed95; }
  .u-fill-success-lighter\@large {
    fill: #00ed95; }
  .u-color-error-dark\@large {
    color: #990c23; }
  .u-bg-error-dark\@large {
    background-color: #990c23; }
  .u-fill-error-dark\@large {
    fill: #990c23; }
  .u-color-error-darker\@large {
    color: #6a0818; }
  .u-bg-error-darker\@large {
    background-color: #6a0818; }
  .u-fill-error-darker\@large {
    fill: #6a0818; }
  .u-color-error-light\@large {
    color: #ed1e40; }
  .u-bg-error-light\@large {
    background-color: #ed1e40; }
  .u-fill-error-light\@large {
    fill: #ed1e40; }
  .u-color-error-lighter\@large {
    color: #f14d68; }
  .u-bg-error-lighter\@large {
    background-color: #f14d68; }
  .u-fill-error-lighter\@large {
    fill: #f14d68; } }

@media (min-width: 78rem) {
  .u-bg-none\@xlarge {
    background: none !important; }
  .u-color-black\@xlarge {
    color: #414042; }
  .u-bg-black\@xlarge {
    background-color: #414042; }
  .u-fill-black\@xlarge {
    fill: #414042; }
  .u-color-grey\@xlarge {
    color: #939598; }
  .u-bg-grey\@xlarge {
    background-color: #939598; }
  .u-fill-grey\@xlarge {
    fill: #939598; }
  .u-color-light-grey\@xlarge {
    color: #F2F2F2; }
  .u-bg-light-grey\@xlarge {
    background-color: #F2F2F2; }
  .u-fill-light-grey\@xlarge {
    fill: #F2F2F2; }
  .u-color-white\@xlarge {
    color: #FFF; }
  .u-bg-white\@xlarge {
    background-color: #FFF; }
  .u-fill-white\@xlarge {
    fill: #FFF; }
  .u-color-beige\@xlarge {
    color: #F2F2EA; }
  .u-bg-beige\@xlarge {
    background-color: #F2F2EA; }
  .u-fill-beige\@xlarge {
    fill: #F2F2EA; }
  .u-color-red\@xlarge {
    color: #C8102E; }
  .u-bg-red\@xlarge {
    background-color: #C8102E; }
  .u-fill-red\@xlarge {
    fill: #C8102E; }
  .u-color-pink\@xlarge {
    color: #E91E63; }
  .u-bg-pink\@xlarge {
    background-color: #E91E63; }
  .u-fill-pink\@xlarge {
    fill: #E91E63; }
  .u-color-purple\@xlarge {
    color: #6C54A3; }
  .u-bg-purple\@xlarge {
    background-color: #6C54A3; }
  .u-fill-purple\@xlarge {
    fill: #6C54A3; }
  .u-color-blue\@xlarge {
    color: #2196F3; }
  .u-bg-blue\@xlarge {
    background-color: #2196F3; }
  .u-fill-blue\@xlarge {
    fill: #2196F3; }
  .u-color-green\@xlarge {
    color: #008755; }
  .u-bg-green\@xlarge {
    background-color: #008755; }
  .u-fill-green\@xlarge {
    fill: #008755; }
  .u-color-light-green\@xlarge {
    color: #6CC24A; }
  .u-bg-light-green\@xlarge {
    background-color: #6CC24A; }
  .u-fill-light-green\@xlarge {
    fill: #6CC24A; }
  .u-color-teal\@xlarge {
    color: #4F868E; }
  .u-bg-teal\@xlarge {
    background-color: #4F868E; }
  .u-fill-teal\@xlarge {
    fill: #4F868E; }
  .u-color-cyan\@xlarge {
    color: #7EDDD3; }
  .u-bg-cyan\@xlarge {
    background-color: #7EDDD3; }
  .u-fill-cyan\@xlarge {
    fill: #7EDDD3; }
  .u-color-yellow\@xlarge {
    color: #FFB500; }
  .u-bg-yellow\@xlarge {
    background-color: #FFB500; }
  .u-fill-yellow\@xlarge {
    fill: #FFB500; }
  .u-color-orange\@xlarge {
    color: #F68A33; }
  .u-bg-orange\@xlarge {
    background-color: #F68A33; }
  .u-fill-orange\@xlarge {
    fill: #F68A33; }
  .u-color-brown\@xlarge {
    color: #795548; }
  .u-bg-brown\@xlarge {
    background-color: #795548; }
  .u-fill-brown\@xlarge {
    fill: #795548; }
  .u-color-brand\@xlarge {
    color: #a6192e; }
  .u-bg-brand\@xlarge {
    background-color: #a6192e; }
  .u-fill-brand\@xlarge {
    fill: #a6192e; }
  .u-color-secondary\@xlarge {
    color: #4F868E; }
  .u-bg-secondary\@xlarge {
    background-color: #4F868E; }
  .u-fill-secondary\@xlarge {
    fill: #4F868E; }
  .u-color-tertiary\@xlarge {
    color: #7EDDD3; }
  .u-bg-tertiary\@xlarge {
    background-color: #7EDDD3; }
  .u-fill-tertiary\@xlarge {
    fill: #7EDDD3; }
  .u-color-info\@xlarge {
    color: #2196F3; }
  .u-bg-info\@xlarge {
    background-color: #2196F3; }
  .u-fill-info\@xlarge {
    fill: #2196F3; }
  .u-color-warning\@xlarge {
    color: #F68A33; }
  .u-bg-warning\@xlarge {
    background-color: #F68A33; }
  .u-fill-warning\@xlarge {
    fill: #F68A33; }
  .u-color-success\@xlarge {
    color: #008755; }
  .u-bg-success\@xlarge {
    background-color: #008755; }
  .u-fill-success\@xlarge {
    fill: #008755; }
  .u-color-error\@xlarge {
    color: #C8102E; }
  .u-bg-error\@xlarge {
    background-color: #C8102E; }
  .u-fill-error\@xlarge {
    fill: #C8102E; }
  .u-color-default\@xlarge {
    color: #797b7f; }
  .u-bg-default\@xlarge {
    background-color: #797b7f; }
  .u-fill-default\@xlarge {
    fill: #797b7f; }
  .u-color-disabled\@xlarge {
    color: #797b7f; }
  .u-bg-disabled\@xlarge {
    background-color: #797b7f; }
  .u-fill-disabled\@xlarge {
    fill: #797b7f; }
  .u-color-quiet\@xlarge {
    color: #797b7f; }
  .u-bg-quiet\@xlarge {
    background-color: #797b7f; }
  .u-fill-quiet\@xlarge {
    fill: #797b7f; }
  .u-color-grey-dark\@xlarge {
    color: #797b7f; }
  .u-bg-grey-dark\@xlarge {
    background-color: #797b7f; }
  .u-fill-grey-dark\@xlarge {
    fill: #797b7f; }
  .u-color-red-dark\@xlarge {
    color: #990c23; }
  .u-bg-red-dark\@xlarge {
    background-color: #990c23; }
  .u-fill-red-dark\@xlarge {
    fill: #990c23; }
  .u-color-pink-dark\@xlarge {
    color: #c1134e; }
  .u-bg-pink-dark\@xlarge {
    background-color: #c1134e; }
  .u-fill-pink-dark\@xlarge {
    fill: #c1134e; }
  .u-color-purple-dark\@xlarge {
    color: #564381; }
  .u-bg-purple-dark\@xlarge {
    background-color: #564381; }
  .u-fill-purple-dark\@xlarge {
    fill: #564381; }
  .u-color-blue-dark\@xlarge {
    color: #0c7cd5; }
  .u-bg-blue-dark\@xlarge {
    background-color: #0c7cd5; }
  .u-fill-blue-dark\@xlarge {
    fill: #0c7cd5; }
  .u-color-green-dark\@xlarge {
    color: #005435; }
  .u-bg-green-dark\@xlarge {
    background-color: #005435; }
  .u-fill-green-dark\@xlarge {
    fill: #005435; }
  .u-color-cyan-dark\@xlarge {
    color: #56d2c5; }
  .u-bg-cyan-dark\@xlarge {
    background-color: #56d2c5; }
  .u-fill-cyan-dark\@xlarge {
    fill: #56d2c5; }
  .u-color-yellow-dark\@xlarge {
    color: #cc9100; }
  .u-bg-yellow-dark\@xlarge {
    background-color: #cc9100; }
  .u-fill-yellow-dark\@xlarge {
    fill: #cc9100; }
  .u-color-orange-dark\@xlarge {
    color: #ec6f0a; }
  .u-bg-orange-dark\@xlarge {
    background-color: #ec6f0a; }
  .u-fill-orange-dark\@xlarge {
    fill: #ec6f0a; }
  .u-color-brown-dark\@xlarge {
    color: #593f35; }
  .u-bg-brown-dark\@xlarge {
    background-color: #593f35; }
  .u-fill-brown-dark\@xlarge {
    fill: #593f35; }
  .u-color-grey-darker\@xlarge {
    color: #606265; }
  .u-bg-grey-darker\@xlarge {
    background-color: #606265; }
  .u-fill-grey-darker\@xlarge {
    fill: #606265; }
  .u-color-red-darker\@xlarge {
    color: #6a0818; }
  .u-bg-red-darker\@xlarge {
    background-color: #6a0818; }
  .u-fill-red-darker\@xlarge {
    fill: #6a0818; }
  .u-color-grey-light\@xlarge {
    color: #adafb1; }
  .u-bg-grey-light\@xlarge {
    background-color: #adafb1; }
  .u-fill-grey-light\@xlarge {
    fill: #adafb1; }
  .u-color-red-light\@xlarge {
    color: #ed1e40; }
  .u-bg-red-light\@xlarge {
    background-color: #ed1e40; }
  .u-fill-red-light\@xlarge {
    fill: #ed1e40; }
  .u-color-pink-light\@xlarge {
    color: #ee4c83; }
  .u-bg-pink-light\@xlarge {
    background-color: #ee4c83; }
  .u-fill-pink-light\@xlarge {
    fill: #ee4c83; }
  .u-color-purple-light\@xlarge {
    color: #8873b7; }
  .u-bg-purple-light\@xlarge {
    background-color: #8873b7; }
  .u-fill-purple-light\@xlarge {
    fill: #8873b7; }
  .u-color-blue-light\@xlarge {
    color: #51adf6; }
  .u-bg-blue-light\@xlarge {
    background-color: #51adf6; }
  .u-fill-blue-light\@xlarge {
    fill: #51adf6; }
  .u-color-green-light\@xlarge {
    color: #00ba75; }
  .u-bg-green-light\@xlarge {
    background-color: #00ba75; }
  .u-fill-green-light\@xlarge {
    fill: #00ba75; }
  .u-color-cyan-light\@xlarge {
    color: #a6e8e1; }
  .u-bg-cyan-light\@xlarge {
    background-color: #a6e8e1; }
  .u-fill-cyan-light\@xlarge {
    fill: #a6e8e1; }
  .u-color-yellow-light\@xlarge {
    color: #ffc433; }
  .u-bg-yellow-light\@xlarge {
    background-color: #ffc433; }
  .u-fill-yellow-light\@xlarge {
    fill: #ffc433; }
  .u-color-orange-light\@xlarge {
    color: #f8a664; }
  .u-bg-orange-light\@xlarge {
    background-color: #f8a664; }
  .u-fill-orange-light\@xlarge {
    fill: #f8a664; }
  .u-color-brown-light\@xlarge {
    color: #996b5b; }
  .u-bg-brown-light\@xlarge {
    background-color: #996b5b; }
  .u-fill-brown-light\@xlarge {
    fill: #996b5b; }
  .u-color-grey-lighter\@xlarge {
    color: #c7c8ca; }
  .u-bg-grey-lighter\@xlarge {
    background-color: #c7c8ca; }
  .u-fill-grey-lighter\@xlarge {
    fill: #c7c8ca; }
  .u-color-red-lighter\@xlarge {
    color: #f14d68; }
  .u-bg-red-lighter\@xlarge {
    background-color: #f14d68; }
  .u-fill-red-lighter\@xlarge {
    fill: #f14d68; }
  .u-color-pink-lighter\@xlarge {
    color: #f27ba3; }
  .u-bg-pink-lighter\@xlarge {
    background-color: #f27ba3; }
  .u-fill-pink-lighter\@xlarge {
    fill: #f27ba3; }
  .u-color-purple-lighter\@xlarge {
    color: #a495c8; }
  .u-bg-purple-lighter\@xlarge {
    background-color: #a495c8; }
  .u-fill-purple-lighter\@xlarge {
    fill: #a495c8; }
  .u-color-blue-lighter\@xlarge {
    color: #82c4f8; }
  .u-bg-blue-lighter\@xlarge {
    background-color: #82c4f8; }
  .u-fill-blue-lighter\@xlarge {
    fill: #82c4f8; }
  .u-color-green-lighter\@xlarge {
    color: #00ed95; }
  .u-bg-green-lighter\@xlarge {
    background-color: #00ed95; }
  .u-fill-green-lighter\@xlarge {
    fill: #00ed95; }
  .u-color-cyan-lighter\@xlarge {
    color: #cff2ef; }
  .u-bg-cyan-lighter\@xlarge {
    background-color: #cff2ef; }
  .u-fill-cyan-lighter\@xlarge {
    fill: #cff2ef; }
  .u-color-yellow-lighter\@xlarge {
    color: #ffd366; }
  .u-bg-yellow-lighter\@xlarge {
    background-color: #ffd366; }
  .u-fill-yellow-lighter\@xlarge {
    fill: #ffd366; }
  .u-color-orange-lighter\@xlarge {
    color: #fac295; }
  .u-bg-orange-lighter\@xlarge {
    background-color: #fac295; }
  .u-fill-orange-lighter\@xlarge {
    fill: #fac295; }
  .u-color-brown-lighter\@xlarge {
    color: #af8778; }
  .u-bg-brown-lighter\@xlarge {
    background-color: #af8778; }
  .u-fill-brown-lighter\@xlarge {
    fill: #af8778; }
  .u-color-pink-darker\@xlarge {
    color: #930e3b; }
  .u-bg-pink-darker\@xlarge {
    background-color: #930e3b; }
  .u-fill-pink-darker\@xlarge {
    fill: #930e3b; }
  .u-color-purple-darker\@xlarge {
    color: #3f3160; }
  .u-bg-purple-darker\@xlarge {
    background-color: #3f3160; }
  .u-fill-purple-darker\@xlarge {
    fill: #3f3160; }
  .u-color-blue-darker\@xlarge {
    color: #0960a5; }
  .u-bg-blue-darker\@xlarge {
    background-color: #0960a5; }
  .u-fill-blue-darker\@xlarge {
    fill: #0960a5; }
  .u-color-green-darker\@xlarge {
    color: #002115; }
  .u-bg-green-darker\@xlarge {
    background-color: #002115; }
  .u-fill-green-darker\@xlarge {
    fill: #002115; }
  .u-color-cyan-darker\@xlarge {
    color: #33c2b3; }
  .u-bg-cyan-darker\@xlarge {
    background-color: #33c2b3; }
  .u-fill-cyan-darker\@xlarge {
    fill: #33c2b3; }
  .u-color-yellow-darker\@xlarge {
    color: #996d00; }
  .u-bg-yellow-darker\@xlarge {
    background-color: #996d00; }
  .u-fill-yellow-darker\@xlarge {
    fill: #996d00; }
  .u-color-orange-darker\@xlarge {
    color: #bb5808; }
  .u-bg-orange-darker\@xlarge {
    background-color: #bb5808; }
  .u-fill-orange-darker\@xlarge {
    fill: #bb5808; }
  .u-color-brown-darker\@xlarge {
    color: #392822; }
  .u-bg-brown-darker\@xlarge {
    background-color: #392822; }
  .u-fill-brown-darker\@xlarge {
    fill: #392822; }
  .u-color-brand-dark\@xlarge {
    color: #7a1222; }
  .u-bg-brand-dark\@xlarge {
    background-color: #7a1222; }
  .u-fill-brand-dark\@xlarge {
    fill: #7a1222; }
  .u-color-brand-darker\@xlarge {
    color: #4d0c15; }
  .u-bg-brand-darker\@xlarge {
    background-color: #4d0c15; }
  .u-fill-brand-darker\@xlarge {
    fill: #4d0c15; }
  .u-color-brand-light\@xlarge {
    color: #d2203a; }
  .u-bg-brand-light\@xlarge {
    background-color: #d2203a; }
  .u-fill-brand-light\@xlarge {
    fill: #d2203a; }
  .u-color-brand-lighter\@xlarge {
    color: #e3425a; }
  .u-bg-brand-lighter\@xlarge {
    background-color: #e3425a; }
  .u-fill-brand-lighter\@xlarge {
    fill: #e3425a; }
  .u-color-secondary-dark\@xlarge {
    color: #3d676d; }
  .u-bg-secondary-dark\@xlarge {
    background-color: #3d676d; }
  .u-fill-secondary-dark\@xlarge {
    fill: #3d676d; }
  .u-color-secondary-darker\@xlarge {
    color: #2b484c; }
  .u-bg-secondary-darker\@xlarge {
    background-color: #2b484c; }
  .u-fill-secondary-darker\@xlarge {
    fill: #2b484c; }
  .u-color-secondary-light\@xlarge {
    color: #66a1aa; }
  .u-bg-secondary-light\@xlarge {
    background-color: #66a1aa; }
  .u-fill-secondary-light\@xlarge {
    fill: #66a1aa; }
  .u-color-secondary-lighter\@xlarge {
    color: #b8d4d8; }
  .u-bg-secondary-lighter\@xlarge {
    background-color: #b8d4d8; }
  .u-fill-secondary-lighter\@xlarge {
    fill: #b8d4d8; }
  .u-color-info-dark\@xlarge {
    color: #0c7cd5; }
  .u-bg-info-dark\@xlarge {
    background-color: #0c7cd5; }
  .u-fill-info-dark\@xlarge {
    fill: #0c7cd5; }
  .u-color-info-darker\@xlarge {
    color: #0960a5; }
  .u-bg-info-darker\@xlarge {
    background-color: #0960a5; }
  .u-fill-info-darker\@xlarge {
    fill: #0960a5; }
  .u-color-info-light\@xlarge {
    color: #51adf6; }
  .u-bg-info-light\@xlarge {
    background-color: #51adf6; }
  .u-fill-info-light\@xlarge {
    fill: #51adf6; }
  .u-color-info-lighter\@xlarge {
    color: #82c4f8; }
  .u-bg-info-lighter\@xlarge {
    background-color: #82c4f8; }
  .u-fill-info-lighter\@xlarge {
    fill: #82c4f8; }
  .u-color-warning-dark\@xlarge {
    color: #ec6f0a; }
  .u-bg-warning-dark\@xlarge {
    background-color: #ec6f0a; }
  .u-fill-warning-dark\@xlarge {
    fill: #ec6f0a; }
  .u-color-warning-darker\@xlarge {
    color: #bb5808; }
  .u-bg-warning-darker\@xlarge {
    background-color: #bb5808; }
  .u-fill-warning-darker\@xlarge {
    fill: #bb5808; }
  .u-color-warning-light\@xlarge {
    color: #f8a664; }
  .u-bg-warning-light\@xlarge {
    background-color: #f8a664; }
  .u-fill-warning-light\@xlarge {
    fill: #f8a664; }
  .u-color-warning-lighter\@xlarge {
    color: #fac295; }
  .u-bg-warning-lighter\@xlarge {
    background-color: #fac295; }
  .u-fill-warning-lighter\@xlarge {
    fill: #fac295; }
  .u-color-success-dark\@xlarge {
    color: #005435; }
  .u-bg-success-dark\@xlarge {
    background-color: #005435; }
  .u-fill-success-dark\@xlarge {
    fill: #005435; }
  .u-color-success-darker\@xlarge {
    color: #002115; }
  .u-bg-success-darker\@xlarge {
    background-color: #002115; }
  .u-fill-success-darker\@xlarge {
    fill: #002115; }
  .u-color-success-light\@xlarge {
    color: #00ba75; }
  .u-bg-success-light\@xlarge {
    background-color: #00ba75; }
  .u-fill-success-light\@xlarge {
    fill: #00ba75; }
  .u-color-success-lighter\@xlarge {
    color: #00ed95; }
  .u-bg-success-lighter\@xlarge {
    background-color: #00ed95; }
  .u-fill-success-lighter\@xlarge {
    fill: #00ed95; }
  .u-color-error-dark\@xlarge {
    color: #990c23; }
  .u-bg-error-dark\@xlarge {
    background-color: #990c23; }
  .u-fill-error-dark\@xlarge {
    fill: #990c23; }
  .u-color-error-darker\@xlarge {
    color: #6a0818; }
  .u-bg-error-darker\@xlarge {
    background-color: #6a0818; }
  .u-fill-error-darker\@xlarge {
    fill: #6a0818; }
  .u-color-error-light\@xlarge {
    color: #ed1e40; }
  .u-bg-error-light\@xlarge {
    background-color: #ed1e40; }
  .u-fill-error-light\@xlarge {
    fill: #ed1e40; }
  .u-color-error-lighter\@xlarge {
    color: #f14d68; }
  .u-bg-error-lighter\@xlarge {
    background-color: #f14d68; }
  .u-fill-error-lighter\@xlarge {
    fill: #f14d68; } }

@media (min-width: 125rem) {
  .u-bg-none\@super {
    background: none !important; }
  .u-color-black\@super {
    color: #414042; }
  .u-bg-black\@super {
    background-color: #414042; }
  .u-fill-black\@super {
    fill: #414042; }
  .u-color-grey\@super {
    color: #939598; }
  .u-bg-grey\@super {
    background-color: #939598; }
  .u-fill-grey\@super {
    fill: #939598; }
  .u-color-light-grey\@super {
    color: #F2F2F2; }
  .u-bg-light-grey\@super {
    background-color: #F2F2F2; }
  .u-fill-light-grey\@super {
    fill: #F2F2F2; }
  .u-color-white\@super {
    color: #FFF; }
  .u-bg-white\@super {
    background-color: #FFF; }
  .u-fill-white\@super {
    fill: #FFF; }
  .u-color-beige\@super {
    color: #F2F2EA; }
  .u-bg-beige\@super {
    background-color: #F2F2EA; }
  .u-fill-beige\@super {
    fill: #F2F2EA; }
  .u-color-red\@super {
    color: #C8102E; }
  .u-bg-red\@super {
    background-color: #C8102E; }
  .u-fill-red\@super {
    fill: #C8102E; }
  .u-color-pink\@super {
    color: #E91E63; }
  .u-bg-pink\@super {
    background-color: #E91E63; }
  .u-fill-pink\@super {
    fill: #E91E63; }
  .u-color-purple\@super {
    color: #6C54A3; }
  .u-bg-purple\@super {
    background-color: #6C54A3; }
  .u-fill-purple\@super {
    fill: #6C54A3; }
  .u-color-blue\@super {
    color: #2196F3; }
  .u-bg-blue\@super {
    background-color: #2196F3; }
  .u-fill-blue\@super {
    fill: #2196F3; }
  .u-color-green\@super {
    color: #008755; }
  .u-bg-green\@super {
    background-color: #008755; }
  .u-fill-green\@super {
    fill: #008755; }
  .u-color-light-green\@super {
    color: #6CC24A; }
  .u-bg-light-green\@super {
    background-color: #6CC24A; }
  .u-fill-light-green\@super {
    fill: #6CC24A; }
  .u-color-teal\@super {
    color: #4F868E; }
  .u-bg-teal\@super {
    background-color: #4F868E; }
  .u-fill-teal\@super {
    fill: #4F868E; }
  .u-color-cyan\@super {
    color: #7EDDD3; }
  .u-bg-cyan\@super {
    background-color: #7EDDD3; }
  .u-fill-cyan\@super {
    fill: #7EDDD3; }
  .u-color-yellow\@super {
    color: #FFB500; }
  .u-bg-yellow\@super {
    background-color: #FFB500; }
  .u-fill-yellow\@super {
    fill: #FFB500; }
  .u-color-orange\@super {
    color: #F68A33; }
  .u-bg-orange\@super {
    background-color: #F68A33; }
  .u-fill-orange\@super {
    fill: #F68A33; }
  .u-color-brown\@super {
    color: #795548; }
  .u-bg-brown\@super {
    background-color: #795548; }
  .u-fill-brown\@super {
    fill: #795548; }
  .u-color-brand\@super {
    color: #a6192e; }
  .u-bg-brand\@super {
    background-color: #a6192e; }
  .u-fill-brand\@super {
    fill: #a6192e; }
  .u-color-secondary\@super {
    color: #4F868E; }
  .u-bg-secondary\@super {
    background-color: #4F868E; }
  .u-fill-secondary\@super {
    fill: #4F868E; }
  .u-color-tertiary\@super {
    color: #7EDDD3; }
  .u-bg-tertiary\@super {
    background-color: #7EDDD3; }
  .u-fill-tertiary\@super {
    fill: #7EDDD3; }
  .u-color-info\@super {
    color: #2196F3; }
  .u-bg-info\@super {
    background-color: #2196F3; }
  .u-fill-info\@super {
    fill: #2196F3; }
  .u-color-warning\@super {
    color: #F68A33; }
  .u-bg-warning\@super {
    background-color: #F68A33; }
  .u-fill-warning\@super {
    fill: #F68A33; }
  .u-color-success\@super {
    color: #008755; }
  .u-bg-success\@super {
    background-color: #008755; }
  .u-fill-success\@super {
    fill: #008755; }
  .u-color-error\@super {
    color: #C8102E; }
  .u-bg-error\@super {
    background-color: #C8102E; }
  .u-fill-error\@super {
    fill: #C8102E; }
  .u-color-default\@super {
    color: #797b7f; }
  .u-bg-default\@super {
    background-color: #797b7f; }
  .u-fill-default\@super {
    fill: #797b7f; }
  .u-color-disabled\@super {
    color: #797b7f; }
  .u-bg-disabled\@super {
    background-color: #797b7f; }
  .u-fill-disabled\@super {
    fill: #797b7f; }
  .u-color-quiet\@super {
    color: #797b7f; }
  .u-bg-quiet\@super {
    background-color: #797b7f; }
  .u-fill-quiet\@super {
    fill: #797b7f; }
  .u-color-grey-dark\@super {
    color: #797b7f; }
  .u-bg-grey-dark\@super {
    background-color: #797b7f; }
  .u-fill-grey-dark\@super {
    fill: #797b7f; }
  .u-color-red-dark\@super {
    color: #990c23; }
  .u-bg-red-dark\@super {
    background-color: #990c23; }
  .u-fill-red-dark\@super {
    fill: #990c23; }
  .u-color-pink-dark\@super {
    color: #c1134e; }
  .u-bg-pink-dark\@super {
    background-color: #c1134e; }
  .u-fill-pink-dark\@super {
    fill: #c1134e; }
  .u-color-purple-dark\@super {
    color: #564381; }
  .u-bg-purple-dark\@super {
    background-color: #564381; }
  .u-fill-purple-dark\@super {
    fill: #564381; }
  .u-color-blue-dark\@super {
    color: #0c7cd5; }
  .u-bg-blue-dark\@super {
    background-color: #0c7cd5; }
  .u-fill-blue-dark\@super {
    fill: #0c7cd5; }
  .u-color-green-dark\@super {
    color: #005435; }
  .u-bg-green-dark\@super {
    background-color: #005435; }
  .u-fill-green-dark\@super {
    fill: #005435; }
  .u-color-cyan-dark\@super {
    color: #56d2c5; }
  .u-bg-cyan-dark\@super {
    background-color: #56d2c5; }
  .u-fill-cyan-dark\@super {
    fill: #56d2c5; }
  .u-color-yellow-dark\@super {
    color: #cc9100; }
  .u-bg-yellow-dark\@super {
    background-color: #cc9100; }
  .u-fill-yellow-dark\@super {
    fill: #cc9100; }
  .u-color-orange-dark\@super {
    color: #ec6f0a; }
  .u-bg-orange-dark\@super {
    background-color: #ec6f0a; }
  .u-fill-orange-dark\@super {
    fill: #ec6f0a; }
  .u-color-brown-dark\@super {
    color: #593f35; }
  .u-bg-brown-dark\@super {
    background-color: #593f35; }
  .u-fill-brown-dark\@super {
    fill: #593f35; }
  .u-color-grey-darker\@super {
    color: #606265; }
  .u-bg-grey-darker\@super {
    background-color: #606265; }
  .u-fill-grey-darker\@super {
    fill: #606265; }
  .u-color-red-darker\@super {
    color: #6a0818; }
  .u-bg-red-darker\@super {
    background-color: #6a0818; }
  .u-fill-red-darker\@super {
    fill: #6a0818; }
  .u-color-grey-light\@super {
    color: #adafb1; }
  .u-bg-grey-light\@super {
    background-color: #adafb1; }
  .u-fill-grey-light\@super {
    fill: #adafb1; }
  .u-color-red-light\@super {
    color: #ed1e40; }
  .u-bg-red-light\@super {
    background-color: #ed1e40; }
  .u-fill-red-light\@super {
    fill: #ed1e40; }
  .u-color-pink-light\@super {
    color: #ee4c83; }
  .u-bg-pink-light\@super {
    background-color: #ee4c83; }
  .u-fill-pink-light\@super {
    fill: #ee4c83; }
  .u-color-purple-light\@super {
    color: #8873b7; }
  .u-bg-purple-light\@super {
    background-color: #8873b7; }
  .u-fill-purple-light\@super {
    fill: #8873b7; }
  .u-color-blue-light\@super {
    color: #51adf6; }
  .u-bg-blue-light\@super {
    background-color: #51adf6; }
  .u-fill-blue-light\@super {
    fill: #51adf6; }
  .u-color-green-light\@super {
    color: #00ba75; }
  .u-bg-green-light\@super {
    background-color: #00ba75; }
  .u-fill-green-light\@super {
    fill: #00ba75; }
  .u-color-cyan-light\@super {
    color: #a6e8e1; }
  .u-bg-cyan-light\@super {
    background-color: #a6e8e1; }
  .u-fill-cyan-light\@super {
    fill: #a6e8e1; }
  .u-color-yellow-light\@super {
    color: #ffc433; }
  .u-bg-yellow-light\@super {
    background-color: #ffc433; }
  .u-fill-yellow-light\@super {
    fill: #ffc433; }
  .u-color-orange-light\@super {
    color: #f8a664; }
  .u-bg-orange-light\@super {
    background-color: #f8a664; }
  .u-fill-orange-light\@super {
    fill: #f8a664; }
  .u-color-brown-light\@super {
    color: #996b5b; }
  .u-bg-brown-light\@super {
    background-color: #996b5b; }
  .u-fill-brown-light\@super {
    fill: #996b5b; }
  .u-color-grey-lighter\@super {
    color: #c7c8ca; }
  .u-bg-grey-lighter\@super {
    background-color: #c7c8ca; }
  .u-fill-grey-lighter\@super {
    fill: #c7c8ca; }
  .u-color-red-lighter\@super {
    color: #f14d68; }
  .u-bg-red-lighter\@super {
    background-color: #f14d68; }
  .u-fill-red-lighter\@super {
    fill: #f14d68; }
  .u-color-pink-lighter\@super {
    color: #f27ba3; }
  .u-bg-pink-lighter\@super {
    background-color: #f27ba3; }
  .u-fill-pink-lighter\@super {
    fill: #f27ba3; }
  .u-color-purple-lighter\@super {
    color: #a495c8; }
  .u-bg-purple-lighter\@super {
    background-color: #a495c8; }
  .u-fill-purple-lighter\@super {
    fill: #a495c8; }
  .u-color-blue-lighter\@super {
    color: #82c4f8; }
  .u-bg-blue-lighter\@super {
    background-color: #82c4f8; }
  .u-fill-blue-lighter\@super {
    fill: #82c4f8; }
  .u-color-green-lighter\@super {
    color: #00ed95; }
  .u-bg-green-lighter\@super {
    background-color: #00ed95; }
  .u-fill-green-lighter\@super {
    fill: #00ed95; }
  .u-color-cyan-lighter\@super {
    color: #cff2ef; }
  .u-bg-cyan-lighter\@super {
    background-color: #cff2ef; }
  .u-fill-cyan-lighter\@super {
    fill: #cff2ef; }
  .u-color-yellow-lighter\@super {
    color: #ffd366; }
  .u-bg-yellow-lighter\@super {
    background-color: #ffd366; }
  .u-fill-yellow-lighter\@super {
    fill: #ffd366; }
  .u-color-orange-lighter\@super {
    color: #fac295; }
  .u-bg-orange-lighter\@super {
    background-color: #fac295; }
  .u-fill-orange-lighter\@super {
    fill: #fac295; }
  .u-color-brown-lighter\@super {
    color: #af8778; }
  .u-bg-brown-lighter\@super {
    background-color: #af8778; }
  .u-fill-brown-lighter\@super {
    fill: #af8778; }
  .u-color-pink-darker\@super {
    color: #930e3b; }
  .u-bg-pink-darker\@super {
    background-color: #930e3b; }
  .u-fill-pink-darker\@super {
    fill: #930e3b; }
  .u-color-purple-darker\@super {
    color: #3f3160; }
  .u-bg-purple-darker\@super {
    background-color: #3f3160; }
  .u-fill-purple-darker\@super {
    fill: #3f3160; }
  .u-color-blue-darker\@super {
    color: #0960a5; }
  .u-bg-blue-darker\@super {
    background-color: #0960a5; }
  .u-fill-blue-darker\@super {
    fill: #0960a5; }
  .u-color-green-darker\@super {
    color: #002115; }
  .u-bg-green-darker\@super {
    background-color: #002115; }
  .u-fill-green-darker\@super {
    fill: #002115; }
  .u-color-cyan-darker\@super {
    color: #33c2b3; }
  .u-bg-cyan-darker\@super {
    background-color: #33c2b3; }
  .u-fill-cyan-darker\@super {
    fill: #33c2b3; }
  .u-color-yellow-darker\@super {
    color: #996d00; }
  .u-bg-yellow-darker\@super {
    background-color: #996d00; }
  .u-fill-yellow-darker\@super {
    fill: #996d00; }
  .u-color-orange-darker\@super {
    color: #bb5808; }
  .u-bg-orange-darker\@super {
    background-color: #bb5808; }
  .u-fill-orange-darker\@super {
    fill: #bb5808; }
  .u-color-brown-darker\@super {
    color: #392822; }
  .u-bg-brown-darker\@super {
    background-color: #392822; }
  .u-fill-brown-darker\@super {
    fill: #392822; }
  .u-color-brand-dark\@super {
    color: #7a1222; }
  .u-bg-brand-dark\@super {
    background-color: #7a1222; }
  .u-fill-brand-dark\@super {
    fill: #7a1222; }
  .u-color-brand-darker\@super {
    color: #4d0c15; }
  .u-bg-brand-darker\@super {
    background-color: #4d0c15; }
  .u-fill-brand-darker\@super {
    fill: #4d0c15; }
  .u-color-brand-light\@super {
    color: #d2203a; }
  .u-bg-brand-light\@super {
    background-color: #d2203a; }
  .u-fill-brand-light\@super {
    fill: #d2203a; }
  .u-color-brand-lighter\@super {
    color: #e3425a; }
  .u-bg-brand-lighter\@super {
    background-color: #e3425a; }
  .u-fill-brand-lighter\@super {
    fill: #e3425a; }
  .u-color-secondary-dark\@super {
    color: #3d676d; }
  .u-bg-secondary-dark\@super {
    background-color: #3d676d; }
  .u-fill-secondary-dark\@super {
    fill: #3d676d; }
  .u-color-secondary-darker\@super {
    color: #2b484c; }
  .u-bg-secondary-darker\@super {
    background-color: #2b484c; }
  .u-fill-secondary-darker\@super {
    fill: #2b484c; }
  .u-color-secondary-light\@super {
    color: #66a1aa; }
  .u-bg-secondary-light\@super {
    background-color: #66a1aa; }
  .u-fill-secondary-light\@super {
    fill: #66a1aa; }
  .u-color-secondary-lighter\@super {
    color: #b8d4d8; }
  .u-bg-secondary-lighter\@super {
    background-color: #b8d4d8; }
  .u-fill-secondary-lighter\@super {
    fill: #b8d4d8; }
  .u-color-info-dark\@super {
    color: #0c7cd5; }
  .u-bg-info-dark\@super {
    background-color: #0c7cd5; }
  .u-fill-info-dark\@super {
    fill: #0c7cd5; }
  .u-color-info-darker\@super {
    color: #0960a5; }
  .u-bg-info-darker\@super {
    background-color: #0960a5; }
  .u-fill-info-darker\@super {
    fill: #0960a5; }
  .u-color-info-light\@super {
    color: #51adf6; }
  .u-bg-info-light\@super {
    background-color: #51adf6; }
  .u-fill-info-light\@super {
    fill: #51adf6; }
  .u-color-info-lighter\@super {
    color: #82c4f8; }
  .u-bg-info-lighter\@super {
    background-color: #82c4f8; }
  .u-fill-info-lighter\@super {
    fill: #82c4f8; }
  .u-color-warning-dark\@super {
    color: #ec6f0a; }
  .u-bg-warning-dark\@super {
    background-color: #ec6f0a; }
  .u-fill-warning-dark\@super {
    fill: #ec6f0a; }
  .u-color-warning-darker\@super {
    color: #bb5808; }
  .u-bg-warning-darker\@super {
    background-color: #bb5808; }
  .u-fill-warning-darker\@super {
    fill: #bb5808; }
  .u-color-warning-light\@super {
    color: #f8a664; }
  .u-bg-warning-light\@super {
    background-color: #f8a664; }
  .u-fill-warning-light\@super {
    fill: #f8a664; }
  .u-color-warning-lighter\@super {
    color: #fac295; }
  .u-bg-warning-lighter\@super {
    background-color: #fac295; }
  .u-fill-warning-lighter\@super {
    fill: #fac295; }
  .u-color-success-dark\@super {
    color: #005435; }
  .u-bg-success-dark\@super {
    background-color: #005435; }
  .u-fill-success-dark\@super {
    fill: #005435; }
  .u-color-success-darker\@super {
    color: #002115; }
  .u-bg-success-darker\@super {
    background-color: #002115; }
  .u-fill-success-darker\@super {
    fill: #002115; }
  .u-color-success-light\@super {
    color: #00ba75; }
  .u-bg-success-light\@super {
    background-color: #00ba75; }
  .u-fill-success-light\@super {
    fill: #00ba75; }
  .u-color-success-lighter\@super {
    color: #00ed95; }
  .u-bg-success-lighter\@super {
    background-color: #00ed95; }
  .u-fill-success-lighter\@super {
    fill: #00ed95; }
  .u-color-error-dark\@super {
    color: #990c23; }
  .u-bg-error-dark\@super {
    background-color: #990c23; }
  .u-fill-error-dark\@super {
    fill: #990c23; }
  .u-color-error-darker\@super {
    color: #6a0818; }
  .u-bg-error-darker\@super {
    background-color: #6a0818; }
  .u-fill-error-darker\@super {
    fill: #6a0818; }
  .u-color-error-light\@super {
    color: #ed1e40; }
  .u-bg-error-light\@super {
    background-color: #ed1e40; }
  .u-fill-error-light\@super {
    fill: #ed1e40; }
  .u-color-error-lighter\@super {
    color: #f14d68; }
  .u-bg-error-lighter\@super {
    background-color: #f14d68; }
  .u-fill-error-lighter\@super {
    fill: #f14d68; } }

/*doc
---
title: Columns
name: columns
category: Utilities
---

Columns utilities can easily split text into multiple columns. This is particularly useful for long lists. Classes include `u-1col`, `u-2col`, `u-3col`, and `u-4col`.

```html_example_table
<ul class="u-2col">
	<li>List Item</li>
	<li>List Item</li>
	<li>List Item</li>
	<li>List Item</li>
	<li>List Item</li>
	<li>List Item</li>
	<li>List Item</li>
	<li>List Item</li>
	<li>List Item</li>
</ul>
```

### Media Queries

Class suffixes (`@xsmall`, `@small`, `@medium`, `@large`, `@xlarge`, `@super`) can be used to change column counts based on viewport width.

```html_example_table
<ul class="u-1col  u-2col@small  u-3col@medium  u-4col@large">
	<li>List Item</li>
	<li>List Item</li>
	<li>List Item</li>
	<li>List Item</li>
	<li>List Item</li>
	<li>List Item</li>
	<li>List Item</li>
	<li>List Item</li>
	<li>List Item</li>
</ul>
```

*/
.u-1col {
  column-count: 1;
  column-gap: 2em; }

.u-2col {
  column-count: 2;
  column-gap: 2em; }

.u-3col {
  column-count: 3;
  column-gap: 2em; }

.u-4col {
  column-count: 4;
  column-gap: 2em; }

.u-1col > *,
.u-2col > *,
.u-3col > *,
.u-4col > * {
  break-inside: avoid;
  margin-left: .25em; }

@media (min-width: 20rem) {
  .u-1col\@xsmall {
    column-count: 1;
    column-gap: 2em; }
  .u-2col\@xsmall {
    column-count: 2;
    column-gap: 2em; }
  .u-3col\@xsmall {
    column-count: 3;
    column-gap: 2em; }
  .u-4col\@xsmall {
    column-count: 4;
    column-gap: 2em; }
  .u-1col\@xsmall > *,
  .u-2col\@xsmall > *,
  .u-3col\@xsmall > *,
  .u-4col\@xsmall > * {
    break-inside: avoid;
    margin-left: .25em; } }

@media (min-width: 30rem) {
  .u-1col\@small {
    column-count: 1;
    column-gap: 2em; }
  .u-2col\@small {
    column-count: 2;
    column-gap: 2em; }
  .u-3col\@small {
    column-count: 3;
    column-gap: 2em; }
  .u-4col\@small {
    column-count: 4;
    column-gap: 2em; }
  .u-1col\@small > *,
  .u-2col\@small > *,
  .u-3col\@small > *,
  .u-4col\@small > * {
    break-inside: avoid;
    margin-left: .25em; } }

@media (min-width: 48rem) {
  .u-1col\@medium {
    column-count: 1;
    column-gap: 2em; }
  .u-2col\@medium {
    column-count: 2;
    column-gap: 2em; }
  .u-3col\@medium {
    column-count: 3;
    column-gap: 2em; }
  .u-4col\@medium {
    column-count: 4;
    column-gap: 2em; }
  .u-1col\@medium > *,
  .u-2col\@medium > *,
  .u-3col\@medium > *,
  .u-4col\@medium > * {
    break-inside: avoid;
    margin-left: .25em; } }

@media (min-width: 64rem) {
  .u-1col\@large {
    column-count: 1;
    column-gap: 2em; }
  .u-2col\@large {
    column-count: 2;
    column-gap: 2em; }
  .u-3col\@large {
    column-count: 3;
    column-gap: 2em; }
  .u-4col\@large {
    column-count: 4;
    column-gap: 2em; }
  .u-1col\@large > *,
  .u-2col\@large > *,
  .u-3col\@large > *,
  .u-4col\@large > * {
    break-inside: avoid;
    margin-left: .25em; } }

@media (min-width: 78rem) {
  .u-1col\@xlarge {
    column-count: 1;
    column-gap: 2em; }
  .u-2col\@xlarge {
    column-count: 2;
    column-gap: 2em; }
  .u-3col\@xlarge {
    column-count: 3;
    column-gap: 2em; }
  .u-4col\@xlarge {
    column-count: 4;
    column-gap: 2em; }
  .u-1col\@xlarge > *,
  .u-2col\@xlarge > *,
  .u-3col\@xlarge > *,
  .u-4col\@xlarge > * {
    break-inside: avoid;
    margin-left: .25em; } }

@media (min-width: 125rem) {
  .u-1col\@super {
    column-count: 1;
    column-gap: 2em; }
  .u-2col\@super {
    column-count: 2;
    column-gap: 2em; }
  .u-3col\@super {
    column-count: 3;
    column-gap: 2em; }
  .u-4col\@super {
    column-count: 4;
    column-gap: 2em; }
  .u-1col\@super > *,
  .u-2col\@super > *,
  .u-3col\@super > *,
  .u-4col\@super > * {
    break-inside: avoid;
    margin-left: .25em; } }

/*doc
---
title: Display
name: display
category: Utilities
---

Display classes are basic overrides for the CSS `display` property. These should be used sparingly.

Note: These examples don't show much.

```html_example_table
<p class="u-block">u-block</p>

<p class="u-inline">u-inline</p>

<p class="u-inline-block">u-inline-block</p>

<p class="u-flex">u-flex</p>
```

*/
.u-bg-none {
  background: none !important; }

.u-block {
  display: block; }

.u-inline {
  display: inline; }

.u-inline-block {
  display: inline-block; }

.u-flex {
  display: -ms-flexbox;
  display: flex; }

.u-inline-flex {
  display: -ms-inline-flexbox;
  display: inline-flex; }

@media (min-width: 20rem) {
  .u-bg-none\@xsmall {
    background: none !important; }
  .u-block\@xsmall {
    display: block; }
  .u-inline\@xsmall {
    display: inline; }
  .u-inline-block\@xsmall {
    display: inline-block; }
  .u-flex\@xsmall {
    display: -ms-flexbox;
    display: flex; }
  .u-inline-flex\@xsmall {
    display: -ms-inline-flexbox;
    display: inline-flex; } }

@media (min-width: 30rem) {
  .u-bg-none\@small {
    background: none !important; }
  .u-block\@small {
    display: block; }
  .u-inline\@small {
    display: inline; }
  .u-inline-block\@small {
    display: inline-block; }
  .u-flex\@small {
    display: -ms-flexbox;
    display: flex; }
  .u-inline-flex\@small {
    display: -ms-inline-flexbox;
    display: inline-flex; } }

@media (min-width: 48rem) {
  .u-bg-none\@medium {
    background: none !important; }
  .u-block\@medium {
    display: block; }
  .u-inline\@medium {
    display: inline; }
  .u-inline-block\@medium {
    display: inline-block; }
  .u-flex\@medium {
    display: -ms-flexbox;
    display: flex; }
  .u-inline-flex\@medium {
    display: -ms-inline-flexbox;
    display: inline-flex; } }

@media (min-width: 64rem) {
  .u-bg-none\@large {
    background: none !important; }
  .u-block\@large {
    display: block; }
  .u-inline\@large {
    display: inline; }
  .u-inline-block\@large {
    display: inline-block; }
  .u-flex\@large {
    display: -ms-flexbox;
    display: flex; }
  .u-inline-flex\@large {
    display: -ms-inline-flexbox;
    display: inline-flex; } }

@media (min-width: 78rem) {
  .u-bg-none\@xlarge {
    background: none !important; }
  .u-block\@xlarge {
    display: block; }
  .u-inline\@xlarge {
    display: inline; }
  .u-inline-block\@xlarge {
    display: inline-block; }
  .u-flex\@xlarge {
    display: -ms-flexbox;
    display: flex; }
  .u-inline-flex\@xlarge {
    display: -ms-inline-flexbox;
    display: inline-flex; } }

@media (min-width: 125rem) {
  .u-bg-none\@super {
    background: none !important; }
  .u-block\@super {
    display: block; }
  .u-inline\@super {
    display: inline; }
  .u-inline-block\@super {
    display: inline-block; }
  .u-flex\@super {
    display: -ms-flexbox;
    display: flex; }
  .u-inline-flex\@super {
    display: -ms-inline-flexbox;
    display: inline-flex; } }

/*doc
---
title: Elevation
name: elevation
category: Utilities
---

Elevation utilities add drop shadows to elements.

```html_example_table
<input class="a-field  u-high" />

<input class="a-field  u-higher" />

<input class="a-field  u-highest" />

<input class="a-field  u-low" />

<input class="a-field  u-lower" />

<input class="a-field  u-lowest" />
```

*/
/*.u-high,
.u-higher,
.u-highest {
	border: 0;
}*/
.u-high {
  box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.2); }

.u-higher {
  box-shadow: 0 2px 6px 0 rgba(0, 0, 0, 0.2); }

.u-highest {
  box-shadow: 0 3px 9px 0 rgba(0, 0, 0, 0.2); }

.u-no-shadow {
  box-shadow: none; }

.u-low {
  box-shadow: inset 0 0 1px rgba(65, 64, 66, 0.6), inset 0 2px 4px -2px rgba(65, 64, 66, 0.2); }

.u-lower {
  box-shadow: inset 0 0 1px rgba(65, 64, 66, 0.6), inset 0 4px 8px -4px rgba(65, 64, 66, 0.2); }

.u-lowest {
  box-shadow: inset 0 0 1px rgba(65, 64, 66, 0.6), inset 0 6px 12px -6px rgba(65, 64, 66, 0.2); }

/*doc
---
title: Flexbox
name: flexbox
category: Utilities
---

An assortment of utility classes.

- u-flex-auto
- u-flex-none
- u-flex-column
- u-flex-row
- u-flex-wrap
- u-flex-grow
- u-flex-shrink
- u-items-start
- u-items-end
- u-items-center
- u-items-baseline
- u-items-stretch
- u-self-start
- u-self-end
- u-self-center
- u-self-baseline
- u-self-stretch
- u-justify-start
- u-justify-end
- u-justify-center
- u-justify-between
- u-justify-around
- u-content-start
- u-content-end
- u-content-center
- u-content-between
- u-content-around
- u-content-stretch

*/
/* 1. Fix for Chrome 44 bug.
	 * https://code.google.com/p/chromium/issues/detail?id=506893 */
.u-flex-auto {
  -ms-flex: 1 1 auto;
      flex: 1 1 auto;
  min-width: 0;
  /* 1 */
  min-height: 0;
  /* 1 */ }

.u-flex-none {
  -ms-flex: none;
      flex: none; }

.u-flex-column {
  -ms-flex-direction: column;
      flex-direction: column; }

.u-flex-row {
  -ms-flex-direction: row;
      flex-direction: row; }

.u-flex-wrap {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
      
.u-flex-nowrap {
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap; }

.u-flex-grow {
  -ms-flex-positive: 1;
      flex-grow: 1; }

.u-flex-shrink {
  -ms-flex-negative: 1;
      flex-shrink: 1; }

.u-items-start {
  -ms-flex-align: start;
      align-items: flex-start; }

.u-items-end {
  -ms-flex-align: end;
      align-items: flex-end; }

.u-items-center {
  -ms-flex-align: center;
      align-items: center; }

.u-items-baseline {
  -ms-flex-align: baseline;
      align-items: baseline; }

.u-items-stretch {
  -ms-flex-align: stretch;
      align-items: stretch; }

.u-self-start {
  -ms-flex-item-align: start;
      align-self: flex-start; }

.u-self-end {
  -ms-flex-item-align: end;
      align-self: flex-end; }

.u-self-center {
  -ms-flex-item-align: center;
      -ms-grid-row-align: center;
      align-self: center; }

.u-self-baseline {
  -ms-flex-item-align: baseline;
      align-self: baseline; }

.u-self-stretch {
  -ms-flex-item-align: stretch;
      -ms-grid-row-align: stretch;
      align-self: stretch; }

.u-justify-start {
  -ms-flex-pack: start;
      justify-content: flex-start; }

.u-justify-end {
  -ms-flex-pack: end;
      justify-content: flex-end; }

.u-justify-center {
  -ms-flex-pack: center;
      justify-content: center; }

.u-justify-between {
  -ms-flex-pack: justify;
      justify-content: space-between; }

.u-justify-around {
  -ms-flex-pack: distribute;
      justify-content: space-around; }

.u-content-start {
  -ms-flex-line-pack: start;
      align-content: flex-start; }

.u-content-end {
  -ms-flex-line-pack: end;
      align-content: flex-end; }

.u-content-center {
  -ms-flex-line-pack: center;
      align-content: center; }

.u-content-between {
  -ms-flex-line-pack: justify;
      align-content: space-between; }

.u-content-around {
  -ms-flex-line-pack: distribute;
      align-content: space-around; }

.u-content-stretch {
  -ms-flex-line-pack: stretch;
      align-content: stretch; }

@media (min-width: 20rem) {
  /* 1. Fix for Chrome 44 bug.
	 * https://code.google.com/p/chromium/issues/detail?id=506893 */
  .u-flex-auto\@xsmall {
    -ms-flex: 1 1 auto;
        flex: 1 1 auto;
    min-width: 0;
    /* 1 */
    min-height: 0;
    /* 1 */ }
  .u-flex-none\@xsmall {
    -ms-flex: none;
        flex: none; }
  .u-flex-column\@xsmall {
    -ms-flex-direction: column;
        flex-direction: column; }
  .u-flex-row\@xsmall {
    -ms-flex-direction: row;
        flex-direction: row; }
  .u-flex-wrap\@xsmall {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
  .u-flex-grow\@xsmall {
    -ms-flex-positive: 1;
        flex-grow: 1; }
  .u-flex-shrink\@xsmall {
    -ms-flex-negative: 1;
        flex-shrink: 1; }
  .u-items-start\@xsmall {
    -ms-flex-align: start;
        align-items: flex-start; }
  .u-items-end\@xsmall {
    -ms-flex-align: end;
        align-items: flex-end; }
  .u-items-center\@xsmall {
    -ms-flex-align: center;
        align-items: center; }
  .u-items-baseline\@xsmall {
    -ms-flex-align: baseline;
        align-items: baseline; }
  .u-items-stretch\@xsmall {
    -ms-flex-align: stretch;
        align-items: stretch; }
  .u-self-start\@xsmall {
    -ms-flex-item-align: start;
        align-self: flex-start; }
  .u-self-end\@xsmall {
    -ms-flex-item-align: end;
        align-self: flex-end; }
  .u-self-center\@xsmall {
    -ms-flex-item-align: center;
        -ms-grid-row-align: center;
        align-self: center; }
  .u-self-baseline\@xsmall {
    -ms-flex-item-align: baseline;
        align-self: baseline; }
  .u-self-stretch\@xsmall {
    -ms-flex-item-align: stretch;
        -ms-grid-row-align: stretch;
        align-self: stretch; }
  .u-justify-start\@xsmall {
    -ms-flex-pack: start;
        justify-content: flex-start; }
  .u-justify-end\@xsmall {
    -ms-flex-pack: end;
        justify-content: flex-end; }
  .u-justify-center\@xsmall {
    -ms-flex-pack: center;
        justify-content: center; }
  .u-justify-between\@xsmall {
    -ms-flex-pack: justify;
        justify-content: space-between; }
  .u-justify-around\@xsmall {
    -ms-flex-pack: distribute;
        justify-content: space-around; }
  .u-content-start\@xsmall {
    -ms-flex-line-pack: start;
        align-content: flex-start; }
  .u-content-end\@xsmall {
    -ms-flex-line-pack: end;
        align-content: flex-end; }
  .u-content-center\@xsmall {
    -ms-flex-line-pack: center;
        align-content: center; }
  .u-content-between\@xsmall {
    -ms-flex-line-pack: justify;
        align-content: space-between; }
  .u-content-around\@xsmall {
    -ms-flex-line-pack: distribute;
        align-content: space-around; }
  .u-content-stretch\@xsmall {
    -ms-flex-line-pack: stretch;
        align-content: stretch; } }

@media (min-width: 30rem) {
  /* 1. Fix for Chrome 44 bug.
	 * https://code.google.com/p/chromium/issues/detail?id=506893 */
  .u-flex-auto\@small {
    -ms-flex: 1 1 auto;
        flex: 1 1 auto;
    min-width: 0;
    /* 1 */
    min-height: 0;
    /* 1 */ }
  .u-flex-none\@small {
    -ms-flex: none;
        flex: none; }
  .u-flex-column\@small {
    -ms-flex-direction: column;
        flex-direction: column; }
  .u-flex-row\@small {
    -ms-flex-direction: row;
        flex-direction: row; }
  .u-flex-wrap\@small {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
  .u-flex-grow\@small {
    -ms-flex-positive: 1;
        flex-grow: 1; }
  .u-flex-shrink\@small {
    -ms-flex-negative: 1;
        flex-shrink: 1; }
  .u-items-start\@small {
    -ms-flex-align: start;
        align-items: flex-start; }
  .u-items-end\@small {
    -ms-flex-align: end;
        align-items: flex-end; }
  .u-items-center\@small {
    -ms-flex-align: center;
        align-items: center; }
  .u-items-baseline\@small {
    -ms-flex-align: baseline;
        align-items: baseline; }
  .u-items-stretch\@small {
    -ms-flex-align: stretch;
        align-items: stretch; }
  .u-self-start\@small {
    -ms-flex-item-align: start;
        align-self: flex-start; }
  .u-self-end\@small {
    -ms-flex-item-align: end;
        align-self: flex-end; }
  .u-self-center\@small {
    -ms-flex-item-align: center;
        -ms-grid-row-align: center;
        align-self: center; }
  .u-self-baseline\@small {
    -ms-flex-item-align: baseline;
        align-self: baseline; }
  .u-self-stretch\@small {
    -ms-flex-item-align: stretch;
        -ms-grid-row-align: stretch;
        align-self: stretch; }
  .u-justify-start\@small {
    -ms-flex-pack: start;
        justify-content: flex-start; }
  .u-justify-end\@small {
    -ms-flex-pack: end;
        justify-content: flex-end; }
  .u-justify-center\@small {
    -ms-flex-pack: center;
        justify-content: center; }
  .u-justify-between\@small {
    -ms-flex-pack: justify;
        justify-content: space-between; }
  .u-justify-around\@small {
    -ms-flex-pack: distribute;
        justify-content: space-around; }
  .u-content-start\@small {
    -ms-flex-line-pack: start;
        align-content: flex-start; }
  .u-content-end\@small {
    -ms-flex-line-pack: end;
        align-content: flex-end; }
  .u-content-center\@small {
    -ms-flex-line-pack: center;
        align-content: center; }
  .u-content-between\@small {
    -ms-flex-line-pack: justify;
        align-content: space-between; }
  .u-content-around\@small {
    -ms-flex-line-pack: distribute;
        align-content: space-around; }
  .u-content-stretch\@small {
    -ms-flex-line-pack: stretch;
        align-content: stretch; } }

@media (min-width: 48rem) {
  /* 1. Fix for Chrome 44 bug.
	 * https://code.google.com/p/chromium/issues/detail?id=506893 */
  .u-flex-auto\@medium {
    -ms-flex: 1 1 auto;
        flex: 1 1 auto;
    min-width: 0;
    /* 1 */
    min-height: 0;
    /* 1 */ }
  .u-flex-none\@medium {
    -ms-flex: none;
        flex: none; }
  .u-flex-column\@medium {
    -ms-flex-direction: column;
        flex-direction: column; }
  .u-flex-row\@medium {
    -ms-flex-direction: row;
        flex-direction: row; }
  .u-flex-wrap\@medium {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
  .u-flex-grow\@medium {
    -ms-flex-positive: 1;
        flex-grow: 1; }
  .u-flex-shrink\@medium {
    -ms-flex-negative: 1;
        flex-shrink: 1; }
  .u-items-start\@medium {
    -ms-flex-align: start;
        align-items: flex-start; }
  .u-items-end\@medium {
    -ms-flex-align: end;
        align-items: flex-end; }
  .u-items-center\@medium {
    -ms-flex-align: center;
        align-items: center; }
  .u-items-baseline\@medium {
    -ms-flex-align: baseline;
        align-items: baseline; }
  .u-items-stretch\@medium {
    -ms-flex-align: stretch;
        align-items: stretch; }
  .u-self-start\@medium {
    -ms-flex-item-align: start;
        align-self: flex-start; }
  .u-self-end\@medium {
    -ms-flex-item-align: end;
        align-self: flex-end; }
  .u-self-center\@medium {
    -ms-flex-item-align: center;
        -ms-grid-row-align: center;
        align-self: center; }
  .u-self-baseline\@medium {
    -ms-flex-item-align: baseline;
        align-self: baseline; }
  .u-self-stretch\@medium {
    -ms-flex-item-align: stretch;
        -ms-grid-row-align: stretch;
        align-self: stretch; }
  .u-justify-start\@medium {
    -ms-flex-pack: start;
        justify-content: flex-start; }
  .u-justify-end\@medium {
    -ms-flex-pack: end;
        justify-content: flex-end; }
  .u-justify-center\@medium {
    -ms-flex-pack: center;
        justify-content: center; }
  .u-justify-between\@medium {
    -ms-flex-pack: justify;
        justify-content: space-between; }
  .u-justify-around\@medium {
    -ms-flex-pack: distribute;
        justify-content: space-around; }
  .u-content-start\@medium {
    -ms-flex-line-pack: start;
        align-content: flex-start; }
  .u-content-end\@medium {
    -ms-flex-line-pack: end;
        align-content: flex-end; }
  .u-content-center\@medium {
    -ms-flex-line-pack: center;
        align-content: center; }
  .u-content-between\@medium {
    -ms-flex-line-pack: justify;
        align-content: space-between; }
  .u-content-around\@medium {
    -ms-flex-line-pack: distribute;
        align-content: space-around; }
  .u-content-stretch\@medium {
    -ms-flex-line-pack: stretch;
        align-content: stretch; } }

@media (min-width: 64rem) {
  /* 1. Fix for Chrome 44 bug.
	 * https://code.google.com/p/chromium/issues/detail?id=506893 */
  .u-flex-auto\@large {
    -ms-flex: 1 1 auto;
        flex: 1 1 auto;
    min-width: 0;
    /* 1 */
    min-height: 0;
    /* 1 */ }
  .u-flex-none\@large {
    -ms-flex: none;
        flex: none; }
  .u-flex-column\@large {
    -ms-flex-direction: column;
        flex-direction: column; }
  .u-flex-row\@large {
    -ms-flex-direction: row;
        flex-direction: row; }
  .u-flex-wrap\@large {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
  .u-flex-grow\@large {
    -ms-flex-positive: 1;
        flex-grow: 1; }
  .u-flex-shrink\@large {
    -ms-flex-negative: 1;
        flex-shrink: 1; }
  .u-items-start\@large {
    -ms-flex-align: start;
        align-items: flex-start; }
  .u-items-end\@large {
    -ms-flex-align: end;
        align-items: flex-end; }
  .u-items-center\@large {
    -ms-flex-align: center;
        align-items: center; }
  .u-items-baseline\@large {
    -ms-flex-align: baseline;
        align-items: baseline; }
  .u-items-stretch\@large {
    -ms-flex-align: stretch;
        align-items: stretch; }
  .u-self-start\@large {
    -ms-flex-item-align: start;
        align-self: flex-start; }
  .u-self-end\@large {
    -ms-flex-item-align: end;
        align-self: flex-end; }
  .u-self-center\@large {
    -ms-flex-item-align: center;
        -ms-grid-row-align: center;
        align-self: center; }
  .u-self-baseline\@large {
    -ms-flex-item-align: baseline;
        align-self: baseline; }
  .u-self-stretch\@large {
    -ms-flex-item-align: stretch;
        -ms-grid-row-align: stretch;
        align-self: stretch; }
  .u-justify-start\@large {
    -ms-flex-pack: start;
        justify-content: flex-start; }
  .u-justify-end\@large {
    -ms-flex-pack: end;
        justify-content: flex-end; }
  .u-justify-center\@large {
    -ms-flex-pack: center;
        justify-content: center; }
  .u-justify-between\@large {
    -ms-flex-pack: justify;
        justify-content: space-between; }
  .u-justify-around\@large {
    -ms-flex-pack: distribute;
        justify-content: space-around; }
  .u-content-start\@large {
    -ms-flex-line-pack: start;
        align-content: flex-start; }
  .u-content-end\@large {
    -ms-flex-line-pack: end;
        align-content: flex-end; }
  .u-content-center\@large {
    -ms-flex-line-pack: center;
        align-content: center; }
  .u-content-between\@large {
    -ms-flex-line-pack: justify;
        align-content: space-between; }
  .u-content-around\@large {
    -ms-flex-line-pack: distribute;
        align-content: space-around; }
  .u-content-stretch\@large {
    -ms-flex-line-pack: stretch;
        align-content: stretch; } }

@media (min-width: 78rem) {
  /* 1. Fix for Chrome 44 bug.
	 * https://code.google.com/p/chromium/issues/detail?id=506893 */
  .u-flex-auto\@xlarge {
    -ms-flex: 1 1 auto;
        flex: 1 1 auto;
    min-width: 0;
    /* 1 */
    min-height: 0;
    /* 1 */ }
  .u-flex-none\@xlarge {
    -ms-flex: none;
        flex: none; }
  .u-flex-column\@xlarge {
    -ms-flex-direction: column;
        flex-direction: column; }
  .u-flex-row\@xlarge {
    -ms-flex-direction: row;
        flex-direction: row; }
  .u-flex-wrap\@xlarge {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
  .u-flex-grow\@xlarge {
    -ms-flex-positive: 1;
        flex-grow: 1; }
  .u-flex-shrink\@xlarge {
    -ms-flex-negative: 1;
        flex-shrink: 1; }
  .u-items-start\@xlarge {
    -ms-flex-align: start;
        align-items: flex-start; }
  .u-items-end\@xlarge {
    -ms-flex-align: end;
        align-items: flex-end; }
  .u-items-center\@xlarge {
    -ms-flex-align: center;
        align-items: center; }
  .u-items-baseline\@xlarge {
    -ms-flex-align: baseline;
        align-items: baseline; }
  .u-items-stretch\@xlarge {
    -ms-flex-align: stretch;
        align-items: stretch; }
  .u-self-start\@xlarge {
    -ms-flex-item-align: start;
        align-self: flex-start; }
  .u-self-end\@xlarge {
    -ms-flex-item-align: end;
        align-self: flex-end; }
  .u-self-center\@xlarge {
    -ms-flex-item-align: center;
        -ms-grid-row-align: center;
        align-self: center; }
  .u-self-baseline\@xlarge {
    -ms-flex-item-align: baseline;
        align-self: baseline; }
  .u-self-stretch\@xlarge {
    -ms-flex-item-align: stretch;
        -ms-grid-row-align: stretch;
        align-self: stretch; }
  .u-justify-start\@xlarge {
    -ms-flex-pack: start;
        justify-content: flex-start; }
  .u-justify-end\@xlarge {
    -ms-flex-pack: end;
        justify-content: flex-end; }
  .u-justify-center\@xlarge {
    -ms-flex-pack: center;
        justify-content: center; }
  .u-justify-between\@xlarge {
    -ms-flex-pack: justify;
        justify-content: space-between; }
  .u-justify-around\@xlarge {
    -ms-flex-pack: distribute;
        justify-content: space-around; }
  .u-content-start\@xlarge {
    -ms-flex-line-pack: start;
        align-content: flex-start; }
  .u-content-end\@xlarge {
    -ms-flex-line-pack: end;
        align-content: flex-end; }
  .u-content-center\@xlarge {
    -ms-flex-line-pack: center;
        align-content: center; }
  .u-content-between\@xlarge {
    -ms-flex-line-pack: justify;
        align-content: space-between; }
  .u-content-around\@xlarge {
    -ms-flex-line-pack: distribute;
        align-content: space-around; }
  .u-content-stretch\@xlarge {
    -ms-flex-line-pack: stretch;
        align-content: stretch; } }

@media (min-width: 125rem) {
  /* 1. Fix for Chrome 44 bug.
	 * https://code.google.com/p/chromium/issues/detail?id=506893 */
  .u-flex-auto\@super {
    -ms-flex: 1 1 auto;
        flex: 1 1 auto;
    min-width: 0;
    /* 1 */
    min-height: 0;
    /* 1 */ }
  .u-flex-none\@super {
    -ms-flex: none;
        flex: none; }
  .u-flex-column\@super {
    -ms-flex-direction: column;
        flex-direction: column; }
  .u-flex-row\@super {
    -ms-flex-direction: row;
        flex-direction: row; }
  .u-flex-wrap\@super {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
  .u-flex-grow\@super {
    -ms-flex-positive: 1;
        flex-grow: 1; }
  .u-flex-shrink\@super {
    -ms-flex-negative: 1;
        flex-shrink: 1; }
  .u-items-start\@super {
    -ms-flex-align: start;
        align-items: flex-start; }
  .u-items-end\@super {
    -ms-flex-align: end;
        align-items: flex-end; }
  .u-items-center\@super {
    -ms-flex-align: center;
        align-items: center; }
  .u-items-baseline\@super {
    -ms-flex-align: baseline;
        align-items: baseline; }
  .u-items-stretch\@super {
    -ms-flex-align: stretch;
        align-items: stretch; }
  .u-self-start\@super {
    -ms-flex-item-align: start;
        align-self: flex-start; }
  .u-self-end\@super {
    -ms-flex-item-align: end;
        align-self: flex-end; }
  .u-self-center\@super {
    -ms-flex-item-align: center;
        -ms-grid-row-align: center;
        align-self: center; }
  .u-self-baseline\@super {
    -ms-flex-item-align: baseline;
        align-self: baseline; }
  .u-self-stretch\@super {
    -ms-flex-item-align: stretch;
        -ms-grid-row-align: stretch;
        align-self: stretch; }
  .u-justify-start\@super {
    -ms-flex-pack: start;
        justify-content: flex-start; }
  .u-justify-end\@super {
    -ms-flex-pack: end;
        justify-content: flex-end; }
  .u-justify-center\@super {
    -ms-flex-pack: center;
        justify-content: center; }
  .u-justify-between\@super {
    -ms-flex-pack: justify;
        justify-content: space-between; }
  .u-justify-around\@super {
    -ms-flex-pack: distribute;
        justify-content: space-around; }
  .u-content-start\@super {
    -ms-flex-line-pack: start;
        align-content: flex-start; }
  .u-content-end\@super {
    -ms-flex-line-pack: end;
        align-content: flex-end; }
  .u-content-center\@super {
    -ms-flex-line-pack: center;
        align-content: center; }
  .u-content-between\@super {
    -ms-flex-line-pack: justify;
        align-content: space-between; }
  .u-content-around\@super {
    -ms-flex-line-pack: distribute;
        align-content: space-around; }
  .u-content-stretch\@super {
    -ms-flex-line-pack: stretch;
        align-content: stretch; } }

/*doc
---
title: Line Heights
name: line-heights
category: Utilities
---

Override the default line-height value with `u-line-height--solid`, `u-line-height--title`, and `u-line-height--copy` classes.

```html_example_table
<p class="u-line-height--solid">This sentence has a line-height of 1. This is the smallest value. When text wraps there will be very little space between lines.</p>

<p class="u-line-height--title">This sentence has a line-height of 1.25. This is the typically used for large text like headings. When text wraps there will be a bit of space between lines.</p>

<p class="u-line-height--copy">This sentence has a line-height of 1.5. This is the typically used for body copy. When text wraps there will be enough space between lines to read long lines comfortably.</p>
```

### Media Queries

Class suffixes (`@xsmall`, `@small`, `@medium`, `@large`, `@xlarge`, `@super`) can be used to change line-heights based on viewport width.

*/
.u-line-height--solid {
  line-height: 1; }

.u-line-height--title {
  line-height: 1.25; }

.u-line-height--copy {
  line-height: 1.5; }

@media (min-width: 20rem) {
  .u-line-height--solid\@xsmall {
    line-height: 1; }
  .u-line-height--title\@xsmall {
    line-height: 1.25; }
  .u-line-height--copy\@xsmall {
    line-height: 1.5; } }

@media (min-width: 30rem) {
  .u-line-height--solid\@small {
    line-height: 1; }
  .u-line-height--title\@small {
    line-height: 1.25; }
  .u-line-height--copy\@small {
    line-height: 1.5; } }

@media (min-width: 48rem) {
  .u-line-height--solid\@medium {
    line-height: 1; }
  .u-line-height--title\@medium {
    line-height: 1.25; }
  .u-line-height--copy\@medium {
    line-height: 1.5; } }

@media (min-width: 64rem) {
  .u-line-height--solid\@large {
    line-height: 1; }
  .u-line-height--title\@large {
    line-height: 1.25; }
  .u-line-height--copy\@large {
    line-height: 1.5; } }

@media (min-width: 78rem) {
  .u-line-height--solid\@xlarge {
    line-height: 1; }
  .u-line-height--title\@xlarge {
    line-height: 1.25; }
  .u-line-height--copy\@xlarge {
    line-height: 1.5; } }

@media (min-width: 125rem) {
  .u-line-height--solid\@super {
    line-height: 1; }
  .u-line-height--title\@super {
    line-height: 1.25; }
  .u-line-height--copy\@super {
    line-height: 1.5; } }

/*doc
---
title: Order
name: order
category: Utilities
---

Elements can be reordered if their parent is a flex container, such as a grid. There are three ordering options, `u-order-first`, `u-order-last`, and `u-order-unordered` which simply returns the order to the default value of 0.

```html_example
<div class="l-grid  sg-grid">
	<div class="l-grid__item  u-order-last">first</div>
	<div class="l-grid__item">second</div>
	<div class="l-grid__item  u-order-first">third</div>
</div>
``` 

### Media Queries

Class suffixes (`@xsmall`, `@small`, `@medium`, `@large`, `@xlarge`, `@super`) can be used to change the order based on viewport width.

```html_example
<div class="l-grid  sg-grid">
	<div class="l-grid__item  u-order-last@large  u-order-unorderd@medium u-order-first@small">first</div>
	<div class="l-grid__item">second</div>
	<div class="l-grid__item">third</div>
</div>
``` 

*/
.u-order-first {
  -ms-flex-order: -1;
      order: -1; }

.u-order-last {
  -ms-flex-order: 1;
      order: 1; }

.u-order-unordered {
  -ms-flex-order: 0;
      order: 0; }

@media (min-width: 20rem) {
  .u-order-first\@xsmall {
    -ms-flex-order: -1;
        order: -1; }
  .u-order-last\@xsmall {
    -ms-flex-order: 1;
        order: 1; }
  .u-order-unordered\@xsmall {
    -ms-flex-order: 0;
        order: 0; } }

@media (min-width: 30rem) {
  .u-order-first\@small {
    -ms-flex-order: -1;
        order: -1; }
  .u-order-last\@small {
    -ms-flex-order: 1;
        order: 1; }
  .u-order-unordered\@small {
    -ms-flex-order: 0;
        order: 0; } }

@media (min-width: 48rem) {
  .u-order-first\@medium {
    -ms-flex-order: -1;
        order: -1; }
  .u-order-last\@medium {
    -ms-flex-order: 1;
        order: 1; }
  .u-order-unordered\@medium {
    -ms-flex-order: 0;
        order: 0; } }

@media (min-width: 64rem) {
  .u-order-first\@large {
    -ms-flex-order: -1;
        order: -1; }
  .u-order-last\@large {
    -ms-flex-order: 1;
        order: 1; }
  .u-order-unordered\@large {
    -ms-flex-order: 0;
        order: 0; } }

@media (min-width: 78rem) {
  .u-order-first\@xlarge {
    -ms-flex-order: -1;
        order: -1; }
  .u-order-last\@xlarge {
    -ms-flex-order: 1;
        order: 1; }
  .u-order-unordered\@xlarge {
    -ms-flex-order: 0;
        order: 0; } }

@media (min-width: 125rem) {
  .u-order-first\@super {
    -ms-flex-order: -1;
        order: -1; }
  .u-order-last\@super {
    -ms-flex-order: 1;
        order: 1; }
  .u-order-unordered\@super {
    -ms-flex-order: 0;
        order: 0; } }

.u-relative {
  position: relative; }

.u-absolute {
  position: absolute; }

.u-fixed {
  position: fixed; }

@media (min-width: 20rem) {
  .u-relative\@xsmall {
    position: relative; }
  .u-absolute\@xsmall {
    position: absolute; }
  .u-fixed\@xsmall {
    position: fixed; } }

@media (min-width: 30rem) {
  .u-relative\@small {
    position: relative; }
  .u-absolute\@small {
    position: absolute; }
  .u-fixed\@small {
    position: fixed; } }

@media (min-width: 48rem) {
  .u-relative\@medium {
    position: relative; }
  .u-absolute\@medium {
    position: absolute; }
  .u-fixed\@medium {
    position: fixed; } }

@media (min-width: 64rem) {
  .u-relative\@large {
    position: relative; }
  .u-absolute\@large {
    position: absolute; }
  .u-fixed\@large {
    position: fixed; } }

@media (min-width: 78rem) {
  .u-relative\@xlarge {
    position: relative; }
  .u-absolute\@xlarge {
    position: absolute; }
  .u-fixed\@xlarge {
    position: fixed; } }

@media (min-width: 125rem) {
  .u-relative\@super {
    position: relative; }
  .u-absolute\@super {
    position: absolute; }
  .u-fixed\@super {
    position: fixed; } }

/*doc
---
title: Ratios
name: ratios
category: Utilities
---

Ratio classes can be used to create boxes that will retain their aspect ratio even if their width is constrained. These can be used to insert Kaltura videos and playlists with various configurations.

`u-ratio--16x9` is the ratio commonly used for single videos.

`u-ratio--2x1` is the ratio commonly used for horizontal video playlists.

```html_example_table
<div class="u-ratio  u-ratio--3x1  u-space-bottom--large">
	<div class="u-ratio__content" style="background:rgba(0,0,0,0.1)">
		<p>3x1</p>
	</div>
</div>

<div class="u-ratio  u-ratio--21x9  u-space-bottom--large">
	<div class="u-ratio__content" style="background:rgba(0,0,0,0.1)">
		<p>21x9</p>
	</div>
</div>

<div class="u-ratio  u-ratio--2x1  u-space-bottom--large">
	<div class="u-ratio__content" style="background:rgba(0,0,0,0.1)">
		<p>2x1</p>
	</div>
</div>

<div class="u-ratio  u-ratio--16x9  u-space-bottom--large">
	<div class="u-ratio__content" style="background:rgba(0,0,0,0.1)">
		<p>16x9</p>
	</div>
</div>

<div class="u-ratio  u-ratio--3x2  u-space-bottom--large">
	<div class="u-ratio__content" style="background:rgba(0,0,0,0.1)">
		<p>3x2</p>
	</div>
</div>

<div class="u-ratio  u-ratio--4x3  u-space-bottom--large">
	<div class="u-ratio__content" style="background:rgba(0,0,0,0.1)">
		<p>4x3</p>
	</div>
</div>

<div class="u-ratio  u-ratio--1x1  u-space-bottom--large">
	<div class="u-ratio__content" style="background:rgba(0,0,0,0.1)">
		<p>1x1</p>
	</div>
</div>

<div class="u-ratio  u-ratio--3x4  u-space-bottom--large">
	<div class="u-ratio__content" style="background:rgba(0,0,0,0.1)">
		<p>3x4</p>
	</div>
</div>

<div class="u-ratio  u-ratio--2x3  u-space-bottom--large">
	<div class="u-ratio__content" style="background:rgba(0,0,0,0.1)">
		<p>2x3</p>
	</div>
</div>

<div class="u-ratio  u-ratio--9x16  u-space-bottom--large">
	<div class="u-ratio__content" style="background:rgba(0,0,0,0.1)">
		<p>9x16</p>
	</div>
</div>

<div class="u-ratio  u-ratio--1x2  u-space-bottom--large">
	<div class="u-ratio__content" style="background:rgba(0,0,0,0.1)">
		<p>1x2</p>
	</div>
</div>

<div class="u-ratio  u-ratio--1x3  u-space-bottom--large">
	<div class="u-ratio__content" style="background:rgba(0,0,0,0.1)">
		<p>1x3</p>
	</div>
</div>
```

### Media Queries

Class suffixes (`@xsmall`, `@small`, `@medium`, `@large`, `@xlarge`, `@super`) can be used to change ratios based on viewport width.

```html_example_table
<div class="u-ratio  u-ratio--1x1@xsmall  u-ratio--2x1@small  u-ratio--3x1@large  u-space-bottom--large">
	<div class="u-ratio__content" style="background:rgba(0,0,0,0.1)">
		<p>This box will change aspect ratio depending on the viewport width.</p>
	</div>
</div>
```

*/
.u-ratio {
  position: relative; }

.u-ratio:before {
  content: "";
  display: block;
  width: 100%; }

.u-ratio--3x1:before {
  padding-top: 33.33%; }

.u-ratio--21x9:before {
  padding-top: 42.857%; }

.u-ratio--2x1:before {
  padding-top: 50%; }

.u-ratio--16x9:before {
  padding-top: 56.25%; }

.u-ratio--3x2:before {
  padding-top: 66.66%; }

.u-ratio--4x3:before {
  padding-top: 75%; }

.u-ratio--1x1:before {
  padding-top: 100%; }

.u-ratio--3x4:before {
  padding-top: 133.33%; }

.u-ratio--2x3:before {
  padding-top: 150%; }

.u-ratio--9x16:before {
  padding-top: 177.77%; }

.u-ratio--1x2:before {
  padding-top: 200%; }

.u-ratio--1x3:before {
  padding-top: 300%; }

.u-ratio__content {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0; }

@media (min-width: 20rem) {
  .u-ratio\@xsmall {
    position: relative; }
  .u-ratio\@xsmall:before {
    content: "";
    display: block;
    width: 100%; }
  .u-ratio--3x1\@xsmall:before {
    padding-top: 33.33%; }
  .u-ratio--21x9\@xsmall:before {
    padding-top: 42.857%; }
  .u-ratio--2x1\@xsmall:before {
    padding-top: 50%; }
  .u-ratio--16x9\@xsmall:before {
    padding-top: 56.25%; }
  .u-ratio--3x2\@xsmall:before {
    padding-top: 66.66%; }
  .u-ratio--4x3\@xsmall:before {
    padding-top: 75%; }
  .u-ratio--1x1\@xsmall:before {
    padding-top: 100%; }
  .u-ratio--3x4\@xsmall:before {
    padding-top: 133.33%; }
  .u-ratio--2x3\@xsmall:before {
    padding-top: 150%; }
  .u-ratio--9x16\@xsmall:before {
    padding-top: 177.77%; }
  .u-ratio--1x2\@xsmall:before {
    padding-top: 200%; }
  .u-ratio--1x3\@xsmall:before {
    padding-top: 300%; }
  .u-ratio__content\@xsmall {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0; } }

@media (min-width: 30rem) {
  .u-ratio\@small {
    position: relative; }
  .u-ratio\@small:before {
    content: "";
    display: block;
    width: 100%; }
  .u-ratio--3x1\@small:before {
    padding-top: 33.33%; }
  .u-ratio--21x9\@small:before {
    padding-top: 42.857%; }
  .u-ratio--2x1\@small:before {
    padding-top: 50%; }
  .u-ratio--16x9\@small:before {
    padding-top: 56.25%; }
  .u-ratio--3x2\@small:before {
    padding-top: 66.66%; }
  .u-ratio--4x3\@small:before {
    padding-top: 75%; }
  .u-ratio--1x1\@small:before {
    padding-top: 100%; }
  .u-ratio--3x4\@small:before {
    padding-top: 133.33%; }
  .u-ratio--2x3\@small:before {
    padding-top: 150%; }
  .u-ratio--9x16\@small:before {
    padding-top: 177.77%; }
  .u-ratio--1x2\@small:before {
    padding-top: 200%; }
  .u-ratio--1x3\@small:before {
    padding-top: 300%; }
  .u-ratio__content\@small {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0; } }

@media (min-width: 48rem) {
  .u-ratio\@medium {
    position: relative; }
  .u-ratio\@medium:before {
    content: "";
    display: block;
    width: 100%; }
  .u-ratio--3x1\@medium:before {
    padding-top: 33.33%; }
  .u-ratio--21x9\@medium:before {
    padding-top: 42.857%; }
  .u-ratio--2x1\@medium:before {
    padding-top: 50%; }
  .u-ratio--16x9\@medium:before {
    padding-top: 56.25%; }
  .u-ratio--3x2\@medium:before {
    padding-top: 66.66%; }
  .u-ratio--4x3\@medium:before {
    padding-top: 75%; }
  .u-ratio--1x1\@medium:before {
    padding-top: 100%; }
  .u-ratio--3x4\@medium:before {
    padding-top: 133.33%; }
  .u-ratio--2x3\@medium:before {
    padding-top: 150%; }
  .u-ratio--9x16\@medium:before {
    padding-top: 177.77%; }
  .u-ratio--1x2\@medium:before {
    padding-top: 200%; }
  .u-ratio--1x3\@medium:before {
    padding-top: 300%; }
  .u-ratio__content\@medium {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0; } }

@media (min-width: 64rem) {
  .u-ratio\@large {
    position: relative; }
  .u-ratio\@large:before {
    content: "";
    display: block;
    width: 100%; }
  .u-ratio--3x1\@large:before {
    padding-top: 33.33%; }
  .u-ratio--21x9\@large:before {
    padding-top: 42.857%; }
  .u-ratio--2x1\@large:before {
    padding-top: 50%; }
  .u-ratio--16x9\@large:before {
    padding-top: 56.25%; }
  .u-ratio--3x2\@large:before {
    padding-top: 66.66%; }
  .u-ratio--4x3\@large:before {
    padding-top: 75%; }
  .u-ratio--1x1\@large:before {
    padding-top: 100%; }
  .u-ratio--3x4\@large:before {
    padding-top: 133.33%; }
  .u-ratio--2x3\@large:before {
    padding-top: 150%; }
  .u-ratio--9x16\@large:before {
    padding-top: 177.77%; }
  .u-ratio--1x2\@large:before {
    padding-top: 200%; }
  .u-ratio--1x3\@large:before {
    padding-top: 300%; }
  .u-ratio__content\@large {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0; } }

@media (min-width: 78rem) {
  .u-ratio\@xlarge {
    position: relative; }
  .u-ratio\@xlarge:before {
    content: "";
    display: block;
    width: 100%; }
  .u-ratio--3x1\@xlarge:before {
    padding-top: 33.33%; }
  .u-ratio--21x9\@xlarge:before {
    padding-top: 42.857%; }
  .u-ratio--2x1\@xlarge:before {
    padding-top: 50%; }
  .u-ratio--16x9\@xlarge:before {
    padding-top: 56.25%; }
  .u-ratio--3x2\@xlarge:before {
    padding-top: 66.66%; }
  .u-ratio--4x3\@xlarge:before {
    padding-top: 75%; }
  .u-ratio--1x1\@xlarge:before {
    padding-top: 100%; }
  .u-ratio--3x4\@xlarge:before {
    padding-top: 133.33%; }
  .u-ratio--2x3\@xlarge:before {
    padding-top: 150%; }
  .u-ratio--9x16\@xlarge:before {
    padding-top: 177.77%; }
  .u-ratio--1x2\@xlarge:before {
    padding-top: 200%; }
  .u-ratio--1x3\@xlarge:before {
    padding-top: 300%; }
  .u-ratio__content\@xlarge {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0; } }

@media (min-width: 125rem) {
  .u-ratio\@super {
    position: relative; }
  .u-ratio\@super:before {
    content: "";
    display: block;
    width: 100%; }
  .u-ratio--3x1\@super:before {
    padding-top: 33.33%; }
  .u-ratio--21x9\@super:before {
    padding-top: 42.857%; }
  .u-ratio--2x1\@super:before {
    padding-top: 50%; }
  .u-ratio--16x9\@super:before {
    padding-top: 56.25%; }
  .u-ratio--3x2\@super:before {
    padding-top: 66.66%; }
  .u-ratio--4x3\@super:before {
    padding-top: 75%; }
  .u-ratio--1x1\@super:before {
    padding-top: 100%; }
  .u-ratio--3x4\@super:before {
    padding-top: 133.33%; }
  .u-ratio--2x3\@super:before {
    padding-top: 150%; }
  .u-ratio--9x16\@super:before {
    padding-top: 177.77%; }
  .u-ratio--1x2\@super:before {
    padding-top: 200%; }
  .u-ratio--1x3\@super:before {
    padding-top: 300%; }
  .u-ratio__content\@super {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0; } }

/*doc
---
title: Sizes
name: sizes
category: Utilities
---

Size utilities can quickly and easily change text sizes.

```html_example_table
<p class="u-xsmall">xsmall</p>

<p class="u-small">small</p>

<p class="u-medium">medium</p>

<p class="u-large">large</p>

<p class="u-xlarge">xlarge</p>

<p class="u-super">super</p>
```

### Media Queries

Class suffixes (`@xsmall`, `@small`, `@medium`, `@large`, `@xlarge`, `@super`) can be used to change text size based on viewport width.

```html_example_table
<p class="u-small  u-large@small  u-super@large">This text will change size depending on the viewport width.</p>
```

*/
.u-super {
  font-size: 2em; }

.u-xlarge {
  font-size: 1.5em; }

.u-large {
  font-size: 1.25em; }

.u-medium {
  font-size: 1em; }

.u-small {
  font-size: 0.875em; }

.u-xsmall {
  font-size: 0.75em; }

@media (min-width: 20rem) {
  .u-super\@xsmall {
    font-size: 2em; }
  .u-xlarge\@xsmall {
    font-size: 1.5em; }
  .u-large\@xsmall {
    font-size: 1.25em; }
  .u-medium\@xsmall {
    font-size: 1em; }
  .u-small\@xsmall {
    font-size: 0.875em; }
  .u-xsmall\@xsmall {
    font-size: 0.75em; } }

@media (min-width: 30rem) {
  .u-super\@small {
    font-size: 2em; }
  .u-xlarge\@small {
    font-size: 1.5em; }
  .u-large\@small {
    font-size: 1.25em; }
  .u-medium\@small {
    font-size: 1em; }
  .u-small\@small {
    font-size: 0.875em; }
  .u-xsmall\@small {
    font-size: 0.75em; } }

@media (min-width: 48rem) {
  .u-super\@medium {
    font-size: 2em; }
  .u-xlarge\@medium {
    font-size: 1.5em; }
  .u-large\@medium {
    font-size: 1.25em; }
  .u-medium\@medium {
    font-size: 1em; }
  .u-small\@medium {
    font-size: 0.875em; }
  .u-xsmall\@medium {
    font-size: 0.75em; } }

@media (min-width: 64rem) {
  .u-super\@large {
    font-size: 2em; }
  .u-xlarge\@large {
    font-size: 1.5em; }
  .u-large\@large {
    font-size: 1.25em; }
  .u-medium\@large {
    font-size: 1em; }
  .u-small\@large {
    font-size: 0.875em; }
  .u-xsmall\@large {
    font-size: 0.75em; } }

@media (min-width: 78rem) {
  .u-super\@xlarge {
    font-size: 2em; }
  .u-xlarge\@xlarge {
    font-size: 1.5em; }
  .u-large\@xlarge {
    font-size: 1.25em; }
  .u-medium\@xlarge {
    font-size: 1em; }
  .u-small\@xlarge {
    font-size: 0.875em; }
  .u-xsmall\@xlarge {
    font-size: 0.75em; } }

@media (min-width: 125rem) {
  .u-super\@super {
    font-size: 2em; }
  .u-xlarge\@super {
    font-size: 1.5em; }
  .u-large\@super {
    font-size: 1.25em; }
  .u-medium\@super {
    font-size: 1em; }
  .u-small\@super {
    font-size: 0.875em; }
  .u-xsmall\@super {
    font-size: 0.75em; } }

/*doc
---
title: Spacing
name: spacing
category: Utilities
---

Spacing around an element can be added or removed with these spacing utility classes.

### Remove Spacing

The `.u-no-space` class can be used to remove margin and padding from an element.

```html_example_table
<p class="u-no-space">No space around me.</p>
```

### Add Spacing

Spacing can be added using `xsmall`, `small`, `medium`, `large`, `xlarge`, and `super` modifiers.

```html_example_table
<p class="u-space--large">This paragraph has space on all sides.</p>
```

Spacing can also be added to one side with the following class names.

```html_example_table
<p class="u-space-top--xlarge">This paragraph has space on top.</p>

<p class="u-space-right--xlarge">This paragraph has space to the right.</p>

<p class="u-space-bottom--xlarge">This paragraph has space on the bottom.</p>

<p class="u-space-left--xlarge">This paragraph has space to the left.</p>
```

### Add Padding

Padding can be added using `xsmall`, `small`, `medium`, `large`, `xlarge`, and `super` modifiers.

```html_example_table
<p class="u-padding--large">This paragraph has padding on all sides.</p>
```

Padding can also be added to one side with the following class names.

```html_example_table
<p class="u-padding-top--xlarge">This paragraph has padding on top.</p>

<p class="u-padding-right--xlarge">This paragraph has padding to the right.</p>

<p class="u-padding-bottom--xlarge">This paragraph has padding on the bottom.</p>

<p class="u-padding-left--xlarge">This paragraph has padding to the left.</p>
```

### Media Queries

Class suffixes (`@xsmall`, `@small`, `@medium`, `@large`, `@xlarge`, `@super`) can be used to add spacing or padding based on viewport width.

```html_example_table
<p class="u-no-space@small  u-space--large@medium  u-padding-medium@large">The spacing around this text will change depending on the viewport width.</p>
```

*/
.u-no-space {
  margin: 0;
  padding: 0; }

.u-space--none {
  margin: 0; }

.u-space-top--none {
  margin-top: 0; }

.u-space-right--none {
  margin-right: 0; }

.u-space-bottom--none {
  margin-bottom: 0; }

.u-space-left--none {
  margin-left: 0; }

.u-space--tiny {
  margin: 0.125em; }

.u-space-top--tiny {
  margin-top: 0.125em; }

.u-space-right--tiny {
  margin-right: 0.125em; }

.u-space-bottom--tiny {
  margin-bottom: 0.125em; }

.u-space-left--tiny {
  margin-left: 0.125em; }

.u-space--xsmall {
  margin: 0.25em; }

.u-space-top--xsmall {
  margin-top: 0.25em; }

.u-space-right--xsmall {
  margin-right: 0.25em; }

.u-space-bottom--xsmall {
  margin-bottom: 0.25em; }

.u-space-left--xsmall {
  margin-left: 0.25em; }

.u-space--small {
  margin: 0.5em; }

.u-space-top--small {
  margin-top: 0.5em; }

.u-space-right--small {
  margin-right: 0.5em; }

.u-space-bottom--small {
  margin-bottom: 0.5em; }

.u-space-left--small {
  margin-left: 0.5em; }

.u-space--medium {
  margin: 1em; }

.u-space-top--medium {
  margin-top: 1em; }

.u-space-right--medium {
  margin-right: 1em; }

.u-space-bottom--medium {
  margin-bottom: 1em; }

.u-space-left--medium {
  margin-left: 1em; }

.u-space--large {
  margin: 1.5em; }

.u-space-top--large {
  margin-top: 1.5em; }

.u-space-right--large {
  margin-right: 1.5em; }

.u-space-bottom--large {
  margin-bottom: 1.5em; }

.u-space-left--large {
  margin-left: 1.5em; }

.u-space--xlarge {
  margin: 2em; }

.u-space-top--xlarge {
  margin-top: 2em; }

.u-space-right--xlarge {
  margin-right: 2em; }

.u-space-bottom--xlarge {
  margin-bottom: 2em; }

.u-space-left--xlarge {
  margin-left: 2em; }

.u-space--super {
  margin: 3em; }

.u-space-top--super {
  margin-top: 3em; }

.u-space-right--super {
  margin-right: 3em; }

.u-space-bottom--super {
  margin-bottom: 3em; }

.u-space-left--super {
  margin-left: 3em; }

.u-padding--none {
  padding: 0; }

.u-padding-top--none {
  padding-top: 0; }

.u-padding-right--none {
  padding-right: 0; }

.u-padding-bottom--none {
  padding-bottom: 0; }

.u-padding-left--none {
  padding-left: 0; }

.u-padding--tiny {
  padding: 0.125em; }

.u-padding-top--tiny {
  padding-top: 0.125em; }

.u-padding-right--tiny {
  padding-right: 0.125em; }

.u-padding-bottom--tiny {
  padding-bottom: 0.125em; }

.u-padding-left--tiny {
  padding-left: 0.125em; }

.u-padding--xsmall {
  padding: 0.25em; }

.u-padding-top--xsmall {
  padding-top: 0.25em; }

.u-padding-right--xsmall {
  padding-right: 0.25em; }

.u-padding-bottom--xsmall {
  padding-bottom: 0.25em; }

.u-padding-left--xsmall {
  padding-left: 0.25em; }

.u-padding--small {
  padding: 0.5em; }

.u-padding-top--small {
  padding-top: 0.5em; }

.u-padding-right--small {
  padding-right: 0.5em; }

.u-padding-bottom--small {
  padding-bottom: 0.5em; }

.u-padding-left--small {
  padding-left: 0.5em; }

.u-padding--medium {
  padding: 1em; }

.u-padding-top--medium {
  padding-top: 1em; }

.u-padding-right--medium {
  padding-right: 1em; }

.u-padding-bottom--medium {
  padding-bottom: 1em; }

.u-padding-left--medium {
  padding-left: 1em; }

.u-padding--large {
  padding: 1.5em; }

.u-padding-top--large {
  padding-top: 1.5em; }

.u-padding-right--large {
  padding-right: 1.5em; }

.u-padding-bottom--large {
  padding-bottom: 1.5em; }

.u-padding-left--large {
  padding-left: 1.5em; }

.u-padding--xlarge {
  padding: 2em; }

.u-padding-top--xlarge {
  padding-top: 2em; }

.u-padding-right--xlarge {
  padding-right: 2em; }

.u-padding-bottom--xlarge {
  padding-bottom: 2em; }

.u-padding-left--xlarge {
  padding-left: 2em; }

.u-padding--super {
  padding: 3em; }

.u-padding-top--super {
  padding-top: 3em; }

.u-padding-right--super {
  padding-right: 3em; }

.u-padding-bottom--super {
  padding-bottom: 3em; }

.u-padding-left--super {
  padding-left: 3em; }

@media (min-width: 20rem) {
  .u-no-space\@xsmall {
    margin: 0;
    padding: 0; }
  .u-space--none\@xsmall {
    margin: 0; }
  .u-space-top--none\@xsmall {
    margin-top: 0; }
  .u-space-right--none\@xsmall {
    margin-right: 0; }
  .u-space-bottom--none\@xsmall {
    margin-bottom: 0; }
  .u-space-left--none\@xsmall {
    margin-left: 0; }
  .u-space--tiny\@xsmall {
    margin: 0.125em; }
  .u-space-top--tiny\@xsmall {
    margin-top: 0.125em; }
  .u-space-right--tiny\@xsmall {
    margin-right: 0.125em; }
  .u-space-bottom--tiny\@xsmall {
    margin-bottom: 0.125em; }
  .u-space-left--tiny\@xsmall {
    margin-left: 0.125em; }
  .u-space--xsmall\@xsmall {
    margin: 0.25em; }
  .u-space-top--xsmall\@xsmall {
    margin-top: 0.25em; }
  .u-space-right--xsmall\@xsmall {
    margin-right: 0.25em; }
  .u-space-bottom--xsmall\@xsmall {
    margin-bottom: 0.25em; }
  .u-space-left--xsmall\@xsmall {
    margin-left: 0.25em; }
  .u-space--small\@xsmall {
    margin: 0.5em; }
  .u-space-top--small\@xsmall {
    margin-top: 0.5em; }
  .u-space-right--small\@xsmall {
    margin-right: 0.5em; }
  .u-space-bottom--small\@xsmall {
    margin-bottom: 0.5em; }
  .u-space-left--small\@xsmall {
    margin-left: 0.5em; }
  .u-space--medium\@xsmall {
    margin: 1em; }
  .u-space-top--medium\@xsmall {
    margin-top: 1em; }
  .u-space-right--medium\@xsmall {
    margin-right: 1em; }
  .u-space-bottom--medium\@xsmall {
    margin-bottom: 1em; }
  .u-space-left--medium\@xsmall {
    margin-left: 1em; }
  .u-space--large\@xsmall {
    margin: 1.5em; }
  .u-space-top--large\@xsmall {
    margin-top: 1.5em; }
  .u-space-right--large\@xsmall {
    margin-right: 1.5em; }
  .u-space-bottom--large\@xsmall {
    margin-bottom: 1.5em; }
  .u-space-left--large\@xsmall {
    margin-left: 1.5em; }
  .u-space--xlarge\@xsmall {
    margin: 2em; }
  .u-space-top--xlarge\@xsmall {
    margin-top: 2em; }
  .u-space-right--xlarge\@xsmall {
    margin-right: 2em; }
  .u-space-bottom--xlarge\@xsmall {
    margin-bottom: 2em; }
  .u-space-left--xlarge\@xsmall {
    margin-left: 2em; }
  .u-space--super\@xsmall {
    margin: 3em; }
  .u-space-top--super\@xsmall {
    margin-top: 3em; }
  .u-space-right--super\@xsmall {
    margin-right: 3em; }
  .u-space-bottom--super\@xsmall {
    margin-bottom: 3em; }
  .u-space-left--super\@xsmall {
    margin-left: 3em; }
  .u-padding--none\@xsmall {
    padding: 0; }
  .u-padding-top--none\@xsmall {
    padding-top: 0; }
  .u-padding-right--none\@xsmall {
    padding-right: 0; }
  .u-padding-bottom--none\@xsmall {
    padding-bottom: 0; }
  .u-padding-left--none\@xsmall {
    padding-left: 0; }
  .u-padding--tiny\@xsmall {
    padding: 0.125em; }
  .u-padding-top--tiny\@xsmall {
    padding-top: 0.125em; }
  .u-padding-right--tiny\@xsmall {
    padding-right: 0.125em; }
  .u-padding-bottom--tiny\@xsmall {
    padding-bottom: 0.125em; }
  .u-padding-left--tiny\@xsmall {
    padding-left: 0.125em; }
  .u-padding--xsmall\@xsmall {
    padding: 0.25em; }
  .u-padding-top--xsmall\@xsmall {
    padding-top: 0.25em; }
  .u-padding-right--xsmall\@xsmall {
    padding-right: 0.25em; }
  .u-padding-bottom--xsmall\@xsmall {
    padding-bottom: 0.25em; }
  .u-padding-left--xsmall\@xsmall {
    padding-left: 0.25em; }
  .u-padding--small\@xsmall {
    padding: 0.5em; }
  .u-padding-top--small\@xsmall {
    padding-top: 0.5em; }
  .u-padding-right--small\@xsmall {
    padding-right: 0.5em; }
  .u-padding-bottom--small\@xsmall {
    padding-bottom: 0.5em; }
  .u-padding-left--small\@xsmall {
    padding-left: 0.5em; }
  .u-padding--medium\@xsmall {
    padding: 1em; }
  .u-padding-top--medium\@xsmall {
    padding-top: 1em; }
  .u-padding-right--medium\@xsmall {
    padding-right: 1em; }
  .u-padding-bottom--medium\@xsmall {
    padding-bottom: 1em; }
  .u-padding-left--medium\@xsmall {
    padding-left: 1em; }
  .u-padding--large\@xsmall {
    padding: 1.5em; }
  .u-padding-top--large\@xsmall {
    padding-top: 1.5em; }
  .u-padding-right--large\@xsmall {
    padding-right: 1.5em; }
  .u-padding-bottom--large\@xsmall {
    padding-bottom: 1.5em; }
  .u-padding-left--large\@xsmall {
    padding-left: 1.5em; }
  .u-padding--xlarge\@xsmall {
    padding: 2em; }
  .u-padding-top--xlarge\@xsmall {
    padding-top: 2em; }
  .u-padding-right--xlarge\@xsmall {
    padding-right: 2em; }
  .u-padding-bottom--xlarge\@xsmall {
    padding-bottom: 2em; }
  .u-padding-left--xlarge\@xsmall {
    padding-left: 2em; }
  .u-padding--super\@xsmall {
    padding: 3em; }
  .u-padding-top--super\@xsmall {
    padding-top: 3em; }
  .u-padding-right--super\@xsmall {
    padding-right: 3em; }
  .u-padding-bottom--super\@xsmall {
    padding-bottom: 3em; }
  .u-padding-left--super\@xsmall {
    padding-left: 3em; } }

@media (min-width: 30rem) {
  .u-no-space\@small {
    margin: 0;
    padding: 0; }
  .u-space--none\@small {
    margin: 0; }
  .u-space-top--none\@small {
    margin-top: 0; }
  .u-space-right--none\@small {
    margin-right: 0; }
  .u-space-bottom--none\@small {
    margin-bottom: 0; }
  .u-space-left--none\@small {
    margin-left: 0; }
  .u-space--tiny\@small {
    margin: 0.125em; }
  .u-space-top--tiny\@small {
    margin-top: 0.125em; }
  .u-space-right--tiny\@small {
    margin-right: 0.125em; }
  .u-space-bottom--tiny\@small {
    margin-bottom: 0.125em; }
  .u-space-left--tiny\@small {
    margin-left: 0.125em; }
  .u-space--xsmall\@small {
    margin: 0.25em; }
  .u-space-top--xsmall\@small {
    margin-top: 0.25em; }
  .u-space-right--xsmall\@small {
    margin-right: 0.25em; }
  .u-space-bottom--xsmall\@small {
    margin-bottom: 0.25em; }
  .u-space-left--xsmall\@small {
    margin-left: 0.25em; }
  .u-space--small\@small {
    margin: 0.5em; }
  .u-space-top--small\@small {
    margin-top: 0.5em; }
  .u-space-right--small\@small {
    margin-right: 0.5em; }
  .u-space-bottom--small\@small {
    margin-bottom: 0.5em; }
  .u-space-left--small\@small {
    margin-left: 0.5em; }
  .u-space--medium\@small {
    margin: 1em; }
  .u-space-top--medium\@small {
    margin-top: 1em; }
  .u-space-right--medium\@small {
    margin-right: 1em; }
  .u-space-bottom--medium\@small {
    margin-bottom: 1em; }
  .u-space-left--medium\@small {
    margin-left: 1em; }
  .u-space--large\@small {
    margin: 1.5em; }
  .u-space-top--large\@small {
    margin-top: 1.5em; }
  .u-space-right--large\@small {
    margin-right: 1.5em; }
  .u-space-bottom--large\@small {
    margin-bottom: 1.5em; }
  .u-space-left--large\@small {
    margin-left: 1.5em; }
  .u-space--xlarge\@small {
    margin: 2em; }
  .u-space-top--xlarge\@small {
    margin-top: 2em; }
  .u-space-right--xlarge\@small {
    margin-right: 2em; }
  .u-space-bottom--xlarge\@small {
    margin-bottom: 2em; }
  .u-space-left--xlarge\@small {
    margin-left: 2em; }
  .u-space--super\@small {
    margin: 3em; }
  .u-space-top--super\@small {
    margin-top: 3em; }
  .u-space-right--super\@small {
    margin-right: 3em; }
  .u-space-bottom--super\@small {
    margin-bottom: 3em; }
  .u-space-left--super\@small {
    margin-left: 3em; }
  .u-padding--none\@small {
    padding: 0; }
  .u-padding-top--none\@small {
    padding-top: 0; }
  .u-padding-right--none\@small {
    padding-right: 0; }
  .u-padding-bottom--none\@small {
    padding-bottom: 0; }
  .u-padding-left--none\@small {
    padding-left: 0; }
  .u-padding--tiny\@small {
    padding: 0.125em; }
  .u-padding-top--tiny\@small {
    padding-top: 0.125em; }
  .u-padding-right--tiny\@small {
    padding-right: 0.125em; }
  .u-padding-bottom--tiny\@small {
    padding-bottom: 0.125em; }
  .u-padding-left--tiny\@small {
    padding-left: 0.125em; }
  .u-padding--xsmall\@small {
    padding: 0.25em; }
  .u-padding-top--xsmall\@small {
    padding-top: 0.25em; }
  .u-padding-right--xsmall\@small {
    padding-right: 0.25em; }
  .u-padding-bottom--xsmall\@small {
    padding-bottom: 0.25em; }
  .u-padding-left--xsmall\@small {
    padding-left: 0.25em; }
  .u-padding--small\@small {
    padding: 0.5em; }
  .u-padding-top--small\@small {
    padding-top: 0.5em; }
  .u-padding-right--small\@small {
    padding-right: 0.5em; }
  .u-padding-bottom--small\@small {
    padding-bottom: 0.5em; }
  .u-padding-left--small\@small {
    padding-left: 0.5em; }
  .u-padding--medium\@small {
    padding: 1em; }
  .u-padding-top--medium\@small {
    padding-top: 1em; }
  .u-padding-right--medium\@small {
    padding-right: 1em; }
  .u-padding-bottom--medium\@small {
    padding-bottom: 1em; }
  .u-padding-left--medium\@small {
    padding-left: 1em; }
  .u-padding--large\@small {
    padding: 1.5em; }
  .u-padding-top--large\@small {
    padding-top: 1.5em; }
  .u-padding-right--large\@small {
    padding-right: 1.5em; }
  .u-padding-bottom--large\@small {
    padding-bottom: 1.5em; }
  .u-padding-left--large\@small {
    padding-left: 1.5em; }
  .u-padding--xlarge\@small {
    padding: 2em; }
  .u-padding-top--xlarge\@small {
    padding-top: 2em; }
  .u-padding-right--xlarge\@small {
    padding-right: 2em; }
  .u-padding-bottom--xlarge\@small {
    padding-bottom: 2em; }
  .u-padding-left--xlarge\@small {
    padding-left: 2em; }
  .u-padding--super\@small {
    padding: 3em; }
  .u-padding-top--super\@small {
    padding-top: 3em; }
  .u-padding-right--super\@small {
    padding-right: 3em; }
  .u-padding-bottom--super\@small {
    padding-bottom: 3em; }
  .u-padding-left--super\@small {
    padding-left: 3em; } }

@media (min-width: 48rem) {
  .u-no-space\@medium {
    margin: 0;
    padding: 0; }
  .u-space--none\@medium {
    margin: 0; }
  .u-space-top--none\@medium {
    margin-top: 0; }
  .u-space-right--none\@medium {
    margin-right: 0; }
  .u-space-bottom--none\@medium {
    margin-bottom: 0; }
  .u-space-left--none\@medium {
    margin-left: 0; }
  .u-space--tiny\@medium {
    margin: 0.125em; }
  .u-space-top--tiny\@medium {
    margin-top: 0.125em; }
  .u-space-right--tiny\@medium {
    margin-right: 0.125em; }
  .u-space-bottom--tiny\@medium {
    margin-bottom: 0.125em; }
  .u-space-left--tiny\@medium {
    margin-left: 0.125em; }
  .u-space--xsmall\@medium {
    margin: 0.25em; }
  .u-space-top--xsmall\@medium {
    margin-top: 0.25em; }
  .u-space-right--xsmall\@medium {
    margin-right: 0.25em; }
  .u-space-bottom--xsmall\@medium {
    margin-bottom: 0.25em; }
  .u-space-left--xsmall\@medium {
    margin-left: 0.25em; }
  .u-space--small\@medium {
    margin: 0.5em; }
  .u-space-top--small\@medium {
    margin-top: 0.5em; }
  .u-space-right--small\@medium {
    margin-right: 0.5em; }
  .u-space-bottom--small\@medium {
    margin-bottom: 0.5em; }
  .u-space-left--small\@medium {
    margin-left: 0.5em; }
  .u-space--medium\@medium {
    margin: 1em; }
  .u-space-top--medium\@medium {
    margin-top: 1em; }
  .u-space-right--medium\@medium {
    margin-right: 1em; }
  .u-space-bottom--medium\@medium {
    margin-bottom: 1em; }
  .u-space-left--medium\@medium {
    margin-left: 1em; }
  .u-space--large\@medium {
    margin: 1.5em; }
  .u-space-top--large\@medium {
    margin-top: 1.5em; }
  .u-space-right--large\@medium {
    margin-right: 1.5em; }
  .u-space-bottom--large\@medium {
    margin-bottom: 1.5em; }
  .u-space-left--large\@medium {
    margin-left: 1.5em; }
  .u-space--xlarge\@medium {
    margin: 2em; }
  .u-space-top--xlarge\@medium {
    margin-top: 2em; }
  .u-space-right--xlarge\@medium {
    margin-right: 2em; }
  .u-space-bottom--xlarge\@medium {
    margin-bottom: 2em; }
  .u-space-left--xlarge\@medium {
    margin-left: 2em; }
  .u-space--super\@medium {
    margin: 3em; }
  .u-space-top--super\@medium {
    margin-top: 3em; }
  .u-space-right--super\@medium {
    margin-right: 3em; }
  .u-space-bottom--super\@medium {
    margin-bottom: 3em; }
  .u-space-left--super\@medium {
    margin-left: 3em; }
  .u-padding--none\@medium {
    padding: 0; }
  .u-padding-top--none\@medium {
    padding-top: 0; }
  .u-padding-right--none\@medium {
    padding-right: 0; }
  .u-padding-bottom--none\@medium {
    padding-bottom: 0; }
  .u-padding-left--none\@medium {
    padding-left: 0; }
  .u-padding--tiny\@medium {
    padding: 0.125em; }
  .u-padding-top--tiny\@medium {
    padding-top: 0.125em; }
  .u-padding-right--tiny\@medium {
    padding-right: 0.125em; }
  .u-padding-bottom--tiny\@medium {
    padding-bottom: 0.125em; }
  .u-padding-left--tiny\@medium {
    padding-left: 0.125em; }
  .u-padding--xsmall\@medium {
    padding: 0.25em; }
  .u-padding-top--xsmall\@medium {
    padding-top: 0.25em; }
  .u-padding-right--xsmall\@medium {
    padding-right: 0.25em; }
  .u-padding-bottom--xsmall\@medium {
    padding-bottom: 0.25em; }
  .u-padding-left--xsmall\@medium {
    padding-left: 0.25em; }
  .u-padding--small\@medium {
    padding: 0.5em; }
  .u-padding-top--small\@medium {
    padding-top: 0.5em; }
  .u-padding-right--small\@medium {
    padding-right: 0.5em; }
  .u-padding-bottom--small\@medium {
    padding-bottom: 0.5em; }
  .u-padding-left--small\@medium {
    padding-left: 0.5em; }
  .u-padding--medium\@medium {
    padding: 1em; }
  .u-padding-top--medium\@medium {
    padding-top: 1em; }
  .u-padding-right--medium\@medium {
    padding-right: 1em; }
  .u-padding-bottom--medium\@medium {
    padding-bottom: 1em; }
  .u-padding-left--medium\@medium {
    padding-left: 1em; }
  .u-padding--large\@medium {
    padding: 1.5em; }
  .u-padding-top--large\@medium {
    padding-top: 1.5em; }
  .u-padding-right--large\@medium {
    padding-right: 1.5em; }
  .u-padding-bottom--large\@medium {
    padding-bottom: 1.5em; }
  .u-padding-left--large\@medium {
    padding-left: 1.5em; }
  .u-padding--xlarge\@medium {
    padding: 2em; }
  .u-padding-top--xlarge\@medium {
    padding-top: 2em; }
  .u-padding-right--xlarge\@medium {
    padding-right: 2em; }
  .u-padding-bottom--xlarge\@medium {
    padding-bottom: 2em; }
  .u-padding-left--xlarge\@medium {
    padding-left: 2em; }
  .u-padding--super\@medium {
    padding: 3em; }
  .u-padding-top--super\@medium {
    padding-top: 3em; }
  .u-padding-right--super\@medium {
    padding-right: 3em; }
  .u-padding-bottom--super\@medium {
    padding-bottom: 3em; }
  .u-padding-left--super\@medium {
    padding-left: 3em; } }

@media (min-width: 64rem) {
  .u-no-space\@large {
    margin: 0;
    padding: 0; }
  .u-space--none\@large {
    margin: 0; }
  .u-space-top--none\@large {
    margin-top: 0; }
  .u-space-right--none\@large {
    margin-right: 0; }
  .u-space-bottom--none\@large {
    margin-bottom: 0; }
  .u-space-left--none\@large {
    margin-left: 0; }
  .u-space--tiny\@large {
    margin: 0.125em; }
  .u-space-top--tiny\@large {
    margin-top: 0.125em; }
  .u-space-right--tiny\@large {
    margin-right: 0.125em; }
  .u-space-bottom--tiny\@large {
    margin-bottom: 0.125em; }
  .u-space-left--tiny\@large {
    margin-left: 0.125em; }
  .u-space--xsmall\@large {
    margin: 0.25em; }
  .u-space-top--xsmall\@large {
    margin-top: 0.25em; }
  .u-space-right--xsmall\@large {
    margin-right: 0.25em; }
  .u-space-bottom--xsmall\@large {
    margin-bottom: 0.25em; }
  .u-space-left--xsmall\@large {
    margin-left: 0.25em; }
  .u-space--small\@large {
    margin: 0.5em; }
  .u-space-top--small\@large {
    margin-top: 0.5em; }
  .u-space-right--small\@large {
    margin-right: 0.5em; }
  .u-space-bottom--small\@large {
    margin-bottom: 0.5em; }
  .u-space-left--small\@large {
    margin-left: 0.5em; }
  .u-space--medium\@large {
    margin: 1em; }
  .u-space-top--medium\@large {
    margin-top: 1em; }
  .u-space-right--medium\@large {
    margin-right: 1em; }
  .u-space-bottom--medium\@large {
    margin-bottom: 1em; }
  .u-space-left--medium\@large {
    margin-left: 1em; }
  .u-space--large\@large {
    margin: 1.5em; }
  .u-space-top--large\@large {
    margin-top: 1.5em; }
  .u-space-right--large\@large {
    margin-right: 1.5em; }
  .u-space-bottom--large\@large {
    margin-bottom: 1.5em; }
  .u-space-left--large\@large {
    margin-left: 1.5em; }
  .u-space--xlarge\@large {
    margin: 2em; }
  .u-space-top--xlarge\@large {
    margin-top: 2em; }
  .u-space-right--xlarge\@large {
    margin-right: 2em; }
  .u-space-bottom--xlarge\@large {
    margin-bottom: 2em; }
  .u-space-left--xlarge\@large {
    margin-left: 2em; }
  .u-space--super\@large {
    margin: 3em; }
  .u-space-top--super\@large {
    margin-top: 3em; }
  .u-space-right--super\@large {
    margin-right: 3em; }
  .u-space-bottom--super\@large {
    margin-bottom: 3em; }
  .u-space-left--super\@large {
    margin-left: 3em; }
  .u-padding--none\@large {
    padding: 0; }
  .u-padding-top--none\@large {
    padding-top: 0; }
  .u-padding-right--none\@large {
    padding-right: 0; }
  .u-padding-bottom--none\@large {
    padding-bottom: 0; }
  .u-padding-left--none\@large {
    padding-left: 0; }
  .u-padding--tiny\@large {
    padding: 0.125em; }
  .u-padding-top--tiny\@large {
    padding-top: 0.125em; }
  .u-padding-right--tiny\@large {
    padding-right: 0.125em; }
  .u-padding-bottom--tiny\@large {
    padding-bottom: 0.125em; }
  .u-padding-left--tiny\@large {
    padding-left: 0.125em; }
  .u-padding--xsmall\@large {
    padding: 0.25em; }
  .u-padding-top--xsmall\@large {
    padding-top: 0.25em; }
  .u-padding-right--xsmall\@large {
    padding-right: 0.25em; }
  .u-padding-bottom--xsmall\@large {
    padding-bottom: 0.25em; }
  .u-padding-left--xsmall\@large {
    padding-left: 0.25em; }
  .u-padding--small\@large {
    padding: 0.5em; }
  .u-padding-top--small\@large {
    padding-top: 0.5em; }
  .u-padding-right--small\@large {
    padding-right: 0.5em; }
  .u-padding-bottom--small\@large {
    padding-bottom: 0.5em; }
  .u-padding-left--small\@large {
    padding-left: 0.5em; }
  .u-padding--medium\@large {
    padding: 1em; }
  .u-padding-top--medium\@large {
    padding-top: 1em; }
  .u-padding-right--medium\@large {
    padding-right: 1em; }
  .u-padding-bottom--medium\@large {
    padding-bottom: 1em; }
  .u-padding-left--medium\@large {
    padding-left: 1em; }
  .u-padding--large\@large {
    padding: 1.5em; }
  .u-padding-top--large\@large {
    padding-top: 1.5em; }
  .u-padding-right--large\@large {
    padding-right: 1.5em; }
  .u-padding-bottom--large\@large {
    padding-bottom: 1.5em; }
  .u-padding-left--large\@large {
    padding-left: 1.5em; }
  .u-padding--xlarge\@large {
    padding: 2em; }
  .u-padding-top--xlarge\@large {
    padding-top: 2em; }
  .u-padding-right--xlarge\@large {
    padding-right: 2em; }
  .u-padding-bottom--xlarge\@large {
    padding-bottom: 2em; }
  .u-padding-left--xlarge\@large {
    padding-left: 2em; }
  .u-padding--super\@large {
    padding: 3em; }
  .u-padding-top--super\@large {
    padding-top: 3em; }
  .u-padding-right--super\@large {
    padding-right: 3em; }
  .u-padding-bottom--super\@large {
    padding-bottom: 3em; }
  .u-padding-left--super\@large {
    padding-left: 3em; } }

@media (min-width: 78rem) {
  .u-no-space\@xlarge {
    margin: 0;
    padding: 0; }
  .u-space--none\@xlarge {
    margin: 0; }
  .u-space-top--none\@xlarge {
    margin-top: 0; }
  .u-space-right--none\@xlarge {
    margin-right: 0; }
  .u-space-bottom--none\@xlarge {
    margin-bottom: 0; }
  .u-space-left--none\@xlarge {
    margin-left: 0; }
  .u-space--tiny\@xlarge {
    margin: 0.125em; }
  .u-space-top--tiny\@xlarge {
    margin-top: 0.125em; }
  .u-space-right--tiny\@xlarge {
    margin-right: 0.125em; }
  .u-space-bottom--tiny\@xlarge {
    margin-bottom: 0.125em; }
  .u-space-left--tiny\@xlarge {
    margin-left: 0.125em; }
  .u-space--xsmall\@xlarge {
    margin: 0.25em; }
  .u-space-top--xsmall\@xlarge {
    margin-top: 0.25em; }
  .u-space-right--xsmall\@xlarge {
    margin-right: 0.25em; }
  .u-space-bottom--xsmall\@xlarge {
    margin-bottom: 0.25em; }
  .u-space-left--xsmall\@xlarge {
    margin-left: 0.25em; }
  .u-space--small\@xlarge {
    margin: 0.5em; }
  .u-space-top--small\@xlarge {
    margin-top: 0.5em; }
  .u-space-right--small\@xlarge {
    margin-right: 0.5em; }
  .u-space-bottom--small\@xlarge {
    margin-bottom: 0.5em; }
  .u-space-left--small\@xlarge {
    margin-left: 0.5em; }
  .u-space--medium\@xlarge {
    margin: 1em; }
  .u-space-top--medium\@xlarge {
    margin-top: 1em; }
  .u-space-right--medium\@xlarge {
    margin-right: 1em; }
  .u-space-bottom--medium\@xlarge {
    margin-bottom: 1em; }
  .u-space-left--medium\@xlarge {
    margin-left: 1em; }
  .u-space--large\@xlarge {
    margin: 1.5em; }
  .u-space-top--large\@xlarge {
    margin-top: 1.5em; }
  .u-space-right--large\@xlarge {
    margin-right: 1.5em; }
  .u-space-bottom--large\@xlarge {
    margin-bottom: 1.5em; }
  .u-space-left--large\@xlarge {
    margin-left: 1.5em; }
  .u-space--xlarge\@xlarge {
    margin: 2em; }
  .u-space-top--xlarge\@xlarge {
    margin-top: 2em; }
  .u-space-right--xlarge\@xlarge {
    margin-right: 2em; }
  .u-space-bottom--xlarge\@xlarge {
    margin-bottom: 2em; }
  .u-space-left--xlarge\@xlarge {
    margin-left: 2em; }
  .u-space--super\@xlarge {
    margin: 3em; }
  .u-space-top--super\@xlarge {
    margin-top: 3em; }
  .u-space-right--super\@xlarge {
    margin-right: 3em; }
  .u-space-bottom--super\@xlarge {
    margin-bottom: 3em; }
  .u-space-left--super\@xlarge {
    margin-left: 3em; }
  .u-padding--none\@xlarge {
    padding: 0; }
  .u-padding-top--none\@xlarge {
    padding-top: 0; }
  .u-padding-right--none\@xlarge {
    padding-right: 0; }
  .u-padding-bottom--none\@xlarge {
    padding-bottom: 0; }
  .u-padding-left--none\@xlarge {
    padding-left: 0; }
  .u-padding--tiny\@xlarge {
    padding: 0.125em; }
  .u-padding-top--tiny\@xlarge {
    padding-top: 0.125em; }
  .u-padding-right--tiny\@xlarge {
    padding-right: 0.125em; }
  .u-padding-bottom--tiny\@xlarge {
    padding-bottom: 0.125em; }
  .u-padding-left--tiny\@xlarge {
    padding-left: 0.125em; }
  .u-padding--xsmall\@xlarge {
    padding: 0.25em; }
  .u-padding-top--xsmall\@xlarge {
    padding-top: 0.25em; }
  .u-padding-right--xsmall\@xlarge {
    padding-right: 0.25em; }
  .u-padding-bottom--xsmall\@xlarge {
    padding-bottom: 0.25em; }
  .u-padding-left--xsmall\@xlarge {
    padding-left: 0.25em; }
  .u-padding--small\@xlarge {
    padding: 0.5em; }
  .u-padding-top--small\@xlarge {
    padding-top: 0.5em; }
  .u-padding-right--small\@xlarge {
    padding-right: 0.5em; }
  .u-padding-bottom--small\@xlarge {
    padding-bottom: 0.5em; }
  .u-padding-left--small\@xlarge {
    padding-left: 0.5em; }
  .u-padding--medium\@xlarge {
    padding: 1em; }
  .u-padding-top--medium\@xlarge {
    padding-top: 1em; }
  .u-padding-right--medium\@xlarge {
    padding-right: 1em; }
  .u-padding-bottom--medium\@xlarge {
    padding-bottom: 1em; }
  .u-padding-left--medium\@xlarge {
    padding-left: 1em; }
  .u-padding--large\@xlarge {
    padding: 1.5em; }
  .u-padding-top--large\@xlarge {
    padding-top: 1.5em; }
  .u-padding-right--large\@xlarge {
    padding-right: 1.5em; }
  .u-padding-bottom--large\@xlarge {
    padding-bottom: 1.5em; }
  .u-padding-left--large\@xlarge {
    padding-left: 1.5em; }
  .u-padding--xlarge\@xlarge {
    padding: 2em; }
  .u-padding-top--xlarge\@xlarge {
    padding-top: 2em; }
  .u-padding-right--xlarge\@xlarge {
    padding-right: 2em; }
  .u-padding-bottom--xlarge\@xlarge {
    padding-bottom: 2em; }
  .u-padding-left--xlarge\@xlarge {
    padding-left: 2em; }
  .u-padding--super\@xlarge {
    padding: 3em; }
  .u-padding-top--super\@xlarge {
    padding-top: 3em; }
  .u-padding-right--super\@xlarge {
    padding-right: 3em; }
  .u-padding-bottom--super\@xlarge {
    padding-bottom: 3em; }
  .u-padding-left--super\@xlarge {
    padding-left: 3em; } }

@media (min-width: 125rem) {
  .u-no-space\@super {
    margin: 0;
    padding: 0; }
  .u-space--none\@super {
    margin: 0; }
  .u-space-top--none\@super {
    margin-top: 0; }
  .u-space-right--none\@super {
    margin-right: 0; }
  .u-space-bottom--none\@super {
    margin-bottom: 0; }
  .u-space-left--none\@super {
    margin-left: 0; }
  .u-space--tiny\@super {
    margin: 0.125em; }
  .u-space-top--tiny\@super {
    margin-top: 0.125em; }
  .u-space-right--tiny\@super {
    margin-right: 0.125em; }
  .u-space-bottom--tiny\@super {
    margin-bottom: 0.125em; }
  .u-space-left--tiny\@super {
    margin-left: 0.125em; }
  .u-space--xsmall\@super {
    margin: 0.25em; }
  .u-space-top--xsmall\@super {
    margin-top: 0.25em; }
  .u-space-right--xsmall\@super {
    margin-right: 0.25em; }
  .u-space-bottom--xsmall\@super {
    margin-bottom: 0.25em; }
  .u-space-left--xsmall\@super {
    margin-left: 0.25em; }
  .u-space--small\@super {
    margin: 0.5em; }
  .u-space-top--small\@super {
    margin-top: 0.5em; }
  .u-space-right--small\@super {
    margin-right: 0.5em; }
  .u-space-bottom--small\@super {
    margin-bottom: 0.5em; }
  .u-space-left--small\@super {
    margin-left: 0.5em; }
  .u-space--medium\@super {
    margin: 1em; }
  .u-space-top--medium\@super {
    margin-top: 1em; }
  .u-space-right--medium\@super {
    margin-right: 1em; }
  .u-space-bottom--medium\@super {
    margin-bottom: 1em; }
  .u-space-left--medium\@super {
    margin-left: 1em; }
  .u-space--large\@super {
    margin: 1.5em; }
  .u-space-top--large\@super {
    margin-top: 1.5em; }
  .u-space-right--large\@super {
    margin-right: 1.5em; }
  .u-space-bottom--large\@super {
    margin-bottom: 1.5em; }
  .u-space-left--large\@super {
    margin-left: 1.5em; }
  .u-space--xlarge\@super {
    margin: 2em; }
  .u-space-top--xlarge\@super {
    margin-top: 2em; }
  .u-space-right--xlarge\@super {
    margin-right: 2em; }
  .u-space-bottom--xlarge\@super {
    margin-bottom: 2em; }
  .u-space-left--xlarge\@super {
    margin-left: 2em; }
  .u-space--super\@super {
    margin: 3em; }
  .u-space-top--super\@super {
    margin-top: 3em; }
  .u-space-right--super\@super {
    margin-right: 3em; }
  .u-space-bottom--super\@super {
    margin-bottom: 3em; }
  .u-space-left--super\@super {
    margin-left: 3em; }
  .u-padding--none\@super {
    padding: 0; }
  .u-padding-top--none\@super {
    padding-top: 0; }
  .u-padding-right--none\@super {
    padding-right: 0; }
  .u-padding-bottom--none\@super {
    padding-bottom: 0; }
  .u-padding-left--none\@super {
    padding-left: 0; }
  .u-padding--tiny\@super {
    padding: 0.125em; }
  .u-padding-top--tiny\@super {
    padding-top: 0.125em; }
  .u-padding-right--tiny\@super {
    padding-right: 0.125em; }
  .u-padding-bottom--tiny\@super {
    padding-bottom: 0.125em; }
  .u-padding-left--tiny\@super {
    padding-left: 0.125em; }
  .u-padding--xsmall\@super {
    padding: 0.25em; }
  .u-padding-top--xsmall\@super {
    padding-top: 0.25em; }
  .u-padding-right--xsmall\@super {
    padding-right: 0.25em; }
  .u-padding-bottom--xsmall\@super {
    padding-bottom: 0.25em; }
  .u-padding-left--xsmall\@super {
    padding-left: 0.25em; }
  .u-padding--small\@super {
    padding: 0.5em; }
  .u-padding-top--small\@super {
    padding-top: 0.5em; }
  .u-padding-right--small\@super {
    padding-right: 0.5em; }
  .u-padding-bottom--small\@super {
    padding-bottom: 0.5em; }
  .u-padding-left--small\@super {
    padding-left: 0.5em; }
  .u-padding--medium\@super {
    padding: 1em; }
  .u-padding-top--medium\@super {
    padding-top: 1em; }
  .u-padding-right--medium\@super {
    padding-right: 1em; }
  .u-padding-bottom--medium\@super {
    padding-bottom: 1em; }
  .u-padding-left--medium\@super {
    padding-left: 1em; }
  .u-padding--large\@super {
    padding: 1.5em; }
  .u-padding-top--large\@super {
    padding-top: 1.5em; }
  .u-padding-right--large\@super {
    padding-right: 1.5em; }
  .u-padding-bottom--large\@super {
    padding-bottom: 1.5em; }
  .u-padding-left--large\@super {
    padding-left: 1.5em; }
  .u-padding--xlarge\@super {
    padding: 2em; }
  .u-padding-top--xlarge\@super {
    padding-top: 2em; }
  .u-padding-right--xlarge\@super {
    padding-right: 2em; }
  .u-padding-bottom--xlarge\@super {
    padding-bottom: 2em; }
  .u-padding-left--xlarge\@super {
    padding-left: 2em; }
  .u-padding--super\@super {
    padding: 3em; }
  .u-padding-top--super\@super {
    padding-top: 3em; }
  .u-padding-right--super\@super {
    padding-right: 3em; }
  .u-padding-bottom--super\@super {
    padding-bottom: 3em; }
  .u-padding-left--super\@super {
    padding-left: 3em; } }

/*doc
---
title: Sticky
name: sticky
category: Utilities
---

The sticky utility class can stick content to the top of the viewport.

Note: the `js-sticky` class is required for the JavaScript polyfill.

```html_example_table
<div style="border: 1px solid black; height: 300px;">
	<div class="u-sticky  js-sticky">
		sticky content
	</div>
</div>
```

### Media Queries

Class suffixes (`@xsmall`, `@small`, `@medium`, `@large`, `@xlarge`, `@super`) can be used to stick content at specific breakpoints and above.

*/
.u-sticky {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  z-index: 300; }

@media (min-width: 20rem) {
  .u-sticky\@xsmall {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    z-index: 300; } }

@media (min-width: 30rem) {
  .u-sticky\@small {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    z-index: 300; } }

@media (min-width: 48rem) {
  .u-sticky\@medium {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    z-index: 300; } }

@media (min-width: 64rem) {
  .u-sticky\@large {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    z-index: 300; } }

@media (min-width: 78rem) {
  .u-sticky\@xlarge {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    z-index: 300; } }

@media (min-width: 125rem) {
  .u-sticky\@super {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    z-index: 300; } }

.u-active-sticky {
  position: fixed;
  width: 100%;
  top: 0; }

/*doc
---
title: Typographic Utilities
name: typographic-utilities
category: Utilities
---

```html_example_table
<p class="u-regular">This paragraph has a regular font weight</p>

<p class="u-bold">This paragraph has a bold font weight</p>

<p class="u-italic">This paragraph is italic</p>

<p class="u-ellipse">This paragraph will truncate if it extends beyond its container</p>

<p class="u-break-word">This paragraph will break words when creating new lines</p>

<p class="u-no-wrap">This paragraph will not wrap when it's too long for its container</p>

<p class="u-uppercase">This paragraph is uppercase</p>
```

*/
.u-regular {
  font-weight: 300; }

.u-bold {
  font-weight: 500; }

.u-italic {
  font-style: italic; }

.u-ellipse {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis; }

.u-break-word {
  word-wrap: break-word; }

.u-no-wrap {
  white-space: nowrap; }

.u-uppercase {
  letter-spacing: .1em;
  text-transform: uppercase; }

.u-capitalize {
  letter-spacing: .1em;
  text-transform: capitalize; }

/*doc
---
title: Visibility
name: visibility
category: Utilities
---

Visibility utility classes can easily show or hide elements in various ways.

```html_example_table
<p class="u-visuallyhidden">Hidden visually, but available for screenreaders</p>

<p class="u-visuallyhidden  u-focusable">Hidden visually, but available for screenreaders and can be focused via keyboard</p>

<p class="u-hide">Hide from browsers and screenreaders</p>

<p class="u-show">Show in browsers and screenreaders</p>
```

### Print Visibility

```html_example_table
<p class="u-show@print">Hide in browsers, but show when printing</p>

<p class="u-hide@print">Show in browsers, but hide when printing</p>
```

### Media Queries

Class suffixes (`@xsmall`, `@small`, `@medium`, `@large`, `@xlarge`, `@super`) can be used to hide or show elements based on viewport width. Change your browser width to see elements appear / disappear.

```html_example_table
<p class="u-hide@small">Hide when browser is at least small width</p>

<p class="u-hide@medium">Hide when browser is at least medium width</p>

<p class="u-hide@large">Hide when browser is at least large width</p>

<p class="u-show@small">Show when browser is at least small width</p>

<p class="u-show@medium">Show when browser is at least medium width</p>

<p class="u-show@large">Show when browser is at least large width</p>
```

*/
.u-visuallyhidden {
  position: absolute;
  margin: -1px;
  padding: 0;
  height: 1px;
  width: 1px;
  border: 0;
  overflow: hidden;
  clip: rect(0 0 0 0); }

.u-visuallyhidden.u-focusable:active,
.u-visuallyhidden.u-focusable:focus {
  position: static;
  margin: 0;
  width: auto;
  height: auto;
  overflow: visible;
  clip: auto; }

.u-hide {
  display: none;
  visibility: hidden; }

.u-show {
  display: inherit; }

/**
 * Visibility mixins
 */
/**
 * Responsive visibility
 */
@media (min-width: 20rem) {
  .u-hide\@xsmall {
    display: none; } }

@media (max-width: 19.99rem) {
  .u-show\@xsmall {
    display: none; } }

@media (min-width: 30rem) {
  .u-hide\@small {
    display: none; } }

@media (max-width: 29.99rem) {
  .u-show\@small {
    display: none; } }

@media (min-width: 48rem) {
  .u-hide\@medium {
    display: none; } }

@media (max-width: 47.99rem) {
  .u-show\@medium {
    display: none; } }

@media (min-width: 64rem) {
  .u-hide\@large {
    display: none; } }

@media (max-width: 63.99rem) {
  .u-show\@large {
    display: none; } }

@media (min-width: 78rem) {
  .u-hide\@xlarge {
    display: none; } }

@media (max-width: 77.99rem) {
  .u-show\@xlarge {
    display: none; } }

@media (min-width: 125rem) {
  .u-hide\@super {
    display: none; } }

@media (max-width: 124.99rem) {
  .u-show\@super {
    display: none; } }

/**
 * Print visibility
 */
@media print {
  .u-hide\@print {
    display: none; } }

@media not print {
  .u-show\@print {
    display: none !important; } }

/*doc
---
title: Over
name: over
category: Utilities
---

Over utility classes are an easy way to change an item's z-index. Classes from lowest to highest are `u-over-content`, `u-over-control`, `u-over-page`, `u-over-screen`, and `u-over-everything`. The item must have a position set for these classes to work.

```html_example_table
<div style="position: relative;">
	<div class="u-over-content  u-bg-red" style="height: 50px; position: absolute; width: 25%;"></div>
	<div class="u-over-control  u-bg-green" style="height: 50px; left: 20%; position: absolute; top: 40px; width: 25%;"></div>
	<div class="u-over-page  u-bg-blue" style="height: 50px; left: 40%; position: absolute; top: 80px; width: 25%;"></div>
	<div class="u-over-screen  u-bg-yellow" style="height: 50px; left: 60%; position: absolute; top: 120px; width: 25%;"></div>
	<div class="u-over-everything  u-bg-purple" style="height: 50px;  position: absolute; right: 0; top: 160px; width: 25%;"></div>
</div>
```

### Media Queries

Class suffixes (`@xsmall`, `@small`, `@medium`, `@large`, `@xlarge`, `@super`) can be used to change z-index at specific breakpoints and above.

*/
.u-over-content {
  z-index: 100; }

.u-over-control {
  z-index: 200; }

.u-over-page {
  z-index: 300; }

.u-over-screen {
  z-index: 400; }

.u-over-everything {
  z-index: 500; }

@media (min-width: 20rem) {
  .u-over-content\@xsmall {
    z-index: 100; }
  .u-over-control\@xsmall {
    z-index: 200; }
  .u-over-page\@xsmall {
    z-index: 300; }
  .u-over-screen\@xsmall {
    z-index: 400; }
  .u-over-everything\@xsmall {
    z-index: 500; } }

@media (min-width: 30rem) {
  .u-over-content\@small {
    z-index: 100; }
  .u-over-control\@small {
    z-index: 200; }
  .u-over-page\@small {
    z-index: 300; }
  .u-over-screen\@small {
    z-index: 400; }
  .u-over-everything\@small {
    z-index: 500; } }

@media (min-width: 48rem) {
  .u-over-content\@medium {
    z-index: 100; }
  .u-over-control\@medium {
    z-index: 200; }
  .u-over-page\@medium {
    z-index: 300; }
  .u-over-screen\@medium {
    z-index: 400; }
  .u-over-everything\@medium {
    z-index: 500; } }

@media (min-width: 64rem) {
  .u-over-content\@large {
    z-index: 100; }
  .u-over-control\@large {
    z-index: 200; }
  .u-over-page\@large {
    z-index: 300; }
  .u-over-screen\@large {
    z-index: 400; }
  .u-over-everything\@large {
    z-index: 500; } }

@media (min-width: 78rem) {
  .u-over-content\@xlarge {
    z-index: 100; }
  .u-over-control\@xlarge {
    z-index: 200; }
  .u-over-page\@xlarge {
    z-index: 300; }
  .u-over-screen\@xlarge {
    z-index: 400; }
  .u-over-everything\@xlarge {
    z-index: 500; } }

@media (min-width: 125rem) {
  .u-over-content\@super {
    z-index: 100; }
  .u-over-control\@super {
    z-index: 200; }
  .u-over-page\@super {
    z-index: 300; }
  .u-over-screen\@super {
    z-index: 400; }
  .u-over-everything\@super {
    z-index: 500; } }

@media print {
  * {
    background: transparent !important;
    color: #000 !important;
    box-shadow: none !important;
    text-shadow: none !important; }
  @page {
    margin: 0.5cm; }
  a,
  a:visited {
    text-decoration: underline; }
  a[href]:after {
    content: " (" attr(href) ")"; }
  abbr[title]:after {
    content: " (" attr(title) ")"; }
  .ir a:after,
  a[href^="javascript:"]:after,
  a[href^="#"]:after {
    content: ""; }
  pre,
  blockquote {
    border: 1px solid #999;
    page-break-inside: avoid; }
  thead {
    display: table-header-group; }
  tr,
  img {
    page-break-inside: avoid; }
  img {
    max-width: 100% !important; }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3; }
  h2,
  h3 {
    page-break-after: avoid; } }

/**
 * Firefox: disable flexbox for print due to numerous bugs
 */
@media print {
  @-moz-document url-prefix() {
    .l-html--no-scroll {
      overflow: initial; }
    .l-body--sticky-footer {
      display: block;
      min-height: initial; }
    .l-main--sticky-footer {
      flex: initial; }
    .l-grid,
    .o-main,
    .m-card,
    .m-rating,
    .m-signpost,
    .m-tile,
    .m-tile__content,
    .o-billboard--super,
    .o-billboard__content,
    .o-billboard__body {
      display: block; }
    .l-grid__item {
      min-width: 100%; } } }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInRoZW1lLmhlYWx0aGNhcmUuY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGlCQUFpQjtBQUNqQjs7Ozs7Ozs7Ozs7Ozs7O2FBZWE7QUFDYjtFQUNFLG9CQUFvQjtFQUNwQixVQUFVLEVBQUU7QUFGZDtFQUNFLG9CQUFvQjtFQUNwQixVQUFVLEVBQUU7QUFGZDtFQUNFLG9CQUFvQjtFQUNwQixVQUFVLEVBQUU7O0FBRWQ7Ozs7Ozs7Ozs7Ozs7RUFhRSxVQUFVO0VBQ1YsV0FBVztFQUNYLFVBQVU7RUFDVixnQkFBZ0I7RUFDaEIsY0FBYztFQUNkLHlCQUF5QixFQUFFOztBQUU3Qjs7RUFFRSxlQUFlLEVBQUU7O0FBRW5COzs7RUFHRSx1QkFBdUIsRUFBRTs7QUFFM0I7OztHQUdHO0FBQ0g7RUFDRSxpQkFBaUI7RUFDakIsK0JBQXVCO01BQXZCLDJCQUF1QjtVQUF2Qix1QkFBdUIsRUFBRTs7QUFFM0I7Ozs7RUFJRSxzQkFBc0I7RUFDdEIseUJBQXlCLEVBQUU7O0FBRTdCOztFQUVFLGNBQWMsRUFBRTs7QUFFbEI7RUFDRSxjQUFjO0VBQ2QsVUFBVSxFQUFFOztBQUVkO0VBQ0UsaUJBQWlCLEVBQUU7O0FBRXJCO0VBQ0UsaUJBQWlCLEVBQUU7O0FBRXJCO0VBQ0UsOEJBQThCLEVBQUU7O0FBRWxDO0VBQ0UscUJBQXFCLEVBQUU7O0FBRXpCOztFQUVFLFdBQVcsRUFBRTs7QUFFZjtFQUNFLGFBQWEsRUFBRTs7QUFFakI7Ozs7RUFJRSxZQUFZO0VBQ1osY0FBYyxFQUFFOztBQUVsQjtFQUNFLDBCQUEwQjtFQUMxQixrQkFBa0IsRUFBRTs7QUFFdEI7O0VBRUUsZ0JBQWdCO0VBQ2hCLGFBQWE7RUFDYix1QkFBdUIsRUFBRTs7QUFFM0I7OztFQUdFLGdCQUFnQixFQUFFOztBQUVwQjtFQUNFLGdDQUFnQyxFQUFFOztBQUVwQztFQUNFLGlCQUFpQixFQUFFOztBQUVyQjs7OztFQUlFLGdCQUFnQixFQUFFOztBQUVwQjtFQUNFLHVCQUF1QixFQUFFOztB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O0VBQ0UsZUFBZSxFQUFFOztBQUVuQjtFQUNFLDBCQUEwQixFQUFFOztBQUU5QjtFQUNFLGNBQWMsRUFBRTs7QUFFbEI7RUFDRSxlQUFlLEVBQUU7O0FBRW5CO0VBQ0UsMEJBQTBCLEVBQUU7O0FBRTlCO0VBQ0UsY0FBYyxFQUFFOztBQUVsQjtFQUNFLGVBQWUsRUFBRTs7QUFFbkI7RUFDRSwwQkFBMEIsRUFBRTs7QUFFOUI7RUFDRSxjQUFjLEVBQUU7O0FBRWxCO0VBQ0UsZUFBZSxFQUFFOztBQUVuQjtFQUNFLDBCQUEwQixFQUFFOztBQUU5QjtFQUNFLGNBQWMsRUFBRTs7QUFFbEI7RUFDRSxlQUFlLEVBQUU7O0FBRW5CO0VBQ0UsMEJBQTBCLEVBQUU7O0FBRTlCO0VBQ0UsY0FBYyxFQUFFOztBQUVsQjtFQUNFLGVBQWUsRUFBRTs7QUFFbkI7RUFDRSwwQkFBMEIsRUFBRTs7QUFFOUI7RUFDRSxjQUFjLEVBQUU7O0FBRWxCO0VBQ0UsZUFBZSxFQUFFOztBQUVuQjtFQUNFLDBCQUEwQixFQUFFOztBQUU5QjtFQUNFLGNBQWMsRUFBRTs7QUFFbEI7RUFDRSxlQUFlLEVBQUU7O0FBRW5CO0VBQ0UsMEJBQTBCLEVBQUU7O0FBRTlCO0VBQ0UsY0FBYyxFQUFFOztBQUVsQjtFQUNFLGVBQWUsRUFBRTs7QUFFbkI7RUFDRSwwQkFBMEIsRUFBRTs7QUFFOUI7RUFDRSxjQUFjLEVBQUU7O0FBRWxCO0VBQ0UsZUFBZSxFQUFFOztBQUVuQjtFQUNFLDBCQUEwQixFQUFFOztBQUU5QjtFQUNFLGNBQWMsRUFBRTs7QUFFbEI7RUFDRSxlQUFlLEVBQUU7O0FBRW5CO0VBQ0UsMEJBQTBCLEVBQUU7O0FBRTlCO0VBQ0UsY0FBYyxFQUFFOztBQUVsQjtFQUNFLGVBQWUsRUFBRTs7QUFFbkI7RUFDRSwwQkFBMEIsRUFBRTs7QUFFOUI7RUFDRSxjQUFjLEVBQUU7O0FBRWxCO0VBQ0UsZUFBZSxFQUFFOztBQUVuQjtFQUNFLDBCQUEwQixFQUFFOztBQUU5QjtFQUNFLGNBQWMsRUFBRTs7QUFFbEI7RUFDRSxlQUFlLEVBQUU7O0FBRW5CO0VBQ0UsMEJBQTBCLEVBQUU7O0FBRTlCO0VBQ0UsY0FBYyxFQUFFOztBQUVsQjtFQUNFLGVBQWUsRUFBRTs7QUFFbkI7RUFDRSwwQkFBMEIsRUFBRTs7QUFFOUI7RUFDRSxjQUFjLEVBQUU7O0FBRWxCO0VBQ0UsZUFBZSxFQUFFOztBQUVuQjtFQUNFLDBCQUEwQixFQUFFOztBQUU5QjtFQUNFLGNBQWMsRUFBRTs7QUFFbEI7RUFDRSxlQUFlLEVBQUU7O0FBRW5CO0VBQ0UsMEJBQTBCLEVBQUU7O0FBRTlCO0VBQ0UsY0FBYyxFQUFFOztBQUVsQjtFQUNFLGVBQWUsRUFBRTs7QUFFbkI7RUFDRSwwQkFBMEIsRUFBRTs7QUFFOUI7RUFDRSxjQUFjLEVBQUU7O0FBRWxCO0VBQ0UsZUFBZSxFQUFFOztBQUVuQjtFQUNFLDBCQUEwQixFQUFFOztBQUU5QjtFQUNFLGNBQWMsRUFBRTs7QUFFbEI7RUFDRSxlQUFlLEVBQUU7O0FBRW5CO0VBQ0UsMEJBQTBCLEVBQUU7O0FBRTlCO0VBQ0UsY0FBYyxFQUFFOztBQUVsQjtFQUNFLGVBQWUsRUFBRTs7QUFFbkI7RUFDRSwwQkFBMEIsRUFBRTs7QUFFOUI7RUFDRSxjQUFjLEVBQUU7O0FBRWxCO0VBQ0UsZUFBZSxFQUFFOztBQUVuQjtFQUNFLDBCQUEwQixFQUFFOztBQUU5QjtFQUNFLGNBQWMsRUFBRTs7QUFFbEI7RUFDRSxlQUFlLEVBQUU7O0FBRW5CO0VBQ0UsMEJBQTBCLEVBQUU7O0FBRTlCO0VBQ0UsY0FBYyxFQUFFOztBQUVsQjtFQUNFLGVBQWUsRUFBRTs7QUFFbkI7RUFDRSwwQkFBMEIsRUFBRTs7QUFFOUI7RUFDRSxjQUFjLEVBQUU7O0FBRWxCO0VBQ0UsZUFBZSxFQUFFOztBQUVuQjtFQUNFLDBCQUEwQixFQUFFOztBQUU5QjtFQUNFLGNBQWMsRUFBRTs7QUFFbEI7RUFDRSxlQUFlLEVBQUU7O0FBRW5CO0VBQ0UsMEJBQTBCLEVBQUU7O0FBRTlCO0VBQ0UsY0FBYyxFQUFFOztBQUVsQjtFQUNFLGVBQWUsRUFBRTs7QUFFbkI7RUFDRSwwQkFBMEIsRUFBRTs7QUFFOUI7RUFDRSxjQUFjLEVBQUU7O0FBRWxCO0VBQ0UsZUFBZSxFQUFFOztBQUVuQjtFQUNFLDBCQUEwQixFQUFFOztBQUU5QjtFQUNFLGNBQWMsRUFBRTs7QUFFbEI7RUFDRSxlQUFlLEVBQUU7O0FBRW5CO0VBQ0UsMEJBQTBCLEVBQUU7O0FBRTlCO0VBQ0UsY0FBYyxFQUFFOztBQUVsQjtFQUNFLGVBQWUsRUFBRTs7QUFFbkI7RUFDRSwwQkFBMEIsRUFBRTs7QUFFOUI7RUFDRSxjQUFjLEVBQUU7O0FBRWxCO0VBQ0UsZUFBZSxFQUFFOztBQUVuQjtFQUNFLDBCQUEwQixFQUFFOztBQUU5QjtFQUNFLGNBQWMsRUFBRTs7QUFFbEI7RUFDRSxlQUFlLEVBQUU7O0FBRW5CO0VBQ0UsMEJBQTBCLEVBQUU7O0FBRTlCO0VBQ0UsY0FBYyxFQUFFOztBQUVsQjtFQUNFLGVBQWUsRUFBRTs7QUFFbkI7RUFDRSwwQkFBMEIsRUFBRTs7QUFFOUI7RUFDRSxjQUFjLEVBQUU7O0FBRWxCO0VBQ0UsZUFBZSxFQUFFOztBQUVuQjtFQUNFLDBCQUEwQixFQUFFOztBQUU5QjtFQUNFLGNBQWMsRUFBRTs7QUFFbEI7RUFDRSxlQUFlLEVBQUU7O0FBRW5CO0VBQ0UsMEJBQTBCLEVBQUU7O0FBRTlCO0VBQ0UsY0FBYyxFQUFFOztBQUVsQjtFQUNFLGVBQWUsRUFBRTs7QUFFbkI7RUFDRSwwQkFBMEIsRUFBRTs7QUFFOUI7RUFDRSxjQUFjLEVBQUU7O0FBRWxCO0VBQ0UsZUFBZSxFQUFFOztBQUVuQjtFQUNFLDBCQUEwQixFQUFFOztBQUU5QjtFQUNFLGNBQWMsRUFBRTs7QUFFbEI7RUFDRSxlQUFlLEVBQUU7O0FBRW5CO0VBQ0UsMEJBQTBCLEVBQUU7O0FBRTlCO0VBQ0UsY0FBYyxFQUFFOztBQUVsQjtFQUNFLGVBQWUsRUFBRTs7QUFFbkI7RUFDRSwwQkFBMEIsRUFBRTs7QUFFOUI7RUFDRSxjQUFjLEVBQUU7O0FBRWxCO0VBQ0UsZUFBZSxFQUFFOztBQUVuQjtFQUNFLDBCQUEwQixFQUFFOztBQUU5QjtFQUNFLGNBQWMsRUFBRTs7QUFFbEI7RUFDRSxlQUFlLEVBQUU7O0FBRW5CO0VBQ0UsMEJBQTBCLEVBQUU7O0FBRTlCO0VBQ0UsY0FBYyxFQUFFOztBQUVsQjtFQUNFLGVBQWUsRUFBRTs7QUFFbkI7RUFDRSwwQkFBMEIsRUFBRTs7QUFFOUI7RUFDRSxjQUFjLEVBQUU7O0FBRWxCO0VBQ0UsZUFBZSxFQUFFOztBQUVuQjtFQUNFLDBCQUEwQixFQUFFOztBQUU5QjtFQUNFLGNBQWMsRUFBRTs7QUFFbEI7RUFDRSxlQUFlLEVBQUU7O0FBRW5CO0VBQ0UsMEJBQTBCLEVBQUU7O0FBRTlCO0VBQ0UsY0FBYyxFQUFFOztBQUVsQjtFQUNFLGVBQWUsRUFBRTs7QUFFbkI7RUFDRSwwQkFBMEIsRUFBRTs7QUFFOUI7RUFDRSxjQUFjLEVBQUU7O0FBRWxCO0VBQ0UsZUFBZSxFQUFFOztBQUVuQjtFQUNFLDBCQUEwQixFQUFFOztBQUU5QjtFQUNFLGNBQWMsRUFBRTs7QUFFbEI7RUFDRSxlQUFlLEVBQUU7O0FBRW5CO0VBQ0UsMEJBQTBCLEVBQUU7O0FBRTlCO0VBQ0UsY0FBYyxFQUFFOztBQUVsQjtFQUNFLGVBQWUsRUFBRTs7QUFFbkI7RUFDRSwwQkFBMEIsRUFBRTs7QUFFOUI7RUFDRSxjQUFjLEVBQUU7O0FBRWxCO0VBQ0UsZUFBZSxFQUFFOztBQUVuQjtFQUNFLDBCQUEwQixFQUFFOztBQUU5QjtFQUNFLGNBQWMsRUFBRTs7QUFFbEI7RUFDRSxlQUFlLEVBQUU7O0FBRW5CO0VBQ0UsMEJBQTBCLEVBQUU7O0FBRTlCO0VBQ0UsY0FBYyxFQUFFOztBQUVsQjtFQUNFLGVBQWUsRUFBRTs7QUFFbkI7RUFDRSwwQkFBMEIsRUFBRTs7QUFFOUI7RUFDRSxjQUFjLEVBQUU7O0FBRWxCO0VBQ0UsZUFBZSxFQUFFOztBQUVuQjtFQUNFLDBCQUEwQixFQUFFOztBQUU5QjtFQUNFLGNBQWMsRUFBRTs7QUFFbEI7RUFDRSxlQUFlLEVBQUU7O0FBRW5CO0VBQ0UsMEJBQTBCLEVBQUU7O0FBRTlCO0VBQ0UsY0FBYyxFQUFFOztBQUVsQjtFQUNFLGVBQWUsRUFBRTs7QUFFbkI7RUFDRSwwQkFBMEIsRUFBRTs7QUFFOUI7RUFDRSxjQUFjLEVBQUU7O0FBRWxCO0VBQ0UsZUFBZSxFQUFFOztBQUVuQjtFQUNFLDBCQUEwQixFQUFFOztBQUU5QjtFQUNFLGNBQWMsRUFBRTs7QUFFbEI7RUFDRSxlQUFlLEVBQUU7O0FBRW5CO0VBQ0UsMEJBQTBCLEVBQUU7O0FBRTlCO0VBQ0UsY0FBYyxFQUFFOztBQUVsQjtFQUNFLGVBQWUsRUFBRTs7QUFFbkI7RUFDRSwwQkFBMEIsRUFBRTs7QUFFOUI7RUFDRSxjQUFjLEVBQUU7O0FBRWxCO0VBQ0UsZUFBZSxFQUFFOztBQUVuQjtFQUNFLDBCQUEwQixFQUFFOztBQUU5QjtFQUNFLGNBQWMsRUFBRTs7QUFFbEI7RUFDRSxlQUFlLEVBQUU7O0FBRW5CO0VBQ0UsMEJBQTBCLEVBQUU7O0FBRTlCO0VBQ0UsY0FBYyxFQUFFOztBQUVsQjtFQUNFLGVBQWUsRUFBRTs7QUFFbkI7RUFDRSwwQkFBMEIsRUFBRTs7QUFFOUI7RUFDRSxjQUFjLEVBQUU7O0FBRWxCO0VBQ0UsZUFBZSxFQUFFOztBQUVuQjtFQUNFLDBCQUEwQixFQUFFOztBQUU5QjtFQUNFLGNBQWMsRUFBRTs7QUFFbEI7RUFDRSxlQUFlLEVBQUU7O0FBRW5CO0VBQ0UsMEJBQTBCLEVBQUU7O0FBRTlCO0VBQ0UsY0FBYyxFQUFFOztBQUVsQjtFQUNFLGVBQWUsRUFBRTs7QUFFbkI7RUFDRSwwQkFBMEIsRUFBRTs7QUFFOUI7RUFDRSxjQUFjLEVBQUU7O0FBRWxCO0VBQ0UsZUFBZSxFQUFFOztBQUVuQjtFQUNFLDBCQUEwQixFQUFFOztBQUU5QjtFQUNFLGNBQWMsRUFBRTs7QUFFbEI7RUFDRSxlQUFlLEVBQUU7O0FBRW5CO0VBQ0UsMEJBQTBCLEVBQUU7O0FBRTlCO0VBQ0UsY0FBYyxFQUFFOztBQUVsQjtFQUNFLGVBQWUsRUFBRTs7QUFFbkI7RUFDRSwwQkFBMEIsRUFBRTs7QUFFOUI7RUFDRSxjQUFjLEVBQUU7O0FBRWxCO0VBQ0UsZUFBZSxFQUFFOztBQUVuQjtFQUNFLDBCQUEwQixFQUFFOztBQUU5QjtFQUNFLGNBQWMsRUFBRTs7QUFFbEI7RUFDRSxlQUFlLEVBQUU7O0FBRW5CO0VBQ0UsMEJBQTBCLEVBQUU7O0FBRTlCO0VBQ0UsY0FBYyxFQUFFOztBQUVsQjtFQUNFLGVBQWUsRUFBRTs7QUFFbkI7RUFDRSwwQkFBMEIsRUFBRTs7QUFFOUI7RUFDRSxjQUFjLEVBQUU7O0FBRWxCO0VBQ0UsZUFBZSxFQUFFOztBQUVuQjtFQUNFLDBCQUEwQixFQUFFOztBQUU5QjtFQUNFLGNBQWMsRUFBRTs7QUFFbEI7RUFDRSxlQUFlLEVBQUU7O0FBRW5CO0VBQ0UsMEJBQTBCLEVBQUU7O0FBRTlCO0VBQ0UsY0FBYyxFQUFFOztBQUVsQjtFQUNFLGVBQWUsRUFBRTs7QUFFbkI7RUFDRSwwQkFBMEIsRUFBRTs7QUFFOUI7RUFDRSxjQUFjLEVBQUU7O0FBRWxCO0VBQ0UsZUFBZSxFQUFFOztBQUVuQjtFQUNFLDBCQUEwQixFQUFFOztBQUU5QjtFQUNFLGNBQWMsRUFBRTs7QUFFbEI7RUFDRSxlQUFlLEVBQUU7O0FBRW5CO0VBQ0UsMEJBQTBCLEVBQUU7O0FBRTlCO0VBQ0UsY0FBYyxFQUFFOztBQUVsQjtFQUNFLGVBQWUsRUFBRTs7QUFFbkI7RUFDRSwwQkFBMEIsRUFBRTs7QUFFOUI7RUFDRSxjQUFjLEVBQUU7O0FBRWxCO0VBQ0UsZUFBZSxFQUFFOztBQUVuQjtFQUNFLDBCQUEwQixFQUFFOztBQUU5QjtFQUNFLGNBQWMsRUFBRTs7QUFFbEI7RUFDRSxlQUFlLEVBQUU7O0FBRW5CO0VBQ0UsMEJBQTBCLEVBQUU7O0FBRTlCO0VBQ0UsY0FBYyxFQUFFOztBQUVsQjtFQUNFLGVBQWUsRUFBRTs7QUFFbkI7RUFDRSwwQkFBMEIsRUFBRTs7QUFFOUI7RUFDRSxjQUFjLEVBQUU7O0FBRWxCO0VBQ0UsZUFBZSxFQUFFOztBQUVuQjtFQUNFLDBCQUEwQixFQUFFOztBQUU5QjtFQUNFLGNBQWMsRUFBRTs7QUFFbEI7RUFDRSxlQUFlLEVBQUU7O0FBRW5CO0VBQ0UsMEJBQTBCLEVBQUU7O0FBRTlCO0VBQ0UsY0FBYyxFQUFFOztBQUVsQjtFQUNFLGVBQWUsRUFBRTs7QUFFbkI7RUFDRSwwQkFBMEIsRUFBRTs7QUFFOUI7RUFDRSxjQUFjLEVBQUU7O0FBRWxCO0VBQ0UsZUFBZSxFQUFFOztBQUVuQjtFQUNFLDBCQUEwQixFQUFFOztBQUU5QjtFQUNFLGNBQWMsRUFBRTs7QUFFbEI7RUFDRSxlQUFlLEVBQUU7O0FBRW5CO0VBQ0UsMEJBQTBCLEVBQUU7O0FBRTlCO0VBQ0UsY0FBYyxFQUFFOztBQUVsQjtFQUNFLGVBQWUsRUFBRTs7QUFFbkI7RUFDRSwwQkFBMEIsRUFBRTs7QUFFOUI7RUFDRSxjQUFjLEVBQUU7O0FBRWxCO0VBQ0U7SUFDRSw0QkFBNEIsRUFBRTtFQUNoQztJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLFlBQVksRUFBRTtFQUNoQjtJQUNFLHVCQUF1QixFQUFFO0VBQzNCO0lBQ0UsV0FBVyxFQUFFO0VBQ2Y7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFLEVBQUU7O0FBRXRCO0VBQ0U7SUFDRSw0QkFBNEIsRUFBRTtFQUNoQztJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLFlBQVksRUFBRTtFQUNoQjtJQUNFLHVCQUF1QixFQUFFO0VBQzNCO0lBQ0UsV0FBVyxFQUFFO0VBQ2Y7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFLEVBQUU7O0FBRXRCO0VBQ0U7SUFDRSw0QkFBNEIsRUFBRTtFQUNoQztJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLFlBQVksRUFBRTtFQUNoQjtJQUNFLHVCQUF1QixFQUFFO0VBQzNCO0lBQ0UsV0FBVyxFQUFFO0VBQ2Y7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFLEVBQUU7O0FBRXRCO0VBQ0U7SUFDRSw0QkFBNEIsRUFBRTtFQUNoQztJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLFlBQVksRUFBRTtFQUNoQjtJQUNFLHVCQUF1QixFQUFFO0VBQzNCO0lBQ0UsV0FBVyxFQUFFO0VBQ2Y7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFLEVBQUU7O0FBRXRCO0VBQ0U7SUFDRSw0QkFBNEIsRUFBRTtFQUNoQztJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLFlBQVksRUFBRTtFQUNoQjtJQUNFLHVCQUF1QixFQUFFO0VBQzNCO0lBQ0UsV0FBVyxFQUFFO0VBQ2Y7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFLEVBQUU7O0FBRXRCO0VBQ0U7SUFDRSw0QkFBNEIsRUFBRTtFQUNoQztJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLFlBQVksRUFBRTtFQUNoQjtJQUNFLHVCQUF1QixFQUFFO0VBQzNCO0lBQ0UsV0FBVyxFQUFFO0VBQ2Y7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7RUFDbkI7SUFDRSwwQkFBMEIsRUFBRTtFQUM5QjtJQUNFLGNBQWMsRUFBRTtFQUNsQjtJQUNFLGVBQWUsRUFBRTtFQUNuQjtJQUNFLDBCQUEwQixFQUFFO0VBQzlCO0lBQ0UsY0FBYyxFQUFFO0VBQ2xCO0lBQ0UsZUFBZSxFQUFFO0VBQ25CO0lBQ0UsMEJBQTBCLEVBQUU7RUFDOUI7SUFDRSxjQUFjLEVBQUU7RUFDbEI7SUFDRSxlQUFlLEVBQUU7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QUFFLEVBQUU7O0FBRXJCO0VBQ0U7SUFDRSxtQ0FBbUM7SUFDbkMsdUJBQXVCO0lBQ3ZCLDRCQUE0QjtJQUM1Qiw2QkFBNkIsRUFBRTtFQUNqQztJQUNFLGNBQWMsRUFBRTtFQUNsQjs7SUFFRSwyQkFBMkIsRUFBRTtFQUMvQjtJQUNFLDZCQUE2QixFQUFFO0VBQ2pDO0lBQ0UsOEJBQThCLEVBQUU7RUFDbEM7OztJQUdFLFlBQVksRUFBRTtFQUNoQjs7SUFFRSx1QkFBdUI7SUFDdkIseUJBQXlCLEVBQUU7RUFDN0I7SUFDRSw0QkFBNEIsRUFBRTtFQUNoQzs7SUFFRSx5QkFBeUIsRUFBRTtFQUM3QjtJQUNFLDJCQUEyQixFQUFFO0VBQy9COzs7SUFHRSxXQUFXO0lBQ1gsVUFBVSxFQUFFO0VBQ2Q7O0lBRUUsd0JBQXdCLEVBQUUsRUFBRTs7QUFFaEM7O0dBRUc7QUFDSDtFQUNFO0lBQ0U7TUFDRSxrQkFBa0IsRUFBRTtJQUN0QjtNQUNFLGVBQWU7TUFDZixvQkFBb0IsRUFBRTtJQUN4QjtNQUNFLGNBQWMsRUFBRTtJQUNsQjs7Ozs7Ozs7OztNQVVFLGVBQWUsRUFBRTtJQUNuQjtNQUNFLGdCQUFnQixFQUFFLEVBQUUsRUFBRSIsImZpbGUiOiJ0aGVtZXMvdGhlbWUuaGVhbHRoY2FyZS5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJAY2hhcnNldCBcIlVURi04XCI7XG4vKlxuLy8gSGVhZGluZ3Ncbi8vIDEuIHNpemUgKGluIHJlbSlcbi8vIDIuIGxldHRlciBzcGFjaW5nIChhLmsuYS4gJ3RyYWNraW5nJyBpbiBwaG90b3Nob3ApXG4vLyAzLiBsaW5lIGhlaWdodCAoKiBsZWFkaW5nKVxuLy8gNC4gbWFyZ2luIHRvcCAoKiBsZWFkaW5nKVxuLy8gNS4gbWFyZ2luIGJvdHRvbSAoKiBsZWFkaW5nKVxuLy9cbiRoZWFkaW5nczogKFxuXHRoMTogKDIuNSwgMTAwLCAxLjI1LCAxLCAxKSxcblx0aDI6ICgxLjc1LCA3NSwgMS4yNSwgMi41LCAuNSksXG5cdGgzOiAoMS4zNzUsIDc1LCAxLjI1LCAyLCAuNSksXG5cdGg0OiAoMS4yLCA3NSwgMS4yNSwgMS41LCAuNSksXG5cdGg1OiAoMSwgNTAsIDEuMTI1LCAyLjUsIC41KSxcblx0aDY6ICgxLCA1MCwgMS4xMjUsIDIuNSwgLjUpXG4pICFkZWZhdWx0OyovXG5Admlld3BvcnQge1xuICB3aWR0aDogZGV2aWNlLXdpZHRoO1xuICB6b29tOiAxLjA7IH1cblxuaHRtbCwgYm9keSwgZGl2LCBzcGFuLCBhcHBsZXQsIG9iamVjdCwgaWZyYW1lLFxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiwgcCwgYmxvY2txdW90ZSwgcHJlLFxuYSwgYWJiciwgYWNyb255bSwgYWRkcmVzcywgYmlnLCBjaXRlLCBjb2RlLFxuZGVsLCBkZm4sIGVtLCBpbWcsIGlucywga2JkLCBxLCBzLCBzYW1wLFxuc21hbGwsIHN0cmlrZSwgc3Ryb25nLCBzdWIsIHN1cCwgdHQsIHZhcixcbmIsIHUsIGksIGNlbnRlcixcbmRsLCBkdCwgZGQsIG9sLCB1bCwgbGksXG5maWVsZHNldCwgZm9ybSwgbGFiZWwsIGxlZ2VuZCxcbnRhYmxlLCBjYXB0aW9uLCB0Ym9keSwgdGZvb3QsIHRoZWFkLCB0ciwgdGgsIHRkLFxuYXJ0aWNsZSwgYXNpZGUsIGNhbnZhcywgZGV0YWlscywgZW1iZWQsXG5maWd1cmUsIGZpZ2NhcHRpb24sIGZvb3RlciwgaGVhZGVyLCBoZ3JvdXAsXG5tZW51LCBuYXYsIG91dHB1dCwgcnVieSwgc2VjdGlvbiwgc3VtbWFyeSxcbnRpbWUsIG1hcmssIGF1ZGlvLCB2aWRlbyB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiAwO1xuICBmb250LXNpemU6IDEwMCU7XG4gIGZvbnQ6IGluaGVyaXQ7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgfVxuXG5hcnRpY2xlLCBhc2lkZSwgZGV0YWlscywgZmlnY2FwdGlvbiwgZmlndXJlLCBmb290ZXIsXG5oZWFkZXIsIGhncm91cCwgbWFpbiwgbWVudSwgbmF2LCBzZWN0aW9uLCBzdW1tYXJ5IHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuKixcbio6YmVmb3JlLFxuKjphZnRlciB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH1cblxuLypodG1sLFxuYm9keSB7XG4gIGhlaWdodDogMTAwJTtcbn0qL1xuaHRtbCB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIHRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IH1cblxuYXVkaW8sXG5jYW52YXMsXG5wcm9ncmVzcyxcbnZpZGVvIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IH1cblxuW2hpZGRlbl0sXG50ZW1wbGF0ZSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuYXVkaW86bm90KFtjb250cm9sc10pIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgaGVpZ2h0OiAwOyB9XG5cbmJvZHkge1xuICBsaW5lLWhlaWdodDogMS41OyB9XG5cbm9sLCB1bCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7IH1cblxuYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbmE6Zm9jdXMge1xuICBvdXRsaW5lOiB0aGluIGRvdHRlZDsgfVxuXG5hOmFjdGl2ZSxcbmE6aG92ZXIge1xuICBvdXRsaW5lOiAwOyB9XG5cbmJsb2NrcXVvdGUsIHEge1xuICBxdW90ZXM6IG5vbmU7IH1cblxuYmxvY2txdW90ZTpiZWZvcmUsXG5ibG9ja3F1b3RlOmFmdGVyLFxucTpiZWZvcmUsXG5xOmFmdGVyIHtcbiAgY29udGVudDogJyc7XG4gIGNvbnRlbnQ6IG5vbmU7IH1cblxudGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICBib3JkZXItc3BhY2luZzogMDsgfVxuXG5pbWcsXG52aWRlbyB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG5cbmlmcmFtZSxcbm9iamVjdCxcbmVtYmVkIHtcbiAgbWF4LXdpZHRoOiAxMDAlOyB9XG5cbmltZyB7XG4gIC1tcy1pbnRlcnBvbGF0aW9uLW1vZGU6IGJpY3ViaWM7IH1cblxuc3ZnOm5vdCg6cm9vdCkge1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbmJ1dHRvbixcbmh0bWwgaW5wdXRbdHlwZT1cImJ1dHRvblwiXSxcbmlucHV0W3R5cGU9XCJyZXNldFwiXSxcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cblxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH1cblxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbixcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24sXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyB9XG5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcbmlucHV0OjotbW96LWZvY3VzLWlubmVyIHtcbiAgYm9yZGVyOiAwO1xuICBwYWRkaW5nOiAwOyB9XG5cbi8qKlxuICogU2ltcGxlIHBhZ2UtbGV2ZWwgc2V0dXAuXG4gKlxuICogMS4gRm9yY2Ugc2Nyb2xsYmFycyB0byBhbHdheXMgYmUgdmlzaWJsZSB0byBwcmV2ZW50IGF3a3dhcmQg4oCYanVtcHPigJkgd2hlblxuICogICAgbmF2aWdhdGluZyBiZXR3ZWVuIHBhZ2VzIHRoYXQgZG8vZG8gbm90IGhhdmUgZW5vdWdoIGNvbnRlbnQgdG8gcHJvZHVjZVxuICogICAgc2Nyb2xsYmFycyBuYXR1cmFsbHkuXG4gKiAyLiBFbnN1cmUgdGhlIHBhZ2UgYWx3YXlzIGZpbGxzIGF0IGxlYXN0IHRoZSBlbnRpcmUgaGVpZ2h0IG9mIHRoZSB2aWV3cG9ydC5cbiAqIDMuIFN0b3AgSUUgc2Nyb2xsYmFycyBmcm9tIGNvdmVyaW5nIGNvbnRlbnQuXG4gKi9cbmh0bWwge1xuICBvdmVyZmxvdy15OiBzY3JvbGw7XG4gIC8qIFsxXSAqL1xuICBtaW4taGVpZ2h0OiAxMDAlO1xuICAvKiBbMl0gKi9cbiAgLW1zLW92ZXJmbG93LXN0eWxlOiBzY3JvbGxiYXI7XG4gIC8qIFszXSAqLyB9XG5cbi8qZG9jXG4tLS1cbnRpdGxlOiBDb250YWluZXJzXG5uYW1lOiBjb250YWluZXJzXG5jYXRlZ29yeTogTGF5b3V0c1xuLS0tXG5cbkNvbnRhaW5lcnMgYXJlIHVzZWQgdG8gd3JhcCBhbmQgY29uc3RyYWluIG91ciBzaXRlJ3MgY29udGVudHMuXG5cbmBgYGh0bWxfZXhhbXBsZVxuPGRpdiBjbGFzcz1cImwtY29udGFpbmVyICBsLWNvbnRhaW5lci0teHNtYWxsXCI+PC9kaXY+XG48ZGl2IGNsYXNzPVwibC1jb250YWluZXIgIGwtY29udGFpbmVyLS1zbWFsbFwiPjwvZGl2PlxuPGRpdiBjbGFzcz1cImwtY29udGFpbmVyICBsLWNvbnRhaW5lci0tbWVkaXVtXCI+PC9kaXY+XG48ZGl2IGNsYXNzPVwibC1jb250YWluZXIgIGwtY29udGFpbmVyLS1sYXJnZVwiPjwvZGl2PlxuPGRpdiBjbGFzcz1cImwtY29udGFpbmVyICBsLWNvbnRhaW5lci0teGxhcmdlXCI+PC9kaXY+XG48ZGl2IGNsYXNzPVwibC1jb250YWluZXIgIGwtY29udGFpbmVyLS1zdXBlclwiPjwvZGl2PlxuYGBgXG5cbiMjIyBCYXNpYyBDb250YWluZXJzXG5cblRoZSBiYXNpYyBgLmwtY29udGFpbmVyYCBjbGFzcyBzaW1wbHkgYWRkcyBwYWRkaW5nIGFuZCBjZW50ZXJzIGl0c2VsZi5cblxuYGBgaHRtbF9leGFtcGxlXG48ZGl2IGNsYXNzPVwibC1jb250YWluZXJcIj5cblx0PHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQsIGNvbnNlY3RldHVyIGFkaXBpc2NpbmcgZWxpdCwgc2VkIGRvIGVpdXNtb2QgdGVtcG9yIGluY2lkaWR1bnQgdXQgbGFib3JlIGV0IGRvbG9yZSBtYWduYSBhbGlxdWEuIFV0IGVuaW0gYWQgbWluaW0gdmVuaWFtLCBxdWlzIG5vc3RydWQgZXhlcmNpdGF0aW9uIHVsbGFtY28gbGFib3JpcyBuaXNpIHV0IGFsaXF1aXAgZXggZWEgY29tbW9kbyBjb25zZXF1YXQuIER1aXMgYXV0ZSBpcnVyZSBkb2xvciBpbiByZXByZWhlbmRlcml0IGluIHZvbHVwdGF0ZSB2ZWxpdCBlc3NlIGNpbGx1bSBkb2xvcmUgZXUgZnVnaWF0IG51bGxhIHBhcmlhdHVyLiBFeGNlcHRldXIgc2ludCBvY2NhZWNhdCBjdXBpZGF0YXQgbm9uIHByb2lkZW50LCBzdW50IGluIGN1bHBhIHF1aSBvZmZpY2lhIGRlc2VydW50IG1vbGxpdCBhbmltIGlkIGVzdCBsYWJvcnVtLjwvcD5cbjwvZGl2PlxuYGBgXG5cbjxocj5cblxuSWYgeW91IHdpc2ggdG8gdXNlIGEgY29udGFpbmVyIHdpdGhvdXQgcGFkZGluZywgYWRkIHRoZSBgLmwtY29udGFpbmVyLS1mbHVzaGAgY2xhc3MuXG5cbmBgYGh0bWxfZXhhbXBsZVxuPGRpdiBjbGFzcz1cImwtY29udGFpbmVyICBsLWNvbnRhaW5lci0tZmx1c2hcIj5cblx0PHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQsIGNvbnNlY3RldHVyIGFkaXBpc2NpbmcgZWxpdCwgc2VkIGRvIGVpdXNtb2QgdGVtcG9yIGluY2lkaWR1bnQgdXQgbGFib3JlIGV0IGRvbG9yZSBtYWduYSBhbGlxdWEuIFV0IGVuaW0gYWQgbWluaW0gdmVuaWFtLCBxdWlzIG5vc3RydWQgZXhlcmNpdGF0aW9uIHVsbGFtY28gbGFib3JpcyBuaXNpIHV0IGFsaXF1aXAgZXggZWEgY29tbW9kbyBjb25zZXF1YXQuIER1aXMgYXV0ZSBpcnVyZSBkb2xvciBpbiByZXByZWhlbmRlcml0IGluIHZvbHVwdGF0ZSB2ZWxpdCBlc3NlIGNpbGx1bSBkb2xvcmUgZXUgZnVnaWF0IG51bGxhIHBhcmlhdHVyLiBFeGNlcHRldXIgc2ludCBvY2NhZWNhdCBjdXBpZGF0YXQgbm9uIHByb2lkZW50LCBzdW50IGluIGN1bHBhIHF1aSBvZmZpY2lhIGRlc2VydW50IG1vbGxpdCBhbmltIGlkIGVzdCBsYWJvcnVtLjwvcD5cbjwvZGl2PlxuYGBgXG5cbiMjIyBDb250YWluZXIgU2l6ZXNcblxuVG8gY29udHJvbCB0aGUgbWF4aW11bSB3aWR0aCBvZiB0aGUgY29udGFpbmVyLCB3ZSB1c2Ugc2l6ZSBtb2RpZmllcnMuXG5cbk5vdGU6IFNvbWUgb2YgdGhlIGxhcmdlciBjb250YWluZXJzIGFyZSBjb25zdHJhaW5lZCBieSB0aGUgc3R5bGUgZ3VpZGUuXG5cbmBgYGh0bWxfZXhhbXBsZVxuPGRpdiBjbGFzcz1cImwtY29udGFpbmVyICBsLWNvbnRhaW5lci0teHNtYWxsXCI+XG5cdDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0LCBjb25zZWN0ZXR1ciBhZGlwaXNjaW5nIGVsaXQsIHNlZCBkbyBlaXVzbW9kIHRlbXBvciBpbmNpZGlkdW50IHV0IGxhYm9yZSBldCBkb2xvcmUgbWFnbmEgYWxpcXVhLiBVdCBlbmltIGFkIG1pbmltIHZlbmlhbSwgcXVpcyBub3N0cnVkIGV4ZXJjaXRhdGlvbiB1bGxhbWNvIGxhYm9yaXMgbmlzaSB1dCBhbGlxdWlwIGV4IGVhIGNvbW1vZG8gY29uc2VxdWF0LiBEdWlzIGF1dGUgaXJ1cmUgZG9sb3IgaW4gcmVwcmVoZW5kZXJpdCBpbiB2b2x1cHRhdGUgdmVsaXQgZXNzZSBjaWxsdW0gZG9sb3JlIGV1IGZ1Z2lhdCBudWxsYSBwYXJpYXR1ci4gRXhjZXB0ZXVyIHNpbnQgb2NjYWVjYXQgY3VwaWRhdGF0IG5vbiBwcm9pZGVudCwgc3VudCBpbiBjdWxwYSBxdWkgb2ZmaWNpYSBkZXNlcnVudCBtb2xsaXQgYW5pbSBpZCBlc3QgbGFib3J1bS48L3A+XG48L2Rpdj5cbmBgYFxuXG5gYGBodG1sX2V4YW1wbGVcbjxkaXYgY2xhc3M9XCJsLWNvbnRhaW5lciAgbC1jb250YWluZXItLXNtYWxsXCI+XG5cdDxwPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0LCBjb25zZWN0ZXR1ciBhZGlwaXNjaW5nIGVsaXQsIHNlZCBkbyBlaXVzbW9kIHRlbXBvciBpbmNpZGlkdW50IHV0IGxhYm9yZSBldCBkb2xvcmUgbWFnbmEgYWxpcXVhLiBVdCBlbmltIGFkIG1pbmltIHZlbmlhbSwgcXVpcyBub3N0cnVkIGV4ZXJjaXRhdGlvbiB1bGxhbWNvIGxhYm9yaXMgbmlzaSB1dCBhbGlxdWlwIGV4IGVhIGNvbW1vZG8gY29uc2VxdWF0LiBEdWlzIGF1dGUgaXJ1cmUgZG9sb3IgaW4gcmVwcmVoZW5kZXJpdCBpbiB2b2x1cHRhdGUgdmVsaXQgZXNzZSBjaWxsdW0gZG9sb3JlIGV1IGZ1Z2lhdCBudWxsYSBwYXJpYXR1ci4gRXhjZXB0ZXVyIHNpbnQgb2NjYWVjYXQgY3VwaWRhdGF0IG5vbiBwcm9pZGVudCwgc3VudCBpbiBjdWxwYSBxdWkgb2ZmaWNpYSBkZXNlcnVudCBtb2xsaXQgYW5pbSBpZCBlc3QgbGFib3J1bS48L3A+XG48L2Rpdj5cbmBgYFxuXG5gYGBodG1sX2V4YW1wbGVcbjxkaXYgY2xhc3M9XCJsLWNvbnRhaW5lciAgbC1jb250YWluZXItLW1lZGl1bVwiPlxuXHQ8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldCwgY29uc2VjdGV0dXIgYWRpcGlzY2luZyBlbGl0LCBzZWQgZG8gZWl1c21vZCB0ZW1wb3IgaW5jaWRpZHVudCB1dCBsYWJvcmUgZXQgZG9sb3JlIG1hZ25hIGFsaXF1YS4gVXQgZW5pbSBhZCBtaW5pbSB2ZW5pYW0sIHF1aXMgbm9zdHJ1ZCBleGVyY2l0YXRpb24gdWxsYW1jbyBsYWJvcmlzIG5pc2kgdXQgYWxpcXVpcCBleCBlYSBjb21tb2RvIGNvbnNlcXVhdC4gRHVpcyBhdXRlIGlydXJlIGRvbG9yIGluIHJlcHJlaGVuZGVyaXQgaW4gdm9sdXB0YXRlIHZlbGl0IGVzc2UgY2lsbHVtIGRvbG9yZSBldSBmdWdpYXQgbnVsbGEgcGFyaWF0dXIuIEV4Y2VwdGV1ciBzaW50IG9jY2FlY2F0IGN1cGlkYXRhdCBub24gcHJvaWRlbnQsIHN1bnQgaW4gY3VscGEgcXVpIG9mZmljaWEgZGVzZXJ1bnQgbW9sbGl0IGFuaW0gaWQgZXN0IGxhYm9ydW0uPC9wPlxuPC9kaXY+XG5gYGBcblxuYGBgaHRtbF9leGFtcGxlXG48ZGl2IGNsYXNzPVwibC1jb250YWluZXIgIGwtY29udGFpbmVyLS1sYXJnZVwiPlxuXHQ8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldCwgY29uc2VjdGV0dXIgYWRpcGlzY2luZyBlbGl0LCBzZWQgZG8gZWl1c21vZCB0ZW1wb3IgaW5jaWRpZHVudCB1dCBsYWJvcmUgZXQgZG9sb3JlIG1hZ25hIGFsaXF1YS4gVXQgZW5pbSBhZCBtaW5pbSB2ZW5pYW0sIHF1aXMgbm9zdHJ1ZCBleGVyY2l0YXRpb24gdWxsYW1jbyBsYWJvcmlzIG5pc2kgdXQgYWxpcXVpcCBleCBlYSBjb21tb2RvIGNvbnNlcXVhdC4gRHVpcyBhdXRlIGlydXJlIGRvbG9yIGluIHJlcHJlaGVuZGVyaXQgaW4gdm9sdXB0YXRlIHZlbGl0IGVzc2UgY2lsbHVtIGRvbG9yZSBldSBmdWdpYXQgbnVsbGEgcGFyaWF0dXIuIEV4Y2VwdGV1ciBzaW50IG9jY2FlY2F0IGN1cGlkYXRhdCBub24gcHJvaWRlbnQsIHN1bnQgaW4gY3VscGEgcXVpIG9mZmljaWEgZGVzZXJ1bnQgbW9sbGl0IGFuaW0gaWQgZXN0IGxhYm9ydW0uPC9wPlxuPC9kaXY+XG5gYGBcblxuYGBgaHRtbF9leGFtcGxlXG48ZGl2IGNsYXNzPVwibC1jb250YWluZXIgIGwtY29udGFpbmVyLS14bGFyZ2VcIj5cblx0PHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQsIGNvbnNlY3RldHVyIGFkaXBpc2NpbmcgZWxpdCwgc2VkIGRvIGVpdXNtb2QgdGVtcG9yIGluY2lkaWR1bnQgdXQgbGFib3JlIGV0IGRvbG9yZSBtYWduYSBhbGlxdWEuIFV0IGVuaW0gYWQgbWluaW0gdmVuaWFtLCBxdWlzIG5vc3RydWQgZXhlcmNpdGF0aW9uIHVsbGFtY28gbGFib3JpcyBuaXNpIHV0IGFsaXF1aXAgZXggZWEgY29tbW9kbyBjb25zZXF1YXQuIER1aXMgYXV0ZSBpcnVyZSBkb2xvciBpbiByZXByZWhlbmRlcml0IGluIHZvbHVwdGF0ZSB2ZWxpdCBlc3NlIGNpbGx1bSBkb2xvcmUgZXUgZnVnaWF0IG51bGxhIHBhcmlhdHVyLiBFeGNlcHRldXIgc2ludCBvY2NhZWNhdCBjdXBpZGF0YXQgbm9uIHByb2lkZW50LCBzdW50IGluIGN1bHBhIHF1aSBvZmZpY2lhIGRlc2VydW50IG1vbGxpdCBhbmltIGlkIGVzdCBsYWJvcnVtLjwvcD5cbjwvZGl2PlxuYGBgXG5cbmBgYGh0bWxfZXhhbXBsZVxuPGRpdiBjbGFzcz1cImwtY29udGFpbmVyICBsLWNvbnRhaW5lci0tc3VwZXJcIj5cblx0PHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQsIGNvbnNlY3RldHVyIGFkaXBpc2NpbmcgZWxpdCwgc2VkIGRvIGVpdXNtb2QgdGVtcG9yIGluY2lkaWR1bnQgdXQgbGFib3JlIGV0IGRvbG9yZSBtYWduYSBhbGlxdWEuIFV0IGVuaW0gYWQgbWluaW0gdmVuaWFtLCBxdWlzIG5vc3RydWQgZXhlcmNpdGF0aW9uIHVsbGFtY28gbGFib3JpcyBuaXNpIHV0IGFsaXF1aXAgZXggZWEgY29tbW9kbyBjb25zZXF1YXQuIER1aXMgYXV0ZSBpcnVyZSBkb2xvciBpbiByZXByZWhlbmRlcml0IGluIHZvbHVwdGF0ZSB2ZWxpdCBlc3NlIGNpbGx1bSBkb2xvcmUgZXUgZnVnaWF0IG51bGxhIHBhcmlhdHVyLiBFeGNlcHRldXIgc2ludCBvY2NhZWNhdCBjdXBpZGF0YXQgbm9uIHByb2lkZW50LCBzdW50IGluIGN1bHBhIHF1aSBvZmZpY2lhIGRlc2VydW50IG1vbGxpdCBhbmltIGlkIGVzdCBsYWJvcnVtLjwvcD5cbjwvZGl2PlxuYGBgXG5cbiMjIyBSZXNwb25zaXZlbmVzc1xuXG5FYWNoIGNvbnRhaW5lciBjYW4gYWxzbyBiZSBhcHBsaWVkIGF0IGNlcnRhaW4gc2NyZWVuIHNpemVzLiBgLmwtY29udGFpbmVyLS1zbWFsbEBsYXJnZWAgZm9yIGV4YW1wbGUgd2lsbCByZXN0cmljdCB0aGUgaG9yaXpvbnRhbCB3aWR0aCB0byBzbWFsbCB3aGVuIHRoZSB2aWV3cG9ydCBoYXMgYSBsYXJnZSBvciBtb3JlIHdpZHRoLiBFYWNoIHNpemUgY29udGFpbmVyIGhhcyBhbiBgQHhzbWFsbGAsIGBAc21hbGxgLCBgQG1lZGl1bWAsIGBAbGFyZ2VgLCBgQHhsYXJnZWAgYW5kIGBAc3VwZXJgIHJlc3BvbnNpdmUgc3VmZml4LlxuXG5gYGBodG1sX2V4YW1wbGVcbjxkaXYgY2xhc3M9XCJsLWNvbnRhaW5lciAgbC1jb250YWluZXItLXhzbWFsbEBzbWFsbCAgbC1jb250YWluZXItLXNtYWxsQG1lZGl1bSAgbC1jb250YWluZXItLW1lZGl1bUBsYXJnZSAgbC1jb250YWluZXItLWxhcmdlQHhsYXJnZVwiPlxuXHQ8cD5UaGlzIGNvbnRhaW5lciB3aWxsIGNoYW5nZSBzaXplIGRlcGVuZGluZyBvbiB0aGUgdmlld3BvcnQgd2lkdGguPC9wPlxuPC9kaXY+XG5gYGBcblxuKi9cbi5sLWNvbnRhaW5lciB7XG4gIGZsZXgtZ3JvdzogMDtcbiAgZmxleC1zaHJpbms6IDE7XG4gIGZsZXgtYmFzaXM6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIHBhZGRpbmc6IDAgMWVtO1xuICB3aWR0aDogMTAwJTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMjByZW0pIHtcbiAgICAubC1jb250YWluZXItLXhzbWFsbFxcQHhzbWFsbCB7XG4gICAgICBtYXgtd2lkdGg6IDIwcmVtOyB9XG4gICAgLmwtY29udGFpbmVyLS1zbWFsbFxcQHhzbWFsbCB7XG4gICAgICBtYXgtd2lkdGg6IDMwcmVtOyB9XG4gICAgLmwtY29udGFpbmVyLS1tZWRpdW1cXEB4c21hbGwge1xuICAgICAgbWF4LXdpZHRoOiA0OHJlbTsgfVxuICAgIC5sLWNvbnRhaW5lci0tbGFyZ2VcXEB4c21hbGwge1xuICAgICAgbWF4LXdpZHRoOiA2NHJlbTsgfVxuICAgIC5sLWNvbnRhaW5lci0teGxhcmdlXFxAeHNtYWxsIHtcbiAgICAgIG1heC13aWR0aDogNzhyZW07IH1cbiAgICAubC1jb250YWluZXItLXN1cGVyXFxAeHNtYWxsIHtcbiAgICAgIG1heC13aWR0aDogMTI1cmVtOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDMwcmVtKSB7XG4gICAgLmwtY29udGFpbmVyLS14c21hbGxcXEBzbWFsbCB7XG4gICAgICBtYXgtd2lkdGg6IDIwcmVtOyB9XG4gICAgLmwtY29udGFpbmVyLS1zbWFsbFxcQHNtYWxsIHtcbiAgICAgIG1heC13aWR0aDogMzByZW07IH1cbiAgICAubC1jb250YWluZXItLW1lZGl1bVxcQHNtYWxsIHtcbiAgICAgIG1heC13aWR0aDogNDhyZW07IH1cbiAgICAubC1jb250YWluZXItLWxhcmdlXFxAc21hbGwge1xuICAgICAgbWF4LXdpZHRoOiA2NHJlbTsgfVxuICAgIC5sLWNvbnRhaW5lci0teGxhcmdlXFxAc21hbGwge1xuICAgICAgbWF4LXdpZHRoOiA3OHJlbTsgfVxuICAgIC5sLWNvbnRhaW5lci0tc3VwZXJcXEBzbWFsbCB7XG4gICAgICBtYXgtd2lkdGg6IDEyNXJlbTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0OHJlbSkge1xuICAgIC5sLWNvbnRhaW5lci0teHNtYWxsXFxAbWVkaXVtIHtcbiAgICAgIG1heC13aWR0aDogMjByZW07IH1cbiAgICAubC1jb250YWluZXItLXNtYWxsXFxAbWVkaXVtIHtcbiAgICAgIG1heC13aWR0aDogMzByZW07IH1cbiAgICAubC1jb250YWluZXItLW1lZGl1bVxcQG1lZGl1bSB7XG4gICAgICBtYXgtd2lkdGg6IDQ4cmVtOyB9XG4gICAgLmwtY29udGFpbmVyLS1sYXJnZVxcQG1lZGl1bSB7XG4gICAgICBtYXgtd2lkdGg6IDY0cmVtOyB9XG4gICAgLmwtY29udGFpbmVyLS14bGFyZ2VcXEBtZWRpdW0ge1xuICAgICAgbWF4LXdpZHRoOiA3OHJlbTsgfVxuICAgIC5sLWNvbnRhaW5lci0tc3VwZXJcXEBtZWRpdW0ge1xuICAgICAgbWF4LXdpZHRoOiAxMjVyZW07IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjRyZW0pIHtcbiAgICAubC1jb250YWluZXItLXhzbWFsbFxcQGxhcmdlIHtcbiAgICAgIG1heC13aWR0aDogMjByZW07IH1cbiAgICAubC1jb250YWluZXItLXNtYWxsXFxAbGFyZ2Uge1xuICAgICAgbWF4LXdpZHRoOiAzMHJlbTsgfVxuICAgIC5sLWNvbnRhaW5lci0tbWVkaXVtXFxAbGFyZ2Uge1xuICAgICAgbWF4LXdpZHRoOiA0OHJlbTsgfVxuICAgIC5sLWNvbnRhaW5lci0tbGFyZ2VcXEBsYXJnZSB7XG4gICAgICBtYXgtd2lkdGg6IDY0cmVtOyB9XG4gICAgLmwtY29udGFpbmVyLS14bGFyZ2VcXEBsYXJnZSB7XG4gICAgICBtYXgtd2lkdGg6IDc4cmVtOyB9XG4gICAgLmwtY29udGFpbmVyLS1zdXBlclxcQGxhcmdlIHtcbiAgICAgIG1heC13aWR0aDogMTI1cmVtOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc4cmVtKSB7XG4gICAgLmwtY29udGFpbmVyLS14c21hbGxcXEB4bGFyZ2Uge1xuICAgICAgbWF4LXdpZHRoOiAyMHJlbTsgfVxuICAgIC5sLWNvbnRhaW5lci0tc21hbGxcXEB4bGFyZ2Uge1xuICAgICAgbWF4LXdpZHRoOiAzMHJlbTsgfVxuICAgIC5sLWNvbnRhaW5lci0tbWVkaXVtXFxAeGxhcmdlIHtcbiAgICAgIG1heC13aWR0aDogNDhyZW07IH1cbiAgICAubC1jb250YWluZXItLWxhcmdlXFxAeGxhcmdlIHtcbiAgICAgIG1heC13aWR0aDogNjRyZW07IH1cbiAgICAubC1jb250YWluZXItLXhsYXJnZVxcQHhsYXJnZSB7XG4gICAgICBtYXgtd2lkdGg6IDc4cmVtOyB9XG4gICAgLmwtY29udGFpbmVyLS1zdXBlclxcQHhsYXJnZSB7XG4gICAgICBtYXgtd2lkdGg6IDEyNXJlbTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMjVyZW0pIHtcbiAgICAubC1jb250YWluZXItLXhzbWFsbFxcQHN1cGVyIHtcbiAgICAgIG1heC13aWR0aDogMjByZW07IH1cbiAgICAubC1jb250YWluZXItLXNtYWxsXFxAc3VwZXIge1xuICAgICAgbWF4LXdpZHRoOiAzMHJlbTsgfVxuICAgIC5sLWNvbnRhaW5lci0tbWVkaXVtXFxAc3VwZXIge1xuICAgICAgbWF4LXdpZHRoOiA0OHJlbTsgfVxuICAgIC5sLWNvbnRhaW5lci0tbGFyZ2VcXEBzdXBlciB7XG4gICAgICBtYXgtd2lkdGg6IDY0cmVtOyB9XG4gICAgLmwtY29udGFpbmVyLS14bGFyZ2VcXEBzdXBlciB7XG4gICAgICBtYXgtd2lkdGg6IDc4cmVtOyB9XG4gICAgLmwtY29udGFpbmVyLS1zdXBlclxcQHN1cGVyIHtcbiAgICAgIG1heC13aWR0aDogMTI1cmVtOyB9IH1cbiAgLmwtY29udGFpbmVyLS14c21hbGwge1xuICAgIG1heC13aWR0aDogMjByZW07IH1cbiAgLmwtY29udGFpbmVyLS1zbWFsbCB7XG4gICAgbWF4LXdpZHRoOiAzMHJlbTsgfVxuICAubC1jb250YWluZXItLW1lZGl1bSB7XG4gICAgbWF4LXdpZHRoOiA0OHJlbTsgfVxuICAubC1jb250YWluZXItLWxhcmdlIHtcbiAgICBtYXgtd2lkdGg6IDY0cmVtOyB9XG4gIC5sLWNvbnRhaW5lci0teGxhcmdlIHtcbiAgICBtYXgtd2lkdGg6IDc4cmVtOyB9XG4gIC5sLWNvbnRhaW5lci0tc3VwZXIge1xuICAgIG1heC13aWR0aDogMTI1cmVtOyB9XG5cbi5sLWNvbnRhaW5lci0tZmx1c2gge1xuICBwYWRkaW5nOiAwOyB9XG5cbi8qISBBdmFsYW5jaGUgfCBNSVQgTGljZW5zZSB8IEBjb2xvdXJnYXJkZW4gKi9cbi8qKlxuICogQ09OVEVOVFNcbiAqIElOVFJPRFVDVElPTi4uLi4uLi4uLkhvdyB0aGUgZ3JpZCBzeXN0ZW0gd29ya3MuXG4gKiBMT0dJQy4uLi4uLi4uLi4uLi4uLi5UaGUgbWFnaWMgdGhhdCBtYWtlcyB0aGUgZ3JpZCB3b3JrLlxuICogR1JJRCBTRVRVUC4uLi4uLi4uLi4uQnVpbGQgdGhlIGdyaWQgc3RydWN0dXJlLlxuICogV0lEVEhTLi4uLi4uLi4uLi4uLi4uQnVpbGQgb3VyIHJlc3BvbnNpdmUgd2lkdGhzIGFyb3VuZCBvdXIgYnJlYWtwb2ludHMuXG4gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG5cdElOVFJPRFVDVElPTlxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiBHcmlkc1xubmFtZTogZ3JpZHNcbmNhdGVnb3J5OiBMYXlvdXRzXG4tLS1cblxuR3JpZHMgYXJlIGFuIGVhc3kgd2F5IHRvIHByb2R1Y2UgYSBmbHVpZCByZXNwb25zaXZlIGxheW91dC4gVGhleSdyZSBlYXN5IHRvIHVzZSBhbmQgdmVyeSBmbGV4aWJsZS4gXG5cbmNvbG9yIGtleTpcblxuPHVsPlxuXHQ8bGkgY2xhc3M9XCJ1LWNvbG9yLXBpbmstbGlnaHRlclwiPmdyaWRzIGFyZSBwaW5rPC9saT5cblx0PGxpIGNsYXNzPVwidS1jb2xvci1ibHVlXCI+Z3JpZCBjZWxscyBhcmUgYmx1ZTwvbGk+XG48L3VsPlxuXG5Ob3RlOiBJZ25vcmUgdGhlIGAuc2ctZ3JpZGAgY2xhc3Nlcy4gVGhlc2UgYXJlIGp1c3QgdXNlZCB0byBhZGQgYm9yZGVycy5cblxuIyMjIEJhc2ljIEdyaWRcblxuVXNlIHRoZSBgLmwtZ3JpZGAgY2xhc3MgdG8gd3JhcCB5b3VyIGAubC1ncmlkX19pdGVtYCBlbGVtZW50cy5cblxuYGBgaHRtbF9leGFtcGxlXG48ZGl2IGNsYXNzPVwibC1ncmlkICBzZy1ncmlkXCI+XG5cdDxkaXYgY2xhc3M9XCJsLWdyaWRfX2l0ZW1cIj5maXJzdDwvZGl2PlxuXHQ8ZGl2IGNsYXNzPVwibC1ncmlkX19pdGVtXCI+c2Vjb25kPC9kaXY+XG5cdDxkaXYgY2xhc3M9XCJsLWdyaWRfX2l0ZW1cIj50aGlyZDwvZGl2PlxuPC9kaXY+XG5gYGAgXG5cbiMjIyBXaWR0aHNcblxuVXNlIGZyYWN0aW9uIGNsYXNzIHN1Y2ggYXMgYDEvM2AgdG8gYXBwbHkgd2lkdGhzIHRvIGdyaWQgaXRlbXMuIElmIHlvdSBhZGQgYSB3aWR0aCB0byBvbmUgY2VsbCB0aGUgb3RoZXIgY2VsbHMgd2lsbCBhdXRvbWF0aWNhbGx5IHRha2UgdXAgdGhlIHJlc3Qgb2YgdGhlIHNwYWNlIGVxdWFsbHkuXG5cbmBgYGh0bWxfZXhhbXBsZVxuPGRpdiBjbGFzcz1cImwtZ3JpZCAgc2ctZ3JpZFwiPlxuXHQ8ZGl2IGNsYXNzPVwibC1ncmlkX19pdGVtICAxLzJcIj5maXJzdDwvZGl2PlxuXHQ8ZGl2IGNsYXNzPVwibC1ncmlkX19pdGVtXCI+c2Vjb25kPC9kaXY+XG5cdDxkaXYgY2xhc3M9XCJsLWdyaWRfX2l0ZW1cIj50aGlyZDwvZGl2PlxuPC9kaXY+XG5gYGAgXG5cbiMjIyBOZXN0aW5nXG5cbllvdSBjYW4gbmVzdCBncmlkcyBpbnNpZGUgY2VsbHMgd2l0aCBlYXNlLi4ud2l0aCBuZXN0aW5nIHlvdSdyZSBpbnRvIGFkdmFuY2VkIHRlcnJpdG9yeSEgXG5cbmBgYGh0bWxfZXhhbXBsZVxuPGRpdiBjbGFzcz1cImwtZ3JpZCAgc2ctZ3JpZFwiPlxuXHQ8ZGl2IGNsYXNzPVwibC1ncmlkX19pdGVtXCI+XG5cdFx0PGRpdiBjbGFzcz1cImwtZ3JpZCAgc2ctZ3JpZFwiPlxuXHRcdFx0PGRpdiBjbGFzcz1cImwtZ3JpZF9faXRlbVwiPmZpcnN0PC9kaXY+XG5cdFx0XHQ8ZGl2IGNsYXNzPVwibC1ncmlkX19pdGVtXCI+c2Vjb25kPC9kaXY+XG5cdFx0PC9kaXY+XG5cdFx0PGRpdiBjbGFzcz1cImwtZ3JpZCAgc2ctZ3JpZFwiPlxuXHRcdFx0PGRpdiBjbGFzcz1cImwtZ3JpZF9faXRlbVwiPnRoaXJkPC9kaXY+XG5cdFx0XHQ8ZGl2IGNsYXNzPVwibC1ncmlkX19pdGVtXCI+Zm91cnRoPC9kaXY+XG5cdFx0PC9kaXY+XG5cdDwvZGl2PlxuXHQ8ZGl2IGNsYXNzPVwibC1ncmlkX19pdGVtXCI+ZmlmdGg8L2Rpdj5cbjwvZGl2PlxuYGBgIFxuXG4jIyMgVmVydGljYWwgQWxpZ25tZW50XG5cbklmIG9uZSBvZiB5b3VyIGNlbGxzIGlzIHRhbGwgeW91IGNhbiBhcHBseSBhIHZlcnRpY2FsIGFsaWdubWVudCBtb2RpZmllciBjbGFzcyB0byB0aGUgZ3JpZC5cblxuYC5sLWdyaWQtLXRvcGAsIGAubC1ncmlkLS1taWRkbGVgIGFuZCBgLmwtZ3JpZC0tYm90dG9tYCBhcmUgc3VwcG9ydGVkLiBcblxuYGBgaHRtbF9leGFtcGxlXG48ZGl2IGNsYXNzPVwibC1ncmlkICBsLWdyaWQtLWJvdHRvbSAgc2ctZ3JpZFwiPlxuXHQ8ZGl2IGNsYXNzPVwibC1ncmlkX19pdGVtXCI+Zmlyc3Q8L2Rpdj5cblx0PGRpdiBjbGFzcz1cImwtZ3JpZF9faXRlbVwiPnNlY29uZDwvZGl2PlxuXHQ8ZGl2IGNsYXNzPVwibC1ncmlkX19pdGVtXCI+dGhpcmQ8L2Rpdj5cblx0PGRpdiBjbGFzcz1cImwtZ3JpZF9faXRlbVwiPlxuXHRcdGZvdXJ0aFxuXHRcdDxicj5mb3VydGhcblx0XHQ8YnI+Zm91cnRoXG5cdFx0PGJyPmZvdXJ0aFxuXHRcdDxicj5mb3VydGhcblx0XHQ8YnI+XG5cdDwvZGl2PlxuPC9kaXY+XG5gYGAgXG5cbllvdSBjYW4gb3ZlcnJpZGUgdGhlIHZlcnRpY2FsIGFsaWdubWVudCBvZiBhbGwgdGhlIGNlbGxzIGluIHRoZSBncmlkIGJ5IHNwZWNpZnlpbmcgcGVyIGNlbGwuXG5cbmAubC1ncmlkX19pdGVtLS10b3BgLCBgLmwtZ3JpZF9faXRlbS0tbWlkZGxlYCBhbmQgYC5sLWdyaWRfX2l0ZW0tLWJvdHRvbWAgYXJlIHN1cHBvcnRlZC4gXG5cbmBgYGh0bWxfZXhhbXBsZVxuPGRpdiBjbGFzcz1cImwtZ3JpZCAgbC1ncmlkLS1ib3R0b20gIHNnLWdyaWRcIj5cblx0PGRpdiBjbGFzcz1cImwtZ3JpZF9faXRlbSAgbC1ncmlkX19pdGVtLS10b3BcIj5maXJzdDwvZGl2PlxuXHQ8ZGl2IGNsYXNzPVwibC1ncmlkX19pdGVtICBsLWdyaWRfX2l0ZW0tLW1pZGRsZVwiPnNlY29uZDwvZGl2PlxuXHQ8ZGl2IGNsYXNzPVwibC1ncmlkX19pdGVtXCI+dGhpcmQ8L2Rpdj4gIDwhLS0gdGhlIGwtZ3JpZCBwdXNoZXMgdGhpcyBjZWxsIGRvd24gIC0tPlxuXHQ8ZGl2IGNsYXNzPVwibC1ncmlkX19pdGVtXCI+XG5cdFx0Zm91cnRoXG5cdFx0PGJyPmZvdXJ0aFxuXHRcdDxicj5mb3VydGhcblx0XHQ8YnI+Zm91cnRoXG5cdFx0PGJyPmZvdXJ0aFxuXHRcdDxicj5cblx0PC9kaXY+XG48L2Rpdj5cbmBgYCBcblxuIyMjIFJlc3BvbnNpdmVuZXNzXG5cblRoaXMgZ3JpZHMgcHJvdmlkZXMgeW91IHdpdGggd2lkdGhzIHRvIHN1aXQgYSBudW1iZXIgb2YgYnJlYWtwb2ludHMgZGVzaWduZWQgYXJvdW5kIGNvbnRlbnQgd2lkdGhzIG9mIGEgc2l6ZSB5b3Ugc3BlY2lmeS4gT3V0IG9mIHRoZSBib3gsIHRoaXMgZ3JpZCBjYXRlcnMgdG8gdGhlIGZvbGxvd2luZyBicmVha3BvaW50czogYEB4c21hbGxgLCBgQHNtYWxsYCwgYEBtZWRpdW1gLCBgQGxhcmdlYCwgYEB4bGFyZ2VgLCBhbmQgYEBzdXBlcmAuXG5cbkluIHRoaXMgZXhhbXBsZSwgYXMgdGhlIHZpZXdwb3J0IGluY3JlYXNlcyBpbiBzaXplIHRoZSBjZWxscyBnbyBmcm9tIDEwMCUgd2lkZSB0byAzMyUgd2lkZSBvbmUgYWZ0ZXIgYW5vdGhlciwgcmF0aGVyIHRoYW4gYWxsIGF0IG9uY2UuIFRoZSBzdWZmaXhlcyBhcHBseSB0byB0aGUgc2NyZWVuIHNpemVzICoqYW5kIHVwKiosIGluIGEgbW9iaWxlIGZpcnN0IG1hbm5lci5cblxuYGBgaHRtbF9leGFtcGxlXG48ZGl2IGNsYXNzPVwibC1ncmlkICBzZy1ncmlkXCI+XG5cdDxkaXYgY2xhc3M9XCJsLWdyaWRfX2l0ZW0gIDEvMSAgMS8zQHNtYWxsXCI+Zmlyc3Q8L2Rpdj5cblx0PGRpdiBjbGFzcz1cImwtZ3JpZF9faXRlbSAgMS8xICAxLzNAbWVkaXVtXCI+c2Vjb25kPC9kaXY+XG5cdDxkaXYgY2xhc3M9XCJsLWdyaWRfX2l0ZW0gIDEvMSAgMS8zQGxhcmdlXCI+dGhpcmQ8L2Rpdj5cbjwvZGl2PlxuYGBgIFxuXG4jIyMgR3V0dGVyc1xuXG5gLmwtZ3JpZC0tZmx1c2hgIHdpbGwgcmVtb3ZlIHRoZSBuZWdhdGl2ZSBtYXJnaW4gb24gYC5sLWdyaWRgIGVsZW1lbnRzIGFuZCBwYWRkaW5nIG9uIGAubC1ncmlkX19pdGVtYCBlbGVtZW50cy5cblxuYGBgaHRtbF9leGFtcGxlXG48ZGl2IGNsYXNzPVwibC1ncmlkICBsLWdyaWQtLWZsdXNoICBzZy1ncmlkXCI+XG5cdDxkaXYgY2xhc3M9XCJsLWdyaWRfX2l0ZW1cIj5maXJzdDwvZGl2PlxuXHQ8ZGl2IGNsYXNzPVwibC1ncmlkX19pdGVtXCI+c2Vjb25kPC9kaXY+XG5cdDxkaXYgY2xhc3M9XCJsLWdyaWRfX2l0ZW1cIj50aGlyZDwvZGl2PlxuPC9kaXY+XG5gYGAgXG5cbklmIHlvdSBzaW1wbHkgd2FudCB0byByZW1vdmUgdGhlIHBhZGRpbmcgb24gYSBzaW5nbGUgaXRlbSwgdXNlIGAubC1ncmlkX19pdGVtLS1mbHVzaGAuXG5cbmBgYGh0bWxfZXhhbXBsZVxuPGRpdiBjbGFzcz1cImwtZ3JpZCAgc2ctZ3JpZFwiPlxuXHQ8ZGl2IGNsYXNzPVwibC1ncmlkX19pdGVtXCI+Zmlyc3Q8L2Rpdj5cblx0PGRpdiBjbGFzcz1cImwtZ3JpZF9faXRlbVwiPnNlY29uZDwvZGl2PlxuXHQ8ZGl2IGNsYXNzPVwibC1ncmlkX19pdGVtICBsLWdyaWRfX2l0ZW0tLWZsdXNoXCI+dGhpcmQ8L2Rpdj5cbjwvZGl2PlxuYGBgIFxuXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcblx0TE9HSUMgYWthIFRIRSBNQUdJQ1xuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gICAgR1JJRCBMQVlPVVRcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKipcblx0ICogMS4gQWxsb3cgdGhlIGdyaWQgc3lzdGVtIHRvIGJlIHVzZWQgb24gbGlzdHMuXG5cdCAqIDIuIFJlbW92ZSBhbnkgbWFyZ2lucyBhbmQgcGFkZGluZ3MgdGhhdCBtaWdodCBhZmZlY3QgdGhlIGdyaWQgc3lzdGVtLlxuXHQgKiAzLiBBZGQgbmVnYXRpdmUgbWFyZ2lucyB0byBjb21wZW5zYXRlIGZvciBgLmdyaWRfX2l0ZW1gIHBhZGRpbmcuXG5cdCAqL1xuLmwtZ3JpZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgLyogWzFdICovXG4gIG1hcmdpbjogMDtcbiAgLyogWzJdICovXG4gIG1hcmdpbi1sZWZ0OiAtMWVtO1xuICBtYXJnaW4tcmlnaHQ6IC0xZW07XG4gIHBhZGRpbmc6IDA7XG4gIC8qIFsyXSAqLyB9XG5cbi8qKlxuXHQgKiBSZXZlcnNlZCBncmlkcyBhbGxvdyB5b3UgdG8gc3RydWN0dXJlIHlvdXIgc291cmNlIGluIHRoZSBvcHBvc2l0ZSBvcmRlciB0b1xuXHQgKiBob3cgeW91ciByZW5kZXJlZCBsYXlvdXQgd2lsbCBhcHBlYXIuXG5cdCAqIEV4dGVuZHMgYC5sLWdyaWRgLlxuXHQgKi9cbi5sLWdyaWQtLXJldmVyc2Uge1xuICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7IH1cblxuLyoqXG5cdCAqIEZsdXNoIGdyaWRzIGhhdmUgYWxsIHRoZSBwcm9wZXJ0aWVzIG9mIHJlZ3VsYXIgZ3JpZHMsIG1pbnVzIGFueSBzcGFjaW5nLlxuXHQgKiBFeHRlbmRzIGAubC1ncmlkYC5cblx0ICovXG4ubC1ncmlkLS1mbHVzaCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgLmwtZ3JpZC0tZmx1c2ggPiAubC1ncmlkX19pdGVtIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDsgfVxuXG4vKipcblx0ICogQWxpZ24gZ3JpZCBjZWxscyB2ZXJ0aWNhbGx5IChgLmwtZ3JpZC0tYm90dG9tYCBvciBgLmwtZ3JpZC0tbWlkZGxlYCBvciBgLmwtZ3JpZC0tdG9wYCkuXG5cdCAqIEV4dGVuZHMgYC5sLWdyaWRgLlxuXHQgKi9cbi5sLWdyaWQtLXRvcCB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyB9XG5cbi5sLWdyaWQtLW1pZGRsZSB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cblxuLmwtZ3JpZC0tYm90dG9tIHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtZW5kOyB9XG5cbi8qKlxuXHQgKiBBbGlnbiBncmlkIGNlbGxzIGhvcml6b250YWxseSAoYC5sLWdyaWQtLWxlZnRgIG9yIGAubC1ncmlkLS1jZW50ZXJgIG9yIGAubC1ncmlkLS1yaWdodGApLlxuXHQgKiBFeHRlbmRzIGAubC1ncmlkYC5cblx0ICovXG4ubC1ncmlkLS1sZWZ0IHtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OyB9XG5cbi5sLWdyaWQtLWNlbnRlciB7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG5cbi5sLWdyaWQtLXJpZ2h0IHtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgfVxuXG4ubC1ncmlkLS1zcGFjZS1hcm91bmQge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDsgfVxuXG4ubC1ncmlkLS1zcGFjZS1iZXR3ZWVuIHtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG5cbi8qKlxuXHQgKiBHcmlkIGl0ZW1zL2NlbGxzXG5cdCAqIDEuIFJlcXVpcmVkIHRvIGNvbWJpbmUgZmx1aWQgd2lkdGhzIGFuZCBmaXhlZCBndXR0ZXJzLlxuXHQgKiAyLiBHdXR0ZXJzLlxuXHQgKi9cbi5sLWdyaWRfX2l0ZW0ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAvKiBbMV0gKi9cbiAgZmxleDogMTtcbiAgcGFkZGluZy1sZWZ0OiAxZW07XG4gIC8qIFsyXSAqL1xuICBwYWRkaW5nLXJpZ2h0OiAxZW07XG4gIC8qIFsyXSAqLyB9XG5cbi8qKlxuXHQgKiBGbHVzaCBncmlkIGl0bWVzIGhhdmUgYWxsIHRoZSBwcm9wZXJ0aWVzIG9mIHJlZ3VsYXIgZ3JpZCBpdGVtcywgbWludXMgYW55IHNwYWNpbmcuXG5cdCAqIEV4dGVuZHMgYC5sLWdyaWRfX2l0ZW1gLlxuXHQgKi9cbi5sLWdyaWRfX2l0ZW0tLWZsdXNoIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG5cbi8qKlxuXHQgKiBHcmlkIGl0ZW0gdmVydGljYWwgYWxpZ25tZW50IHBlciBjZWxsLlxuXHQgKiAoYC5sLWdyaWRfX2l0ZW0tLWJvdHRvbWAgb3IgYC5sLWdyaWRfX2l0ZW0tLW1pZGRsZWAgb3IgYC5sLWdyaWRfX2l0ZW0tLXRvcGApXG5cdCAqIEV4dGVuZHMgYC5sLWdyaWRfX2l0ZW1gLlxuXHQgKi9cbi5sLWdyaWRfX2l0ZW0tLXRvcCB7XG4gIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7IH1cblxuLmwtZ3JpZF9faXRlbS0tbWlkZGxlIHtcbiAgYWxpZ24tc2VsZjogY2VudGVyOyB9XG5cbi5sLWdyaWRfX2l0ZW0tLWJvdHRvbSB7XG4gIGFsaWduLXNlbGY6IGZsZXgtZW5kOyB9XG5cbi8qKlxuXHQgKiBHcmlkIGl0ZW0gb3JkZXJpbmcgKGAubC1ncmlkX19pdGVtLS1maXJzdGAgb3IgYC5sLWdyaWRfX2l0ZW0tLWxhc3RgKS5cblx0ICogRXh0ZW5kcyBgLmwtZ3JpZF9faXRlbWAuXG5cdCAqL1xuLmwtZ3JpZF9faXRlbS0tZmlyc3Qge1xuICBvcmRlcjogLTE7IH1cblxuLmwtZ3JpZF9faXRlbS0tbGFzdCB7XG4gIG9yZGVyOiAxOyB9XG5cbi8qKlxuXHQgKiBHcmlkIGl0ZW0gc2hyaW5rcyB0byBmaXQgY29udGVudFxuXHQgKiBFeHRlbmRzIGAubC1ncmlkX19pdGVtYC5cblx0ICpcblx0LmwtZ3JpZF9faXRlbS0tZml0LFxuXHQlbC1ncmlkX19pdGVtLS1maXQge1xuXHRcdGZsZXg6IDE7XG5cdH0qL1xuLyoqXG5cdCAqIEdyaWQgaXRlbSBleHBhbmRzIHRvIGZpdCBwYXJlbnRcblx0ICogRXh0ZW5kcyBgLmwtZ3JpZF9faXRlbWAuXG5cdCAqL1xuLmwtZ3JpZF9faXRlbS0tZXhwYW5kIHtcbiAgZmxleDogMCAwIDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWFyZ2luLWxlZnQ6IDA7IH1cblxuLyoqXG5cdCAqIEdyaWQgaXRlbSBzaHJpbmtzIHRvIGZpdCBjb250ZW50XG5cdCAqIEV4dGVuZHMgYC5sLWdyaWRfX2l0ZW1gLlxuXHQgKi9cbi5sLWdyaWRfX2l0ZW0tLXNocmluayB7XG4gIGZsZXg6IDAgMSBhdXRvOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAyMHJlbSkge1xuICAvKipcblx0ICogMS4gQWxsb3cgdGhlIGdyaWQgc3lzdGVtIHRvIGJlIHVzZWQgb24gbGlzdHMuXG5cdCAqIDIuIFJlbW92ZSBhbnkgbWFyZ2lucyBhbmQgcGFkZGluZ3MgdGhhdCBtaWdodCBhZmZlY3QgdGhlIGdyaWQgc3lzdGVtLlxuXHQgKiAzLiBBZGQgbmVnYXRpdmUgbWFyZ2lucyB0byBjb21wZW5zYXRlIGZvciBgLmdyaWRfX2l0ZW1gIHBhZGRpbmcuXG5cdCAqL1xuICAubC1ncmlkXFxAeHNtYWxsIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIC8qIFsxXSAqL1xuICAgIG1hcmdpbjogMDtcbiAgICAvKiBbMl0gKi9cbiAgICBtYXJnaW4tbGVmdDogLTFlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xZW07XG4gICAgcGFkZGluZzogMDtcbiAgICAvKiBbMl0gKi8gfVxuICAvKipcblx0ICogUmV2ZXJzZWQgZ3JpZHMgYWxsb3cgeW91IHRvIHN0cnVjdHVyZSB5b3VyIHNvdXJjZSBpbiB0aGUgb3Bwb3NpdGUgb3JkZXIgdG9cblx0ICogaG93IHlvdXIgcmVuZGVyZWQgbGF5b3V0IHdpbGwgYXBwZWFyLlxuXHQgKiBFeHRlbmRzIGAubC1ncmlkYC5cblx0ICovXG4gIC5sLWdyaWQtLXJldmVyc2VcXEB4c21hbGwge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTsgfVxuICAvKipcblx0ICogRmx1c2ggZ3JpZHMgaGF2ZSBhbGwgdGhlIHByb3BlcnRpZXMgb2YgcmVndWxhciBncmlkcywgbWludXMgYW55IHNwYWNpbmcuXG5cdCAqIEV4dGVuZHMgYC5sLWdyaWRgLlxuXHQgKi9cbiAgLmwtZ3JpZC0tZmx1c2hcXEB4c21hbGwge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAgIC5sLWdyaWQtLWZsdXNoXFxAeHNtYWxsID4gLmwtZ3JpZF9faXRlbVxcQHhzbWFsbCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG4gIC8qKlxuXHQgKiBBbGlnbiBncmlkIGNlbGxzIHZlcnRpY2FsbHkgKGAubC1ncmlkLS1ib3R0b21gIG9yIGAubC1ncmlkLS1taWRkbGVgIG9yIGAubC1ncmlkLS10b3BgKS5cblx0ICogRXh0ZW5kcyBgLmwtZ3JpZGAuXG5cdCAqL1xuICAubC1ncmlkLS10b3BcXEB4c21hbGwge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyB9XG4gIC5sLWdyaWQtLW1pZGRsZVxcQHhzbWFsbCB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAubC1ncmlkLS1ib3R0b21cXEB4c21hbGwge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDsgfVxuICAvKipcblx0ICogQWxpZ24gZ3JpZCBjZWxscyBob3Jpem9udGFsbHkgKGAubC1ncmlkLS1sZWZ0YCBvciBgLmwtZ3JpZC0tY2VudGVyYCBvciBgLmwtZ3JpZC0tcmlnaHRgKS5cblx0ICogRXh0ZW5kcyBgLmwtZ3JpZGAuXG5cdCAqL1xuICAubC1ncmlkLS1sZWZ0XFxAeHNtYWxsIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cbiAgLmwtZ3JpZC0tY2VudGVyXFxAeHNtYWxsIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAubC1ncmlkLS1yaWdodFxcQHhzbWFsbCB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgfVxuICAubC1ncmlkLS1zcGFjZS1hcm91bmRcXEB4c21hbGwge1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kOyB9XG4gIC5sLWdyaWQtLXNwYWNlLWJldHdlZW5cXEB4c21hbGwge1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuICAvKipcblx0ICogR3JpZCBpdGVtcy9jZWxsc1xuXHQgKiAxLiBSZXF1aXJlZCB0byBjb21iaW5lIGZsdWlkIHdpZHRocyBhbmQgZml4ZWQgZ3V0dGVycy5cblx0ICogMi4gR3V0dGVycy5cblx0ICovXG4gIC5sLWdyaWRfX2l0ZW1cXEB4c21hbGwge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgLyogWzFdICovXG4gICAgZmxleDogMTtcbiAgICBwYWRkaW5nLWxlZnQ6IDFlbTtcbiAgICAvKiBbMl0gKi9cbiAgICBwYWRkaW5nLXJpZ2h0OiAxZW07XG4gICAgLyogWzJdICovIH1cbiAgLyoqXG5cdCAqIEZsdXNoIGdyaWQgaXRtZXMgaGF2ZSBhbGwgdGhlIHByb3BlcnRpZXMgb2YgcmVndWxhciBncmlkIGl0ZW1zLCBtaW51cyBhbnkgc3BhY2luZy5cblx0ICogRXh0ZW5kcyBgLmwtZ3JpZF9faXRlbWAuXG5cdCAqL1xuICAubC1ncmlkX19pdGVtLS1mbHVzaFxcQHhzbWFsbCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgLyoqXG5cdCAqIEdyaWQgaXRlbSB2ZXJ0aWNhbCBhbGlnbm1lbnQgcGVyIGNlbGwuXG5cdCAqIChgLmwtZ3JpZF9faXRlbS0tYm90dG9tYCBvciBgLmwtZ3JpZF9faXRlbS0tbWlkZGxlYCBvciBgLmwtZ3JpZF9faXRlbS0tdG9wYClcblx0ICogRXh0ZW5kcyBgLmwtZ3JpZF9faXRlbWAuXG5cdCAqL1xuICAubC1ncmlkX19pdGVtLS10b3BcXEB4c21hbGwge1xuICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7IH1cbiAgLmwtZ3JpZF9faXRlbS0tbWlkZGxlXFxAeHNtYWxsIHtcbiAgICBhbGlnbi1zZWxmOiBjZW50ZXI7IH1cbiAgLmwtZ3JpZF9faXRlbS0tYm90dG9tXFxAeHNtYWxsIHtcbiAgICBhbGlnbi1zZWxmOiBmbGV4LWVuZDsgfVxuICAvKipcblx0ICogR3JpZCBpdGVtIG9yZGVyaW5nIChgLmwtZ3JpZF9faXRlbS0tZmlyc3RgIG9yIGAubC1ncmlkX19pdGVtLS1sYXN0YCkuXG5cdCAqIEV4dGVuZHMgYC5sLWdyaWRfX2l0ZW1gLlxuXHQgKi9cbiAgLmwtZ3JpZF9faXRlbS0tZmlyc3RcXEB4c21hbGwge1xuICAgIG9yZGVyOiAtMTsgfVxuICAubC1ncmlkX19pdGVtLS1sYXN0XFxAeHNtYWxsIHtcbiAgICBvcmRlcjogMTsgfVxuICAvKipcblx0ICogR3JpZCBpdGVtIHNocmlua3MgdG8gZml0IGNvbnRlbnRcblx0ICogRXh0ZW5kcyBgLmwtZ3JpZF9faXRlbWAuXG5cdCAqXG5cdC5sLWdyaWRfX2l0ZW0tLWZpdCxcblx0JWwtZ3JpZF9faXRlbS0tZml0IHtcblx0XHRmbGV4OiAxO1xuXHR9Ki9cbiAgLyoqXG5cdCAqIEdyaWQgaXRlbSBleHBhbmRzIHRvIGZpdCBwYXJlbnRcblx0ICogRXh0ZW5kcyBgLmwtZ3JpZF9faXRlbWAuXG5cdCAqL1xuICAubC1ncmlkX19pdGVtLS1leHBhbmRcXEB4c21hbGwge1xuICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAvKipcblx0ICogR3JpZCBpdGVtIHNocmlua3MgdG8gZml0IGNvbnRlbnRcblx0ICogRXh0ZW5kcyBgLmwtZ3JpZF9faXRlbWAuXG5cdCAqL1xuICAubC1ncmlkX19pdGVtLS1zaHJpbmtcXEB4c21hbGwge1xuICAgIGZsZXg6IDAgMSBhdXRvOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDMwcmVtKSB7XG4gIC8qKlxuXHQgKiAxLiBBbGxvdyB0aGUgZ3JpZCBzeXN0ZW0gdG8gYmUgdXNlZCBvbiBsaXN0cy5cblx0ICogMi4gUmVtb3ZlIGFueSBtYXJnaW5zIGFuZCBwYWRkaW5ncyB0aGF0IG1pZ2h0IGFmZmVjdCB0aGUgZ3JpZCBzeXN0ZW0uXG5cdCAqIDMuIEFkZCBuZWdhdGl2ZSBtYXJnaW5zIHRvIGNvbXBlbnNhdGUgZm9yIGAuZ3JpZF9faXRlbWAgcGFkZGluZy5cblx0ICovXG4gIC5sLWdyaWRcXEBzbWFsbCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAvKiBbMV0gKi9cbiAgICBtYXJnaW46IDA7XG4gICAgLyogWzJdICovXG4gICAgbWFyZ2luLWxlZnQ6IC0xZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAtMWVtO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgLyogWzJdICovIH1cbiAgLyoqXG5cdCAqIFJldmVyc2VkIGdyaWRzIGFsbG93IHlvdSB0byBzdHJ1Y3R1cmUgeW91ciBzb3VyY2UgaW4gdGhlIG9wcG9zaXRlIG9yZGVyIHRvXG5cdCAqIGhvdyB5b3VyIHJlbmRlcmVkIGxheW91dCB3aWxsIGFwcGVhci5cblx0ICogRXh0ZW5kcyBgLmwtZ3JpZGAuXG5cdCAqL1xuICAubC1ncmlkLS1yZXZlcnNlXFxAc21hbGwge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTsgfVxuICAvKipcblx0ICogRmx1c2ggZ3JpZHMgaGF2ZSBhbGwgdGhlIHByb3BlcnRpZXMgb2YgcmVndWxhciBncmlkcywgbWludXMgYW55IHNwYWNpbmcuXG5cdCAqIEV4dGVuZHMgYC5sLWdyaWRgLlxuXHQgKi9cbiAgLmwtZ3JpZC0tZmx1c2hcXEBzbWFsbCB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gICAgLmwtZ3JpZC0tZmx1c2hcXEBzbWFsbCA+IC5sLWdyaWRfX2l0ZW1cXEBzbWFsbCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG4gIC8qKlxuXHQgKiBBbGlnbiBncmlkIGNlbGxzIHZlcnRpY2FsbHkgKGAubC1ncmlkLS1ib3R0b21gIG9yIGAubC1ncmlkLS1taWRkbGVgIG9yIGAubC1ncmlkLS10b3BgKS5cblx0ICogRXh0ZW5kcyBgLmwtZ3JpZGAuXG5cdCAqL1xuICAubC1ncmlkLS10b3BcXEBzbWFsbCB7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IH1cbiAgLmwtZ3JpZC0tbWlkZGxlXFxAc21hbGwge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgLmwtZ3JpZC0tYm90dG9tXFxAc21hbGwge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDsgfVxuICAvKipcblx0ICogQWxpZ24gZ3JpZCBjZWxscyBob3Jpem9udGFsbHkgKGAubC1ncmlkLS1sZWZ0YCBvciBgLmwtZ3JpZC0tY2VudGVyYCBvciBgLmwtZ3JpZC0tcmlnaHRgKS5cblx0ICogRXh0ZW5kcyBgLmwtZ3JpZGAuXG5cdCAqL1xuICAubC1ncmlkLS1sZWZ0XFxAc21hbGwge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxuICAubC1ncmlkLS1jZW50ZXJcXEBzbWFsbCB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgLmwtZ3JpZC0tcmlnaHRcXEBzbWFsbCB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgfVxuICAubC1ncmlkLS1zcGFjZS1hcm91bmRcXEBzbWFsbCB7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7IH1cbiAgLmwtZ3JpZC0tc3BhY2UtYmV0d2VlblxcQHNtYWxsIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cbiAgLyoqXG5cdCAqIEdyaWQgaXRlbXMvY2VsbHNcblx0ICogMS4gUmVxdWlyZWQgdG8gY29tYmluZSBmbHVpZCB3aWR0aHMgYW5kIGZpeGVkIGd1dHRlcnMuXG5cdCAqIDIuIEd1dHRlcnMuXG5cdCAqL1xuICAubC1ncmlkX19pdGVtXFxAc21hbGwge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgLyogWzFdICovXG4gICAgZmxleDogMTtcbiAgICBwYWRkaW5nLWxlZnQ6IDFlbTtcbiAgICAvKiBbMl0gKi9cbiAgICBwYWRkaW5nLXJpZ2h0OiAxZW07XG4gICAgLyogWzJdICovIH1cbiAgLyoqXG5cdCAqIEZsdXNoIGdyaWQgaXRtZXMgaGF2ZSBhbGwgdGhlIHByb3BlcnRpZXMgb2YgcmVndWxhciBncmlkIGl0ZW1zLCBtaW51cyBhbnkgc3BhY2luZy5cblx0ICogRXh0ZW5kcyBgLmwtZ3JpZF9faXRlbWAuXG5cdCAqL1xuICAubC1ncmlkX19pdGVtLS1mbHVzaFxcQHNtYWxsIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDsgfVxuICAvKipcblx0ICogR3JpZCBpdGVtIHZlcnRpY2FsIGFsaWdubWVudCBwZXIgY2VsbC5cblx0ICogKGAubC1ncmlkX19pdGVtLS1ib3R0b21gIG9yIGAubC1ncmlkX19pdGVtLS1taWRkbGVgIG9yIGAubC1ncmlkX19pdGVtLS10b3BgKVxuXHQgKiBFeHRlbmRzIGAubC1ncmlkX19pdGVtYC5cblx0ICovXG4gIC5sLWdyaWRfX2l0ZW0tLXRvcFxcQHNtYWxsIHtcbiAgICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0OyB9XG4gIC5sLWdyaWRfX2l0ZW0tLW1pZGRsZVxcQHNtYWxsIHtcbiAgICBhbGlnbi1zZWxmOiBjZW50ZXI7IH1cbiAgLmwtZ3JpZF9faXRlbS0tYm90dG9tXFxAc21hbGwge1xuICAgIGFsaWduLXNlbGY6IGZsZXgtZW5kOyB9XG4gIC8qKlxuXHQgKiBHcmlkIGl0ZW0gb3JkZXJpbmcgKGAubC1ncmlkX19pdGVtLS1maXJzdGAgb3IgYC5sLWdyaWRfX2l0ZW0tLWxhc3RgKS5cblx0ICogRXh0ZW5kcyBgLmwtZ3JpZF9faXRlbWAuXG5cdCAqL1xuICAubC1ncmlkX19pdGVtLS1maXJzdFxcQHNtYWxsIHtcbiAgICBvcmRlcjogLTE7IH1cbiAgLmwtZ3JpZF9faXRlbS0tbGFzdFxcQHNtYWxsIHtcbiAgICBvcmRlcjogMTsgfVxuICAvKipcblx0ICogR3JpZCBpdGVtIHNocmlua3MgdG8gZml0IGNvbnRlbnRcblx0ICogRXh0ZW5kcyBgLmwtZ3JpZF9faXRlbWAuXG5cdCAqXG5cdC5sLWdyaWRfX2l0ZW0tLWZpdCxcblx0JWwtZ3JpZF9faXRlbS0tZml0IHtcblx0XHRmbGV4OiAxO1xuXHR9Ki9cbiAgLyoqXG5cdCAqIEdyaWQgaXRlbSBleHBhbmRzIHRvIGZpdCBwYXJlbnRcblx0ICogRXh0ZW5kcyBgLmwtZ3JpZF9faXRlbWAuXG5cdCAqL1xuICAubC1ncmlkX19pdGVtLS1leHBhbmRcXEBzbWFsbCB7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIC8qKlxuXHQgKiBHcmlkIGl0ZW0gc2hyaW5rcyB0byBmaXQgY29udGVudFxuXHQgKiBFeHRlbmRzIGAubC1ncmlkX19pdGVtYC5cblx0ICovXG4gIC5sLWdyaWRfX2l0ZW0tLXNocmlua1xcQHNtYWxsIHtcbiAgICBmbGV4OiAwIDEgYXV0bzsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0OHJlbSkge1xuICAvKipcblx0ICogMS4gQWxsb3cgdGhlIGdyaWQgc3lzdGVtIHRvIGJlIHVzZWQgb24gbGlzdHMuXG5cdCAqIDIuIFJlbW92ZSBhbnkgbWFyZ2lucyBhbmQgcGFkZGluZ3MgdGhhdCBtaWdodCBhZmZlY3QgdGhlIGdyaWQgc3lzdGVtLlxuXHQgKiAzLiBBZGQgbmVnYXRpdmUgbWFyZ2lucyB0byBjb21wZW5zYXRlIGZvciBgLmdyaWRfX2l0ZW1gIHBhZGRpbmcuXG5cdCAqL1xuICAubC1ncmlkXFxAbWVkaXVtIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIC8qIFsxXSAqL1xuICAgIG1hcmdpbjogMDtcbiAgICAvKiBbMl0gKi9cbiAgICBtYXJnaW4tbGVmdDogLTFlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xZW07XG4gICAgcGFkZGluZzogMDtcbiAgICAvKiBbMl0gKi8gfVxuICAvKipcblx0ICogUmV2ZXJzZWQgZ3JpZHMgYWxsb3cgeW91IHRvIHN0cnVjdHVyZSB5b3VyIHNvdXJjZSBpbiB0aGUgb3Bwb3NpdGUgb3JkZXIgdG9cblx0ICogaG93IHlvdXIgcmVuZGVyZWQgbGF5b3V0IHdpbGwgYXBwZWFyLlxuXHQgKiBFeHRlbmRzIGAubC1ncmlkYC5cblx0ICovXG4gIC5sLWdyaWQtLXJldmVyc2VcXEBtZWRpdW0ge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTsgfVxuICAvKipcblx0ICogRmx1c2ggZ3JpZHMgaGF2ZSBhbGwgdGhlIHByb3BlcnRpZXMgb2YgcmVndWxhciBncmlkcywgbWludXMgYW55IHNwYWNpbmcuXG5cdCAqIEV4dGVuZHMgYC5sLWdyaWRgLlxuXHQgKi9cbiAgLmwtZ3JpZC0tZmx1c2hcXEBtZWRpdW0ge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAgIC5sLWdyaWQtLWZsdXNoXFxAbWVkaXVtID4gLmwtZ3JpZF9faXRlbVxcQG1lZGl1bSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG4gIC8qKlxuXHQgKiBBbGlnbiBncmlkIGNlbGxzIHZlcnRpY2FsbHkgKGAubC1ncmlkLS1ib3R0b21gIG9yIGAubC1ncmlkLS1taWRkbGVgIG9yIGAubC1ncmlkLS10b3BgKS5cblx0ICogRXh0ZW5kcyBgLmwtZ3JpZGAuXG5cdCAqL1xuICAubC1ncmlkLS10b3BcXEBtZWRpdW0ge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyB9XG4gIC5sLWdyaWQtLW1pZGRsZVxcQG1lZGl1bSB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAubC1ncmlkLS1ib3R0b21cXEBtZWRpdW0ge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDsgfVxuICAvKipcblx0ICogQWxpZ24gZ3JpZCBjZWxscyBob3Jpem9udGFsbHkgKGAubC1ncmlkLS1sZWZ0YCBvciBgLmwtZ3JpZC0tY2VudGVyYCBvciBgLmwtZ3JpZC0tcmlnaHRgKS5cblx0ICogRXh0ZW5kcyBgLmwtZ3JpZGAuXG5cdCAqL1xuICAubC1ncmlkLS1sZWZ0XFxAbWVkaXVtIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cbiAgLmwtZ3JpZC0tY2VudGVyXFxAbWVkaXVtIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAubC1ncmlkLS1yaWdodFxcQG1lZGl1bSB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgfVxuICAubC1ncmlkLS1zcGFjZS1hcm91bmRcXEBtZWRpdW0ge1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kOyB9XG4gIC5sLWdyaWQtLXNwYWNlLWJldHdlZW5cXEBtZWRpdW0ge1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuICAvKipcblx0ICogR3JpZCBpdGVtcy9jZWxsc1xuXHQgKiAxLiBSZXF1aXJlZCB0byBjb21iaW5lIGZsdWlkIHdpZHRocyBhbmQgZml4ZWQgZ3V0dGVycy5cblx0ICogMi4gR3V0dGVycy5cblx0ICovXG4gIC5sLWdyaWRfX2l0ZW1cXEBtZWRpdW0ge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgLyogWzFdICovXG4gICAgZmxleDogMTtcbiAgICBwYWRkaW5nLWxlZnQ6IDFlbTtcbiAgICAvKiBbMl0gKi9cbiAgICBwYWRkaW5nLXJpZ2h0OiAxZW07XG4gICAgLyogWzJdICovIH1cbiAgLyoqXG5cdCAqIEZsdXNoIGdyaWQgaXRtZXMgaGF2ZSBhbGwgdGhlIHByb3BlcnRpZXMgb2YgcmVndWxhciBncmlkIGl0ZW1zLCBtaW51cyBhbnkgc3BhY2luZy5cblx0ICogRXh0ZW5kcyBgLmwtZ3JpZF9faXRlbWAuXG5cdCAqL1xuICAubC1ncmlkX19pdGVtLS1mbHVzaFxcQG1lZGl1bSB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgLyoqXG5cdCAqIEdyaWQgaXRlbSB2ZXJ0aWNhbCBhbGlnbm1lbnQgcGVyIGNlbGwuXG5cdCAqIChgLmwtZ3JpZF9faXRlbS0tYm90dG9tYCBvciBgLmwtZ3JpZF9faXRlbS0tbWlkZGxlYCBvciBgLmwtZ3JpZF9faXRlbS0tdG9wYClcblx0ICogRXh0ZW5kcyBgLmwtZ3JpZF9faXRlbWAuXG5cdCAqL1xuICAubC1ncmlkX19pdGVtLS10b3BcXEBtZWRpdW0ge1xuICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7IH1cbiAgLmwtZ3JpZF9faXRlbS0tbWlkZGxlXFxAbWVkaXVtIHtcbiAgICBhbGlnbi1zZWxmOiBjZW50ZXI7IH1cbiAgLmwtZ3JpZF9faXRlbS0tYm90dG9tXFxAbWVkaXVtIHtcbiAgICBhbGlnbi1zZWxmOiBmbGV4LWVuZDsgfVxuICAvKipcblx0ICogR3JpZCBpdGVtIG9yZGVyaW5nIChgLmwtZ3JpZF9faXRlbS0tZmlyc3RgIG9yIGAubC1ncmlkX19pdGVtLS1sYXN0YCkuXG5cdCAqIEV4dGVuZHMgYC5sLWdyaWRfX2l0ZW1gLlxuXHQgKi9cbiAgLmwtZ3JpZF9faXRlbS0tZmlyc3RcXEBtZWRpdW0ge1xuICAgIG9yZGVyOiAtMTsgfVxuICAubC1ncmlkX19pdGVtLS1sYXN0XFxAbWVkaXVtIHtcbiAgICBvcmRlcjogMTsgfVxuICAvKipcblx0ICogR3JpZCBpdGVtIHNocmlua3MgdG8gZml0IGNvbnRlbnRcblx0ICogRXh0ZW5kcyBgLmwtZ3JpZF9faXRlbWAuXG5cdCAqXG5cdC5sLWdyaWRfX2l0ZW0tLWZpdCxcblx0JWwtZ3JpZF9faXRlbS0tZml0IHtcblx0XHRmbGV4OiAxO1xuXHR9Ki9cbiAgLyoqXG5cdCAqIEdyaWQgaXRlbSBleHBhbmRzIHRvIGZpdCBwYXJlbnRcblx0ICogRXh0ZW5kcyBgLmwtZ3JpZF9faXRlbWAuXG5cdCAqL1xuICAubC1ncmlkX19pdGVtLS1leHBhbmRcXEBtZWRpdW0ge1xuICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAvKipcblx0ICogR3JpZCBpdGVtIHNocmlua3MgdG8gZml0IGNvbnRlbnRcblx0ICogRXh0ZW5kcyBgLmwtZ3JpZF9faXRlbWAuXG5cdCAqL1xuICAubC1ncmlkX19pdGVtLS1zaHJpbmtcXEBtZWRpdW0ge1xuICAgIGZsZXg6IDAgMSBhdXRvOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDY0cmVtKSB7XG4gIC8qKlxuXHQgKiAxLiBBbGxvdyB0aGUgZ3JpZCBzeXN0ZW0gdG8gYmUgdXNlZCBvbiBsaXN0cy5cblx0ICogMi4gUmVtb3ZlIGFueSBtYXJnaW5zIGFuZCBwYWRkaW5ncyB0aGF0IG1pZ2h0IGFmZmVjdCB0aGUgZ3JpZCBzeXN0ZW0uXG5cdCAqIDMuIEFkZCBuZWdhdGl2ZSBtYXJnaW5zIHRvIGNvbXBlbnNhdGUgZm9yIGAuZ3JpZF9faXRlbWAgcGFkZGluZy5cblx0ICovXG4gIC5sLWdyaWRcXEBsYXJnZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAvKiBbMV0gKi9cbiAgICBtYXJnaW46IDA7XG4gICAgLyogWzJdICovXG4gICAgbWFyZ2luLWxlZnQ6IC0xZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAtMWVtO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgLyogWzJdICovIH1cbiAgLyoqXG5cdCAqIFJldmVyc2VkIGdyaWRzIGFsbG93IHlvdSB0byBzdHJ1Y3R1cmUgeW91ciBzb3VyY2UgaW4gdGhlIG9wcG9zaXRlIG9yZGVyIHRvXG5cdCAqIGhvdyB5b3VyIHJlbmRlcmVkIGxheW91dCB3aWxsIGFwcGVhci5cblx0ICogRXh0ZW5kcyBgLmwtZ3JpZGAuXG5cdCAqL1xuICAubC1ncmlkLS1yZXZlcnNlXFxAbGFyZ2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTsgfVxuICAvKipcblx0ICogRmx1c2ggZ3JpZHMgaGF2ZSBhbGwgdGhlIHByb3BlcnRpZXMgb2YgcmVndWxhciBncmlkcywgbWludXMgYW55IHNwYWNpbmcuXG5cdCAqIEV4dGVuZHMgYC5sLWdyaWRgLlxuXHQgKi9cbiAgLmwtZ3JpZC0tZmx1c2hcXEBsYXJnZSB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gICAgLmwtZ3JpZC0tZmx1c2hcXEBsYXJnZSA+IC5sLWdyaWRfX2l0ZW1cXEBsYXJnZSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG4gIC8qKlxuXHQgKiBBbGlnbiBncmlkIGNlbGxzIHZlcnRpY2FsbHkgKGAubC1ncmlkLS1ib3R0b21gIG9yIGAubC1ncmlkLS1taWRkbGVgIG9yIGAubC1ncmlkLS10b3BgKS5cblx0ICogRXh0ZW5kcyBgLmwtZ3JpZGAuXG5cdCAqL1xuICAubC1ncmlkLS10b3BcXEBsYXJnZSB7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IH1cbiAgLmwtZ3JpZC0tbWlkZGxlXFxAbGFyZ2Uge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgLmwtZ3JpZC0tYm90dG9tXFxAbGFyZ2Uge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDsgfVxuICAvKipcblx0ICogQWxpZ24gZ3JpZCBjZWxscyBob3Jpem9udGFsbHkgKGAubC1ncmlkLS1sZWZ0YCBvciBgLmwtZ3JpZC0tY2VudGVyYCBvciBgLmwtZ3JpZC0tcmlnaHRgKS5cblx0ICogRXh0ZW5kcyBgLmwtZ3JpZGAuXG5cdCAqL1xuICAubC1ncmlkLS1sZWZ0XFxAbGFyZ2Uge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxuICAubC1ncmlkLS1jZW50ZXJcXEBsYXJnZSB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgLmwtZ3JpZC0tcmlnaHRcXEBsYXJnZSB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgfVxuICAubC1ncmlkLS1zcGFjZS1hcm91bmRcXEBsYXJnZSB7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7IH1cbiAgLmwtZ3JpZC0tc3BhY2UtYmV0d2VlblxcQGxhcmdlIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cbiAgLyoqXG5cdCAqIEdyaWQgaXRlbXMvY2VsbHNcblx0ICogMS4gUmVxdWlyZWQgdG8gY29tYmluZSBmbHVpZCB3aWR0aHMgYW5kIGZpeGVkIGd1dHRlcnMuXG5cdCAqIDIuIEd1dHRlcnMuXG5cdCAqL1xuICAubC1ncmlkX19pdGVtXFxAbGFyZ2Uge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgLyogWzFdICovXG4gICAgZmxleDogMTtcbiAgICBwYWRkaW5nLWxlZnQ6IDFlbTtcbiAgICAvKiBbMl0gKi9cbiAgICBwYWRkaW5nLXJpZ2h0OiAxZW07XG4gICAgLyogWzJdICovIH1cbiAgLyoqXG5cdCAqIEZsdXNoIGdyaWQgaXRtZXMgaGF2ZSBhbGwgdGhlIHByb3BlcnRpZXMgb2YgcmVndWxhciBncmlkIGl0ZW1zLCBtaW51cyBhbnkgc3BhY2luZy5cblx0ICogRXh0ZW5kcyBgLmwtZ3JpZF9faXRlbWAuXG5cdCAqL1xuICAubC1ncmlkX19pdGVtLS1mbHVzaFxcQGxhcmdlIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDsgfVxuICAvKipcblx0ICogR3JpZCBpdGVtIHZlcnRpY2FsIGFsaWdubWVudCBwZXIgY2VsbC5cblx0ICogKGAubC1ncmlkX19pdGVtLS1ib3R0b21gIG9yIGAubC1ncmlkX19pdGVtLS1taWRkbGVgIG9yIGAubC1ncmlkX19pdGVtLS10b3BgKVxuXHQgKiBFeHRlbmRzIGAubC1ncmlkX19pdGVtYC5cblx0ICovXG4gIC5sLWdyaWRfX2l0ZW0tLXRvcFxcQGxhcmdlIHtcbiAgICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0OyB9XG4gIC5sLWdyaWRfX2l0ZW0tLW1pZGRsZVxcQGxhcmdlIHtcbiAgICBhbGlnbi1zZWxmOiBjZW50ZXI7IH1cbiAgLmwtZ3JpZF9faXRlbS0tYm90dG9tXFxAbGFyZ2Uge1xuICAgIGFsaWduLXNlbGY6IGZsZXgtZW5kOyB9XG4gIC8qKlxuXHQgKiBHcmlkIGl0ZW0gb3JkZXJpbmcgKGAubC1ncmlkX19pdGVtLS1maXJzdGAgb3IgYC5sLWdyaWRfX2l0ZW0tLWxhc3RgKS5cblx0ICogRXh0ZW5kcyBgLmwtZ3JpZF9faXRlbWAuXG5cdCAqL1xuICAubC1ncmlkX19pdGVtLS1maXJzdFxcQGxhcmdlIHtcbiAgICBvcmRlcjogLTE7IH1cbiAgLmwtZ3JpZF9faXRlbS0tbGFzdFxcQGxhcmdlIHtcbiAgICBvcmRlcjogMTsgfVxuICAvKipcblx0ICogR3JpZCBpdGVtIHNocmlua3MgdG8gZml0IGNvbnRlbnRcblx0ICogRXh0ZW5kcyBgLmwtZ3JpZF9faXRlbWAuXG5cdCAqXG5cdC5sLWdyaWRfX2l0ZW0tLWZpdCxcblx0JWwtZ3JpZF9faXRlbS0tZml0IHtcblx0XHRmbGV4OiAxO1xuXHR9Ki9cbiAgLyoqXG5cdCAqIEdyaWQgaXRlbSBleHBhbmRzIHRvIGZpdCBwYXJlbnRcblx0ICogRXh0ZW5kcyBgLmwtZ3JpZF9faXRlbWAuXG5cdCAqL1xuICAubC1ncmlkX19pdGVtLS1leHBhbmRcXEBsYXJnZSB7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIC8qKlxuXHQgKiBHcmlkIGl0ZW0gc2hyaW5rcyB0byBmaXQgY29udGVudFxuXHQgKiBFeHRlbmRzIGAubC1ncmlkX19pdGVtYC5cblx0ICovXG4gIC5sLWdyaWRfX2l0ZW0tLXNocmlua1xcQGxhcmdlIHtcbiAgICBmbGV4OiAwIDEgYXV0bzsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3OHJlbSkge1xuICAvKipcblx0ICogMS4gQWxsb3cgdGhlIGdyaWQgc3lzdGVtIHRvIGJlIHVzZWQgb24gbGlzdHMuXG5cdCAqIDIuIFJlbW92ZSBhbnkgbWFyZ2lucyBhbmQgcGFkZGluZ3MgdGhhdCBtaWdodCBhZmZlY3QgdGhlIGdyaWQgc3lzdGVtLlxuXHQgKiAzLiBBZGQgbmVnYXRpdmUgbWFyZ2lucyB0byBjb21wZW5zYXRlIGZvciBgLmdyaWRfX2l0ZW1gIHBhZGRpbmcuXG5cdCAqL1xuICAubC1ncmlkXFxAeGxhcmdlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIC8qIFsxXSAqL1xuICAgIG1hcmdpbjogMDtcbiAgICAvKiBbMl0gKi9cbiAgICBtYXJnaW4tbGVmdDogLTFlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xZW07XG4gICAgcGFkZGluZzogMDtcbiAgICAvKiBbMl0gKi8gfVxuICAvKipcblx0ICogUmV2ZXJzZWQgZ3JpZHMgYWxsb3cgeW91IHRvIHN0cnVjdHVyZSB5b3VyIHNvdXJjZSBpbiB0aGUgb3Bwb3NpdGUgb3JkZXIgdG9cblx0ICogaG93IHlvdXIgcmVuZGVyZWQgbGF5b3V0IHdpbGwgYXBwZWFyLlxuXHQgKiBFeHRlbmRzIGAubC1ncmlkYC5cblx0ICovXG4gIC5sLWdyaWQtLXJldmVyc2VcXEB4bGFyZ2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTsgfVxuICAvKipcblx0ICogRmx1c2ggZ3JpZHMgaGF2ZSBhbGwgdGhlIHByb3BlcnRpZXMgb2YgcmVndWxhciBncmlkcywgbWludXMgYW55IHNwYWNpbmcuXG5cdCAqIEV4dGVuZHMgYC5sLWdyaWRgLlxuXHQgKi9cbiAgLmwtZ3JpZC0tZmx1c2hcXEB4bGFyZ2Uge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAgIC5sLWdyaWQtLWZsdXNoXFxAeGxhcmdlID4gLmwtZ3JpZF9faXRlbVxcQHhsYXJnZSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG4gIC8qKlxuXHQgKiBBbGlnbiBncmlkIGNlbGxzIHZlcnRpY2FsbHkgKGAubC1ncmlkLS1ib3R0b21gIG9yIGAubC1ncmlkLS1taWRkbGVgIG9yIGAubC1ncmlkLS10b3BgKS5cblx0ICogRXh0ZW5kcyBgLmwtZ3JpZGAuXG5cdCAqL1xuICAubC1ncmlkLS10b3BcXEB4bGFyZ2Uge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyB9XG4gIC5sLWdyaWQtLW1pZGRsZVxcQHhsYXJnZSB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAubC1ncmlkLS1ib3R0b21cXEB4bGFyZ2Uge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDsgfVxuICAvKipcblx0ICogQWxpZ24gZ3JpZCBjZWxscyBob3Jpem9udGFsbHkgKGAubC1ncmlkLS1sZWZ0YCBvciBgLmwtZ3JpZC0tY2VudGVyYCBvciBgLmwtZ3JpZC0tcmlnaHRgKS5cblx0ICogRXh0ZW5kcyBgLmwtZ3JpZGAuXG5cdCAqL1xuICAubC1ncmlkLS1sZWZ0XFxAeGxhcmdlIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cbiAgLmwtZ3JpZC0tY2VudGVyXFxAeGxhcmdlIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAubC1ncmlkLS1yaWdodFxcQHhsYXJnZSB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgfVxuICAubC1ncmlkLS1zcGFjZS1hcm91bmRcXEB4bGFyZ2Uge1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kOyB9XG4gIC5sLWdyaWQtLXNwYWNlLWJldHdlZW5cXEB4bGFyZ2Uge1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuICAvKipcblx0ICogR3JpZCBpdGVtcy9jZWxsc1xuXHQgKiAxLiBSZXF1aXJlZCB0byBjb21iaW5lIGZsdWlkIHdpZHRocyBhbmQgZml4ZWQgZ3V0dGVycy5cblx0ICogMi4gR3V0dGVycy5cblx0ICovXG4gIC5sLWdyaWRfX2l0ZW1cXEB4bGFyZ2Uge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgLyogWzFdICovXG4gICAgZmxleDogMTtcbiAgICBwYWRkaW5nLWxlZnQ6IDFlbTtcbiAgICAvKiBbMl0gKi9cbiAgICBwYWRkaW5nLXJpZ2h0OiAxZW07XG4gICAgLyogWzJdICovIH1cbiAgLyoqXG5cdCAqIEZsdXNoIGdyaWQgaXRtZXMgaGF2ZSBhbGwgdGhlIHByb3BlcnRpZXMgb2YgcmVndWxhciBncmlkIGl0ZW1zLCBtaW51cyBhbnkgc3BhY2luZy5cblx0ICogRXh0ZW5kcyBgLmwtZ3JpZF9faXRlbWAuXG5cdCAqL1xuICAubC1ncmlkX19pdGVtLS1mbHVzaFxcQHhsYXJnZSB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgLyoqXG5cdCAqIEdyaWQgaXRlbSB2ZXJ0aWNhbCBhbGlnbm1lbnQgcGVyIGNlbGwuXG5cdCAqIChgLmwtZ3JpZF9faXRlbS0tYm90dG9tYCBvciBgLmwtZ3JpZF9faXRlbS0tbWlkZGxlYCBvciBgLmwtZ3JpZF9faXRlbS0tdG9wYClcblx0ICogRXh0ZW5kcyBgLmwtZ3JpZF9faXRlbWAuXG5cdCAqL1xuICAubC1ncmlkX19pdGVtLS10b3BcXEB4bGFyZ2Uge1xuICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7IH1cbiAgLmwtZ3JpZF9faXRlbS0tbWlkZGxlXFxAeGxhcmdlIHtcbiAgICBhbGlnbi1zZWxmOiBjZW50ZXI7IH1cbiAgLmwtZ3JpZF9faXRlbS0tYm90dG9tXFxAeGxhcmdlIHtcbiAgICBhbGlnbi1zZWxmOiBmbGV4LWVuZDsgfVxuICAvKipcblx0ICogR3JpZCBpdGVtIG9yZGVyaW5nIChgLmwtZ3JpZF9faXRlbS0tZmlyc3RgIG9yIGAubC1ncmlkX19pdGVtLS1sYXN0YCkuXG5cdCAqIEV4dGVuZHMgYC5sLWdyaWRfX2l0ZW1gLlxuXHQgKi9cbiAgLmwtZ3JpZF9faXRlbS0tZmlyc3RcXEB4bGFyZ2Uge1xuICAgIG9yZGVyOiAtMTsgfVxuICAubC1ncmlkX19pdGVtLS1sYXN0XFxAeGxhcmdlIHtcbiAgICBvcmRlcjogMTsgfVxuICAvKipcblx0ICogR3JpZCBpdGVtIHNocmlua3MgdG8gZml0IGNvbnRlbnRcblx0ICogRXh0ZW5kcyBgLmwtZ3JpZF9faXRlbWAuXG5cdCAqXG5cdC5sLWdyaWRfX2l0ZW0tLWZpdCxcblx0JWwtZ3JpZF9faXRlbS0tZml0IHtcblx0XHRmbGV4OiAxO1xuXHR9Ki9cbiAgLyoqXG5cdCAqIEdyaWQgaXRlbSBleHBhbmRzIHRvIGZpdCBwYXJlbnRcblx0ICogRXh0ZW5kcyBgLmwtZ3JpZF9faXRlbWAuXG5cdCAqL1xuICAubC1ncmlkX19pdGVtLS1leHBhbmRcXEB4bGFyZ2Uge1xuICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAvKipcblx0ICogR3JpZCBpdGVtIHNocmlua3MgdG8gZml0IGNvbnRlbnRcblx0ICogRXh0ZW5kcyBgLmwtZ3JpZF9faXRlbWAuXG5cdCAqL1xuICAubC1ncmlkX19pdGVtLS1zaHJpbmtcXEB4bGFyZ2Uge1xuICAgIGZsZXg6IDAgMSBhdXRvOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyNXJlbSkge1xuICAvKipcblx0ICogMS4gQWxsb3cgdGhlIGdyaWQgc3lzdGVtIHRvIGJlIHVzZWQgb24gbGlzdHMuXG5cdCAqIDIuIFJlbW92ZSBhbnkgbWFyZ2lucyBhbmQgcGFkZGluZ3MgdGhhdCBtaWdodCBhZmZlY3QgdGhlIGdyaWQgc3lzdGVtLlxuXHQgKiAzLiBBZGQgbmVnYXRpdmUgbWFyZ2lucyB0byBjb21wZW5zYXRlIGZvciBgLmdyaWRfX2l0ZW1gIHBhZGRpbmcuXG5cdCAqL1xuICAubC1ncmlkXFxAc3VwZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgLyogWzFdICovXG4gICAgbWFyZ2luOiAwO1xuICAgIC8qIFsyXSAqL1xuICAgIG1hcmdpbi1sZWZ0OiAtMWVtO1xuICAgIG1hcmdpbi1yaWdodDogLTFlbTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIC8qIFsyXSAqLyB9XG4gIC8qKlxuXHQgKiBSZXZlcnNlZCBncmlkcyBhbGxvdyB5b3UgdG8gc3RydWN0dXJlIHlvdXIgc291cmNlIGluIHRoZSBvcHBvc2l0ZSBvcmRlciB0b1xuXHQgKiBob3cgeW91ciByZW5kZXJlZCBsYXlvdXQgd2lsbCBhcHBlYXIuXG5cdCAqIEV4dGVuZHMgYC5sLWdyaWRgLlxuXHQgKi9cbiAgLmwtZ3JpZC0tcmV2ZXJzZVxcQHN1cGVyIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7IH1cbiAgLyoqXG5cdCAqIEZsdXNoIGdyaWRzIGhhdmUgYWxsIHRoZSBwcm9wZXJ0aWVzIG9mIHJlZ3VsYXIgZ3JpZHMsIG1pbnVzIGFueSBzcGFjaW5nLlxuXHQgKiBFeHRlbmRzIGAubC1ncmlkYC5cblx0ICovXG4gIC5sLWdyaWQtLWZsdXNoXFxAc3VwZXIge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAgIC5sLWdyaWQtLWZsdXNoXFxAc3VwZXIgPiAubC1ncmlkX19pdGVtXFxAc3VwZXIge1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgcGFkZGluZy1yaWdodDogMDsgfVxuICAvKipcblx0ICogQWxpZ24gZ3JpZCBjZWxscyB2ZXJ0aWNhbGx5IChgLmwtZ3JpZC0tYm90dG9tYCBvciBgLmwtZ3JpZC0tbWlkZGxlYCBvciBgLmwtZ3JpZC0tdG9wYCkuXG5cdCAqIEV4dGVuZHMgYC5sLWdyaWRgLlxuXHQgKi9cbiAgLmwtZ3JpZC0tdG9wXFxAc3VwZXIge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyB9XG4gIC5sLWdyaWQtLW1pZGRsZVxcQHN1cGVyIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIC5sLWdyaWQtLWJvdHRvbVxcQHN1cGVyIHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7IH1cbiAgLyoqXG5cdCAqIEFsaWduIGdyaWQgY2VsbHMgaG9yaXpvbnRhbGx5IChgLmwtZ3JpZC0tbGVmdGAgb3IgYC5sLWdyaWQtLWNlbnRlcmAgb3IgYC5sLWdyaWQtLXJpZ2h0YCkuXG5cdCAqIEV4dGVuZHMgYC5sLWdyaWRgLlxuXHQgKi9cbiAgLmwtZ3JpZC0tbGVmdFxcQHN1cGVyIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cbiAgLmwtZ3JpZC0tY2VudGVyXFxAc3VwZXIge1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gIC5sLWdyaWQtLXJpZ2h0XFxAc3VwZXIge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7IH1cbiAgLmwtZ3JpZC0tc3BhY2UtYXJvdW5kXFxAc3VwZXIge1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kOyB9XG4gIC5sLWdyaWQtLXNwYWNlLWJldHdlZW5cXEBzdXBlciB7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG4gIC8qKlxuXHQgKiBHcmlkIGl0ZW1zL2NlbGxzXG5cdCAqIDEuIFJlcXVpcmVkIHRvIGNvbWJpbmUgZmx1aWQgd2lkdGhzIGFuZCBmaXhlZCBndXR0ZXJzLlxuXHQgKiAyLiBHdXR0ZXJzLlxuXHQgKi9cbiAgLmwtZ3JpZF9faXRlbVxcQHN1cGVyIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIC8qIFsxXSAqL1xuICAgIGZsZXg6IDE7XG4gICAgcGFkZGluZy1sZWZ0OiAxZW07XG4gICAgLyogWzJdICovXG4gICAgcGFkZGluZy1yaWdodDogMWVtO1xuICAgIC8qIFsyXSAqLyB9XG4gIC8qKlxuXHQgKiBGbHVzaCBncmlkIGl0bWVzIGhhdmUgYWxsIHRoZSBwcm9wZXJ0aWVzIG9mIHJlZ3VsYXIgZ3JpZCBpdGVtcywgbWludXMgYW55IHNwYWNpbmcuXG5cdCAqIEV4dGVuZHMgYC5sLWdyaWRfX2l0ZW1gLlxuXHQgKi9cbiAgLmwtZ3JpZF9faXRlbS0tZmx1c2hcXEBzdXBlciB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgLyoqXG5cdCAqIEdyaWQgaXRlbSB2ZXJ0aWNhbCBhbGlnbm1lbnQgcGVyIGNlbGwuXG5cdCAqIChgLmwtZ3JpZF9faXRlbS0tYm90dG9tYCBvciBgLmwtZ3JpZF9faXRlbS0tbWlkZGxlYCBvciBgLmwtZ3JpZF9faXRlbS0tdG9wYClcblx0ICogRXh0ZW5kcyBgLmwtZ3JpZF9faXRlbWAuXG5cdCAqL1xuICAubC1ncmlkX19pdGVtLS10b3BcXEBzdXBlciB7XG4gICAgYWxpZ24tc2VsZjogZmxleC1zdGFydDsgfVxuICAubC1ncmlkX19pdGVtLS1taWRkbGVcXEBzdXBlciB7XG4gICAgYWxpZ24tc2VsZjogY2VudGVyOyB9XG4gIC5sLWdyaWRfX2l0ZW0tLWJvdHRvbVxcQHN1cGVyIHtcbiAgICBhbGlnbi1zZWxmOiBmbGV4LWVuZDsgfVxuICAvKipcblx0ICogR3JpZCBpdGVtIG9yZGVyaW5nIChgLmwtZ3JpZF9faXRlbS0tZmlyc3RgIG9yIGAubC1ncmlkX19pdGVtLS1sYXN0YCkuXG5cdCAqIEV4dGVuZHMgYC5sLWdyaWRfX2l0ZW1gLlxuXHQgKi9cbiAgLmwtZ3JpZF9faXRlbS0tZmlyc3RcXEBzdXBlciB7XG4gICAgb3JkZXI6IC0xOyB9XG4gIC5sLWdyaWRfX2l0ZW0tLWxhc3RcXEBzdXBlciB7XG4gICAgb3JkZXI6IDE7IH1cbiAgLyoqXG5cdCAqIEdyaWQgaXRlbSBzaHJpbmtzIHRvIGZpdCBjb250ZW50XG5cdCAqIEV4dGVuZHMgYC5sLWdyaWRfX2l0ZW1gLlxuXHQgKlxuXHQubC1ncmlkX19pdGVtLS1maXQsXG5cdCVsLWdyaWRfX2l0ZW0tLWZpdCB7XG5cdFx0ZmxleDogMTtcblx0fSovXG4gIC8qKlxuXHQgKiBHcmlkIGl0ZW0gZXhwYW5kcyB0byBmaXQgcGFyZW50XG5cdCAqIEV4dGVuZHMgYC5sLWdyaWRfX2l0ZW1gLlxuXHQgKi9cbiAgLmwtZ3JpZF9faXRlbS0tZXhwYW5kXFxAc3VwZXIge1xuICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAvKipcblx0ICogR3JpZCBpdGVtIHNocmlua3MgdG8gZml0IGNvbnRlbnRcblx0ICogRXh0ZW5kcyBgLmwtZ3JpZF9faXRlbWAuXG5cdCAqL1xuICAubC1ncmlkX19pdGVtLS1zaHJpbmtcXEBzdXBlciB7XG4gICAgZmxleDogMCAxIGF1dG87IH0gfVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICAgIEdSSUQgV0lEVEhTXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLlxcMzFcXC8xIHtcbiAgZmxleDogMCAwIDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTsgfVxuXG4uXFwzMVxcLzIsIC5cXDMyXFwvNCwgLlxcMzZcXC8xMiB7XG4gIGZsZXg6IDAgMCA1MCU7XG4gIG1heC13aWR0aDogNTAlOyB9XG5cbi5cXDMxXFwvMywgLlxcMzRcXC8xMiB7XG4gIGZsZXg6IDAgMCAzMy4zMzMzMyU7XG4gIG1heC13aWR0aDogMzMuMzMzMzMlOyB9XG5cbi5cXDMyXFwvMywgLlxcMzhcXC8xMiB7XG4gIGZsZXg6IDAgMCA2Ni42NjY2NyU7XG4gIG1heC13aWR0aDogNjYuNjY2NjclOyB9XG5cbi5cXDMxXFwvNCwgLlxcMzNcXC8xMiB7XG4gIGZsZXg6IDAgMCAyNSU7XG4gIG1heC13aWR0aDogMjUlOyB9XG5cbi5cXDMzXFwvNCwgLlxcMzlcXC8xMiB7XG4gIGZsZXg6IDAgMCA3NSU7XG4gIG1heC13aWR0aDogNzUlOyB9XG5cbi5cXDMxXFwvNSB7XG4gIGZsZXg6IDAgMCAyMCU7XG4gIG1heC13aWR0aDogMjAlOyB9XG5cbi5cXDMyXFwvNSB7XG4gIGZsZXg6IDAgMCA0MCU7XG4gIG1heC13aWR0aDogNDAlOyB9XG5cbi5cXDMzXFwvNSB7XG4gIGZsZXg6IDAgMCA2MCU7XG4gIG1heC13aWR0aDogNjAlOyB9XG5cbi5cXDM0XFwvNSB7XG4gIGZsZXg6IDAgMCA4MCU7XG4gIG1heC13aWR0aDogODAlOyB9XG5cbi5cXDMxXFwvMTIge1xuICBmbGV4OiAwIDAgOC4zMzMzMyU7XG4gIG1heC13aWR0aDogOC4zMzMzMyU7IH1cblxuLlxcMzJcXC8xMiB7XG4gIGZsZXg6IDAgMCAxNi42NjY2NyU7XG4gIG1heC13aWR0aDogMTYuNjY2NjclOyB9XG5cbi5cXDM1XFwvMTIge1xuICBmbGV4OiAwIDAgNDEuNjY2NjclO1xuICBtYXgtd2lkdGg6IDQxLjY2NjY3JTsgfVxuXG4uXFwzN1xcLzEyIHtcbiAgZmxleDogMCAwIDU4LjMzMzMzJTtcbiAgbWF4LXdpZHRoOiA1OC4zMzMzMyU7IH1cblxuLlxcMzFcXDMwXFwvMTIge1xuICBmbGV4OiAwIDAgODMuMzMzMzMlO1xuICBtYXgtd2lkdGg6IDgzLjMzMzMzJTsgfVxuXG4uXFwzMVxcMzFcXC8xMiB7XG4gIGZsZXg6IDAgMCA5MS42NjY2NyU7XG4gIG1heC13aWR0aDogOTEuNjY2NjclOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAyMHJlbSkge1xuICAuXFwzMVxcLzFcXEB4c21hbGwge1xuICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAuXFwzMVxcLzJcXEB4c21hbGwsIC5cXDMyXFwvNFxcQHhzbWFsbCwgLlxcMzZcXC8xMlxcQHhzbWFsbCB7XG4gICAgZmxleDogMCAwIDUwJTtcbiAgICBtYXgtd2lkdGg6IDUwJTsgfVxuICAuXFwzMVxcLzNcXEB4c21hbGwsIC5cXDM0XFwvMTJcXEB4c21hbGwge1xuICAgIGZsZXg6IDAgMCAzMy4zMzMzMyU7XG4gICAgbWF4LXdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLlxcMzJcXC8zXFxAeHNtYWxsLCAuXFwzOFxcLzEyXFxAeHNtYWxsIHtcbiAgICBmbGV4OiAwIDAgNjYuNjY2NjclO1xuICAgIG1heC13aWR0aDogNjYuNjY2NjclOyB9XG4gIC5cXDMxXFwvNFxcQHhzbWFsbCwgLlxcMzNcXC8xMlxcQHhzbWFsbCB7XG4gICAgZmxleDogMCAwIDI1JTtcbiAgICBtYXgtd2lkdGg6IDI1JTsgfVxuICAuXFwzM1xcLzRcXEB4c21hbGwsIC5cXDM5XFwvMTJcXEB4c21hbGwge1xuICAgIGZsZXg6IDAgMCA3NSU7XG4gICAgbWF4LXdpZHRoOiA3NSU7IH1cbiAgLlxcMzFcXC81XFxAeHNtYWxsIHtcbiAgICBmbGV4OiAwIDAgMjAlO1xuICAgIG1heC13aWR0aDogMjAlOyB9XG4gIC5cXDMyXFwvNVxcQHhzbWFsbCB7XG4gICAgZmxleDogMCAwIDQwJTtcbiAgICBtYXgtd2lkdGg6IDQwJTsgfVxuICAuXFwzM1xcLzVcXEB4c21hbGwge1xuICAgIGZsZXg6IDAgMCA2MCU7XG4gICAgbWF4LXdpZHRoOiA2MCU7IH1cbiAgLlxcMzRcXC81XFxAeHNtYWxsIHtcbiAgICBmbGV4OiAwIDAgODAlO1xuICAgIG1heC13aWR0aDogODAlOyB9XG4gIC5cXDMxXFwvMTJcXEB4c21hbGwge1xuICAgIGZsZXg6IDAgMCA4LjMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5cXDMyXFwvMTJcXEB4c21hbGwge1xuICAgIGZsZXg6IDAgMCAxNi42NjY2NyU7XG4gICAgbWF4LXdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLlxcMzVcXC8xMlxcQHhzbWFsbCB7XG4gICAgZmxleDogMCAwIDQxLjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAuXFwzN1xcLzEyXFxAeHNtYWxsIHtcbiAgICBmbGV4OiAwIDAgNTguMzMzMzMlO1xuICAgIG1heC13aWR0aDogNTguMzMzMzMlOyB9XG4gIC5cXDMxXFwzMFxcLzEyXFxAeHNtYWxsIHtcbiAgICBmbGV4OiAwIDAgODMuMzMzMzMlO1xuICAgIG1heC13aWR0aDogODMuMzMzMzMlOyB9XG4gIC5cXDMxXFwzMVxcLzEyXFxAeHNtYWxsIHtcbiAgICBmbGV4OiAwIDAgOTEuNjY2NjclO1xuICAgIG1heC13aWR0aDogOTEuNjY2NjclOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDMwcmVtKSB7XG4gIC5cXDMxXFwvMVxcQHNtYWxsIHtcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgLlxcMzFcXC8yXFxAc21hbGwsIC5cXDMyXFwvNFxcQHNtYWxsLCAuXFwzNlxcLzEyXFxAc21hbGwge1xuICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgbWF4LXdpZHRoOiA1MCU7IH1cbiAgLlxcMzFcXC8zXFxAc21hbGwsIC5cXDM0XFwvMTJcXEBzbWFsbCB7XG4gICAgZmxleDogMCAwIDMzLjMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAuXFwzMlxcLzNcXEBzbWFsbCwgLlxcMzhcXC8xMlxcQHNtYWxsIHtcbiAgICBmbGV4OiAwIDAgNjYuNjY2NjclO1xuICAgIG1heC13aWR0aDogNjYuNjY2NjclOyB9XG4gIC5cXDMxXFwvNFxcQHNtYWxsLCAuXFwzM1xcLzEyXFxAc21hbGwge1xuICAgIGZsZXg6IDAgMCAyNSU7XG4gICAgbWF4LXdpZHRoOiAyNSU7IH1cbiAgLlxcMzNcXC80XFxAc21hbGwsIC5cXDM5XFwvMTJcXEBzbWFsbCB7XG4gICAgZmxleDogMCAwIDc1JTtcbiAgICBtYXgtd2lkdGg6IDc1JTsgfVxuICAuXFwzMVxcLzVcXEBzbWFsbCB7XG4gICAgZmxleDogMCAwIDIwJTtcbiAgICBtYXgtd2lkdGg6IDIwJTsgfVxuICAuXFwzMlxcLzVcXEBzbWFsbCB7XG4gICAgZmxleDogMCAwIDQwJTtcbiAgICBtYXgtd2lkdGg6IDQwJTsgfVxuICAuXFwzM1xcLzVcXEBzbWFsbCB7XG4gICAgZmxleDogMCAwIDYwJTtcbiAgICBtYXgtd2lkdGg6IDYwJTsgfVxuICAuXFwzNFxcLzVcXEBzbWFsbCB7XG4gICAgZmxleDogMCAwIDgwJTtcbiAgICBtYXgtd2lkdGg6IDgwJTsgfVxuICAuXFwzMVxcLzEyXFxAc21hbGwge1xuICAgIGZsZXg6IDAgMCA4LjMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5cXDMyXFwvMTJcXEBzbWFsbCB7XG4gICAgZmxleDogMCAwIDE2LjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAuXFwzNVxcLzEyXFxAc21hbGwge1xuICAgIGZsZXg6IDAgMCA0MS42NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLlxcMzdcXC8xMlxcQHNtYWxsIHtcbiAgICBmbGV4OiAwIDAgNTguMzMzMzMlO1xuICAgIG1heC13aWR0aDogNTguMzMzMzMlOyB9XG4gIC5cXDMxXFwzMFxcLzEyXFxAc21hbGwge1xuICAgIGZsZXg6IDAgMCA4My4zMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLlxcMzFcXDMxXFwvMTJcXEBzbWFsbCB7XG4gICAgZmxleDogMCAwIDkxLjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDkxLjY2NjY3JTsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0OHJlbSkge1xuICAuXFwzMVxcLzFcXEBtZWRpdW0ge1xuICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAuXFwzMVxcLzJcXEBtZWRpdW0sIC5cXDMyXFwvNFxcQG1lZGl1bSwgLlxcMzZcXC8xMlxcQG1lZGl1bSB7XG4gICAgZmxleDogMCAwIDUwJTtcbiAgICBtYXgtd2lkdGg6IDUwJTsgfVxuICAuXFwzMVxcLzNcXEBtZWRpdW0sIC5cXDM0XFwvMTJcXEBtZWRpdW0ge1xuICAgIGZsZXg6IDAgMCAzMy4zMzMzMyU7XG4gICAgbWF4LXdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLlxcMzJcXC8zXFxAbWVkaXVtLCAuXFwzOFxcLzEyXFxAbWVkaXVtIHtcbiAgICBmbGV4OiAwIDAgNjYuNjY2NjclO1xuICAgIG1heC13aWR0aDogNjYuNjY2NjclOyB9XG4gIC5cXDMxXFwvNFxcQG1lZGl1bSwgLlxcMzNcXC8xMlxcQG1lZGl1bSB7XG4gICAgZmxleDogMCAwIDI1JTtcbiAgICBtYXgtd2lkdGg6IDI1JTsgfVxuICAuXFwzM1xcLzRcXEBtZWRpdW0sIC5cXDM5XFwvMTJcXEBtZWRpdW0ge1xuICAgIGZsZXg6IDAgMCA3NSU7XG4gICAgbWF4LXdpZHRoOiA3NSU7IH1cbiAgLlxcMzFcXC81XFxAbWVkaXVtIHtcbiAgICBmbGV4OiAwIDAgMjAlO1xuICAgIG1heC13aWR0aDogMjAlOyB9XG4gIC5cXDMyXFwvNVxcQG1lZGl1bSB7XG4gICAgZmxleDogMCAwIDQwJTtcbiAgICBtYXgtd2lkdGg6IDQwJTsgfVxuICAuXFwzM1xcLzVcXEBtZWRpdW0ge1xuICAgIGZsZXg6IDAgMCA2MCU7XG4gICAgbWF4LXdpZHRoOiA2MCU7IH1cbiAgLlxcMzRcXC81XFxAbWVkaXVtIHtcbiAgICBmbGV4OiAwIDAgODAlO1xuICAgIG1heC13aWR0aDogODAlOyB9XG4gIC5cXDMxXFwvMTJcXEBtZWRpdW0ge1xuICAgIGZsZXg6IDAgMCA4LjMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5cXDMyXFwvMTJcXEBtZWRpdW0ge1xuICAgIGZsZXg6IDAgMCAxNi42NjY2NyU7XG4gICAgbWF4LXdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLlxcMzVcXC8xMlxcQG1lZGl1bSB7XG4gICAgZmxleDogMCAwIDQxLjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAuXFwzN1xcLzEyXFxAbWVkaXVtIHtcbiAgICBmbGV4OiAwIDAgNTguMzMzMzMlO1xuICAgIG1heC13aWR0aDogNTguMzMzMzMlOyB9XG4gIC5cXDMxXFwzMFxcLzEyXFxAbWVkaXVtIHtcbiAgICBmbGV4OiAwIDAgODMuMzMzMzMlO1xuICAgIG1heC13aWR0aDogODMuMzMzMzMlOyB9XG4gIC5cXDMxXFwzMVxcLzEyXFxAbWVkaXVtIHtcbiAgICBmbGV4OiAwIDAgOTEuNjY2NjclO1xuICAgIG1heC13aWR0aDogOTEuNjY2NjclOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDY0cmVtKSB7XG4gIC5cXDMxXFwvMVxcQGxhcmdlIHtcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgLlxcMzFcXC8yXFxAbGFyZ2UsIC5cXDMyXFwvNFxcQGxhcmdlLCAuXFwzNlxcLzEyXFxAbGFyZ2Uge1xuICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgbWF4LXdpZHRoOiA1MCU7IH1cbiAgLlxcMzFcXC8zXFxAbGFyZ2UsIC5cXDM0XFwvMTJcXEBsYXJnZSB7XG4gICAgZmxleDogMCAwIDMzLjMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAuXFwzMlxcLzNcXEBsYXJnZSwgLlxcMzhcXC8xMlxcQGxhcmdlIHtcbiAgICBmbGV4OiAwIDAgNjYuNjY2NjclO1xuICAgIG1heC13aWR0aDogNjYuNjY2NjclOyB9XG4gIC5cXDMxXFwvNFxcQGxhcmdlLCAuXFwzM1xcLzEyXFxAbGFyZ2Uge1xuICAgIGZsZXg6IDAgMCAyNSU7XG4gICAgbWF4LXdpZHRoOiAyNSU7IH1cbiAgLlxcMzNcXC80XFxAbGFyZ2UsIC5cXDM5XFwvMTJcXEBsYXJnZSB7XG4gICAgZmxleDogMCAwIDc1JTtcbiAgICBtYXgtd2lkdGg6IDc1JTsgfVxuICAuXFwzMVxcLzVcXEBsYXJnZSB7XG4gICAgZmxleDogMCAwIDIwJTtcbiAgICBtYXgtd2lkdGg6IDIwJTsgfVxuICAuXFwzMlxcLzVcXEBsYXJnZSB7XG4gICAgZmxleDogMCAwIDQwJTtcbiAgICBtYXgtd2lkdGg6IDQwJTsgfVxuICAuXFwzM1xcLzVcXEBsYXJnZSB7XG4gICAgZmxleDogMCAwIDYwJTtcbiAgICBtYXgtd2lkdGg6IDYwJTsgfVxuICAuXFwzNFxcLzVcXEBsYXJnZSB7XG4gICAgZmxleDogMCAwIDgwJTtcbiAgICBtYXgtd2lkdGg6IDgwJTsgfVxuICAuXFwzMVxcLzEyXFxAbGFyZ2Uge1xuICAgIGZsZXg6IDAgMCA4LjMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5cXDMyXFwvMTJcXEBsYXJnZSB7XG4gICAgZmxleDogMCAwIDE2LjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAuXFwzNVxcLzEyXFxAbGFyZ2Uge1xuICAgIGZsZXg6IDAgMCA0MS42NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLlxcMzdcXC8xMlxcQGxhcmdlIHtcbiAgICBmbGV4OiAwIDAgNTguMzMzMzMlO1xuICAgIG1heC13aWR0aDogNTguMzMzMzMlOyB9XG4gIC5cXDMxXFwzMFxcLzEyXFxAbGFyZ2Uge1xuICAgIGZsZXg6IDAgMCA4My4zMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLlxcMzFcXDMxXFwvMTJcXEBsYXJnZSB7XG4gICAgZmxleDogMCAwIDkxLjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDkxLjY2NjY3JTsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3OHJlbSkge1xuICAuXFwzMVxcLzFcXEB4bGFyZ2Uge1xuICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAuXFwzMVxcLzJcXEB4bGFyZ2UsIC5cXDMyXFwvNFxcQHhsYXJnZSwgLlxcMzZcXC8xMlxcQHhsYXJnZSB7XG4gICAgZmxleDogMCAwIDUwJTtcbiAgICBtYXgtd2lkdGg6IDUwJTsgfVxuICAuXFwzMVxcLzNcXEB4bGFyZ2UsIC5cXDM0XFwvMTJcXEB4bGFyZ2Uge1xuICAgIGZsZXg6IDAgMCAzMy4zMzMzMyU7XG4gICAgbWF4LXdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLlxcMzJcXC8zXFxAeGxhcmdlLCAuXFwzOFxcLzEyXFxAeGxhcmdlIHtcbiAgICBmbGV4OiAwIDAgNjYuNjY2NjclO1xuICAgIG1heC13aWR0aDogNjYuNjY2NjclOyB9XG4gIC5cXDMxXFwvNFxcQHhsYXJnZSwgLlxcMzNcXC8xMlxcQHhsYXJnZSB7XG4gICAgZmxleDogMCAwIDI1JTtcbiAgICBtYXgtd2lkdGg6IDI1JTsgfVxuICAuXFwzM1xcLzRcXEB4bGFyZ2UsIC5cXDM5XFwvMTJcXEB4bGFyZ2Uge1xuICAgIGZsZXg6IDAgMCA3NSU7XG4gICAgbWF4LXdpZHRoOiA3NSU7IH1cbiAgLlxcMzFcXC81XFxAeGxhcmdlIHtcbiAgICBmbGV4OiAwIDAgMjAlO1xuICAgIG1heC13aWR0aDogMjAlOyB9XG4gIC5cXDMyXFwvNVxcQHhsYXJnZSB7XG4gICAgZmxleDogMCAwIDQwJTtcbiAgICBtYXgtd2lkdGg6IDQwJTsgfVxuICAuXFwzM1xcLzVcXEB4bGFyZ2Uge1xuICAgIGZsZXg6IDAgMCA2MCU7XG4gICAgbWF4LXdpZHRoOiA2MCU7IH1cbiAgLlxcMzRcXC81XFxAeGxhcmdlIHtcbiAgICBmbGV4OiAwIDAgODAlO1xuICAgIG1heC13aWR0aDogODAlOyB9XG4gIC5cXDMxXFwvMTJcXEB4bGFyZ2Uge1xuICAgIGZsZXg6IDAgMCA4LjMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5cXDMyXFwvMTJcXEB4bGFyZ2Uge1xuICAgIGZsZXg6IDAgMCAxNi42NjY2NyU7XG4gICAgbWF4LXdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLlxcMzVcXC8xMlxcQHhsYXJnZSB7XG4gICAgZmxleDogMCAwIDQxLjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAuXFwzN1xcLzEyXFxAeGxhcmdlIHtcbiAgICBmbGV4OiAwIDAgNTguMzMzMzMlO1xuICAgIG1heC13aWR0aDogNTguMzMzMzMlOyB9XG4gIC5cXDMxXFwzMFxcLzEyXFxAeGxhcmdlIHtcbiAgICBmbGV4OiAwIDAgODMuMzMzMzMlO1xuICAgIG1heC13aWR0aDogODMuMzMzMzMlOyB9XG4gIC5cXDMxXFwzMVxcLzEyXFxAeGxhcmdlIHtcbiAgICBmbGV4OiAwIDAgOTEuNjY2NjclO1xuICAgIG1heC13aWR0aDogOTEuNjY2NjclOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyNXJlbSkge1xuICAuXFwzMVxcLzFcXEBzdXBlciB7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gIC5cXDMxXFwvMlxcQHN1cGVyLCAuXFwzMlxcLzRcXEBzdXBlciwgLlxcMzZcXC8xMlxcQHN1cGVyIHtcbiAgICBmbGV4OiAwIDAgNTAlO1xuICAgIG1heC13aWR0aDogNTAlOyB9XG4gIC5cXDMxXFwvM1xcQHN1cGVyLCAuXFwzNFxcLzEyXFxAc3VwZXIge1xuICAgIGZsZXg6IDAgMCAzMy4zMzMzMyU7XG4gICAgbWF4LXdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLlxcMzJcXC8zXFxAc3VwZXIsIC5cXDM4XFwvMTJcXEBzdXBlciB7XG4gICAgZmxleDogMCAwIDY2LjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAuXFwzMVxcLzRcXEBzdXBlciwgLlxcMzNcXC8xMlxcQHN1cGVyIHtcbiAgICBmbGV4OiAwIDAgMjUlO1xuICAgIG1heC13aWR0aDogMjUlOyB9XG4gIC5cXDMzXFwvNFxcQHN1cGVyLCAuXFwzOVxcLzEyXFxAc3VwZXIge1xuICAgIGZsZXg6IDAgMCA3NSU7XG4gICAgbWF4LXdpZHRoOiA3NSU7IH1cbiAgLlxcMzFcXC81XFxAc3VwZXIge1xuICAgIGZsZXg6IDAgMCAyMCU7XG4gICAgbWF4LXdpZHRoOiAyMCU7IH1cbiAgLlxcMzJcXC81XFxAc3VwZXIge1xuICAgIGZsZXg6IDAgMCA0MCU7XG4gICAgbWF4LXdpZHRoOiA0MCU7IH1cbiAgLlxcMzNcXC81XFxAc3VwZXIge1xuICAgIGZsZXg6IDAgMCA2MCU7XG4gICAgbWF4LXdpZHRoOiA2MCU7IH1cbiAgLlxcMzRcXC81XFxAc3VwZXIge1xuICAgIGZsZXg6IDAgMCA4MCU7XG4gICAgbWF4LXdpZHRoOiA4MCU7IH1cbiAgLlxcMzFcXC8xMlxcQHN1cGVyIHtcbiAgICBmbGV4OiAwIDAgOC4zMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA4LjMzMzMzJTsgfVxuICAuXFwzMlxcLzEyXFxAc3VwZXIge1xuICAgIGZsZXg6IDAgMCAxNi42NjY2NyU7XG4gICAgbWF4LXdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLlxcMzVcXC8xMlxcQHN1cGVyIHtcbiAgICBmbGV4OiAwIDAgNDEuNjY2NjclO1xuICAgIG1heC13aWR0aDogNDEuNjY2NjclOyB9XG4gIC5cXDM3XFwvMTJcXEBzdXBlciB7XG4gICAgZmxleDogMCAwIDU4LjMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAuXFwzMVxcMzBcXC8xMlxcQHN1cGVyIHtcbiAgICBmbGV4OiAwIDAgODMuMzMzMzMlO1xuICAgIG1heC13aWR0aDogODMuMzMzMzMlOyB9XG4gIC5cXDMxXFwzMVxcLzEyXFxAc3VwZXIge1xuICAgIGZsZXg6IDAgMCA5MS42NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA5MS42NjY2NyU7IH0gfVxuXG4ubC1odG1sLS1uby1zY3JvbGwge1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi5sLXNpZGUtc3RpY2t5IHtcbiAgbWFyZ2luOiAwIDAgMCAtLjc1ZW07IH1cblxuLmwtc2lkZS1zdGlja3kgLmEtYnV0dG9uIHtcbiAgbWFyZ2luLXJpZ2h0OiAuNzVlbTsgfVxuXG4ubC1zaWRlLXN0aWNreSAubS1jYWxsb3V0X19idXR0b24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cblxuLmwtc2lkZS1zdGlja3lfX2ljb24ge1xuICBoZWlnaHQ6IDFlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IC4xMjVlbTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjM1KTtcbiAgd2lkdGg6IDFlbTsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDhyZW0pIHtcbiAgLmwtc2lkZS1zdGlja3kge1xuICAgIG1hcmdpbjogLS43NWVtIDAgMCAwO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICByaWdodDogMDtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgyNzBkZWcpIHRyYW5zbGF0ZSg1MCUsIDApO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGJvdHRvbSByaWdodDtcbiAgICB6LWluZGV4OiA2MDA7IH1cbiAgLmwtc2lkZS1zdGlja3kgLmEtYnV0dG9uIHtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwOyB9XG4gIC5sLXNpZGUtc3RpY2t5X19pY29uIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMjUpIHJvdGF0ZSg5MGRlZyk7IH0gfVxuXG4vKipcbiAqIFRhcmdldCBJRSAxMCBhbmQgSUUgMTFcbiAqIEhhdmUgdG8gcmVtb3ZlIGJlY2F1c2UgdGhpcyBpcyBjYXVzaW5nIHByb2JsZW1zIHdpdGggYmlsbGJvYXJkXG4gKlxuQG1lZGlhIHNjcmVlbiBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcblx0LmwtaHRtbC0tc3RpY2t5LWZvb3RlciwgXG5cdC5sLWJvZHktLXN0aWNreS1mb290ZXIge1xuXHRcdGhlaWdodDogMTAwJTtcblx0fVxufSovXG4vKipcbiogMS4gTWFraW5nIHRoZSA8Ym9keT4gZWxlbWVudCBiZWhhdmUgbGlrZSBhIGZsZXhib3ggY29udGFpbmVyLlxuKiAyLiBNYWtpbmcgZmxleCBjaGlsZHJlbiBsaW5lIHVwIHZlcnRpY2FsbHkgKGhvcml6b250YWwgaXMgZGVmYXVsdClcbiogMy4gU2V0dGluZyB0aGUgbWluLWhlaWdodCB0byAxMDAlIG9mIHRoZSB2aWV3cG9ydCBoZWlnaHQuXG4qL1xuLmwtYm9keS0tc3RpY2t5LWZvb3RlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIC8qIFsxXSAqL1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAvKiBbMl0gKi9cbiAgbWluLWhlaWdodDogMTAwdmg7XG4gIC8qIFszXSAqLyB9XG5cbi5sLW1haW4tLXN0aWNreS1mb290ZXIge1xuICBmbGV4OiAxIDAgYXV0bzsgfVxuXG4vKmRvY1xuLS0tXG50aXRsZTogQmlsbGJvYXJkc1xubmFtZTogYmlsbGJvYXJkc1xuY2F0ZWdvcnk6IE9yZ2FuaXNtc1xuLS0tXG5cbkJpbGxib2FyZHMgYXJlIHRoZSBwcmltYXJ5IGJhbm5lciBhcmVhIHVzZWQgdG8gZGlzcGxheSBwYWdlIHRpdGxlcywgaGlnaC1xdWFsaXR5IGltYWdlcnksIGJyZWFkY3J1bWJzLCBwaG9uZSBudW1iZXJzLCBhbmQgYXBwb2ludG1lbnQgc2NoZWR1bGluZyBidXR0b25zLiBUaGVyZSBhcmUgdHdvIGJpbGxib2FyZCBzdHlsZXM6IGdyYWRpZW50IGJpbGxib2FyZHMgYW5kIGltYWdlIGJpbGxib2FyZHMuIEdyYWRpZW50IGJpbGxib2FyZHMgYXJlIHVzZWQgb24gbW9zdCBub24tbWFqb3IgcGFnZXMuIEltYWdlIGJpbGxib2FyZHMgYXJlIHVzZWQgb24gbWFqb3IgcGFnZXMgc3VjaCBhcyB0aGUgaG9tZXBhZ2UgYW5kIHNlcnZpY2UgbGluZSBsYW5kaW5nIHBhZ2VzLlxuXG5CaWxsYm9hcmQgY29udGVudCBpcyB3cmFwcGVkIGluIHRoZSBgby1iaWxsYm9hcmRfX2NvbnRlbnRgIGVsZW1lbnQuIFRoaXMgZWxlbWVudCBzaG91bGQgY29udGFpbiB0aHJlZSBjaGlsZHJlbiwgYG8tYmlsbGJvYXJkX19oZWFkZXJgLCBgby1iaWxsYm9hcmRfX2JvZHlgLCBhbmQgYG8tYmlsbGJvYXJkX19mb290ZXJgLiBUaGVzZSBlbGVtZW50cyBjb250cm9sIHdoZXJlIHRoZSBjb250ZW50IHdpbGwgYmUgYWxpZ25lZCB2ZXJ0aWNhbGx5LiBDb250ZW50IGluIHRoZSBgby1iaWxsYm9hcmRfX2hlYWRlcmAgZWxlbWVudCB3aWxsIGJlIGFsaWduZWQgYXQgdGhlIHRvcC4gQ29udGVudCBpbiB0aGUgYG8tYmlsbGJvYXJkX19ib2R5YCBlbGVtZW50IHdpbGwgYmUgYWxpZ25lZCBpbiB0aGUgbWlkZGxlLiBDb250ZW50IGluIHRoZSBgby1iaWxsYm9hcmRfX2Zvb3RlcmAgZWxlbWVudCB3aWxsIGJlIGFsaWduZWQgYXQgdGhlIGJvdHRvbS5cblxuIyMjIEdyYWRpZW50IEJpbGxib2FyZHNcblxuR3JhZGllbnQgYmlsbGJvYXJkcyBoYXZlIGEgZ2VudGxlIGdyZXkgZ3JhZGllbnQgYmVoaW5kIHRoZW0uIFRoZXNlIGJpbGxib2FyZHMgYWxzbyBjb250YWluIGJyZWFkY3J1bWJzLCB1bmxpa2UgaW1hZ2UgYmlsbGJvYXJkcy5cblxuTm90ZTogVGhlIGJpbGxib2FyZCdzIHdpZHRoIGlzIGNvbnN0cmFpbmVkIGluIHRoZSBzdHlsZSBndWlkZS4gVGhlIGNvZGUgcHJvdmlkZWQgd2lsbCBzdHJldGNoIG11Y2ggd2lkZXIgb24gcHJvZHVjdGlvbiBzaXRlcy4gQWxzbywgdGhlIEphdmFTY3JpcHQgY2xhc3MgdGhhdCBjYXVzZXMgdGhlICdTY2hlZHVsZSBBcHBvaW50bWVudCcgYnV0dG9uIHRvIHN0aWNrIHRvIHJpZ2h0IHNpZGUgYXMgYSB1c2VyIHNjcm9sbHMgaGFzIGJlZW4gcmVtb3ZlZCBpbiB0aGlzIGV4YW1wbGUuXG5cbmBgYGh0bWxfZXhhbXBsZVxuPGhlYWRlciBjbGFzcz1cIm8tYmlsbGJvYXJkICBvLWJpbGxib2FyZC0tYmctZ3JhZGllbnQgIGwtY29udGFpbmVyICBsLWNvbnRhaW5lci0tc3VwZXIgIGwtY29udGFpbmVyLS1mbHVzaFwiIHJvbGU9XCJiYW5uZXJcIj5cblx0PGRpdiBjbGFzcz1cIm8tYmlsbGJvYXJkX19jb250ZW50XCI+XG5cdFx0PGRpdiBjbGFzcz1cIm8tYmlsbGJvYXJkX19oZWFkZXJcIj48L2Rpdj5cblx0XHQ8ZGl2IGNsYXNzPVwiby1iaWxsYm9hcmRfX2JvZHlcIj48L2Rpdj5cblx0XHQ8ZGl2IGNsYXNzPVwiby1iaWxsYm9hcmRfX2Zvb3RlciAgdS1zcGFjZS10b3AtLW1lZGl1bSAgdS1zcGFjZS10b3AtLXhsYXJnZUBtZWRpdW0gIHUtc3BhY2UtYm90dG9tLS1zdXBlckBtZWRpdW1cIj5cblx0XHRcdDxkaXYgY2xhc3M9XCJsLWNvbnRhaW5lciAgbC1jb250YWluZXItLXhsYXJnZVwiPlxuXHRcdFx0XHQ8ZGl2IGNsYXNzPVwibC1ncmlkICBsLWdyaWQtLW1pZGRsZVwiPlxuXHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJsLWdyaWRfX2l0ZW0gIDEvMSAgNy8xMkBtZWRpdW1cIj5cblx0XHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJvLWJpbGxib2FyZF9faGVhZGluZy1jb250YWluZXJcIj5cblx0XHRcdFx0XHRcdFx0PG9sIGNsYXNzPVwibS1icmVhZGNydW1ic1wiPlxuXHRcdFx0XHRcdFx0XHRcdDxsaSBjbGFzcz1cIm0tYnJlYWRjcnVtYnNfX2NydW1iXCI+PGEgY2xhc3M9XCJhLWxpbmtcIiBocmVmPVwiI1wiPkhvbWU8L2E+PC9saT5cblx0XHRcdFx0XHRcdFx0XHQ8bGkgY2xhc3M9XCJtLWJyZWFkY3J1bWJzX19jcnVtYlwiPjxhIGNsYXNzPVwiYS1saW5rXCIgaHJlZj1cIiNcIj5TdWItUGFnZTwvYT48L2xpPlxuXHRcdFx0XHRcdFx0XHQ8L29sPlxuXHRcdFx0XHRcdFx0XHQ8aDEgY2xhc3M9XCJvLWJpbGxib2FyZF9faGVhZGluZyAgdS1uby1zcGFjZVwiPlBhZ2UgVGl0bGU8L2gxPlxuXHRcdFx0XHRcdFx0PC9kaXY+XG5cdFx0XHRcdFx0PC9kaXY+XG5cdFx0XHRcdFx0PGRpdiBjbGFzcz1cImwtZ3JpZF9faXRlbSAgMS8xICA1LzEyQG1lZGl1bVwiPlxuXHRcdFx0XHRcdFx0PGRpdiBjbGFzcz1cIm0tY2FsbG91dFwiPlxuXHRcdFx0XHRcdFx0XHQ8YSBjbGFzcz1cIm0tY2FsbG91dF9fcGhvbmVcIiBocmVmPVwidGVsOjEtODAxLTU1NS01NTU1XCI+KDgwMSkgNTU1LTU1NTU8L2E+XG5cdFx0XHRcdFx0XHRcdDxhIGNsYXNzPVwibS1jYWxsb3V0X19idXR0b25cIiBocmVmPVwiI1wiPlNjaGVkdWxlIGFuIEFwcG9pbnRtZW50PC9hPlxuXHRcdFx0XHRcdFx0PC9kaXY+XG5cdFx0XHRcdFx0PC9kaXY+XG5cdFx0XHRcdDwvZGl2PlxuXHRcdFx0PC9kaXY+XG5cdFx0PC9kaXY+XG5cdDwvZGl2PlxuPC9oZWFkZXI+XG5gYGBcblxuIyMjIEltYWdlIEJpbGxib2FyZHNcblxuVW5saWtlIHRoZSBncmFkaWVudCBiaWxsYm9hcmRzLCBpbWFnZSBiaWxsYm9hcmRzIGhhdmUgYSBzaXplIG1vZGlmaWVyLiBUeXBpY2FsbHkgdGhpcyB3aWxsIGJlIGBvLWJpbGxib2FyZC0tbWVkaXVtYC4gVGhpcyBnaXZlcyB0aGUgYmlsbGJvYXJkIGEgbWluaW11bSBhbmQgbWF4aW11bSBoZWlnaHQuIFNpemUgbW9kaWZpZXJzIGluY2x1ZGUgYG8tYmlsbGJvYXJkLS14c21hbGxgLCBgby1iaWxsYm9hcmQtLXNtYWxsYCwgYG8tYmlsbGJvYXJkLS1tZWRpdW1gLCBgby1iaWxsYm9hcmQtLWxhcmdlYCwgYG8tYmlsbGJvYXJkLS14bGFyZ2VgLCBhbmQgYG8tYmlsbGJvYXJkLS1zdXBlcmAuIFRoZSBsYXJnZXN0IHNpemUsIGBvLWJpbGxib2FyZC0tc3VwZXJgLCBpcyBjdXJyZW50bHkgb25seSB1c2VkIG9uIHRoZSBob21lcGFnZS4gVGhpcyBiaWxsYm9hcmQgd2lsbCBmaWxsIHRoZSBlbnRpcmUgdmlld3BvcnQgaGVpZ2h0LlxuXG5UaGUgd2F5IGltYWdlcyBhcmUgbWFya2VkIHVwIGlzIGEgYml0IHRyaWNreS4gTm90aWNlIHRoZSBpbWFnZSBpcyBzZXQgYXMgYm90aCBhIGJhY2tncm91bmQgaW1hZ2Ugb24gdGhlIGBvLWJpbGxib2FyZF9faW1hZ2Utd3JhcHBlcmAgY29udGFpbmVyIGFuZCBhbHNvIGFuIGlubGluZSBpbWFnZSB3aXRoaW4uIFRoZSBpbmxpbmUgaW1hZ2UgaXMgc2V0IHRvIGJlIHRyYW5zcGFyZW50LiBUaGlzIGltYWdlIGlzIG9ubHkgdGhlcmUgdG8gZm9yY2UgdGhlIGNvbnRhaW5lciB0byBiZSB0aGUgcmlnaHQgc2l6ZS5cblxuV2hlbiBzZWxlY3RpbmcgaW1hZ2VzIGZvciBpbWFnZSBiaWxsYm9hcmRzLCBpdCdzIGJlc3QgdG8gdXNlIGltYWdlcyB3aXRoIGRhcmsgY29sb3JzIGluIHRoZSBib3R0b20gbGVmdCB0byBhbGxvdyBlbm91Z2ggY29udHJhc3QgZm9yIHRoZSB3aGl0ZSBoZWFkaW5nIHRleHQgdG8gYXBwZWFyIGNsZWFybHkuXG5cbk5vdGU6IFRoZSBiaWxsYm9hcmQncyB3aWR0aCBpcyBjb25zdHJhaW5lZCBpbiB0aGUgc3R5bGUgZ3VpZGUuIFRoZSBjb2RlIHByb3ZpZGVkIHdpbGwgc3RyZXRjaCBtdWNoIHdpZGVyIG9uIHByb2R1Y3Rpb24gc2l0ZXMuIEFsc28sIHRoZSBKYXZhU2NyaXB0IGNsYXNzIHRoYXQgY2F1c2VzIHRoZSAnU2NoZWR1bGUgQXBwb2ludG1lbnQnIGJ1dHRvbiB0byBzdGljayB0byByaWdodCBzaWRlIGFzIGEgdXNlciBzY3JvbGxzIGhhcyBiZWVuIHJlbW92ZWQgaW4gdGhpcyBleGFtcGxlLlxuXG5gYGBodG1sX2V4YW1wbGVcbjxoZWFkZXIgY2xhc3M9XCJvLWJpbGxib2FyZCAgby1iaWxsYm9hcmQtLWJnLWltYWdlICBvLWJpbGxib2FyZC0tbWVkaXVtICBsLWNvbnRhaW5lciAgbC1jb250YWluZXItLXN1cGVyICBsLWNvbnRhaW5lci0tZmx1c2hcIiByb2xlPVwiYmFubmVyXCI+XG5cdDxkaXYgY2xhc3M9XCJvLWJpbGxib2FyZF9faW1hZ2Utd3JhcHBlciAgby1iaWxsYm9hcmRfX2ltYWdlLXdyYXBwZXItLWdyYWRpZW50XCIgc3R5bGU9XCJiYWNrZ3JvdW5kLWltYWdlOnVybCgnaHR0cHM6Ly9wbGFjZWhvbGQuaXQvMTYwMHg5MDAnKTtcIj5cblx0XHQ8aW1nIGNsYXNzPVwiby1iaWxsYm9hcmRfX2ltYWdlXCIgc3JjPVwiaHR0cHM6Ly9wbGFjZWhvbGQuaXQvMTYwMHg5MDBcIiBhbHQ9XCJwbGFjZWhvbGRlclwiIHN0eWxlPVwib3BhY2l0eTowO1wiIC8+XG5cdDwvZGl2PlxuXHQ8ZGl2IGNsYXNzPVwiby1iaWxsYm9hcmRfX2NvbnRlbnRcIj5cblx0XHQ8ZGl2IGNsYXNzPVwiby1iaWxsYm9hcmRfX2hlYWRlclwiPjwvZGl2PlxuXHRcdDxkaXYgY2xhc3M9XCJvLWJpbGxib2FyZF9fYm9keVwiPjwvZGl2PlxuXHRcdDxkaXYgY2xhc3M9XCJvLWJpbGxib2FyZF9fZm9vdGVyICB1LXNwYWNlLWJvdHRvbS0teGxhcmdlQG1lZGl1bVwiPlxuXHRcdFx0PGRpdiBjbGFzcz1cImwtY29udGFpbmVyICBsLWNvbnRhaW5lci0teGxhcmdlXCI+XG5cdFx0XHRcdDxkaXYgY2xhc3M9XCJsLWdyaWQgIGwtZ3JpZC0tYm90dG9tXCI+XG5cdFx0XHRcdFx0PGRpdiBjbGFzcz1cImwtZ3JpZF9faXRlbSAgMS8xICA3LzEyQG1lZGl1bSAgby1iaWxsYm9hcmRfX2hlYWRpbmctY29udGFpbmVyXCI+XG5cdFx0XHRcdFx0XHQ8aDEgY2xhc3M9XCJvLWJpbGxib2FyZF9faGVhZGluZyAgby1iaWxsYm9hcmRfX2hlYWRpbmctLXdoaXRlICB1LW5vLXNwYWNlXCI+UGFnZSBUaXRsZTwvaDE+XG5cdFx0XHRcdFx0PC9kaXY+XG5cdFx0XHRcdFx0PGRpdiBjbGFzcz1cImwtZ3JpZF9faXRlbSAgMS8xICA1LzEyQG1lZGl1bVwiPlxuXHRcdFx0XHRcdFx0PGRpdiBjbGFzcz1cIm0tY2FsbG91dCAgbS1jYWxsb3V0LS13aGl0ZVwiPlxuXHRcdFx0XHRcdFx0XHQ8YSBjbGFzcz1cIm0tY2FsbG91dF9fcGhvbmVcIiBocmVmPVwidGVsOjEtODAxLTIxMy0yOTk1XCI+KDgwMSkgMjEzLTI5OTU8L2E+XG5cdFx0XHRcdFx0XHRcdDxhIGNsYXNzPVwibS1jYWxsb3V0X19idXR0b25cIiBocmVmPVwiYXBwb2ludG1lbnQuaHRtbFwiPlNjaGVkdWxlIGFuIEFwcG9pbnRtZW50PC9hPlxuXHRcdFx0XHRcdFx0PC9kaXY+XG5cdFx0XHRcdFx0PC9kaXY+XG5cdFx0XHRcdDwvZGl2PlxuXHRcdFx0PC9kaXY+XG5cdFx0PC9kaXY+XG5cdDwvZGl2PlxuPC9oZWFkZXI+XG5gYGBcblxuKi9cbi5vLWJpbGxib2FyZCB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLyouby1iaWxsYm9hcmQtLWVtcHR5IHtcblx0aGVpZ2h0OiA1ZW07XG59Ki9cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4cmVtKSB7XG4gIC5vLWJpbGxib2FyZC0teHNtYWxsLFxuICAuby1iaWxsYm9hcmQtLXhzbWFsbCA+IC5vLWJpbGxib2FyZF9fY29udGVudCB7XG4gICAgbWluLWhlaWdodDogMjBlbTsgfVxuICAuby1iaWxsYm9hcmQtLXNtYWxsLFxuICAuby1iaWxsYm9hcmQtLXNtYWxsID4gLm8tYmlsbGJvYXJkX19jb250ZW50IHtcbiAgICBtaW4taGVpZ2h0OiAyNWVtOyB9XG4gIC5vLWJpbGxib2FyZC0tbWVkaXVtLFxuICAuby1iaWxsYm9hcmQtLW1lZGl1bSA+IC5vLWJpbGxib2FyZF9fY29udGVudCB7XG4gICAgbWluLWhlaWdodDogMzBlbTsgfVxuICAuby1iaWxsYm9hcmQtLWxhcmdlLFxuICAuby1iaWxsYm9hcmQtLWxhcmdlID4gLm8tYmlsbGJvYXJkX19jb250ZW50IHtcbiAgICBtaW4taGVpZ2h0OiAzNWVtOyB9XG4gIC5vLWJpbGxib2FyZC0teGxhcmdlLFxuICAuby1iaWxsYm9hcmQtLXhsYXJnZSA+IC5vLWJpbGxib2FyZF9fY29udGVudCB7XG4gICAgbWluLWhlaWdodDogNDBlbTsgfSB9XG5cbi5vLWJpbGxib2FyZC0taG9tZXBhZ2Uge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1pbi1oZWlnaHQ6IDUwdmg7IH1cblxuLm8tYmlsbGJvYXJkLS1zdXBlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbWluLWhlaWdodDogY2FsYygxMDB2aCAtIDgwcHgpOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0OHJlbSkge1xuICAuby1iaWxsYm9hcmQtLXN1cGVyXFxAbWVkaXVtIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBtaW4taGVpZ2h0OiBjYWxjKDEwMHZoIC0gODBweCk7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45OXJlbSkge1xuICAuby1iaWxsYm9hcmQtLWJnLWltYWdlIC5vLWJpbGxib2FyZF9faGVhZGluZy1jb250YWluZXIge1xuICAgIGJvdHRvbTogMTAwJTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMWVtO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfVxuICAuby1iaWxsYm9hcmQtLWJnLWltYWdlIC5vLWJpbGxib2FyZF9fY29udGVudCB7XG4gICAgcGFkZGluZy10b3A6IDA7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDhyZW0pIHtcbiAgLm8tYmlsbGJvYXJkLS1iZy1pbWFnZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gIC5vLWJpbGxib2FyZC0tYmctaW1hZ2Uuby1iaWxsYm9hcmQtLWhvbWVwYWdlIC5vLWJpbGxib2FyZF9faW1hZ2UsXG4gIC5vLWJpbGxib2FyZC0tYmctaW1hZ2Uuby1iaWxsYm9hcmQtLXN1cGVyIC5vLWJpbGxib2FyZF9faW1hZ2Uge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfVxuICAuby1iaWxsYm9hcmQtLWJnLWltYWdlIC5vLWJpbGxib2FyZF9fY29udGVudCB7XG4gICAgZmxleDogMTsgfSB9XG5cbi5vLWJpbGxib2FyZF9faW1hZ2Utd3JhcHBlciB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDhyZW0pIHtcbiAgICAuby1iaWxsYm9hcmRfX2ltYWdlLXdyYXBwZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlOyB9IH1cblxuLm8tYmlsbGJvYXJkX19pbWFnZS13cmFwcGVyLS10b3Age1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgMCU7IH1cblxuLm8tYmlsbGJvYXJkX19pbWFnZS13cmFwcGVyLS1yaWdodCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDEwMCUgNTAlOyB9XG5cbi5vLWJpbGxib2FyZF9faW1hZ2Utd3JhcHBlci0tYm90dG9tIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDEwMCU7IH1cblxuLm8tYmlsbGJvYXJkX19pbWFnZS13cmFwcGVyLS1yaWdodCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAlIDUwJTsgfVxuXG4uby1iaWxsYm9hcmRfX2ltYWdlLXdyYXBwZXItLWdyYWRpZW50OmFmdGVyIHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgI2ZmZiwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpIDIwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSk7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgaGVpZ2h0OiAyMCU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLm8tYmlsbGJvYXJkX19pbWFnZS13cmFwcGVyLS1kYXJrLWdyYWRpZW50OmFmdGVyIHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHRvcCwgIzkzOTU5OCwgcmdiYSgxNDcsIDE0OSwgMTUyLCAwLjIpIDUwJSwgcmdiYSgwLCAwLCAwLCAwKSk7XG4gIGJvdHRvbTogMDtcbiAgY29udGVudDogJyc7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBoZWlnaHQ6IDUwJTtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLm8tYmlsbGJvYXJkX19pbWFnZSB7XG4gIG1heC1oZWlnaHQ6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwdnc7XG4gIG1pbi1oZWlnaHQ6IDEyZW07XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xuICB3aWR0aDogMTAwJTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDhyZW0pIHtcbiAgICAuby1iaWxsYm9hcmRfX2ltYWdlIHtcbiAgICAgIGhlaWdodDogMTAwJTsgfSB9XG5cbi5vLWJpbGxib2FyZF9faW1hZ2Utd3JhcHBlci0tdG9wIC5vLWJpbGxib2FyZF9faW1hZ2Uge1xuICBvYmplY3QtcG9zaXRpb246IDUwJSAwJTsgfVxuXG4uby1iaWxsYm9hcmRfX2ltYWdlLXdyYXBwZXItLXJpZ2h0IC5vLWJpbGxib2FyZF9faW1hZ2Uge1xuICBvYmplY3QtcG9zaXRpb246IDEwMCUgNTAlOyB9XG5cbi5vLWJpbGxib2FyZF9faW1hZ2Utd3JhcHBlci0tYm90dG9tIC5vLWJpbGxib2FyZF9faW1hZ2Uge1xuICBvYmplY3QtcG9zaXRpb246IDUwJSAxMDAlOyB9XG5cbi5vLWJpbGxib2FyZF9faW1hZ2Utd3JhcHBlci0tcmlnaHQgLm8tYmlsbGJvYXJkX19pbWFnZSB7XG4gIG9iamVjdC1wb3NpdGlvbjogMCUgNTAlOyB9XG5cbi5vLWJpbGxib2FyZC0tYmctZ3JhZGllbnQge1xuICBiYWNrZ3JvdW5kOiAjRkZGO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCAjRkZGIDAlLCAjRjJGMkYyIDEwMCUpO1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggc3RhcnRDb2xvcnN0cj0nJGNvbG91cjEnLCBlbmRDb2xvcnN0cj0nJGNvbG91cjInLEdyYWRpZW50VHlwZT0xICk7XG4gIGJveC1zaGFkb3c6IGluc2V0IDBweCAtMnB4IDFweCByZ2JhKDY1LCA2NCwgNjYsIDAuMik7IH1cblxuLm8tYmlsbGJvYXJkLS1iZy1ncmV5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0YyRjJGMjtcbiAgYm94LXNoYWRvdzogaW5zZXQgMHB4IDJweCAxcHggcmdiYSg2NSwgNjQsIDY2LCAwLjIpOyB9XG5cbi5vLWJpbGxib2FyZC0tYmctZ3JhZGllbnQgLm8tYmlsbGJvYXJkX19jb250ZW50IHtcbiAgb3ZlcmZsb3cteDogaGlkZGVuOyB9XG5cbi5vLWJpbGxib2FyZC0tYmctZ3JleSAuby1iaWxsYm9hcmRfX2hlYWRpbmctY29udGFpbmVyLFxuLm8tYmlsbGJvYXJkLS1iZy1ncmFkaWVudCAuby1iaWxsYm9hcmRfX2hlYWRpbmctY29udGFpbmVyIHtcbiAgcGFkZGluZzogMWVtIDAgMS41ZW07IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDQ3Ljk5cmVtKSB7XG4gIC5vLWJpbGxib2FyZC0tYmctZ3JhZGllbnQgLm0tY2FsbG91dCB7XG4gICAgcGFkZGluZy10b3A6IDA7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDhyZW0pIHtcbiAgLm8tYmlsbGJvYXJkLS1iZy1ncmV5IC5vLWJpbGxib2FyZF9faGVhZGluZy1jb250YWluZXIsXG4gIC5vLWJpbGxib2FyZC0tYmctZ3JhZGllbnQgLm8tYmlsbGJvYXJkX19oZWFkaW5nLWNvbnRhaW5lciB7XG4gICAgYmFja2dyb3VuZDogI0ZGRjtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjYTYxOTJlO1xuICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICBib3gtc2hhZG93OiAwIDFweCAzcHggMCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmc6IDEuNWVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuby1iaWxsYm9hcmQtLWJnLWdyYWRpZW50IC5vLWJpbGxib2FyZF9faGVhZGluZy1jb250YWluZXI6OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZDogI2E2MTkyZTtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDFweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDEwMCU7XG4gICAgdG9wOiA2NSU7XG4gICAgd2lkdGg6IDcwZW07IH1cbiAgLm8tYmlsbGJvYXJkLS1iZy1ncmV5IC5vLWJpbGxib2FyZF9faGVhZGluZy1jb250YWluZXI6OmFmdGVyLFxuICAuby1iaWxsYm9hcmQtLWJnLWdyYWRpZW50IC5vLWJpbGxib2FyZF9faGVhZGluZy1jb250YWluZXI6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjRkZGO1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogOHB4O1xuICAgIG1hcmdpbi10b3A6IC00cHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICB3aWR0aDogOHB4OyB9XG4gIC5vLWJpbGxib2FyZC0tYmctZ3JhZGllbnQgLm8tYmlsbGJvYXJkX19oZWFkaW5nLWNvbnRhaW5lcjo6YWZ0ZXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNhNjE5MmU7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNhNjE5MmU7XG4gICAgcmlnaHQ6IC01cHg7XG4gICAgdG9wOiA2NSU7IH1cbiAgLm8tYmlsbGJvYXJkLS1iZy1ncmV5IC5vLWJpbGxib2FyZF9faGVhZGluZy1jb250YWluZXI6OmFmdGVyIHtcbiAgICBib3R0b206IC01cHg7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNhNjE5MmU7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2E2MTkyZTtcbiAgICBtYXJnaW4tcmlnaHQ6IC00cHg7XG4gICAgcmlnaHQ6IDUwJTsgfSB9XG5cbi5vLWJpbGxib2FyZF9fY29udGVudCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5vLWJpbGxib2FyZF9faGVhZGVyLFxuLm8tYmlsbGJvYXJkX19ib2R5LFxuLm8tYmlsbGJvYXJkX19mb290ZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLm8tYmlsbGJvYXJkX19oZWFkZXIsXG4uby1iaWxsYm9hcmRfX2Zvb3RlciB7XG4gIGZsZXgtc2hyaW5rOiAwOyB9XG5cbi5vLWJpbGxib2FyZF9faGVhZGVyLS1mdWxsIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5vLWJpbGxib2FyZF9fYm9keSB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBtYXJnaW4tdG9wOiBhdXRvO1xuICBtYXJnaW4tYm90dG9tOiBhdXRvO1xuICB3aWR0aDogMTAwJTsgfVxuXG4uby1iaWxsYm9hcmRfX2JvZHktLWJvdHRvbSB7XG4gIGZsZXgtZ3JvdzogMDtcbiAgbWFyZ2luLXRvcDogYXV0bztcbiAgbWFyZ2luLWJvdHRvbTogaW5oZXJpdDsgfVxuXG4uby1iaWxsYm9hcmRfX2JvZHktLXRvcCB7XG4gIGZsZXgtZ3JvdzogMDtcbiAgbWFyZ2luLXRvcDogaW5oZXJpdDtcbiAgbWFyZ2luLWJvdHRvbTogYXV0bzsgfVxuXG4uby1iaWxsYm9hcmRfX2hlYWRpbmcge1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMS4xMjU7IH1cblxuLm8tYmlsbGJvYXJkLS1iZy1pbWFnZSAuby1iaWxsYm9hcmRfX2hlYWRpbmcge1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgdGV4dC1zaGFkb3c6IDBweCAxcHggM3B4IHJnYmEoMCwgMCwgMCwgMC41KTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMzByZW0pIHtcbiAgICAuby1iaWxsYm9hcmQtLWJnLWltYWdlIC5vLWJpbGxib2FyZF9faGVhZGluZyB7XG4gICAgICBmb250LXNpemU6IDJyZW07IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDhyZW0pIHtcbiAgICAuby1iaWxsYm9hcmQtLWJnLWltYWdlIC5vLWJpbGxib2FyZF9faGVhZGluZyB7XG4gICAgICBmb250LXNpemU6IDIuNXJlbTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NHJlbSkge1xuICAgIC5vLWJpbGxib2FyZC0tYmctaW1hZ2UgLm8tYmlsbGJvYXJkX19oZWFkaW5nIHtcbiAgICAgIGZvbnQtc2l6ZTogM3JlbTsgfSB9XG5cbi5vLWJpbGxib2FyZC0tYmctZ3JleSAuby1iaWxsYm9hcmRfX2hlYWRpbmcsXG4uby1iaWxsYm9hcmQtLWJnLWdyYWRpZW50IC5vLWJpbGxib2FyZF9faGVhZGluZyB7XG4gIGZvbnQtc2l6ZTogMS41cmVtOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0OHJlbSkge1xuICAgIC5vLWJpbGxib2FyZC0tYmctZ3JleSAuby1iaWxsYm9hcmRfX2hlYWRpbmcsXG4gICAgLm8tYmlsbGJvYXJkLS1iZy1ncmFkaWVudCAuby1iaWxsYm9hcmRfX2hlYWRpbmcge1xuICAgICAgZm9udC1zaXplOiAxLjc1cmVtOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0cmVtKSB7XG4gICAgLm8tYmlsbGJvYXJkLS1iZy1ncmV5IC5vLWJpbGxib2FyZF9faGVhZGluZyxcbiAgICAuby1iaWxsYm9hcmQtLWJnLWdyYWRpZW50IC5vLWJpbGxib2FyZF9faGVhZGluZyB7XG4gICAgICBmb250LXNpemU6IDJyZW07IH0gfVxuXG4uby1iaWxsYm9hcmRfX2hlYWRpbmctLXdoaXRlIHtcbiAgY29sb3I6ICNGRkY7IH1cblxuLm8tYmlsbGJvYXJkLS1pbnZlcnNlLFxuLm8tYmlsbGJvYXJkLS1zaW1wbGUtYnJhbmQge1xuICBjb2xvcjogI0ZGRjsgfVxuXG4uby1iaWxsYm9hcmQtLXNpbXBsZS1ncmV5IC5vLWJpbGxib2FyZF9faGVhZGluZyxcbi5vLWJpbGxib2FyZC0tc2ltcGxlLWltYWdlIC5vLWJpbGxib2FyZF9faGVhZGluZyxcbi5vLWJpbGxib2FyZC0tb3ZlcmxhcHBpbmcgLm8tYmlsbGJvYXJkX19oZWFkaW5nIHtcbiAgY29sb3I6ICM0MTQwNDI7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjAzNWVtOyB9XG5cbi5vLWJpbGxib2FyZC0taW52ZXJzZSAuby1iaWxsYm9hcmRfX2hlYWRpbmcsXG4uby1iaWxsYm9hcmQtLXNpbXBsZS1icmFuZCAuby1iaWxsYm9hcmRfX2hlYWRpbmcge1xuICBjb2xvcjogI0ZGRjsgfVxuXG4uby1iaWxsYm9hcmQtLXNpbXBsZS1ncmV5IC5tLWJyZWFkY3J1bWJzLFxuLm8tYmlsbGJvYXJkLS1zaW1wbGUtYnJhbmQgLm0tYnJlYWRjcnVtYnMsXG4uby1iaWxsYm9hcmQtLXNpbXBsZS1pbWFnZSAubS1icmVhZGNydW1icyxcbi5vLWJpbGxib2FyZC0tb3ZlcmxhcHBpbmcgLm0tYnJlYWRjcnVtYnMsXG4uby1iaWxsYm9hcmQtLXNpbXBsZS1ncmV5IC5vLWJpbGxib2FyZF9fcmVmZXIsXG4uby1iaWxsYm9hcmQtLXNpbXBsZS1icmFuZCAuby1iaWxsYm9hcmRfX3JlZmVyLFxuLm8tYmlsbGJvYXJkLS1zaW1wbGUtaW1hZ2UgLm8tYmlsbGJvYXJkX19yZWZlcixcbi5vLWJpbGxib2FyZC0tb3ZlcmxhcHBpbmcgLm8tYmlsbGJvYXJkX19yZWZlciB7XG4gIGZvbnQtc2l6ZTogMC44NzVlbTsgfVxuXG4uby1iaWxsYm9hcmQtLWludmVyc2UgLm8tYmlsbGJvYXJkX19yZWZlcixcbi5vLWJpbGxib2FyZC0tc2ltcGxlLWJyYW5kIC5vLWJpbGxib2FyZF9fcmVmZXIge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpOyB9XG4gIC5vLWJpbGxib2FyZC0taW52ZXJzZSAuby1iaWxsYm9hcmRfX3JlZmVyOmhvdmVyLFxuICAuby1iaWxsYm9hcmQtLXNpbXBsZS1icmFuZCAuby1iaWxsYm9hcmRfX3JlZmVyOmhvdmVyIHtcbiAgICBjb2xvcjogd2hpdGU7IH1cblxuLyoqXG4gKiBPdmVybGFwcGluZyBpbWFnZSBiaWxsYm9hcmRcbiAqL1xuLm8tYmlsbGJvYXJkLS1vdmVybGFwcGluZyAuby1iaWxsYm9hcmRfX2hlYWRpbmcge1xuICBmb250LXNpemU6IDIuNXJlbTtcbiAgbWFyZ2luOiAuMTI1ZW0gMCAuNWVtOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0OHJlbSkge1xuICAgIC5vLWJpbGxib2FyZC0tb3ZlcmxhcHBpbmcgLm8tYmlsbGJvYXJkX19oZWFkaW5nIHtcbiAgICAgIGZvbnQtc2l6ZTogMy4yNXJlbTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NHJlbSkge1xuICAgIC5vLWJpbGxib2FyZC0tb3ZlcmxhcHBpbmcgLm8tYmlsbGJvYXJkX19oZWFkaW5nIHtcbiAgICAgIGZvbnQtc2l6ZTogNHJlbTsgfSB9XG5cbi5vLWJpbGxib2FyZF9fb3ZlcmxhcCB7XG4gIG1hcmdpbi10b3A6IC01NHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLyoqXG4gKiBTaW1wbGUgYmlsbGJvYXJkXG4gKi9cbi5vLWJpbGxib2FyZC0tc2ltcGxlLWdyZXkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjJGMkYyOyB9XG5cbi5vLWJpbGxib2FyZC0tc2ltcGxlLWJyYW5kIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2E2MTkyZTsgfVxuXG4uby1iaWxsYm9hcmQtLXNpbXBsZS1pbWFnZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7IH1cblxuLm8tYmlsbGJvYXJkLS1zaW1wbGUtaW1hZ2Utb3ZlcmxheSB7XG4gIGJhY2tncm91bmQtYmxlbmQtbW9kZTogbGlnaHRlbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjc1KTsgfVxuXG4uby1iaWxsYm9hcmQtLXNpbXBsZS1ncmV5IC5vLWJpbGxib2FyZF9faGVhZGluZyxcbi5vLWJpbGxib2FyZC0tc2ltcGxlLWJyYW5kIC5vLWJpbGxib2FyZF9faGVhZGluZyxcbi5vLWJpbGxib2FyZC0tc2ltcGxlLWltYWdlIC5vLWJpbGxib2FyZF9faGVhZGluZyB7XG4gIGZvbnQtc2l6ZTogMi4yNXJlbTtcbiAgbWFyZ2luOiAuMTI1ZW0gMCAuMTI1ZW07IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4cmVtKSB7XG4gICAgLm8tYmlsbGJvYXJkLS1zaW1wbGUtZ3JleSAuby1iaWxsYm9hcmRfX2hlYWRpbmcsXG4gICAgLm8tYmlsbGJvYXJkLS1zaW1wbGUtYnJhbmQgLm8tYmlsbGJvYXJkX19oZWFkaW5nLFxuICAgIC5vLWJpbGxib2FyZC0tc2ltcGxlLWltYWdlIC5vLWJpbGxib2FyZF9faGVhZGluZyB7XG4gICAgICBmb250LXNpemU6IDNyZW07IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjRyZW0pIHtcbiAgICAuby1iaWxsYm9hcmQtLXNpbXBsZS1ncmV5IC5vLWJpbGxib2FyZF9faGVhZGluZyxcbiAgICAuby1iaWxsYm9hcmQtLXNpbXBsZS1icmFuZCAuby1iaWxsYm9hcmRfX2hlYWRpbmcsXG4gICAgLm8tYmlsbGJvYXJkLS1zaW1wbGUtaW1hZ2UgLm8tYmlsbGJvYXJkX19oZWFkaW5nIHtcbiAgICAgIGZvbnQtc2l6ZTogMy43NXJlbTsgfSB9XG5cbi5vLWJpbGxib2FyZC0tc2ltcGxlLWdyZXkgLm0tYnJlYWRjcnVtYnNfX2NydW1iIGEsXG4uby1iaWxsYm9hcmQtLXNpbXBsZS1pbWFnZSAubS1icmVhZGNydW1ic19fY3J1bWIgYSxcbi5vLWJpbGxib2FyZC0tb3ZlcmxhcHBpbmcgLm0tYnJlYWRjcnVtYnNfX2NydW1iIGEge1xuICBjb2xvcjogIzRGODY4RTtcbiAgZm9udC13ZWlnaHQ6IDQwMDsgfVxuICAuby1iaWxsYm9hcmQtLXNpbXBsZS1ncmV5IC5tLWJyZWFkY3J1bWJzX19jcnVtYiBhOmhvdmVyLFxuICAuby1iaWxsYm9hcmQtLXNpbXBsZS1pbWFnZSAubS1icmVhZGNydW1ic19fY3J1bWIgYTpob3ZlcixcbiAgLm8tYmlsbGJvYXJkLS1vdmVybGFwcGluZyAubS1icmVhZGNydW1ic19fY3J1bWIgYTpob3ZlciB7XG4gICAgYm9yZGVyLWNvbG9yOiBjdXJyZW50Q29sb3I7XG4gICAgY29sb3I6ICMzZDY3NmQ7IH1cblxuLm8tYmlsbGJvYXJkLS1pbnZlcnNlIC5tLWJyZWFkY3J1bWJzX19jcnVtYiBhLFxuLm8tYmlsbGJvYXJkLS1zaW1wbGUtYnJhbmQgLm0tYnJlYWRjcnVtYnNfX2NydW1iIGEge1xuICBjb2xvcjogI2I4ZDRkODsgfVxuICAuby1iaWxsYm9hcmQtLWludmVyc2UgLm0tYnJlYWRjcnVtYnNfX2NydW1iIGE6aG92ZXIsXG4gIC5vLWJpbGxib2FyZC0tc2ltcGxlLWJyYW5kIC5tLWJyZWFkY3J1bWJzX19jcnVtYiBhOmhvdmVyIHtcbiAgICBib3JkZXItY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgICBjb2xvcjogIzY2YTFhYTsgfVxuXG4uby1iaWxsYm9hcmQtLWludmVyc2UgLm0tYnJlYWRjcnVtYnNfX2NydW1iOm5vdCg6bGFzdC1jaGlsZCk6YWZ0ZXIsXG4uby1iaWxsYm9hcmQtLXNpbXBsZS1icmFuZCAubS1icmVhZGNydW1ic19fY3J1bWI6bm90KDpsYXN0LWNoaWxkKTphZnRlciB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7IH1cblxuLm8tYmlsbGJvYXJkLS1zaW1wbGUtYnJhbmQgLmEtYnV0dG9uLS1icmFuZC1maWxsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gIGNvbG9yOiAjYTYxOTJlOyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA0Ny45OXJlbSkge1xuICAuby1iaWxsYm9hcmQtLWhvbWVwYWdlIC5vLXN3aXBlcixcbiAgLm8tYmlsbGJvYXJkLS1ob21lcGFnZSA+IC5vLWJpbGxib2FyZF9faW1hZ2Utd3JhcHBlcixcbiAgLm8tYmlsbGJvYXJkLS1zdXBlciAuby1zd2lwZXIsXG4gIC5vLWJpbGxib2FyZC0tc3VwZXIgPiAuby1iaWxsYm9hcmRfX2ltYWdlLXdyYXBwZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDA7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLm8tYmlsbGJvYXJkLS1ob21lcGFnZSAuby1zd2lwZXIgKyAuby1iaWxsYm9hcmRfX2NvbnRlbnQsXG4gIC5vLWJpbGxib2FyZC0tc3VwZXIgLm8tc3dpcGVyICsgLm8tYmlsbGJvYXJkX19jb250ZW50IHtcbiAgICBtaW4taGVpZ2h0OiA1MHZoOyB9XG4gIC5vLWJpbGxib2FyZC0taG9tZXBhZ2UgLm8tYmlsbGJvYXJkX19ib2R5LFxuICAuby1iaWxsYm9hcmQtLXN1cGVyIC5vLWJpbGxib2FyZF9fYm9keSB7XG4gICAgb3JkZXI6IDM7IH1cbiAgLm8tYmlsbGJvYXJkLS1ob21lcGFnZSAuby1zd2lwZXJfX2NhcHRpb24tY29udGFpbmVyLFxuICAuby1iaWxsYm9hcmQtLXN1cGVyIC5vLXN3aXBlcl9fY2FwdGlvbi1jb250YWluZXIge1xuICAgIG1hcmdpbi1sZWZ0OiAxZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAxZW07IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDhyZW0pIHtcbiAgLm8tYmlsbGJvYXJkLS1ob21lcGFnZSAuby1zd2lwZXIsXG4gIC5vLWJpbGxib2FyZC0tc3VwZXIgLm8tc3dpcGVyIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuLm8tYmlsbGJvYXJkLS1ob21lcGFnZSAuby1iaWxsYm9hcmRfX2hlYWRlcixcbi5vLWJpbGxib2FyZC0taG9tZXBhZ2UgLm8tYmlsbGJvYXJkX19mb290ZXIsXG4uby1iaWxsYm9hcmQtLXN1cGVyIC5vLWJpbGxib2FyZF9faGVhZGVyLFxuLm8tYmlsbGJvYXJkLS1zdXBlciAuby1iaWxsYm9hcmRfX2Zvb3RlciB7XG4gIHotaW5kZXg6IDE7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDQ3Ljk5cmVtKSB7XG4gICNvLW1kLWRldGFpbC1wcm9maWxlcyAuby1iaWxsYm9hcmRfX2hlYWRpbmctY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAjby1tZC1kZXRhaWwtcHJvZmlsZXMgLm8tYmlsbGJvYXJkX19oZWFkaW5nLWNvbnRhaW5lciAuby1iaWxsYm9hcmRfX2hlYWRpbmcge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgICAjby1tZC1kZXRhaWwtcHJvZmlsZXMgLm8tYmlsbGJvYXJkX19oZWFkaW5nLWNvbnRhaW5lciAuby1iaWxsYm9hcmRfX2hlYWRpbmcgaW1nIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDBweDtcbiAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvOyB9IH1cblxuLnUtY29sb3ItYmVpZ2UgLm0tYnJlYWRjcnVtYnNfX2NydW1iOm5vdCg6bGFzdC1jaGlsZCk6YWZ0ZXIge1xuICBjb2xvcjogI0YyRjJFQTtcbiAgY29udGVudDogXCIvXCI7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4cmVtKSB7XG4gIC5vLWJpbGxib2FyZC0tbG9jYXRpb24tY2VudGVyLXBvcyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA0OHJlbSkge1xuICAuby1iaWxsYm9hcmQtLWxvY2F0aW9uLWNlbnRlci10aXRsZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogY2FsYygxMDAlIC0gMTMwcHgpO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwOyB9IH1cblxuLypkb2Ncbi0tLVxudGl0bGU6IEZpbmQgU29tZXRoaW5nXG5uYW1lOiBmaW5kLXNvbWV0aGluZ1xuY2F0ZWdvcnk6IE9yZ2FuaXNtc1xuLS0tXG5cblRoZSBmaW5kIHNvbWV0aGluZyB0b29sIGlzIGEgZmVhdHVyZS1yaWNoIHNlYXJjaCB0b29sIHVzZXJzIGNhbiB1c2UgdG8gZmluZCBwcm92aWRlcnMgYmFzZWQgb24gc3BlY2lmaWMgY3JpdGVyaWEuIEF0IHRoZSBtb21lbnQgdGhlcmUgaXMgbm8gc3R5bGluZyBzcGVjaWZpYyB0byB0aGlzIGVsZW1lbnQuXG5cbmBgYGh0bWxfZXhhbXBsZVxuPGRpdiBjbGFzcz1cIm0tYnV0dG9uLWdyb3VwICBtLWJ1dHRvbi1ncm91cC0tZXF1YWwgIHUtaGlnaFwiPlxuXHQ8ZGl2IGNsYXNzPVwibS1idXR0b24tZ3JvdXBfX2l0ZW1cIj5cblx0XHQ8YSBjbGFzcz1cIm0tYnV0dG9uLWdyb3VwX19saW5rICBtLWJ1dHRvbi1ncm91cF9fbGluay0taWNvbi12ZXJ0aWNhbFwiIGhyZWY9XCIjXCI+XG5cdFx0XHQ8c3ZnIGNsYXNzPVwiYS1pY29uICBtLWJ1dHRvbi1ncm91cF9faWNvbiAgbS1idXR0b24tZ3JvdXBfX2ljb24tLXRvcFwiPlxuXHRcdFx0XHQ8dXNlIHhsaW5rOmhyZWY9XCIuLi9pY29ucy9pY29ucy5zdmcjZG9jdG9yXCI+PC91c2U+XG5cdFx0XHQ8L3N2Zz5cblx0XHRcdEJ5IE5hbWVcblx0XHQ8L2E+XG5cdDwvZGl2PlxuXHQ8ZGl2IGNsYXNzPVwibS1idXR0b24tZ3JvdXBfX2l0ZW1cIj5cblx0XHQ8YSBjbGFzcz1cIm0tYnV0dG9uLWdyb3VwX19saW5rICBtLWJ1dHRvbi1ncm91cF9fbGluay0taWNvbi12ZXJ0aWNhbFwiIGhyZWY9XCIjXCI+XG5cdFx0XHQ8c3ZnIGNsYXNzPVwiYS1pY29uICBtLWJ1dHRvbi1ncm91cF9faWNvbiAgbS1idXR0b24tZ3JvdXBfX2ljb24tLXRvcFwiPlxuXHRcdFx0XHQ8dXNlIHhsaW5rOmhyZWY9XCIuLi9pY29ucy9pY29ucy5zdmcjbG9jYXRpb25cIj48L3VzZT5cblx0XHRcdDwvc3ZnPlxuXHRcdFx0QnkgTG9jYXRpb25cblx0XHQ8L2E+XG5cdDwvZGl2PlxuXHQ8ZGl2IGNsYXNzPVwibS1idXR0b24tZ3JvdXBfX2l0ZW1cIj5cblx0XHQ8YSBjbGFzcz1cIm0tYnV0dG9uLWdyb3VwX19saW5rICBtLWJ1dHRvbi1ncm91cF9fbGluay0taWNvbi12ZXJ0aWNhbFwiIGhyZWY9XCIjXCI+XG5cdFx0XHQ8c3ZnIGNsYXNzPVwiYS1pY29uICBtLWJ1dHRvbi1ncm91cF9faWNvbiAgbS1idXR0b24tZ3JvdXBfX2ljb24tLXRvcFwiPlxuXHRcdFx0XHQ8dXNlIHhsaW5rOmhyZWY9XCIuLi9pY29ucy9pY29ucy5zdmcjc3RldGhvc2NvcGVcIj48L3VzZT5cblx0XHRcdDwvc3ZnPlxuXHRcdFx0QnkgU3BlY2lhbHR5XG5cdFx0PC9hPlxuXHQ8L2Rpdj5cbjwvZGl2PlxuPGRpdiBjbGFzcz1cIm0tYnV0dG9uLWxpc3QgIGwtZ3JpZCAgbC1ncmlkLS1taWRkbGVcIj5cblx0PGRpdiBjbGFzcz1cIm0tYnV0dG9uLWxpc3RfX2l0ZW0gIGwtZ3JpZF9faXRlbSAgMS8xXCI+XG5cdFx0PGEgY2xhc3M9XCJhLWJ1dHRvbiAgYS1idXR0b24tLWV4cGFuZFwiIGhyZWY9XCJzZXJ2aWNlcy10cmVhdG1lbnRzLmh0bWxcIj5WaWV3IEFsbCBXb21lbidzIEhlYWx0aCBTcGVjaWFsdGllczwvYT5cblx0PC9kaXY+XG48L2Rpdj5cbmBgYFxuXG4qL1xuLm8tZmluZC1zb21ldGhpbmctLXRhYi1iYXIgbGkgYTpob3ZlciAuYS1pY29uIHtcbiAgY29sb3I6ICNGRkY7IH1cblxuLm8tZmluZC1zb21ldGhpbmctLXRhYi1iYXIgbGkuYWN0aXZlIGEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjJGMkYyO1xuICBjb2xvcjogI2E2MTkyZTsgfVxuICAuby1maW5kLXNvbWV0aGluZy0tdGFiLWJhciBsaS5hY3RpdmUgYSAuYS1pY29uIHtcbiAgICBjb2xvcjogI2E2MTkyZTsgfVxuICAuby1maW5kLXNvbWV0aGluZy0tdGFiLWJhciBsaS5hY3RpdmUgYTpob3ZlciAuYS1pY29uIHtcbiAgICBjb2xvcjogI0ZGRjsgfVxuXG5AbWVkaWEgcHJpbnQge1xuICAuby1maW5kLXNvbWV0aGluZy0tdGFiLWJhciAubS1idXR0b24tZ3JvdXBfX2xpbms6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7IH0gfVxuXG4uby1maW5kLXNvbWV0aGluZy0tc2lkZS1iYXIgbGkgYS5jaG9zZW4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjJGMkYyO1xuICBjb2xvcjogI2E2MTkyZTsgfVxuXG4uby1maW5kLXNvbWV0aGluZy0tbm8tcmF0aW5nLXRleHQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cblxuLm8tZmluZC1zb21ldGhpbmctLW5vLXJhdGluZy1wb3B1cCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiA0MHB4O1xuICBsZWZ0OiAtNjBweDtcbiAgd2lkdGg6IDI2MHB4O1xuICB6LWluZGV4OiAwO1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5vLWZpbmQtc29tZXRoaW5nLS1uby1yYXRpbmctdGV4dDpob3ZlciArIC5vLWZpbmQtc29tZXRoaW5nLS1uby1yYXRpbmctcG9wdXAge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4uby1maW5kLXNvbWV0aGluZy0tc3BlY2lhbHRpZXMge1xuICBsaW5lLWhlaWdodDogMS4xMjU7IH1cblxuLmFuZ3Vjb21wbGV0ZS1ob2xkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLmFuZ3Vjb21wbGV0ZS1kcm9wZG93biB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDAuNWVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHotaW5kZXg6IDk5OTk7XG4gIHRvcDogMzVweDsgfVxuXG4uYW5ndWNvbXBsZXRlLXNlYXJjaGluZyB7XG4gIGNvbG9yOiAjYTYxOTJlOyB9XG5cbi5hbmd1Y29tcGxldGUtcm93IHtcbiAgcGFkZGluZzogMC41ZW07XG4gIGNvbG9yOiAjMDAwMDAwO1xuICBtYXJnaW4tYm90dG9tOiA0cHg7XG4gIGNsZWFyOiBib3RoOyB9XG5cbi5hbmd1Y29tcGxldGUtc2VsZWN0ZWQtcm93IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2E2MTkyZTtcbiAgY29sb3I6ICNmZmZmZmY7IH1cblxuLm8tZmluZC1zb21ldGhpbmctdG9vbCAuby1zZWFyY2gtYmFyIGlucHV0IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXdlaWdodDogMzAwO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGJvcmRlcjogbm9uZTsgfVxuXG4uby1maW5kLXNvbWV0aGluZy10b29sIC5vLWZpbmQtc29tZXRoaW5nLS1sZXR0ZXJzIGxpIGEge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGNvbG9yOiAjOTM5NTk4OyB9XG4gIC5vLWZpbmQtc29tZXRoaW5nLXRvb2wgLm8tZmluZC1zb21ldGhpbmctLWxldHRlcnMgbGkgYS5hY3RpdmUge1xuICAgIGNvbG9yOiAjYTYxOTJlO1xuICAgIGN1cnNvcjogcG9pbnRlciAhaW1wb3J0YW50O1xuICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvICFpbXBvcnRhbnQ7IH1cblxuLm8tZmluZC1zb21ldGhpbmctdG9vbCAjby1maW5kLXNvbWV0aGluZy0tc2VhcmNoLWxvY2F0aW9ucyAuby1maW5kLXNvbWV0aGluZy0tc2VhcmNoLWVycm9yIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uby1maW5kLXNvbWV0aGluZy10b29sICNvLWZpbmQtc29tZXRoaW5nLS1zZWFyY2gtbG9jYXRpb25zLmVycm9yIC5hLWZpZWxkIHtcbiAgYm9yZGVyLWNvbG9yOiAjYTYxOTJlO1xuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAycHggI2E2MTkyZTsgfVxuXG4uby1maW5kLXNvbWV0aGluZy10b29sICNvLWZpbmQtc29tZXRoaW5nLS1zZWFyY2gtbG9jYXRpb25zLmVycm9yIC5vLWZpbmQtc29tZXRoaW5nLS1zZWFyY2gtZXJyb3Ige1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4uby1maW5kLXNvbWV0aGluZy10b29sIC5vLWZpbmQtc29tZXRoaW5nLS1wcm9maWxlLWltZyB7XG4gIGhlaWdodDogMTUwcHg7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEyMHB4O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgdG9wOyB9XG5cbi5vLWZpbmQtc29tZXRoaW5nLS1zdGFyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5vLWZpbmQtc29tZXRoaW5nLS1zdGFyIC5vLWZpbmQtc29tZXRoaW5nLS1zdGFyLWJrZyB7XG4gICAgaGVpZ2h0OiAyMHB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfVxuICAuby1maW5kLXNvbWV0aGluZy0tc3RhciAuby1maW5kLXNvbWV0aGluZy0tbWQtc3Rhci1ia2cge1xuICAgIGhlaWdodDogMjVweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7IH1cbiAgLm8tZmluZC1zb21ldGhpbmctLXN0YXIgaW1nIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLm8tY2FyZC0tcHJvZmlsZXMge1xuICBib3JkZXI6IG5vbmU7IH1cbiAgLm8tY2FyZC0tcHJvZmlsZXMgLm8tZmluZC1zb21ldGhpbmctLXNwZWNpYWx0aWVzIHtcbiAgICBjb2xvcjogIzQxNDA0MjsgfVxuICAuby1jYXJkLS1wcm9maWxlcyAuby1maW5kLXNvbWV0aGluZy0tc3RhciB7XG4gICAgYm9yZGVyOiBub25lOyB9XG4gIC5vLWNhcmQtLXByb2ZpbGVzIC5vLWZpbmQtc29tZXRoaW5nLS1uby1yYXRpbmctcG9wdXAge1xuICAgIGNvbG9yOiAjNDE0MDQyOyB9XG5cbiNzcGVjaWFsaXN0U3BlY2lhbHRpZXNfZHJvcGRvd24ge1xuICB0b3A6IDU1cHg7XG4gIGhlaWdodDogNDIwcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG92ZXJmbG93LXk6IHNjcm9sbDsgfVxuXG4vKmRvY1xuLS0tXG50aXRsZTogRm9vdGVyc1xubmFtZTogZm9vdGVyc1xuY2F0ZWdvcnk6IE9yZ2FuaXNtc1xuLS0tXG5cblRoZSBmb290ZXIgb3JnYW5pc20gaXMgdGhlIHNpdGUtd2lkZSBmb290ZXIgZm9yIG91ciBzaXRlLiBUaGVyZSBhcmVuJ3QgbWFueSBtb2RpZmllcnMgYXMgdGhpcyBpc24ndCBpbnRlbmRlZCB0byBzdGF5IGNvbnNpc3RlbnQuXG5cbmBgYGh0bWxfZXhhbXBsZVxuPGZvb3RlciBjbGFzcz1cIm8tZm9vdGVyXCIgcm9sZT1cImNvbnRlbnRpbmZvXCI+XG5cdDxkaXYgY2xhc3M9XCJsLWNvbnRhaW5lciAgbC1jb250YWluZXItLXN1cGVyICBsLWNvbnRhaW5lci0tZmx1c2hcIj5cblx0XHQ8ZGl2IGNsYXNzPVwiby1mb290ZXJfX2luZm9cIj5cblx0XHRcdDxkaXYgY2xhc3M9XCJsLWNvbnRhaW5lciAgbC1jb250YWluZXItLWxhcmdlXCI+XG5cdFx0XHRcdDxkaXYgY2xhc3M9XCJsLWdyaWRcIj5cblx0XHRcdFx0XHQ8ZGl2IGNsYXNzPVwibC1ncmlkX19pdGVtICAxLzEgIDEvMkBzbWFsbCAgMS8zQG1lZGl1bVwiPlxuXHRcdFx0XHRcdFx0PGg0IGNsYXNzPVwiYS1oM1wiPlNpdGUgTGlua3M8L2g0PlxuXHRcdFx0XHRcdFx0PHVsIGNsYXNzPVwiYS1saXN0ICBhLWxpc3QtLXVuc3R5bGVkXCI+XG5cdFx0XHRcdFx0XHRcdDxsaT48YSBocmVmPVwiI1wiIGNsYXNzPVwiby1mb290ZXJfX2xpbmtcIj5BYm91dCBVczwvYT48L2xpPlxuXHRcdFx0XHRcdFx0XHQ8bGk+PGEgaHJlZj1cIiNcIiBjbGFzcz1cIm8tZm9vdGVyX19saW5rXCI+Sm9iczwvYT48L2xpPlxuXHRcdFx0XHRcdFx0XHQ8bGk+PGEgaHJlZj1cIiNcIiBjbGFzcz1cIm8tZm9vdGVyX19saW5rXCI+R2l2aW5nPC9hPjwvbGk+XG5cdFx0XHRcdFx0XHRcdDxsaT48YSBocmVmPVwiI1wiIGNsYXNzPVwiby1mb290ZXJfX2xpbmtcIj5NYXBzICZhbXA7IERpcmVjdGlvbnM8L2E+PC9saT5cblx0XHRcdFx0XHRcdFx0PGxpPjxhIGhyZWY9XCIjXCIgY2xhc3M9XCJvLWZvb3Rlcl9fbGlua1wiPlB1YmxpYyBBZmZhaXJzPC9hPjwvbGk+XG5cdFx0XHRcdFx0XHRcdDxsaT48YSBocmVmPVwiI1wiIGNsYXNzPVwiby1mb290ZXJfX2xpbmtcIj5UaGUgSW1hZ2luZSBQZXJmZWN0IENhcmUgUHJvZ3JhbTwvYT48L2xpPlxuXHRcdFx0XHRcdFx0PC91bD5cblx0XHRcdFx0XHQ8L2Rpdj5cblx0XHRcdFx0XHQ8ZGl2IGNsYXNzPVwibC1ncmlkX19pdGVtICAxLzEgIDEvMkBzbWFsbCAgMS8zQG1lZGl1bVwiPlxuXHRcdFx0XHRcdFx0PGg0IGNsYXNzPVwiYS1oM1wiPkhlbHBmdWwgTGlua3M8L2g0PlxuXHRcdFx0XHRcdFx0PHVsIGNsYXNzPVwiYS1saXN0ICBhLWxpc3QtLXVuc3R5bGVkXCI+XG5cdFx0XHRcdFx0XHRcdDxsaT48YSBocmVmPVwiI1wiIGNsYXNzPVwiby1mb290ZXJfX2xpbmtcIj5QYXRpZW50IFJpZ2h0cyAmYW1wOyBSZXNwb25zaWJpbGl0aWVzPC9hPjwvbGk+XG5cdFx0XHRcdFx0XHRcdDxsaT48YSBocmVmPVwiI1wiIGNsYXNzPVwiby1mb290ZXJfX2xpbmtcIj5EaXNjbGFpbWVyPC9hPjwvbGk+XG5cdFx0XHRcdFx0XHRcdDxsaT48YSBocmVmPVwiI1wiIGNsYXNzPVwiby1mb290ZXJfX2xpbmtcIj5Qcml2YWN5IFN0YXRlbWVudDwvYT48L2xpPlxuXHRcdFx0XHRcdFx0XHQ8bGk+PGEgaHJlZj1cIiNcIiBjbGFzcz1cIm8tZm9vdGVyX19saW5rXCI+RE5WIEdMIFB1YmxpYyBJbmZvcm1hdGlvbiBQb2xpY3kgU3RhdGVtZW50PC9hPjwvbGk+XG5cdFx0XHRcdFx0XHRcdDxsaT48YSBocmVmPVwiI1wiIGNsYXNzPVwiby1mb290ZXJfX2xpbmtcIj5Ob24tRGlzY3JpbWluYXRpb24gUG9saWN5PC9hPjwvbGk+XG5cdFx0XHRcdFx0XHRcdDxsaT48YSBocmVmPVwiI1wiIGNsYXNzPVwiby1mb290ZXJfX2xpbmtcIj5XZWJtYXN0ZXI8L2E+PC9saT5cblx0XHRcdFx0XHRcdDwvdWw+XG5cdFx0XHRcdFx0PC9kaXY+XG5cdFx0XHRcdFx0PGRpdiBjbGFzcz1cImwtZ3JpZF9faXRlbSAgMS8xICAxLzNAbWVkaXVtXCI+XG5cdFx0XHRcdFx0XHQ8aDQgY2xhc3M9XCJhLWgzXCI+Q29udGFjdCBVczwvaDQ+XG5cdFx0XHRcdFx0XHQ8cCBjbGFzcz1cImEtYWRkcmVzcyAgdS1zbWFsbCAgdS1zcGFjZS1ib3R0b20tLXNtYWxsXCI+XG5cdFx0XHRcdFx0XHRcdFVuaXZlcnNpdHkgb2YgVXRhaCBIZWFsdGggQ2FyZTxiciAvPlxuXHRcdFx0XHRcdFx0XHQ1MCBOLiBNZWRpY2FsIERyaXZlIFNMQywgVVQgODQxMzJcblx0XHRcdFx0XHRcdDwvcD5cblx0XHRcdFx0XHRcdDxwIGNsYXNzPVwidS14bGFyZ2UgIHUtc3BhY2UtYm90dG9tLS1tZWRpdW1cIj4oODAxKSA1ODEtMjEyMTwvcD5cblx0XHRcdFx0XHRcdDx1bCBjbGFzcz1cImEtbGlzdCAgYS1saXN0LS11bnN0eWxlZCAgYS1saXN0LS1pbmxpbmVcIj5cblx0XHRcdFx0XHRcdFx0PGxpIGNsYXNzPVwiYS1saXN0X19pdGVtICBvLWZvb3Rlcl9fc29jaWFsLWl0ZW1cIj5cblx0XHRcdFx0XHRcdFx0XHQ8YSBocmVmPVwiI1wiIGNsYXNzPVwiby1mb290ZXJfX2xpbmtcIj5cblx0XHRcdFx0XHRcdFx0XHRcdDxzdmcgY2xhc3M9XCJhLWljb24gIGEtaWNvbi0tbGFyZ2UgIGEtaWNvbi0tZmFjZWJvb2tcIj5cblx0XHRcdFx0XHRcdFx0XHRcdFx0PHVzZSB4bGluazpocmVmPVwiLi4vaWNvbnMvaWNvbnMuc3ZnI2ZhY2Vib29rXCI+PC91c2U+XG5cdFx0XHRcdFx0XHRcdFx0XHQ8L3N2Zz5cblx0XHRcdFx0XHRcdFx0XHQ8L2E+XG5cdFx0XHRcdFx0XHRcdDwvbGk+XG5cdFx0XHRcdFx0XHRcdDxsaSBjbGFzcz1cImEtbGlzdF9faXRlbSAgby1mb290ZXJfX3NvY2lhbC1pdGVtXCI+XG5cdFx0XHRcdFx0XHRcdFx0PGEgaHJlZj1cIiNcIiBjbGFzcz1cIm8tZm9vdGVyX19saW5rXCI+XG5cdFx0XHRcdFx0XHRcdFx0XHQ8c3ZnIGNsYXNzPVwiYS1pY29uICBhLWljb24tLWxhcmdlICBhLWljb24tLXR3aXR0ZXJcIj5cblx0XHRcdFx0XHRcdFx0XHRcdFx0PHVzZSB4bGluazpocmVmPVwiLi4vaWNvbnMvaWNvbnMuc3ZnI3R3aXR0ZXJcIj48L3VzZT5cblx0XHRcdFx0XHRcdFx0XHRcdDwvc3ZnPlxuXHRcdFx0XHRcdFx0XHRcdDwvYT5cblx0XHRcdFx0XHRcdFx0PC9saT5cblx0XHRcdFx0XHRcdFx0PGxpIGNsYXNzPVwiYS1saXN0X19pdGVtICBvLWZvb3Rlcl9fc29jaWFsLWl0ZW1cIj5cblx0XHRcdFx0XHRcdFx0XHQ8YSBocmVmPVwiI1wiIGNsYXNzPVwiby1mb290ZXJfX2xpbmtcIj5cblx0XHRcdFx0XHRcdFx0XHRcdDxzdmcgY2xhc3M9XCJhLWljb24gIGEtaWNvbi0tbGFyZ2UgIGEtaWNvbi0tZ29vZ2xlLXBsdXNcIj5cblx0XHRcdFx0XHRcdFx0XHRcdFx0PHVzZSB4bGluazpocmVmPVwiLi4vaWNvbnMvaWNvbnMuc3ZnI2dvb2dsZS1wbHVzXCI+PC91c2U+XG5cdFx0XHRcdFx0XHRcdFx0XHQ8L3N2Zz5cblx0XHRcdFx0XHRcdFx0XHQ8L2E+XG5cdFx0XHRcdFx0XHRcdDwvbGk+XG5cdFx0XHRcdFx0XHRcdDxsaSBjbGFzcz1cImEtbGlzdF9faXRlbSAgby1mb290ZXJfX3NvY2lhbC1pdGVtXCI+XG5cdFx0XHRcdFx0XHRcdFx0PGEgaHJlZj1cIiNcIiBjbGFzcz1cIm8tZm9vdGVyX19saW5rXCI+XG5cdFx0XHRcdFx0XHRcdFx0XHQ8c3ZnIGNsYXNzPVwiYS1pY29uICBhLWljb24tLWxhcmdlICBhLWljb24tLXlvdXR1YmVcIj5cblx0XHRcdFx0XHRcdFx0XHRcdFx0PHVzZSB4bGluazpocmVmPVwiLi4vaWNvbnMvaWNvbnMuc3ZnI3lvdXR1YmVcIj48L3VzZT5cblx0XHRcdFx0XHRcdFx0XHRcdDwvc3ZnPlxuXHRcdFx0XHRcdFx0XHRcdDwvYT5cblx0XHRcdFx0XHRcdFx0PC9saT5cblx0XHRcdFx0XHRcdDwvdWw+XG5cdFx0XHRcdFx0PC9kaXY+XG5cdFx0XHRcdDwvZGl2PlxuXHRcdFx0PC9kaXY+XG5cdFx0PC9kaXY+XG5cdDwvZGl2PlxuXHQ8ZGl2IGNsYXNzPVwiby1mb290ZXJfX2xlZ2FsXCI+XG5cdFx0PGRpdiBjbGFzcz1cImwtY29udGFpbmVyIGwtY29udGFpbmVyLS1sYXJnZVwiPlxuXHRcdFx0PGRpdiBjbGFzcz1cImwtZ3JpZFwiPlxuXHRcdFx0XHQ8ZGl2IGNsYXNzPVwibC1ncmlkX19pdGVtICAxLzEgIDcvMTJAbWVkaXVtXCI+XG5cdFx0XHRcdFx0PHA+PGEgaHJlZj1cImh0dHA6Ly93d3cudXRhaC5lZHVcIiB0YXJnZXQ9XCJfYmxhbmtcIiBjbGFzcz1cIm8tZm9vdGVyX19saW5rXCI+PGltZyBjbGFzcz1cInUtaW5saW5lLWJsb2NrXCIgc3JjPVwiLi4vaW1nL2xvZ29zL3VvZnUtbG9nby5zdmdcIiBhbHQ9XCJVbml2ZXJzaXR5IG9mIFV0YWhcIiAvPjwvYT48L3A+XG5cdFx0XHRcdDwvZGl2PlxuXHRcdFx0XHQ8ZGl2IGNsYXNzPVwibC1ncmlkX19pdGVtICAxLzEgIDUvMTJAbWVkaXVtXCI+XG5cdFx0XHRcdFx0PHAgY2xhc3M9XCJhLXBhcmFncmFwaCAgdS1zbWFsbFwiPkFsbCBjbGluaWNhbCBzZXJ2aWNlcyBhbmQgcHJvZ3JhbXMgYXJlIHBhcnQgb2YgVW5pdmVyc2l0eSBvZiBVdGFoIEhvc3BpdGFscyAmYW1wOyBDbGluaWNzPC9wPlxuXHRcdFx0XHRcdDxwIGNsYXNzPVwiYS1wYXJhZ3JhcGggIHUtc21hbGxcIj5Db3B5cmlnaHQgJmNvcHk7IDIwMTcgVW5pdmVyc2l0eSBvZiBVdGFoIEhlYWx0aCBDYXJlPC9wPlxuXHRcdFx0XHQ8L2Rpdj5cblx0XHRcdDwvZGl2PlxuXHRcdDwvZGl2PlxuXHQ8L2Rpdj5cbjwvZm9vdGVyPlxuYGBgXG5cbiovXG4uby1mb290ZXIge1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi5vLWZvb3Rlcl9faW5mbyB7XG4gIGJhY2tncm91bmQ6ICNGMkYyRjI7XG4gIGJvcmRlci10b3A6IDJweCBzb2xpZCAjYTYxOTJlO1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgI2E2MTkyZTtcbiAgcGFkZGluZzogMmVtIDAgMC41ZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4uby1mb290ZXJfX2luZm86OmFmdGVyIHtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIGJvcmRlcjogMnB4IHNvbGlkICNhNjE5MmU7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAyNHB4O1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMTJweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC0xNHB4O1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gIHdpZHRoOiAyNHB4OyB9XG5cbi5vLWZvb3Rlcl9fbGVnYWwge1xuICBwYWRkaW5nOiAxLjVlbSAwIDAuMjVlbTsgfVxuXG4uby1mb290ZXJfX2xpbmsge1xuICBib3JkZXItYm90dG9tOiBub25lO1xuICBjb2xvcjogaW5oZXJpdDtcbiAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7IH1cblxuLm8tZm9vdGVyX19zb2NpYWwtaXRlbTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgYm9yZGVyLXJpZ2h0OiBzb2xpZCAxcHggIzkzOTU5ODsgfVxuXG4uby1mb290ZXJfX3NvY2lhbC1pdGVtOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgcGFkZGluZy1sZWZ0OiAxZW07IH1cblxuLypkb2Ncbi0tLVxudGl0bGU6IE1haW5cbm5hbWU6IG1haW5cbmNhdGVnb3J5OiBPcmdhbmlzbXNcbi0tLVxuXG5UaGUgYG8tbWFpbmAgZWxlbWVudCBpcyBhIHNpbXBsZSB2ZXJ0aWNhbCBmbGV4IGNvbnRhaW5lciB3aXRoIGEgYml0IG9mIGEgYm90dG9tIG1hcmdpbi4gQnkgbWFraW5nIHRoaXMgZWxlbWVudCBhIGZsZXggY29udGFpbmVyLCB3ZSBjYW4gcmVvcmRlciB0aGUgc2VjdGlvbnMgd2l0aGluLlxuXG5gYGBodG1sX2V4YW1wbGVcbjxtYWluIGNsYXNzPVwiby1tYWluXCIgcm9sZT1cIm1haW5cIiBpZD1cImNvbnRlbnRcIj5cblx0PCEtLSBjb250ZW50IGdvZXMgaGVyZSAtLT5cbjwvbWFpbj5cbmBgYFxuXG4qL1xuLm8tbWFpbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG1hcmdpbi1ib3R0b206IDZlbTsgfVxuXG4vKmRvY1xuLS0tXG50aXRsZTogVG9wbmF2XG5uYW1lOiB0b3BuYXZcbmNhdGVnb3J5OiBPcmdhbmlzbXNcbi0tLVxuXG5UaGlzIGlzIHRoZSBzaXRlLXdpZGUgbmF2aWdhdGlvbiBmb3Igb3VyIHNpdGUuIFRoZXJlIGFyZW4ndCBtYW55IG1vZGlmaWVyIGNsYXNzZXMgZm9yIG5hdmlnYXRpb24gZWxlbWVudHMgYmVjYXVzZSBpdCdzIG5vdCBpbnRlbmRlZCB0byBjaGFuZ2UuXG5cbk5vdGU6IFRoZSBKYXZhU2NyaXB0IGNsYXNzZXMgaGFkIHRvIGJlIHJlbW92ZWQgYmVjYXVzZSB0aGV5IHdlcmUgY29uZmxpY3Rpbmcgd2l0aCB0aGUgc3R5bGUgZ3VpZGUncyBuYXZpZ2F0aW9uLlxuXG5gYGBodG1sX2V4YW1wbGVcbjxkaXYgY2xhc3M9XCJvLW5hdl9fY29udGFpbmVyICBsLWNvbnRhaW5lciAgbC1jb250YWluZXItLXN1cGVyICBsLWNvbnRhaW5lci0tZmx1c2hcIj5cbiAgPG5hdiBjbGFzcz1cIm8tbmF2XCIgcm9sZT1cIm5hdmlnYXRpb25cIiBpZD1cIm5hdlwiPlxuXG4gICAgPGRpdiBjbGFzcz1cIm8tbmF2X19sZWZ0XCI+XG5cbiAgICAgIDxhIGNsYXNzPVwiby1uYXZfX2l0ZW0gIG8tbmF2X19sb2dvXCIgaHJlZj1cInt7IGJhc2V1cmwgfX0vaW5kZXguaHRtbFwiPlxuICAgICAgICA8aW1nIHNyYz1cInt7IGJhc2V1cmwgfX0vaW1hZ2VzL2xvZ29zL3VoZWFsdGgtbG9nby5zdmdcIiBhbHQ9XCJVIG9mIFUgSGVhbHRoXCIgd2lkdGg9XCIxNDBcIiBoZWlnaHQ9XCJhdXRvXCIgY2xhc3M9XCJvLW5hdl9fbG9nby1zdmdcIiAvPlxuICAgICAgPC9hPlxuXG4gICAgICA8dWwgY2xhc3M9XCJvLW5hdl9fbGlzdCAgdS1zaG93QGxhcmdlXCI+XG4gICAgICAgIDxsaT48YSBocmVmPVwie3sgYmFzZXVybCB9fS9pbmRleC5odG1sXCI+RklORCBBIERPQ1RPUjwvYT48L2xpPlxuICAgICAgICA8bGk+PGEgaHJlZj1cInt7IGJhc2V1cmwgfX0vcGFnZXMvbG9jYXRpb25zLmh0bWxcIj5GSU5EIEEgTE9DQVRJT048L2E+PC9saT5cbiAgICAgICAgPGxpPjxhIGhyZWY9XCJ7eyBiYXNldXJsIH19L3BhZ2VzL3NlcnZpY2VzLmh0bWxcIj5NRURJQ0FMIFNFUlZJQ0VTPC9hPjwvbGk+XG4gICAgICAgIDxsaT5cbiAgICAgICAgICA8YSBjbGFzcz1cIm8tbmF2X19saW5rICBvLW5hdl9fbGluay0tZHJvcGJhclwiIGhyZWY9XCIjXCI+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cInUtc3BhY2UtcmlnaHQtLXhzbWFsbFwiPlBBVElFTlRTICZhbXA7IFZJU0lUT1JTPC9zcGFuPlxuICAgICAgICAgICAgPHN2ZyBjbGFzcz1cImEtaWNvbiAgYS1pY29uLS14c21hbGwgIHUtbWFyZ2luLXJpZ2h0LS1zbWFsbFwiPlxuICAgICAgICAgICAgICA8dXNlIHhsaW5rOmhyZWY9XCIjYXJyb3ctZG93blwiPjwvdXNlPlxuICAgICAgICAgICAgPC9zdmc+XG4gICAgICAgICAgPC9hPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJvLW5hdl9fZHJvcGRvd25cIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJsLWdyaWRcIj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImwtZ3JpZF9faXRlbVwiPlxuICAgICAgICAgICAgICAgIDx1bCBjbGFzcz1cIm8tbmF2X19kcm9wZG93bi1uYXZcIj5cbiAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz1cIm8tbmF2X19oZWFkZXJcIj5QYXRpZW50IFNlcnZpY2VzPC9saT5cbiAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz1cIm8tbmF2X19kaXZpZGVyXCI+PC9saT5cbiAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPVwiI1wiPlF1ZXN0aW9ucyBBYm91dCBZb3VyIEJpbGw/PC9hPjwvbGk+XG4gICAgICAgICAgICAgICAgICA8bGk+PGEgaHJlZj1cIiNcIj5VcmdlbnQgQ2FyZTwvYT48L2xpPlxuICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9XCIjXCI+V2hlcmUgdG8gU3RheTwvYT48L2xpPlxuICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9XCIjXCI+UGF0aWVudCAmYW1wOyBGYW1pbHkgU2VydmljZXM8L2E+PC9saT5cbiAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPVwiI1wiPkNsaW5pY2FsIFNlcnZpY2VzPC9hPjwvbGk+XG4gICAgICAgICAgICAgICAgPC91bD5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJsLWdyaWRfX2l0ZW1cIj5cbiAgICAgICAgICAgICAgICA8dWwgY2xhc3M9XCJvLW5hdl9fZHJvcGRvd24tbmF2XCI+XG4gICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9XCJvLW5hdl9faGVhZGVyXCI+VW5pdmVyc2l0eSBvZiBVdGFoIEhvc3BpdGFsPC9saT5cbiAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz1cIm8tbmF2X19kaXZpZGVyXCI+PC9saT5cbiAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPVwiI1wiPlVuaXZlcnNpdHkgb2YgVXRhaCBIb3NwaXRhbDwvYT48L2xpPlxuICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9XCIjXCI+U3RheWluZyBhdCB0aGUgSG9zcGl0YWw8L2E+PC9saT5cbiAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPVwiI1wiPlBhcmtpbmcgJmFtcDsgVmFsZXQ8L2E+PC9saT5cbiAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPVwiI1wiPkxvb2tpbmcgZm9yIEFub3RoZXIgTG9jYXRpb24/PC9hPjwvbGk+XG4gICAgICAgICAgICAgICAgPC91bD5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJsLWdyaWRfX2l0ZW1cIj5cbiAgICAgICAgICAgICAgICA8dWwgY2xhc3M9XCJvLW5hdl9fZHJvcGRvd24tbmF2XCI+XG4gICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9XCJvLW5hdl9faGVhZGVyXCI+R2VuZXJhbCBRdWVzdGlvbnM8L2xpPlxuICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPVwiby1uYXZfX2RpdmlkZXJcIj48L2xpPlxuICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPVwiby1hY3RpdmVcIj48YSBocmVmPVwiI1wiPjgwMS01ODEtMjY2ODwvYT48L2xpPlxuICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9XCIjXCI+XG4gICAgICAgICAgICAgICAgICAgICAgPHN2ZyBjbGFzcz1cImEtaWNvbiAgYS1pY29uLS1zbWFsbFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHVzZSB4bGluazpocmVmPVwiI3RyYW5zbGF0aW9uXCI+PC91c2U+XG4gICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XG4gICAgICAgICAgICAgICAgICAgICAgRmluZCBhbiBJbnRlcnByZXRlclxuICAgICAgICAgICAgICAgICAgPC9hPjwvbGk+XG4gICAgICAgICAgICAgICAgICA8bGk+PGEgaHJlZj1cIiNcIj5BYm91dCBVIG9mIFUgSGVhbHRoPC9hPjwvbGk+XG4gICAgICAgICAgICAgICAgPC91bD5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9saT5cbiAgICAgIDwvdWw+XG5cbiAgICA8L2Rpdj5cblxuICAgIDxkaXYgY2xhc3M9XCJvLW5hdl9fcmlnaHRcIj5cblxuICAgICAgPHVsIGNsYXNzPVwiby1uYXZfX2xpc3QgIHUtc2hvd0BsYXJnZVwiPlxuICAgICAgICA8bGk+PGEgaHJlZj1cIiNcIj5CaWxsaW5nICZhbXA7IEluc3VyYW5jZTwvYT48L2xpPlxuICAgICAgICA8bGk+XG4gICAgICAgICAgPGEgaHJlZj1cIiNcIj5cbiAgICAgICAgICAgIDxzdmcgY2xhc3M9XCJhLWljb24gIGEtaWNvbi0tc21hbGwgIHUtbWFyZ2luLXJpZ2h0LS1zbWFsbFwiPlxuICAgICAgICAgICAgICA8dXNlIHhsaW5rOmhyZWY9XCIjdXNlclwiPjwvdXNlPlxuICAgICAgICAgICAgPC9zdmc+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cInUtc3BhY2UtbGVmdC0teHNtYWxsXCI+TXlDaGFydDwvc3Bhbj5cbiAgICAgICAgICA8L2E+XG4gICAgICAgIDwvbGk+XG4gICAgICA8L3VsPlxuXG4gICAgICA8ZGl2IGNsYXNzPVwiby1uYXZfX2l0ZW0gIHUtc2hvd0BsYXJnZVwiPlxuICAgICAgICA8YnV0dG9uIGNsYXNzPVwianMtc2VhcmNoLWJ1dHRvbiAgYS1idXR0b24gIGEtYnV0dG9uLS1icmFuZCAgYS1idXR0b24tLXNtYWxsICB1LXBhZGRpbmctbGVmdC0tbWVkaXVtICB1LXBhZGRpbmctcmlnaHQtLW1lZGl1bSAgdS1mbGV4ICB1LWl0ZW1zLWNlbnRlclwiPlxuICAgICAgICAgIDxzdmcgY2xhc3M9XCJhLWljb24gIGEtaWNvbi0tc21hbGwgIHUtbWFyZ2luLXJpZ2h0LS1zbWFsbFwiPlxuICAgICAgICAgICAgPHVzZSB4bGluazpocmVmPVwiI3NlYXJjaC1pY29uXCI+PC91c2U+XG4gICAgICAgICAgPC9zdmc+XG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJ1LXNwYWNlLWxlZnQtLXNtYWxsXCI+U2VhcmNoPC9zcGFuPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8IS0tIEhhbWJ1cmdlciBidXR0b24gLS0+XG4gICAgICA8ZGl2IGNsYXNzPVwiby1uYXZfX2l0ZW0gIHUtaGlkZUBsYXJnZVwiPlxuICAgICAgICA8YnV0dG9uIGNsYXNzPVwianMtbmF2X190b2dnbGUgIGEtYnV0dG9uICBhLWJ1dHRvbi0tYnJhbmQgIGEtYnV0dG9uLS1zbWFsbCAgdS1wYWRkaW5nLWxlZnQtLW1lZGl1bSAgdS1wYWRkaW5nLXJpZ2h0LS1tZWRpdW0gIHUtZmxleCAgdS1pdGVtcy1jZW50ZXJcIj5cbiAgICAgICAgICA8c3ZnIGNsYXNzPVwiYS1pY29uICBhLWljb24tLXNtYWxsICB1LW1hcmdpbi1yaWdodC0tc21hbGxcIj5cbiAgICAgICAgICAgIDx1c2UgeGxpbms6aHJlZj1cIiNoYW1idXJnZXJcIj48L3VzZT5cbiAgICAgICAgICA8L3N2Zz5cbiAgICAgICAgICA8c3BhbiBjbGFzcz1cImpzLW5hdl9fdG9nZ2xlLXRleHQgIG8tbmF2X19pY29uLXRleHQgIHUtc3BhY2UtbGVmdC0tc21hbGxcIj5NZW51PC9zcGFuPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgIDwvZGl2PlxuXG4gICAgPC9kaXY+XG5cbiAgICA8IS0tIERyb3Bkb3duIE1lbnUgLS0+XG4gICAgPGRpdiBjbGFzcz1cIjEvMSAgdS1yZWxhdGl2ZSAgdS1oaWRlQGxhcmdlXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiby1uYXZfX21lbnUtd3JhcHBlciAgbC1jb250YWluZXJcIj5cbiAgICAgICAgPHVsIGNsYXNzPVwianMtbmF2X19tZW51ICBvLW5hdl9fbWVudVwiPlxuICAgICAgICAgIDxsaT48YSBocmVmPVwie3sgYmFzZXVybCB9fS9pbmRleC5odG1sXCI+RklORCBBIERPQ1RPUjwvYT48L2xpPlxuICAgICAgICAgIDxsaT48YSBocmVmPVwie3sgYmFzZXVybCB9fS9wYWdlcy9sb2NhdGlvbnMuaHRtbFwiPkZJTkQgQSBMT0NBVElPTjwvYT48L2xpPlxuICAgICAgICAgIDxsaT48YSBocmVmPVwie3sgYmFzZXVybCB9fS9wYWdlcy9zZXJ2aWNlcy5odG1sXCI+TUVESUNBTCBTRVJWSUNFUzwvYT48L2xpPlxuICAgICAgICAgIDxsaT5cbiAgICAgICAgICAgIDxhIGNsYXNzPVwiby1uYXZfX2xpbmsgIG8tbmF2X19saW5rLS1zdWJtZW51XCIgaHJlZj1cIiNcIj5cbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ1LXNwYWNlLXJpZ2h0LS14c21hbGxcIj5QQVRJRU5UUyAmYW1wOyBWSVNJVE9SUzwvc3Bhbj5cbiAgICAgICAgICAgICAgPHN2ZyBjbGFzcz1cImEtaWNvbiAgYS1pY29uLS14c21hbGxcIj5cbiAgICAgICAgICAgICAgICA8dXNlIHhsaW5rOmhyZWY9XCIjYXJyb3ctcmlnaHRcIj48L3VzZT5cbiAgICAgICAgICAgICAgPC9zdmc+XG4gICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICA8dWwgY2xhc3M9XCJqcy1uYXZfX3N1Ym1lbnUgIG8tbmF2X19zdWJtZW51XCI+XG4gICAgICAgICAgICAgIDxsaT5cbiAgICAgICAgICAgICAgICA8YSBjbGFzcz1cIm8tbmF2X19saW5rICBvLW5hdl9fbGluay0tc3VibWVudVwiIGhyZWY9XCIjXCI+XG4gICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm8tbmF2X19pY29uLXRleHRcIj5QYXRpZW50IFNlcnZpY2VzPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgPHN2ZyBjbGFzcz1cImEtaWNvbiAgYS1pY29uLS14c21hbGxcIj5cbiAgICAgICAgICAgICAgICAgICAgPHVzZSB4bGluazpocmVmPVwiI2Fycm93LXJpZ2h0XCI+PC91c2U+XG4gICAgICAgICAgICAgICAgICA8L3N2Zz5cbiAgICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICAgICAgPHVsIGNsYXNzPVwianMtbmF2X19zdWJtZW51ICBvLW5hdl9fc3VibWVudVwiPlxuICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9XCIvYmlsbC9cIj5RdWVzdGlvbnMgQWJvdXQgWW91ciBCaWxsPzwvYT48L2xpPlxuICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9XCIvcHJpbWFyeWNhcmUvdXJnZW50LnBocFwiPlVyZ2VudCBDYXJlPC9hPjwvbGk+XG4gICAgICAgICAgICAgICAgICA8bGk+PGEgaHJlZj1cIi9sb2NhdGlvbnMvcGF0aWVudC1mYW1pbHktaG91c2luZy9cIj5XaGVyZSB0byBTdGF5PC9hPjwvbGk+XG4gICAgICAgICAgICAgICAgICA8bGk+PGEgaHJlZj1cIi9wYXRpZW50LWZhbWlseS1zZXJ2aWNlcy5waHBcIj5QYXRpZW50cyAmYW1wOyBGYW1pbHkgU2VydmljZXM8L2E+PC9saT5cbiAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPVwiL2NsaW5pY2FsdHJpYWxzL1wiPkNsaW5pY2FsIFRyaWFsczwvYT48L2xpPlxuICAgICAgICAgICAgICAgIDwvdWw+XG4gICAgICAgICAgICAgIDwvbGk+XG4gICAgICAgICAgICAgIDxsaT5cbiAgICAgICAgICAgICAgICA8YSBjbGFzcz1cIm8tbmF2X19saW5rICBvLW5hdl9fbGluay0tc3VibWVudVwiIGhyZWY9XCIjXCI+XG4gICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm8tbmF2X19pY29uLXRleHRcIj5Vbml2ZXJzaXR5IG9mIFV0YWggSG9zcGl0YWw8L3NwYW4+XG4gICAgICAgICAgICAgICAgICA8c3ZnIGNsYXNzPVwiYS1pY29uICBhLWljb24tLXhzbWFsbFwiPlxuICAgICAgICAgICAgICAgICAgICA8dXNlIHhsaW5rOmhyZWY9XCIjYXJyb3ctcmlnaHRcIj48L3VzZT5cbiAgICAgICAgICAgICAgICAgIDwvc3ZnPlxuICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgICAgICA8dWwgY2xhc3M9XCJqcy1uYXZfX3N1Ym1lbnUgIG8tbmF2X19zdWJtZW51XCI+XG4gICAgICAgICAgICAgICAgICA8bGk+PGEgaHJlZj1cIi9ob3NwaXRhbC9cIj5Vbml2ZXJzaXR5IG9mIFV0YWggSG9zcGl0YWw8L2E+PC9saT5cbiAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPVwiL2hvc3BpdGFsL3N0YXkucGhwXCI+U3RheWluZyBhdCB0aGUgSG9zcGl0YWw8L2E+PC9saT5cbiAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPVwiL2hvc3BpdGFsL2N1c3RvbWVyLXNlcnZpY2UvcGFya2luZy5waHBcIj5QYXJraW5nICZhbXA7IFZhbGV0PC9hPjwvbGk+XG4gICAgICAgICAgICAgICAgICA8bGk+PGEgaHJlZj1cIi9sb2NhdGlvbnMvXCI+TG9va2luZyBmb3IgQW5vdGhlciBMb2NhdGlvbj88L2E+PC9saT5cbiAgICAgICAgICAgICAgICA8L3VsPlxuICAgICAgICAgICAgICA8L2xpPlxuICAgICAgICAgICAgICA8bGk+XG4gICAgICAgICAgICAgICAgPGEgY2xhc3M9XCJvLW5hdl9fbGluayAgby1uYXZfX2xpbmstLXN1Ym1lbnVcIiBocmVmPVwiI1wiPlxuICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJvLW5hdl9faWNvbi10ZXh0XCI+R2VuZXJhbCBRdWVzdGlvbnM8L3NwYW4+XG4gICAgICAgICAgICAgICAgICA8c3ZnIGNsYXNzPVwiYS1pY29uICBhLWljb24tLXhzbWFsbFwiPlxuICAgICAgICAgICAgICAgICAgICA8dXNlIHhsaW5rOmhyZWY9XCIjYXJyb3ctcmlnaHRcIj48L3VzZT5cbiAgICAgICAgICAgICAgICAgIDwvc3ZnPlxuICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgICAgICA8dWwgY2xhc3M9XCJqcy1uYXZfX3N1Ym1lbnUgIG8tbmF2X19zdWJtZW51XCI+XG4gICAgICAgICAgICAgICAgICA8bGk+PGEgaHJlZj1cInRlbDo4MDEtNTgxLTI2NjhcIj44MDEtNTgxLTI2Njg8L2E+PC9saT5cbiAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPVwiL2hvc3BpdGFsL2N1c3RvbWVyLXNlcnZpY2UvaW50ZXJwcmV0ZXIucGhwXCI+RmluZCBhbiBJbnRlcnByZXRlcjwvYT48L2xpPlxuICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9XCIvYnJhbmQvXCI+QWJvdXQgVSBvZiBVIEhlYWx0aDwvYT48L2xpPlxuICAgICAgICAgICAgICAgIDwvdWw+XG4gICAgICAgICAgICAgIDwvbGk+XG4gICAgICAgICAgICA8L3VsPlxuICAgICAgICAgIDwvbGk+XG4gICAgICAgICAgPGxpPjxhIGhyZWY9XCIjXCI+QmlsbGluZyAmYW1wOyBJbnN1cmFuY2U8L2E+PC9saT5cbiAgICAgICAgICA8bGk+XG4gICAgICAgICAgICA8YSBocmVmPVwiI1wiPlxuICAgICAgICAgICAgICA8c3ZnIGNsYXNzPVwiYS1pY29uICBhLWljb24tLXNtYWxsXCI+XG4gICAgICAgICAgICAgICAgPHVzZSB4bGluazpocmVmPVwiI3VzZXJcIj48L3VzZT5cbiAgICAgICAgICAgICAgPC9zdmc+XG4gICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidS1zcGFjZS1sZWZ0LS14c21hbGxcIj5NeUNoYXJ0PC9zcGFuPlxuICAgICAgICAgICAgPC9hPlxuICAgICAgICAgIDwvbGk+XG4gICAgICAgICAgPGxpPlxuICAgICAgICAgICAgPGEgY2xhc3M9XCJqcy1uYXZfX3RvZ2dsZSAgby1uYXZfX2xpbmtcIiBocmVmPVwiI1wiPlxuICAgICAgICAgICAgICA8c3ZnIGNsYXNzPVwiYS1pY29uICBhLWljb24tLXNtYWxsXCI+XG4gICAgICAgICAgICAgICAgPHVzZSB4bGluazpocmVmPVwiI3NlYXJjaFwiPjwvdXNlPlxuICAgICAgICAgICAgICA8L3N2Zz5cbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ1LXNwYWNlLWxlZnQtLXhzbWFsbFwiPlNlYXJjaDwvc3Bhbj5cbiAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICA8L2xpPlxuICAgICAgICA8L3VsPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG5cbiAgPC9uYXY+XG5cbiAgPGRpdiBjbGFzcz1cIm8tbmF2X19kcm9wYmFyICB1LXNob3dAbGFyZ2VcIj48L2Rpdj5cbjwvZGl2PlxuYGBgXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBOYXZiYXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIDEuIENyZWF0ZSBwb3NpdGlvbiBjb250ZXh0IHRvIGNlbnRlciBuYXZiYXIgZ3JvdXBcbiAqIDIuIFdyYXAgd2hlbiBvdXQgb2Ygc3BhY2VcbiAqIDMuIE1ha2Ugc3VyZSBkcm9wZG93bnMgYXBwZWFyIG92ZXIgY29udGVudFxuICogNC4gTmVlZGVkIGZvciBhbmltYXRpb25cbiAqL1xuLm8tbmF2IHtcbiAgZGlzcGxheTogZmxleDtcbiAgLyogMSAqL1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC8qIDIgKi9cbiAgZmxleC13cmFwOiB3cmFwO1xuICAvKiAzICovXG4gIHotaW5kZXg6IDQwMDtcbiAgLyogNCAqL1xuICBwZXJzcGVjdGl2ZTogMTAwMHB4O1xuICBwZXJzcGVjdGl2ZS1vcmlnaW46IDUwJSAyMDAlOyB9XG5cbi8qIENvbnRhaW5lclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4uby1uYXZfX2NvbnRhaW5lcjpub3QoLm8tbmF2LS10cmFuc3BhcmVudCkge1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTsgfVxuXG4vKlxuICogUmVtb3ZlIHBzZXVkbyBlbGVtZW50cyBjcmVhdGVkIGJ5IG1pY3JvIGNsZWFyZml4IGFzIHByZWNhdXRpb24gKGlmIENvbnRhaW5lciBjb21wb25lbnQgaXMgdXNlZClcbiAqL1xuLm8tbmF2X19jb250YWluZXIgPiA6OmJlZm9yZSxcbi5vLW5hdl9fY29udGFpbmVyID4gOjphZnRlciB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4vKiBHcm91cHNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIDEuIEFsaWduIG5hdnMgYW5kIGl0ZW1zIHZlcnRpY2FsbHkgaWYgdGhleSBoYXZlIGEgZGlmZmVyZW50IGhlaWdodFxuICogMi4gTm90ZTogSUUgMTEgcmVxdWlyZXMgYW4gZXh0cmEgYGRpdmAgd2hpY2ggYWZmZWN0cyB0aGUgY2VudGVyIHNlbGVjdG9yXG4gKi9cbi5vLW5hdl9fbGVmdCxcbi5vLW5hdl9fcmlnaHQsXG4uby1uYXZfX2NlbnRlcixcbi5vLW5hdl9fY2VudGVyLWxlZnQgPiAqLFxuLm8tbmF2X19jZW50ZXItcmlnaHQgPiAqIHtcbiAgZGlzcGxheTogZmxleDtcbiAgLyogMSAqL1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG5cbi8qXG4gKiBIb3Jpem9udGFsIGFsaWdubWVudFxuICogMS4gQ3JlYXRlIHBvc2l0aW9uIGNvbnRleHQgZm9yIGNlbnRlcmVkIG5hdmJhciB3aXRoIHN1YiBncm91cHMgKGxlZnQvcmlnaHQpXG4gKiAyLiBOZWVkZWQgZm9yIGRyb3Bkb3ducyBiZWNhdXNlIGEgbmV3IHBvc2l0aW9uIGNvbnRleHQgaXMgY3JlYXRlZFxuICogICAgYHotaW5kZXhgIG11c3QgYmUgc21hbGxlciB0aGFuIG9mZi1jYW52YXNcbiAqIDMuIEZpeCB0ZXh0IHdyYXBwaW5nIGlmIHRoZSBjZW50ZXJlZCBzZWN0aW9uIGlzIGxhcmdlciB0aGFuIDUwJSBvZiB0aGUgbmF2YmFyXG4gKiA0LiBBbGlnbiBzdWIgZ3JvdXBzIGZvciBjZW50ZXJlZCBuYXZiYXJcbiAqL1xuLm8tbmF2X19yaWdodCB7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG5cbi5vLW5hdl9fY2VudGVyOm9ubHktY2hpbGQge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAvKiAxICovXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4uby1uYXZfX2NlbnRlcjpub3QoOm9ubHktY2hpbGQpIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgLyogMiAqL1xuICB6LWluZGV4OiA0NTA7IH1cblxuLyogMyAqL1xuLm8tbmF2X19jZW50ZXI6bm90KDpvbmx5LWNoaWxkKSAuby1uYXZfX2xpc3QgPiBsaSA+IGEsXG4uby1uYXZfX2NlbnRlcjpub3QoOm9ubHktY2hpbGQpIC5vLW5hdl9faXRlbSxcbi5vLW5hdl9fY2VudGVyOm5vdCg6b25seS1jaGlsZCkgLm8tbmF2X190b2dnbGUge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG5cbi8qIDQgKi9cbi5vLW5hdl9fY2VudGVyLWxlZnQsXG4uby1uYXZfX2NlbnRlci1yaWdodCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwOyB9XG5cbi5vLW5hdl9fY2VudGVyLWxlZnQge1xuICByaWdodDogMTAwJTsgfVxuXG4uby1uYXZfX2NlbnRlci1yaWdodCB7XG4gIGxlZnQ6IDEwMCU7IH1cblxuW2NsYXNzKj0nby1uYXZfX2NlbnRlci0nXSAuby1uYXZfX2xpc3QgPiBsaSA+IGEsXG5bY2xhc3MqPSdvLW5hdl9fY2VudGVyLSddIC5vLW5hdl9faXRlbSxcbltjbGFzcyo9J28tbmF2X19jZW50ZXItJ10gLm8tbmF2X190b2dnbGUge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG5cbi8qIE5hdlxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICogMS4gUmVzZXQgbGlzdFxuICovXG4uby1uYXZfX2xpc3Qge1xuICBkaXNwbGF5OiBmbGV4O1xuICAvKiAxICovXG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTsgfVxuXG4vKlxuICogQWxsb3cgaXRlbXMgdG8gd3JhcCBpbnRvIHRoZSBuZXh0IGxpbmVcbiAqIE9ubHkgbm90IGBhYnNvbHV0ZWAgcG9zaXRpb25lZCBncm91cHNcbiAqL1xuLm8tbmF2X19sZWZ0LFxuLm8tbmF2X19yaWdodCxcbi5vLW5hdl9fY2VudGVyOm9ubHktY2hpbGQge1xuICBmbGV4LXdyYXA6IHdyYXA7IH1cblxuLypcbiAqIEl0ZW1zXG4gKiAxLiBDZW50ZXIgY29udGVudCB2ZXJ0aWNhbGx5IGFuZCBob3Jpem9udGFsbHlcbiAqIDIuIERpbWVuc2lvbnNcbiAqIDMuIFN0eWxlXG4gKiA0LiBSZXF1aXJlZCBmb3IgYGFgXG4gKi9cbi5vLW5hdl9fbGlzdCA+IGxpID4gYSxcbi5vLW5hdl9faXRlbSxcbi5vLW5hdl9faXRlbS0tc2VhcmNoIHtcbiAgLyogMSAqL1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgLyogMiAqL1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBtaW4taGVpZ2h0OiA4MHB4O1xuICBwYWRkaW5nOiAwIDAuNzVlbTtcbiAgLyogMyAqL1xuICBmb250LXNpemU6IDE0cHg7XG4gIC8qIDQgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBib3JkZXItYm90dG9tOiBub25lO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG5cbi8qIFVnbHkgSUUgSGFjayB0byBmaXggZmxleGJveCBjZW50ZXJpbmcgKi9cbkBtZWRpYSBzY3JlZW4gYW5kICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSwgc2NyZWVuIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcbiAgLyogSUUxMCsgc3BlY2lmaWMgc3R5bGVzIGdvIGhlcmUgKi9cbiAgLm8tbmF2X19saXN0ID4gbGkgPiBhLFxuICAuby1uYXZfX2l0ZW0sXG4gIC5vLW5hdl9fdG9nZ2xlIHtcbiAgICBoZWlnaHQ6IDc5cHg7IH0gfVxuXG4vKlxuICogTmF2IGl0ZW1zXG4gKi9cbi5vLW5hdl9fbGlzdCA+IGxpID4gYSB7XG4gIGNvbG9yOiBpbmhlcml0OyB9XG5cbi8qXG4gKiBIb3ZlclxuICogQXBwbHkgaG92ZXIgc3R5bGUgYWxzbyB0byBmb2N1cyBzdGF0ZSBhbmQgaWYgZHJvcGRvd24gaXMgb3BlbmVkXG4gKi9cbi5vLW5hdl9fbGlzdCA+IGxpOmhvdmVyID4gYSxcbi5vLW5hdl9fbGlzdCA+IGxpID4gYS5zLW9wZW4ge1xuICBjb2xvcjogIzdhMTIyMjsgfVxuXG4uby1uYXZfX2xpc3QgPiBsaSA+IGEucy1vcGVuIC5hLWljb24ge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpOyB9XG5cbi5vLW5hdl9fbGlzdCA+IGxpID4gYTpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7IH1cblxuLyogT25DbGljayAqL1xuLm8tbmF2X19saXN0ID4gbGkgPiBhOmFjdGl2ZSB7XG4gIGNvbG9yOiAjNDE0MDQyOyB9XG5cbi8qIEFjdGl2ZSAqL1xuLm8tbmF2X19saXN0ID4gbGkucy1hY3RpdmUgPiBhIHtcbiAgY29sb3I6ICM0MTQwNDI7IH1cblxuLyogSXRlbVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4uby1uYXZfX2l0ZW0ge1xuICBjb2xvcjogIzY2NjsgfVxuXG4vKiBTZWFyY2ggKi9cbi5vLW5hdl9faXRlbS5vLW5hdl9faXRlbS0tc2VhcmNoIHtcbiAgY29sb3I6ICNhNjE5MmU7IH1cblxuLyogVG9nZ2xlXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbmJ1dHRvbi5vLW5hdl9fdG9nZ2xlIHtcbiAgYm9yZGVyLWNvbG9yOiAjYWRhZmIxO1xuICBib3gtc2hhZG93OiBub25lO1xuICBjb2xvcjogIzQxNDA0MjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuXG4uby1uYXZfX3RvZ2dsZSAuYS1pY29uIHtcbiAgY29sb3I6ICNhNjE5MmU7IH1cblxuLm8tbmF2X190b2dnbGU6aG92ZXIgLmEtaWNvbiB7XG4gIGNvbG9yOiAjRkZGOyB9XG5cbi5vLW5hdl9fdG9nZ2xlOmhvdmVyLFxuLm8tbmF2X190b2dnbGU6Zm9jdXMsXG4uby1uYXZfX3RvZ2dsZS5zLW9wZW4ge1xuICBjb2xvcjogIzY2NjtcbiAgb3V0bGluZTogbm9uZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbi8qXG4gKiBJY29uXG4gKi9cbi8qIEhvdmVyICsgRm9jdXMgKi9cbi8qIFN1YnRpdGxlXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi5vLW5hdl9fc3VidGl0bGUge1xuICBmb250LXNpemU6IDE0cHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cblxuLyogU3R5bGUgbW9kaWZpZXJzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qIERyb3Bkb3duXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiAxLiBIaWRlIGJ5IGRlZmF1bHRcbiAqIDIuIFNldCBwb3NpdGlvblxuICogMy4gU2V0IGEgZGVmYXVsdCB3aWR0aFxuICogNC4gU3R5bGVcbiAqL1xuLm8tbmF2X19kcm9wZG93biB7XG4gIC8qIDEgKi9cbiAgZGlzcGxheTogbm9uZTtcbiAgLyogMiAqL1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDUwMDtcbiAgLyogMyAqL1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogMjAwcHg7XG4gIC8qIDQgKi9cbiAgcGFkZGluZzogMTVweDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiAjNjY2OyB9XG5cbi8qIFNob3cgKi9cbi5vLW5hdl9fZHJvcGRvd24ucy1vcGVuIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLypcbiAqIERpcmVjdGlvbiAvIEFsaWdubWVudCBtb2RpZmllcnNcbiAqL1xuLyogRGlyZWN0aW9uICovXG5bY2xhc3MqPSdvLW5hdl9fZHJvcGRvd24tdG9wJ10ge1xuICBtYXJnaW4tdG9wOiAwOyB9XG5cbltjbGFzcyo9J28tbmF2X19kcm9wZG93bi1ib3R0b20nXSB7XG4gIG1hcmdpbi10b3A6IDA7IH1cblxuW2NsYXNzKj0nby1uYXZfX2Ryb3Bkb3duLWxlZnQnXSB7XG4gIG1hcmdpbi1sZWZ0OiAwOyB9XG5cbltjbGFzcyo9J28tbmF2X19kcm9wZG93bi1yaWdodCddIHtcbiAgbWFyZ2luLWxlZnQ6IDA7IH1cblxuLypcbiAqIFdpZHRoIG1vZGlmaWVyXG4gKi9cbi5vLW5hdl9fZHJvcGRvd24td2lkdGgtMjpub3QoLm8tbmF2X19kcm9wZG93bi1zdGFjaykge1xuICB3aWR0aDogNDAwcHg7IH1cblxuLm8tbmF2X19kcm9wZG93bi13aWR0aC0zOm5vdCguby1uYXZfX2Ryb3Bkb3duLXN0YWNrKSB7XG4gIHdpZHRoOiA2MDBweDsgfVxuXG4uby1uYXZfX2Ryb3Bkb3duLXdpZHRoLTQ6bm90KC5vLW5hdl9fZHJvcGRvd24tc3RhY2spIHtcbiAgd2lkdGg6IDgwMHB4OyB9XG5cbi5vLW5hdl9fZHJvcGRvd24td2lkdGgtNTpub3QoLm8tbmF2X19kcm9wZG93bi1zdGFjaykge1xuICB3aWR0aDogMTAwMHB4OyB9XG5cbi8qXG4gKiBEcm9wYmFyIG1vZGlmaWVyXG4gKi9cbi5vLW5hdl9fZHJvcGRvd24tZHJvcGJhciB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLyogRHJvcGRvd24gTmF2XG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi5vLW5hdl9fZHJvcGRvd24tbmF2IHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDsgfVxuXG4vKlxuICogSXRlbXNcbiAqL1xuLm8tbmF2X19kcm9wZG93bi1uYXYgPiBsaSA+IGEge1xuICBib3JkZXI6IG5vbmU7XG4gIGNvbG9yOiAjYTYxOTJlOyB9XG5cbi5vLW5hdl9fZHJvcGRvd24tbmF2ID4gbGk6bm90KC5vLW5hdl9faGVhZGVyKTpub3QoLm8tbmF2X19kaXZpZGVyKSB7XG4gIHBhZGRpbmc6IDAuNWVtIDA7IH1cblxuLyogSG92ZXIgKyBGb2N1cyAqL1xuLm8tbmF2X19kcm9wZG93bi1uYXYgPiBsaSA+IGE6aG92ZXIsXG4uby1uYXZfX2Ryb3Bkb3duLW5hdiA+IGxpID4gYTpmb2N1cyB7XG4gIGNvbG9yOiAjN2ExMjIyOyB9XG5cbi8qIEFjdGl2ZSAqL1xuLm8tbmF2X19kcm9wZG93bi1uYXYgPiBsaS5zLWFjdGl2ZSA+IGEge1xuICBjb2xvcjogI2E2MTkyZTsgfVxuXG4vKlxuICogSGVhZGVyXG4gKi9cbi5vLW5hdl9fZHJvcGRvd24tbmF2IC5vLW5hdl9faGVhZGVyIHtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogMC44NzVlbTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuXG4vKlxuICogRGl2aWRlclxuICovXG4uby1uYXZfX2Ryb3Bkb3duLW5hdiAuby1uYXZfX2RpdmlkZXIge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2U1ZTVlNTsgfVxuXG4vKlxuICogU3VibGlzdHNcbiAqL1xuLm8tbmF2X19kcm9wZG93bi1uYXYgLm8tbmF2X19zdWIgYSB7XG4gIGNvbG9yOiAjOTM5NTk4OyB9XG5cbi5vLW5hdl9fZHJvcGRvd24tbmF2IC5vLW5hdl9fc3ViIGE6aG92ZXIsXG4uby1uYXZfX2Ryb3Bkb3duLW5hdiAuby1uYXZfX3N1YiBhOmZvY3VzIHtcbiAgY29sb3I6ICM2NjY7IH1cblxuLyogRHJvcGJhclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4uby1uYXZfX2Ryb3BiYXI6ZW1wdHkge1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpOyB9XG5cbi5vLW5hdl9fZHJvcGJhciB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0OyB9XG5cbi8qXG4gKiBTbGlkZSBtb2RpZmllclxuICovXG4uby1uYXZfX2Ryb3BiYXItc2xpZGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDQwMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7IH1cblxuLypcbiAqIFNob3cgZHJvcGRvd24gaW5zaWRlIGRyb3BiYXJcbiAqL1xuLm8tbmF2X19kcm9wYmFyIC5vLW5hdl9fZHJvcGRvd24ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogYXV0bzsgfVxuXG4vKiBNb2JpbGUgU2xpZGluZyBEcm9wZG93blxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4uby1uYXZfX21lbnUge1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGhlaWdodDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBvcGFjaXR5OiAwO1xuICBwYWRkaW5nOiAwO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwcHgpO1xuICB3aWR0aDogMTAwJTsgfVxuXG4uby1uYXZfX21lbnUtLW9wZW4ge1xuICBoZWlnaHQ6IGF1dG87XG4gIG1hcmdpbjogMS41ZW0gMDtcbiAgb3BhY2l0eTogMTtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwcHgpOyB9XG5cbi8qIEFuaW1hdGUgbWVudSBhcyBpdCBkcm9wcyBkb3duICovXG4uby1uYXZfX21lbnUtdG9nZ2xlIHtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTsgfVxuXG4uby1uYXZfX21lbnUtd3JhcHBlciBsaTpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjOTM5NTk4O1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7IH1cblxuLypcbiAqIExpbmtzXG4gKi9cbi5vLW5hdl9fbWVudS13cmFwcGVyIGE6bm90KC5hLWJ1dHRvbikge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzkzOTU5ODtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDFlbTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgcGFkZGluZy1ib3R0b206IDJlbTtcbiAgcGFkZGluZy10b3A6IDJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiAxMDA7IH1cbiAgLm8tbmF2X19tZW51LXdyYXBwZXIgYTpub3QoLmEtYnV0dG9uKTpob3ZlciB7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogIzkzOTU5ODsgfVxuICAuby1uYXZfX21lbnUtd3JhcHBlciBhOm5vdCguYS1idXR0b24pOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBkb3R0ZWQgdGhpbjsgfVxuXG4vKlxuICogQnV0dG9uc1xuICogdWdseSBzaXppbmcgZml4XG4gKi9cbi5vLW5hdl9fbWVudS13cmFwcGVyIC5hLWJ1dHRvbi0tZXhwYW5kIHtcbiAgbWFyZ2luLXRvcDogMWVtOyB9XG5cbi8qXG4gKiBJbm5lciBNZW51c1xuICovXG4uby1uYXZfX3N1Ym1lbnUge1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICB0cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkOyB9XG5cbi8qIEhpZGUgdGhlIGlubmVyIHN1Ym1lbnVzICovXG4uby1uYXYgbGkgLm8tbmF2X19zdWJtZW51IHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4vKlxuICogQW5pbWF0aW9uXG4gKlxuICogV2hlbiBhIHN1Ym1lbnUgaXMgb3BlbmVuZCwgd2Ugd2lsbCBoaWRlIGFsbCBsaSBzaWJsaW5ncy5cbiAqIEZvciB0aGF0IHdlIGdpdmUgYSBjbGFzcyB0byB0aGUgcGFyZW50IG1lbnUgY2FsbGVkIFwiby1uYXZfX3N1YnZpZXdcIi5cbiAqIFdlIGFsc28gaGlkZSB0aGUgc3VibWVudSBsaW5rLlxuICogVGhlIG9wZW5lZCBzdWJtZW51IHdpbGwgZ2V0IHRoZSBjbGFzcyBcIm8tbmF2X19zdWJ2aWV3b3BlblwiLlxuICogQWxsIHRoaXMgaXMgZG9uZSBmb3IgYW55IHN1Yi1sZXZlbCBiZWluZyBlbnRlcmVkLlxuICovXG4uby1uYXZfX21lbnUuby1uYXZfX3N1YnZpZXcgbGksXG4uby1uYXZfX21lbnUuby1uYXZfX3N1YnZpZXcgbGkuby1uYXZfX3N1YnZpZXctLW9wZW4gPiBhLFxuLm8tbmF2X19tZW51Lm8tbmF2X19zdWJ2aWV3IGxpLm8tbmF2X19zdWJ2aWV3ID4gYSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLm8tbmF2X19tZW51Lm8tbmF2X19zdWJ2aWV3IGxpLm8tbmF2X19zdWJ2aWV3LFxuLm8tbmF2X19tZW51Lm8tbmF2X19zdWJ2aWV3IGxpLm8tbmF2X19zdWJ2aWV3IC5vLW5hdl9fc3VibWVudSxcbi5vLW5hdl9fbWVudS5vLW5hdl9fc3VidmlldyBsaS5vLW5hdl9fc3Vidmlldy0tb3Blbixcbi5vLW5hdl9fbWVudS5vLW5hdl9fc3VidmlldyBsaS5vLW5hdl9fc3Vidmlldy0tb3BlbiA+IC5vLW5hdl9fc3VibWVudSxcbi5vLW5hdl9fbWVudS5vLW5hdl9fc3VidmlldyBsaS5vLW5hdl9fc3Vidmlldy0tb3BlbiA+IC5vLW5hdl9fc3VibWVudSA+IGxpIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLyogRHluYW1pY2FsbHkgYWRkZWQgc3VibWVudSBvdXRzaWRlIG9mIHRoZSBtZW51IGNvbnRleHQgKi9cbi5vLW5hdl9fbWVudS13cmFwcGVyID4gLm8tbmF2X19zdWJtZW51IHtcbiAgbGVmdDogMDtcbiAgbWFyZ2luOiAxLjVlbSAwIDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTAwJTsgfVxuXG4vKiBBbmltYXRpb24gY2xhc3NlcyBmb3IgbW92aW5nIG91dCBhbmQgaW4gKi9cbi5vLW5hdl9fbWVudS5vLW5hdi0tYW5pbWF0ZS1vdXQge1xuICAtd2Via2l0LWFuaW1hdGlvbjogTWVudUFuaW1PdXQyIDAuM3MgZWFzZS1pbi1vdXQ7XG4gIGFuaW1hdGlvbjogTWVudUFuaW1PdXQyIDAuM3MgZWFzZS1pbi1vdXQ7IH1cblxuQC13ZWJraXQta2V5ZnJhbWVzIE1lbnVBbmltT3V0MiB7XG4gIDAlIHsgfVxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG4gICAgb3BhY2l0eTogMDsgfSB9XG5cbkBrZXlmcmFtZXMgTWVudUFuaW1PdXQyIHtcbiAgMCUgeyB9XG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xuICAgIG9wYWNpdHk6IDA7IH0gfVxuXG4uby1uYXZfX21lbnUuby1uYXYtLWFuaW1hdGUtaW4ge1xuICAtd2Via2l0LWFuaW1hdGlvbjogTWVudUFuaW1JbjIgMC4zcyBlYXNlLWluLW91dDtcbiAgYW5pbWF0aW9uOiBNZW51QW5pbUluMiAwLjNzIGVhc2UtaW4tb3V0OyB9XG5cbkAtd2Via2l0LWtleWZyYW1lcyBNZW51QW5pbUluMiB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG4gICAgb3BhY2l0eTogMDsgfVxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpO1xuICAgIG9wYWNpdHk6IDE7IH0gfVxuXG5Aa2V5ZnJhbWVzIE1lbnVBbmltSW4yIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMHB4KTtcbiAgICBvcGFjaXR5OiAxOyB9IH1cblxuLm8tbmF2X19zdWJtZW51Lm8tbmF2LS1hbmltYXRlLWluIHtcbiAgLXdlYmtpdC1hbmltYXRpb246IFN1Yk1lbnVBbmltSW4yIDAuM3MgZWFzZS1pbi1vdXQ7XG4gIGFuaW1hdGlvbjogU3ViTWVudUFuaW1JbjIgMC4zcyBlYXNlLWluLW91dDsgfVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgU3ViTWVudUFuaW1JbjIge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG4gICAgb3BhY2l0eTogMDsgfVxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpO1xuICAgIG9wYWNpdHk6IDE7IH0gfVxuXG5Aa2V5ZnJhbWVzIFN1Yk1lbnVBbmltSW4yIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcbiAgICBvcGFjaXR5OiAwOyB9XG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDBweCk7XG4gICAgb3BhY2l0eTogMTsgfSB9XG5cbi5vLW5hdl9fc3VibWVudS5vLW5hdi0tYW5pbWF0ZS1vdXQge1xuICAtd2Via2l0LWFuaW1hdGlvbjogU3ViTWVudUFuaW1PdXQyIDAuM3MgZWFzZS1pbi1vdXQ7XG4gIGFuaW1hdGlvbjogU3ViTWVudUFuaW1PdXQyIDAuM3MgZWFzZS1pbi1vdXQ7IH1cblxuQC13ZWJraXQta2V5ZnJhbWVzIFN1Yk1lbnVBbmltT3V0MiB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSk7XG4gICAgb3BhY2l0eTogMTsgfVxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcbiAgICBvcGFjaXR5OiAwOyB9IH1cblxuQGtleWZyYW1lcyBTdWJNZW51QW5pbU91dDIge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSk7XG4gICAgb3BhY2l0eTogMTsgfVxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG4gICAgb3BhY2l0eTogMDsgfSB9XG5cbi8qXG4gKiBObyBKUyBGYWxsYmFja1xuICovXG4ubm8tanMgLm8tbmF2X19tZW51LXdyYXBwZXIgLm8tbmF2X19tZW51IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvcGFjaXR5OiAxO1xuICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcbiAgdHJhbnNmb3JtOiBub25lOyB9XG5cbi5uby1qcyAuby1uYXZfX21lbnUtd3JhcHBlciBsaSAuby1uYXZfX3N1Ym1lbnUge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4ubm8tanMgLm8tbmF2X19tZW51LXdyYXBwZXIgbGkuby1uYXZfX2l0ZW0tLWJhY2sge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5uby1qcyAuby1uYXZfX21lbnUtd3JhcHBlciBsaSA+IGE6bm90KDpvbmx5LWNoaWxkKSB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4xKTsgfVxuXG4ubm8tanMgLm8tbmF2X19tZW51LXdyYXBwZXIgbGkgPiBhOm5vdCg6b25seS1jaGlsZCk6YWZ0ZXIge1xuICBjb250ZW50OiAnJzsgfVxuXG4uby1tb2RhbCB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmpzLXZhbmlsbGEtbW9kYWwgLm8tbW9kYWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29udGVudDogXCJcIjtcbiAgei1pbmRleDogLTE7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycywgei1pbmRleCAwcyAwLjJzO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDsgfVxuXG4uanMtdmFuaWxsYS1tb2RhbCAuby1tb2RhbCA+ICoge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHRleHQtYWxpZ246IGxlZnQ7IH1cblxuLmpzLXZhbmlsbGEtbW9kYWwgLm8tbW9kYWw6YmVmb3JlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAxMDAlO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBjb250ZW50OiBcIlwiOyB9XG5cbi5qcy12YW5pbGxhLW1vZGFsLmlzLXZpc2libGUgLm8tbW9kYWwge1xuICB6LWluZGV4OiA2MDA7XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4yczsgfVxuXG4uby1tb2RhbF9faW5uZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1heC13aWR0aDogOTAlO1xuICBtYXgtaGVpZ2h0OiA5MCU7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgei1pbmRleDogLTE7XG4gIG9wYWNpdHk6IDA7XG4gIHBhZGRpbmc6IDEuNWVtO1xuICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMsIHRyYW5zZm9ybSAwLjJzLCB6LWluZGV4IDBzIDAuMnM7IH1cblxuLmlzLXZpc2libGUgLm8tbW9kYWxfX2lubmVyIHtcbiAgei1pbmRleDogMTAwO1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMsIHRyYW5zZm9ybSAwLjJzOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0OHJlbSkge1xuICAuby1tb2RhbF9faW5uZXItLXhzbWFsbCB7XG4gICAgd2lkdGg6IDMwdnc7IH1cbiAgLm8tbW9kYWxfX2lubmVyLS1zbWFsbCB7XG4gICAgd2lkdGg6IDQwdnc7IH1cbiAgLm8tbW9kYWxfX2lubmVyLS1tZWRpdW0ge1xuICAgIHdpZHRoOiA2MHZ3OyB9XG4gIC5vLW1vZGFsX19pbm5lci0tbGFyZ2Uge1xuICAgIHdpZHRoOiA3MHZ3OyB9XG4gIC5vLW1vZGFsX19pbm5lci0teGxhcmdlIHtcbiAgICB3aWR0aDogOTB2dzsgfVxuICAuby1tb2RhbF9faW5uZXItLXN1cGVyIHtcbiAgICBoZWlnaHQ6IDEwMHZoO1xuICAgIHdpZHRoOiAxMDB2dzsgfSB9XG5cbi5vLW1vZGFsX19jbG9zZSB7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuXG4vKmRvY1xuLS0tXG50aXRsZTogU2VjdGlvbnNcbm5hbWU6IHNlY3Rpb25zXG5jYXRlZ29yeTogT3JnYW5pc21zXG4tLS1cblxuU2VjdGlvbnMgYXJlIGdlbmVyaWMgd3JhcHBlcnMuIFRoZSBvbmx5IHN0eWxpbmcgYXNzb2NpYXRlZCB3aXRoIHRoZSBgby1zZWN0aW9uYCBjbGFzcyBpcyBhIGJpdCBvZiBwYWRkaW5nIG9uIHRoZSB0b3AgYW5kIGJvdHRvbS5cblxuYGBgaHRtbF9leGFtcGxlXG48c2VjdGlvbiBjbGFzcz1cIm8tc2VjdGlvblwiPlxuXHQ8ZGl2IGNsYXNzPVwibC1jb250YWluZXIgIGwtY29udGFpbmVyLS1tZWRpdW1cIj5cblx0XHQ8aDIgY2xhc3M9XCJvLXNlY3Rpb25fX2hlYWRlclwiPlNlY3Rpb248L2gyPlxuXHRcdDwhLS0gY29udGVudCBnb2VzIGhlcmUgLS0+XG5cdDwvZGl2PlxuPC9zZWN0aW9uPlxuYGBgXG5cbiMjIyBTaXplc1xuXG5Vc2UgdGhlIG1vZGlmaWVyIGNsYXNzZXMgYG8tc2VjdGlvbi0tc21hbGxgLCBgby1zZWN0aW9uLS1sYXJnZWAsIG9yIGBvLXNlY3Rpb24tLXhsYXJnZWAgdG8gZGVjcmVhc2Ugb3IgaW5jcmVhc2UgdmVydGljYWwgcGFkZGluZyByZXNwZWN0aXZlbHkuXG5cbmBgYGh0bWxfZXhhbXBsZVxuPHNlY3Rpb24gY2xhc3M9XCJvLXNlY3Rpb24gIG8tc2VjdGlvbi0tc21hbGxcIj5cblx0PGRpdiBjbGFzcz1cImwtY29udGFpbmVyICBsLWNvbnRhaW5lci0tbWVkaXVtXCI+XG5cdFx0PGgyIGNsYXNzPVwiby1zZWN0aW9uX19oZWFkZXJcIj5TbWFsbCBTZWN0aW9uPC9oMj5cblx0PC9kaXY+XG48L3NlY3Rpb24+XG5gYGBcblxuYGBgaHRtbF9leGFtcGxlXG48c2VjdGlvbiBjbGFzcz1cIm8tc2VjdGlvbiAgby1zZWN0aW9uLS1sYXJnZVwiPlxuXHQ8ZGl2IGNsYXNzPVwibC1jb250YWluZXIgIGwtY29udGFpbmVyLS1tZWRpdW1cIj5cblx0XHQ8aDIgY2xhc3M9XCJvLXNlY3Rpb25fX2hlYWRlclwiPkxhcmdlIFNlY3Rpb248L2gyPlxuXHQ8L2Rpdj5cbjwvc2VjdGlvbj5cbmBgYFxuXG5gYGBodG1sX2V4YW1wbGVcbjxzZWN0aW9uIGNsYXNzPVwiby1zZWN0aW9uICBvLXNlY3Rpb24tLXhsYXJnZVwiPlxuXHQ8ZGl2IGNsYXNzPVwibC1jb250YWluZXIgIGwtY29udGFpbmVyLS1tZWRpdW1cIj5cblx0XHQ8aDIgY2xhc3M9XCJvLXNlY3Rpb25fX2hlYWRlclwiPlhsYXJnZSBTZWN0aW9uPC9oMj5cblx0PC9kaXY+XG48L3NlY3Rpb24+XG5gYGBcblxuIyMjIENvbG9yc1xuXG5UbyBhcHBseSBkaWZmZXJlbnQgYmFja2dyb3VuZCBjb2xvcnMsIGFkZCBvbmUgb2YgdGhlIGZvbGxvd2luZyBjbGFzc2VzLlxuXG58IENsYXNzICAgICAgICAgICAgICAgICAgIHwgRGVzY3JpcHRpb24gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfFxufDotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS18Oi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLXxcbnwgYC5jLXNlY3Rpb24tZW1waGFzaXNgICB8IEFkZHMgYSBtdXRlZCBiYWNrZ3JvdW5kIGNvbG9yLiAgICAgICAgICAgICAgICAgIHxcbnwgYC5jLXNlY3Rpb24tZ3JhZGllbnRgICB8IEFkZHMgYSBncmFkaWVudCBiYWNrZ3JvdW5kIGNvbG9yLiAgICAgICAgICAgICAgIHxcbnwgYC5jLXNlY3Rpb24tYnJhbmRgICAgICB8IEFkZHMgYSBicmFuZCBiYWNrZ3JvdW5kIGNvbG9yLiAgICAgICAgICAgICAgICAgIHxcbnwgYC5jLXNlY3Rpb24tc2Vjb25kYXJ5YCB8IEFkZHMgYSBzZWNvbmRhcnkgYmFja2dyb3VuZCBjb2xvci4gICAgICAgICAgICAgIHxcbnwgYC5jLXNlY3Rpb24tdGVydGlhcnlgICB8IEFkZHMgYSBzZWNvbmRhcnkgYmFja2dyb3VuZCBjb2xvci4gICAgICAgICAgICAgIHxcbnwgYC5jLXNlY3Rpb24taW52ZXJzZWAgICB8IEludmVyc2VzIGJhY2tncm91bmQgY29sb3IgYW5kIHRleHQgY29sb3IuICAgICAgIHxcblxuVGhlIGBvLXNlY3Rpb24tLWVtcGhhc2lzYCBjbGFzcyBnaXZlcyB0aGUgc2VjdGlvbiBhIGxpZ2h0IGdyZXkgYmFja2dyb3VuZCBhbmQgaW5zZXQgZHJvcCBzaGFkb3dzIHRvIGRyYXcgYSBiaXQgb2YgZXh0cmEgYXR0ZW50aW9uLiBUeXBpY2FsbHkgd2UgdXNlIHRoZXNlIHNlY3Rpb25zIHRvIHdyYXAgdGhlIFwiRmluZCBTb21ldGhpbmdcIiB0b29sLlxuXG5gYGBodG1sX2V4YW1wbGVcbjxzZWN0aW9uIGNsYXNzPVwiby1zZWN0aW9uICBvLXNlY3Rpb24tLWVtcGhhc2lzXCI+XG5cdDxkaXYgY2xhc3M9XCJsLWNvbnRhaW5lciAgbC1jb250YWluZXItLW1lZGl1bVwiPlxuXHRcdDxoMiBjbGFzcz1cIm8tc2VjdGlvbl9faGVhZGVyXCI+U2VjdGlvbiB3aXRoIEVtcGhhc2lzPC9oMj5cblx0PC9kaXY+XG48L3NlY3Rpb24+XG48c2VjdGlvbiBjbGFzcz1cIm8tc2VjdGlvbiAgby1zZWN0aW9uLS1ncmFkaWVudFwiPlxuXHQ8ZGl2IGNsYXNzPVwibC1jb250YWluZXIgIGwtY29udGFpbmVyLS1tZWRpdW1cIj5cblx0XHQ8aDIgY2xhc3M9XCJvLXNlY3Rpb25fX2hlYWRlclwiPlNlY3Rpb24gd2l0aCBHcmFkaWVudCBCYWNrZ3JvdW5kPC9oMj5cblx0PC9kaXY+XG48L3NlY3Rpb24+XG48c2VjdGlvbiBjbGFzcz1cIm8tc2VjdGlvbiAgby1zZWN0aW9uLS1icmFuZFwiPlxuXHQ8ZGl2IGNsYXNzPVwibC1jb250YWluZXIgIGwtY29udGFpbmVyLS1tZWRpdW1cIj5cblx0XHQ8aDIgY2xhc3M9XCJvLXNlY3Rpb25fX2hlYWRlclwiPlNlY3Rpb24gd2l0aCBCcmFuZCBCYWNrZ3JvdW5kPC9oMj5cblx0PC9kaXY+XG48L3NlY3Rpb24+XG48c2VjdGlvbiBjbGFzcz1cIm8tc2VjdGlvbiAgby1zZWN0aW9uLS1zZWNvbmRhcnlcIj5cblx0PGRpdiBjbGFzcz1cImwtY29udGFpbmVyICBsLWNvbnRhaW5lci0tbWVkaXVtXCI+XG5cdFx0PGgyIGNsYXNzPVwiby1zZWN0aW9uX19oZWFkZXJcIj5TZWN0aW9uIHdpdGggU2Vjb25kYXJ5IEJhY2tncm91bmQ8L2gyPlxuXHQ8L2Rpdj5cbjwvc2VjdGlvbj5cbjxzZWN0aW9uIGNsYXNzPVwiby1zZWN0aW9uICBvLXNlY3Rpb24tLXRlcnRpYXJ5XCI+XG5cdDxkaXYgY2xhc3M9XCJsLWNvbnRhaW5lciAgbC1jb250YWluZXItLW1lZGl1bVwiPlxuXHRcdDxoMiBjbGFzcz1cIm8tc2VjdGlvbl9faGVhZGVyXCI+U2VjdGlvbiB3aXRoIFRlcnRpYXJ5IEJhY2tncm91bmQ8L2gyPlxuXHQ8L2Rpdj5cbjwvc2VjdGlvbj5cbjxzZWN0aW9uIGNsYXNzPVwiby1zZWN0aW9uICBvLXNlY3Rpb24tLWludmVyc2VcIj5cblx0PGRpdiBjbGFzcz1cImwtY29udGFpbmVyICBsLWNvbnRhaW5lci0tbWVkaXVtXCI+XG5cdFx0PGgyIGNsYXNzPVwiby1zZWN0aW9uX19oZWFkZXJcIj5JbnZlcnRlZCBTZWN0aW9uPC9oMj5cblx0PC9kaXY+XG48L3NlY3Rpb24+XG5gYGBcblxuKi9cbi8qIFNpemUgbW9kaWZpZXJzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi5vLXNlY3Rpb24tLXhzbWFsbCB7XG4gIHBhZGRpbmctYm90dG9tOiAuNWVtO1xuICBwYWRkaW5nLXRvcDogLjVlbTsgfVxuXG4uby1zZWN0aW9uLS1zbWFsbCB7XG4gIHBhZGRpbmctYm90dG9tOiAxZW07XG4gIHBhZGRpbmctdG9wOiAxZW07IH1cblxuLm8tc2VjdGlvbixcbi5vLXNlY3Rpb24tLW1lZGl1bSB7XG4gIHBhZGRpbmctYm90dG9tOiAxLjVlbTtcbiAgcGFkZGluZy10b3A6IDEuNWVtOyB9XG5cbi5vLXNlY3Rpb24tLWxhcmdlIHtcbiAgcGFkZGluZy1ib3R0b206IDJlbTtcbiAgcGFkZGluZy10b3A6IDJlbTsgfVxuXG4uby1zZWN0aW9uLS14bGFyZ2Uge1xuICBwYWRkaW5nLWJvdHRvbTogMi41ZW07XG4gIHBhZGRpbmctdG9wOiAyLjVlbTsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDhyZW0pIHtcbiAgLm8tc2VjdGlvbi0teHNtYWxsIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMWVtO1xuICAgIHBhZGRpbmctdG9wOiAxZW07IH1cbiAgLm8tc2VjdGlvbi0tc21hbGwge1xuICAgIHBhZGRpbmctYm90dG9tOiAyZW07XG4gICAgcGFkZGluZy10b3A6IDJlbTsgfVxuICAuby1zZWN0aW9uLFxuICAuby1zZWN0aW9uLS1tZWRpdW0ge1xuICAgIHBhZGRpbmctYm90dG9tOiAzZW07XG4gICAgcGFkZGluZy10b3A6IDNlbTsgfVxuICAuby1zZWN0aW9uLS1sYXJnZSB7XG4gICAgcGFkZGluZy1ib3R0b206IDRlbTtcbiAgICBwYWRkaW5nLXRvcDogNGVtOyB9XG4gIC5vLXNlY3Rpb24tLXhsYXJnZSB7XG4gICAgcGFkZGluZy1ib3R0b206IDVlbTtcbiAgICBwYWRkaW5nLXRvcDogNWVtOyB9IH1cblxuLyogU3R5bGUgbW9kaWZpZXJzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi5vLXNlY3Rpb24tLWVtcGhhc2lzIHtcbiAgYmFja2dyb3VuZDogI0YyRjJGMjtcbiAgYm94LXNoYWRvdzogaW5zZXQgMHB4IDJweCAxcHggcmdiYSg2NSwgNjQsIDY2LCAwLjIpLCBpbnNldCAwcHggLTJweCAxcHggcmdiYSg2NSwgNjQsIDY2LCAwLjIpOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0Ny45OXJlbSkge1xuICAgIC5vLXNlY3Rpb24tLWVtcGhhc2lzIHtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICBib3gtc2hhZG93OiBub25lOyB9IH1cblxuLm8tc2VjdGlvbi0tZ3JhZGllbnQge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCAjRkZGIDAlLCAjRjJGMkYyIDEwMCUpOyB9XG5cbi5vLXNlY3Rpb24tLWJyYW5kLFxuLm8tc2VjdGlvbi0tc2Vjb25kYXJ5LFxuLm8tc2VjdGlvbi0tdGVydGlhcnksXG4uby1zZWN0aW9uLS1kYXJrLWJsdWUsXG4uby1zZWN0aW9uLS1ncmV5LFxuLm8tc2VjdGlvbi0taW52ZXJzZSB7XG4gIGNvbG9yOiAjRkZGOyB9XG4gIC5vLXNlY3Rpb24tLWJyYW5kIC5vLXNlY3Rpb25fX2hlYWRlcixcbiAgLm8tc2VjdGlvbi0tc2Vjb25kYXJ5IC5vLXNlY3Rpb25fX2hlYWRlcixcbiAgLm8tc2VjdGlvbi0tdGVydGlhcnkgLm8tc2VjdGlvbl9faGVhZGVyLFxuICAuby1zZWN0aW9uLS1kYXJrLWJsdWUgLm8tc2VjdGlvbl9faGVhZGVyLFxuICAuby1zZWN0aW9uLS1ncmV5IC5vLXNlY3Rpb25fX2hlYWRlcixcbiAgLm8tc2VjdGlvbi0taW52ZXJzZSAuby1zZWN0aW9uX19oZWFkZXIge1xuICAgIGNvbG9yOiAjRkZGOyB9XG4gIC5vLXNlY3Rpb24tLWJyYW5kIGE6bm90KFtjbGFzc10pLFxuICAuby1zZWN0aW9uLS1zZWNvbmRhcnkgYTpub3QoW2NsYXNzXSksXG4gIC5vLXNlY3Rpb24tLXRlcnRpYXJ5IGE6bm90KFtjbGFzc10pLFxuICAuby1zZWN0aW9uLS1kYXJrLWJsdWUgYTpub3QoW2NsYXNzXSksXG4gIC5vLXNlY3Rpb24tLWdyZXkgYTpub3QoW2NsYXNzXSksXG4gIC5vLXNlY3Rpb24tLWludmVyc2UgYTpub3QoW2NsYXNzXSkge1xuICAgIGNvbG9yOiAjRkZGOyB9XG4gIC5vLXNlY3Rpb24tLWJyYW5kIGE6aG92ZXI6bm90KFtjbGFzc10pLFxuICAuby1zZWN0aW9uLS1zZWNvbmRhcnkgYTpob3Zlcjpub3QoW2NsYXNzXSksXG4gIC5vLXNlY3Rpb24tLXRlcnRpYXJ5IGE6aG92ZXI6bm90KFtjbGFzc10pLFxuICAuby1zZWN0aW9uLS1kYXJrLWJsdWUgYTpob3Zlcjpub3QoW2NsYXNzXSksXG4gIC5vLXNlY3Rpb24tLWdyZXkgYTpob3Zlcjpub3QoW2NsYXNzXSksXG4gIC5vLXNlY3Rpb24tLWludmVyc2UgYTpob3Zlcjpub3QoW2NsYXNzXSkge1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xuICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7IH1cblxuLm8tc2VjdGlvbi0tYnJhbmQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTYxOTJlOyB9XG5cbi5vLXNlY3Rpb24tLXNlY29uZGFyeSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0Rjg2OEU7IH1cblxuLm8tc2VjdGlvbi0tdGVydGlhcnkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjN0VEREQzOyB9XG5cbi5vLXNlY3Rpb24tLWludmVyc2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTExOyB9XG5cbi5vLXNlY3Rpb24tLWxpZ2h0LWdyZXkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjRGNEY1OyB9XG5cbi5vLXNlY3Rpb24tLWxpZ2h0LXJlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZWQwZDQ7IH1cblxuLm8tc2VjdGlvbi0tbGlnaHQtYmx1ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjYmYxZWQ7IH1cblxuLm8tc2VjdGlvbi0tZGFyay1ibHVlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzcyOWVhNDsgfVxuXG4uby1zZWN0aW9uLS1ncmV5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzlmOWZhMDsgfVxuXG4uby1zZWN0aW9uX19oZWFkZXIge1xuICBtYXJnaW4tYm90dG9tOiAuNzVlbTtcbiAgbWFyZ2luLXRvcDogMC41ZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDhyZW0pIHtcbiAgICAuby1zZWN0aW9uX19oZWFkZXIge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMWVtOyB9IH1cblxuaDIuby1zZWN0aW9uX19oZWFkZXIge1xuICBsZXR0ZXItc3BhY2luZzogMC4wNzVlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuXG4jdGFibGUtb2YtY29udGVudHMsXG4uby1zZWN0aW9uLS10b2Mge1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgcGFkZGluZy10b3A6IDA7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4cmVtKSB7XG4gICAgI3RhYmxlLW9mLWNvbnRlbnRzLFxuICAgIC5vLXNlY3Rpb24tLXRvYyB7XG4gICAgICBwYWRkaW5nLXRvcDogMmVtOyB9IH1cblxuLm8tc2VjdGlvbi0tZnRzIHtcbiAgYm9yZGVyLWNvbG9yOiAjNDE0MDQyO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDAgMXB4IDFweCAxcHg7IH1cblxuLm8tc2VjdGlvbi0tY2xpbmljYWwtbGV0dGVycyBsaSBhIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgY29sb3I6ICM5Mzk1OTg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM5Mzk1OTg7IH1cbiAgLm8tc2VjdGlvbi0tY2xpbmljYWwtbGV0dGVycyBsaSBhLmFjdGl2ZSB7XG4gICAgY29sb3I6ICNhNjE5MmU7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2E2MTkyZTtcbiAgICBjdXJzb3I6IHBvaW50ZXIgIWltcG9ydGFudDtcbiAgICBwb2ludGVyLWV2ZW50czogYXV0byAhaW1wb3J0YW50OyB9XG5cbi5vLXNlY3Rpb24tLWJvdHRvbS1jdGEge1xuICBvcmRlcjogMTA7XG4gIG1hcmdpbi10b3A6IDZlbTtcbiAgbWFyZ2luLWJvdHRvbTogLTZlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxOyB9XG5cbi5vLXNlY3Rpb24tLWJvdHRvbS1jdGE6OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDtcbiAgY29udGVudDogJyc7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDIwcHg7XG4gIGxlZnQ6IDUwJTtcbiAgbWFyZ2luLWxlZnQ6IC0xMHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogLTEwcHg7XG4gIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgd2lkdGg6IDIwcHg7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTlyZW0pIHtcbiAgLm8tc2VjdGlvbl9fYWNjb3JkaW9uIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIzc5N2I3ZjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgLm8tc2VjdGlvbl9fYWNjb3JkaW9uOmxhc3Qtb2YtdHlwZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM3OTdiN2Y7IH1cbiAgLyouby1zZWN0aW9uX19hY2NvcmRpb24taGVhZGVyIHtcblx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHR9Ki9cbiAgLm8tc2VjdGlvbl9fbW9iaWxlLWNvbnRlbnQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgY3Vyc29yOiBkZWZhdWx0OyB9XG4gIC5vLXNlY3Rpb25fX2FjY29yZGlvbi10YXAuby1zZWN0aW9uX19hY2NvcmRpb24tYWN0aXZlICsgLm8tc2VjdGlvbl9fbW9iaWxlLWNvbnRlbnQge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cblxuLm8tc2VjdGlvbi0tc2VhcmNoLXJlc3VsdHMge1xuICB3aWR0aDogMTAwJTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkY7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIzc5N2I3ZjtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIzc5N2I3ZjtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM3OTdiN2Y7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAzcHg7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDNweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgY3Vyc29yOiBhdXRvOyB9XG4gIC5vLXNlY3Rpb24tLXNlYXJjaC1yZXN1bHRzIGgzIHtcbiAgICBmb250LXdlaWdodDogNDAwOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAyOS45OXJlbSkge1xuICAgIC5vLXNlY3Rpb24tLXNlYXJjaC1yZXN1bHRzIC5kb2NfaW1hZ2Uge1xuICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICAuby1zZWN0aW9uLS1zZWFyY2gtcmVzdWx0cyAuZG9jX25hbWUsXG4gIC5vLXNlY3Rpb24tLXNlYXJjaC1yZXN1bHRzIC5kb2Nfc3BlY2lhbHRpZXMge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgd2lkdGg6IDEwMCU7IH1cblxuLm8tc2VhcmNoLS1oZWFkZXIge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzQxNDA0MjsgfVxuXG4uby1zZWN0aW9uLS1nZW5lcmFsLXNlYXJjaC10YWJzIGxpLm0tYnV0dG9uLWdyb3VwX19saW5rOm5vdCg6ZGlzYWJsZWQpOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2E2MTkyZTsgfVxuICAuby1zZWN0aW9uLS1nZW5lcmFsLXNlYXJjaC10YWJzIGxpLm0tYnV0dG9uLWdyb3VwX19saW5rOm5vdCg6ZGlzYWJsZWQpOmhvdmVyIGEge1xuICAgIGNvbG9yOiAjRkZGOyB9XG5cbi5vLXNlY3Rpb24tLWdlbmVyYWwtc2VhcmNoLXRhYnMgbGkuYWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0YyRjJGMjsgfVxuICAuby1zZWN0aW9uLS1nZW5lcmFsLXNlYXJjaC10YWJzIGxpLmFjdGl2ZSBhIHtcbiAgICBjb2xvcjogI2E2MTkyZTsgfVxuXG4uby1zZWN0aW9uLS1nZW5lcmFsLXNlYXJjaC10YWJzIGxpIGEge1xuICBjb2xvcjogIzQxNDA0MjtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlcjogbm9uZTsgfVxuXG4uY3VzdG9tLWNvbWJvYm94IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IDFlbTtcbiAgbWF4LWhlaWdodDogMjUwcHg7XG4gIG92ZXJmbG93LXk6IGF1dG87IH1cbiAgLmN1c3RvbS1jb21ib2JveCBpbnB1dCB7XG4gICAgcGFkZGluZy1yaWdodDogMWVtOyB9XG4gIC5jdXN0b20tY29tYm9ib3ggYSB7XG4gICAgd2lkdGg6IDE4cHg7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgY29sb3I6ICM0MTQwNDI7IH1cbiAgICAuY3VzdG9tLWNvbWJvYm94IGE6aG92ZXIsIC5jdXN0b20tY29tYm9ib3ggYTpmb2N1cyB7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgY29sb3I6ICM0MTQwNDI7IH1cbiAgICAgIC5jdXN0b20tY29tYm9ib3ggYTpob3ZlciBzcGFuLnVpLWljb24tdHJpYW5nbGUtMS1zLCAuY3VzdG9tLWNvbWJvYm94IGE6Zm9jdXMgc3Bhbi51aS1pY29uLXRyaWFuZ2xlLTEtcyB7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybChkYXRhOmltYWdlL3BuZztiYXNlNjQsUjBsR09EbGhEd0FVQUlBQkFBQUFBUC8vL3lINUJBRUFBQUVBTEFBQUFBQVBBQlFBQUFJWGpJK3B5KzBQbzV3SDJIc1h6bXcvL2xIaVNKWm1VQUFBT3c9PSkgOTklIDUwJSBuby1yZXBlYXQgdHJhbnNwYXJlbnQ7IH1cbiAgICAuY3VzdG9tLWNvbWJvYm94IGEgc3Bhbi51aS1pY29uLXRyaWFuZ2xlLTEtcyB7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoZGF0YTppbWFnZS9wbmc7YmFzZTY0LFIwbEdPRGxoRHdBVUFJQUJBQUFBQVAvLy95SDVCQUVBQUFFQUxBQUFBQUFQQUJRQUFBSVhqSStweSswUG81d0gySHNYem13Ly9sSGlTSlptVUFBQU93PT0pIDk5JSA1MCUgbm8tcmVwZWF0IHRyYW5zcGFyZW50OyB9XG5cbi5jdXN0b20tY29tYm9ib3gtdG9nZ2xlIHtcbiAgbWF4LWhlaWdodDogMjUwcHg7IH1cblxuI2xvY2F0aW9ucy1yZXN1bHRzIC5yZXN1bHQgaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMjUwcHg7IH1cblxuLyoqXG4gKiBTd2lwZXIgMy40LjFcbiAqIE1vc3QgbW9kZXJuIG1vYmlsZSB0b3VjaCBzbGlkZXIgYW5kIGZyYW1ld29yayB3aXRoIGhhcmR3YXJlIGFjY2VsZXJhdGVkIHRyYW5zaXRpb25zXG4gKlxuICogaHR0cDovL3d3dy5pZGFuZ2Vyby51cy9zd2lwZXIvXG4gKlxuICogQ29weXJpZ2h0IDIwMTYsIFZsYWRpbWlyIEtoYXJsYW1waWRpXG4gKiBUaGUgaURhbmdlcm8udXNcbiAqIGh0dHA6Ly93d3cuaWRhbmdlcm8udXMvXG4gKlxuICogTGljZW5zZWQgdW5kZXIgTUlUXG4gKlxuICogUmVsZWFzZWQgb246IERlY2VtYmVyIDEzLCAyMDE2XG4gKi9cbi8qZG9jXG4tLS1cbnRpdGxlOiBTd2lwZXJcbm5hbWU6IHN3aXBlclxuY2F0ZWdvcnk6IE9yZ2FuaXNtc1xuLS0tXG5cblN3aXBlciBpcyBhIGZyZWUsIG1vZGVybiB0b3VjaCBzbGlkZXIgd2l0aCBoYXJkd2FyZSBhY2NlbGVyYXRlZCB0cmFuc2l0aW9ucy4gV2UgdXNlIHR3byBpbnN0YW5jZXMgb2YgU3dpcGVyIG9uIG91ciBzaXRlczogb25lIG9uIHRoZSBob21lcGFnZSwgYW5kIGFub3RoZXIgc2xpZGVyIGZvciBzdWItcGFnZXMuIFRoaXMgZG9jdW1lbnRhdGlvbiBmb2N1c3NlcyBvbiB0aGUgbGF0dGVyLlxuXG5UbyB1c2UgU3dpcGVyLCBjcmVhdGUgYSBgZGl2YCB3aXRoIHRoZSBmb2xsb3dpbmcgY2xhc3NlczogYGpzLXN3aXBlci0tbWVkaXVtYCwgYG8tc3dpcGVyYCwgYW5kIGBvLXN3aXBlci0tbWVkaXVtYC4gSW5zaWRlIHRoYXQsIGNyZWF0ZSBhbm90aGVyIGBkaXZgIHdpdGggdGhlIGNsYXNzIGBvLXN3aXBlcl9fd3JhcHBlcmAuIFRoZSB3cmFwcGVyIGlzIHdoYXQgY29udGFpbnMgb3VyIHNsaWRlcy5cblxuU2xpZGVzIGFyZSBjcmVhdGVkIHdpdGggdGhlIGBvLXN3aXBlcl9fc2xpZGVgIGNsYXNzLiBBZGRpdGlvbmFsbHksIHRoZSBtb2RpZmllciBgby1zd2lwZXJfX3NsaWRlLS1ncmFkaWVudGAgd2lsbCBhZGQgYSBkYXJrIGdyYWRpZW50IHRvIHRoZSBib3R0b20gaGFsZiBvZiB0aGUgc2xpZGUuIFRoZSBncmFkaWVudCBpbmNyZWFzZXMgY2FwdGlvbiB2aXNpYmlsaXR5LiBTbGlkZXMgY2FuIGNvbnRhaW4gYW55dGhpbmcsIGJ1dCB3ZSB0eXBpY2FsbHkgb25seSB1c2UgU3dpcGVyIGZvciBpbWFnZXMuXG5cbklkZWFsbHksIGltYWdlcyB1c2VkIGluIFN3aXBlciB3aWxsIGJlIGNvbnNpc3RlbnQgaW4gc2l6ZS4gSXQncyBhbHNvIGdvb2QgcHJhY3RpY2UgdG8gbGF6eSBsb2FkIGltYWdlcyBzbyB0aGV5IGFyZW4ndCBkb3dubG9hZGVkIHVudGlsIHRoZSB1c2VyIGN5Y2xlcyB0aHJvdWdoIHRoZSBzbGlkZXNob3cuIFRvIGxhenkgbG9hZCBpbWFnZXMsIGFkZCB0aGUgYG8tc3dpcGVyX19pbWFnZS0tbGF6eWAgY2xhc3MgdG8gdGhlIGltYWdlLCBhbmQgYWRkIGEgYmxhbmsgYGRpdmAgd2l0aCB0aGUgYG8tc3dpcGVyX19wcmVsb2FkZXJgIGFmdGVyIGVhY2ggaW1hZ2UuXG5cbkNhcHRpb25zIGNhbiBiZSBhZGRlZCB0byBzbGlkZXMgd2l0aCB0aGUgYG8tc3dpcGVyX19jYXB0aW9uYCBjbGFzcy4gQ2FwdGlvbnMgd2lsbCBhcHBlYXIgYXQgdGhlIGJvdHRvbSBvZiB0aGUgc2xpZGUuXG5cbkZvciBtb3JlIGRldGFpbGVkIGluZm9ybWF0aW9uIGFib3V0IFN3aXBlciwgY2hlY2sgb3V0IFt0aGUgb2ZmaWNpYWwgZG9jdW1lbnRhaW9uXShodHRwOi8vaWRhbmdlcm8udXMvc3dpcGVyLykuXG5cbmBgYGh0bWxfZXhhbXBsZVxuPGRpdiBjbGFzcz1cImpzLXN3aXBlci0tbWVkaXVtICBvLXN3aXBlciAgby1zd2lwZXItLW1lZGl1bVwiPlxuXHQ8IS0tIEFkZGl0aW9uYWwgcmVxdWlyZWQgd3JhcHBlciAtLT5cblx0PGRpdiBjbGFzcz1cIm8tc3dpcGVyX193cmFwcGVyXCI+XG5cdFx0PCEtLSBTbGlkZXMgLS0+XG5cdFx0PGRpdiBjbGFzcz1cIm8tc3dpcGVyX19zbGlkZSAgby1zd2lwZXJfX3NsaWRlLS1ncmFkaWVudFwiPlxuXHRcdFx0PGltZyBjbGFzcz1cIm8tc3dpcGVyX19pbWFnZS0tbGF6eVwiIGRhdGEtc3JjPVwiaHR0cHM6Ly9wbGFjZWhvbGQuaXQvMTIwMHg0MDAvQUNDN0JGL2ZmZlwiPlxuXHRcdFx0PGRpdiBjbGFzcz1cIm8tc3dpcGVyX19wcmVsb2FkZXJcIj48L2Rpdj5cblx0XHRcdDxkaXYgY2xhc3M9XCJvLXN3aXBlcl9fY2FwdGlvblwiPlxuXHRcdFx0XHQ8cD5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldCwgY29uc2VjdGV0dXIgYWRpcGlzY2luZyBlbGl0LiBDdXJhYml0dXIgc2FnaXR0aXMgZWxlaWZlbmQgbWksIGluIGxhY2luaWEgZHVpIHJob25jdXMgaWQuIFNlZCBwb3N1ZXJlIGFsaXF1YW0gbWF1cmlzIGZlcm1lbnR1bSBtb2xsaXMuIDxhIGhyZWY9XCIjXCIgY2xhc3M9XCJvLXN3aXBlcl9fY2FwdGlvbi1saW5rXCI+TGVhcm4gTW9yZTwvYT48L3A+XG5cdFx0XHQ8L2Rpdj5cblx0XHQ8L2Rpdj5cblx0XHQ8ZGl2IGNsYXNzPVwiby1zd2lwZXJfX3NsaWRlICBvLXN3aXBlcl9fc2xpZGUtLWdyYWRpZW50XCI+XG5cdFx0XHQ8aW1nIGNsYXNzPVwiby1zd2lwZXJfX2ltYWdlLS1sYXp5XCIgZGF0YS1zcmM9XCJodHRwczovL3BsYWNlaG9sZC5pdC8xMjAweDQwMC9DMzcwNzAvZmZmXCI+XG5cdFx0XHQ8ZGl2IGNsYXNzPVwiby1zd2lwZXJfX3ByZWxvYWRlclwiPjwvZGl2PlxuXHRcdFx0PGRpdiBjbGFzcz1cIm8tc3dpcGVyX19jYXB0aW9uXCI+XG5cdFx0XHRcdDxwPkZ1c2NlIGFjIG51bmMgaW4ganVzdG8gZGljdHVtIGN1cnN1cy4gTWF1cmlzIHBvc3VlcmUsIG1hc3NhIHNvZGFsZXMgdml2ZXJyYSBoZW5kcmVyaXQsIHNlbSBudW5jIGRhcGlidXMgb2RpbywgYSB2ZXN0aWJ1bHVtIHRvcnRvciBmZWxpcyBlZ2V0IG5lcXVlLiBRdWlzcXVlIHBvc3VlcmUgbnVuYyB2ZWwgZWxlbWVudHVtIGNvbmd1ZS4gVmVzdGlidWx1bS48L3A+XG5cdFx0XHQ8L2Rpdj5cblx0XHQ8L2Rpdj5cblx0PC9kaXY+XG5cdDwhLS0gUHJldi9OZXh0IEFycm93cyAtLT5cblx0PGRpdiBjbGFzcz1cIm8tc3dpcGVyX19idXR0b24gIG8tc3dpcGVyX19idXR0b24tLXByZXZcIj5cblx0XHQ8c3ZnIGNsYXNzPVwiby1zd2lwZXJfX2ljb24gIGEtaWNvbiAgYS1pY29uLS1sYXJnZVwiPlxuXHRcdFx0PHVzZSB4bGluazpocmVmPVwiLi4vaWNvbnMvaWNvbnMuc3ZnI2Fycm93LWxlZnRcIiAvPlxuXHRcdDwvc3ZnPlxuXHQ8L2Rpdj5cblx0PGRpdiBjbGFzcz1cIm8tc3dpcGVyX19idXR0b24gIG8tc3dpcGVyX19idXR0b24tLW5leHRcIj5cblx0XHQ8c3ZnIGNsYXNzPVwiby1zd2lwZXJfX2ljb24gIGEtaWNvbiAgYS1pY29uLS1sYXJnZVwiPlxuXHRcdFx0PHVzZSB4bGluazpocmVmPVwiLi4vaWNvbnMvaWNvbnMuc3ZnI2Fycm93LXJpZ2h0XCIgLz5cblx0XHQ8L3N2Zz5cblx0PC9kaXY+XG48L2Rpdj5cbmBgYFxuXG4qL1xuLm8tc3dpcGVyIHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICAvKiBGaXggb2YgV2Via2l0IGZsaWNrZXJpbmcgKi9cbiAgei1pbmRleDogMTsgfVxuXG4uby1zd2lwZXItY29udGFpbmVyX19uby1mbGV4Ym94IC5vLXN3aXBlcl9fc2xpZGUge1xuICBmbG9hdDogbGVmdDsgfVxuXG4uby1zd2lwZXItY29udGFpbmVyLS12ZXJ0aWNhbCA+IC5vLXN3aXBlcl9fd3JhcHBlciB7XG4gIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gIC1tb3otYm94LW9yaWVudDogdmVydGljYWw7XG4gIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAtd2Via2l0LWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cblxuLm8tc3dpcGVyX193cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB6LWluZGV4OiAxO1xuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgZGlzcGxheTogLW1vei1ib3g7XG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogLXdlYmtpdC10cmFuc2Zvcm07XG4gIC1tb3otdHJhbnNpdGlvbi1wcm9wZXJ0eTogLW1vei10cmFuc2Zvcm07XG4gIC1vLXRyYW5zaXRpb24tcHJvcGVydHk6IC1vLXRyYW5zZm9ybTtcbiAgLW1zLXRyYW5zaXRpb24tcHJvcGVydHk6IC1tcy10cmFuc2Zvcm07XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgLW1vei1ib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7IH1cblxuLm8tc3dpcGVyLS1hbmRyb2lkIC5vLXN3aXBlcl9fc2xpZGUsXG4uby1zd2lwZXJfX3dyYXBwZXIge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAwLCAwKTtcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDBweCwgMCwgMCk7XG4gIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKDBweCwgMHB4KTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIDAsIDApOyB9XG5cbi5vLXN3aXBlci0tbXVsdGlyb3cgPiAuby1zd2lwZXJfX3dyYXBwZXIge1xuICAtd2Via2l0LWJveC1saW5lczogbXVsdGlwbGU7XG4gIC1tb3otYm94LWxpbmVzOiBtdWx0aXBsZTtcbiAgLW1zLWZsZXgtd3JhcDogd3JhcDtcbiAgLXdlYmtpdC1mbGV4LXdyYXA6IHdyYXA7XG4gIGZsZXgtd3JhcDogd3JhcDsgfVxuXG4uby1zd2lwZXItLWZyZWUtbW9kZSA+IC5vLXN3aXBlcl9fd3JhcHBlciB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICAtbW96LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgLW1zLXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgLW8tdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gIG1hcmdpbjogMCBhdXRvOyB9XG5cbi5vLXN3aXBlcl9fc2xpZGUge1xuICAtd2Via2l0LWZsZXgtc2hyaW5rOiAwO1xuICAtbXMtZmxleDogMCAwIGF1dG87XG4gIGZsZXgtc2hyaW5rOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi8qLm8tc3dpcGVyX19zbGlkZS0tZ3JhZGllbnQge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2JhKDAsMCwwLDApIDUwJSxyZ2JhKDAsMCwwLDAuNjUpIDEwMCUpO1xuXG4gICYgPiBpbWcge1xuXHQgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0ICB6LWluZGV4OiAtMTtcbiAgfVxufSovXG4uby1zd2lwZXJfX3NsaWRlLS1ncmFkaWVudDphZnRlciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMCwgMCwgMCwgMCkgNTAlLCByZ2JhKDAsIDAsIDAsIDAuNjUpIDEwMCUpO1xuICBib3R0b206IDA7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDsgfVxuXG4vKiBBdXRvIEhlaWdodCAqL1xuLm8tc3dpcGVyLS1hdXRvaGVpZ2h0LFxuLm8tc3dpcGVyLS1hdXRvaGVpZ2h0IC5vLXN3aXBlcl9fc2xpZGUge1xuICBoZWlnaHQ6IGF1dG87IH1cblxuLm8tc3dpcGVyLS1hdXRvaGVpZ2h0IC5vLXN3aXBlcl9fd3JhcHBlciB7XG4gIC13ZWJraXQtYm94LWFsaWduOiBzdGFydDtcbiAgLW1zLWZsZXgtYWxpZ246IHN0YXJ0O1xuICAtd2Via2l0LWFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiAtd2Via2l0LXRyYW5zZm9ybSwgaGVpZ2h0O1xuICAtbW96LXRyYW5zaXRpb24tcHJvcGVydHk6IC1tb3otdHJhbnNmb3JtO1xuICAtby10cmFuc2l0aW9uLXByb3BlcnR5OiAtby10cmFuc2Zvcm07XG4gIC1tcy10cmFuc2l0aW9uLXByb3BlcnR5OiAtbXMtdHJhbnNmb3JtO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIGhlaWdodDsgfVxuXG4vKiBhMTF5ICovXG4uby1zd2lwZXIgLm8tc3dpcGVyX19ub3RpZmljYXRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIG9wYWNpdHk6IDA7XG4gIHotaW5kZXg6IC0xMDAwOyB9XG5cbi8qIElFMTAgV2luZG93cyBQaG9uZSA4IEZpeGVzICovXG4uby1zd2lwZXItLXdwOC1ob3Jpem9udGFsIHtcbiAgLW1zLXRvdWNoLWFjdGlvbjogcGFuLXk7XG4gIHRvdWNoLWFjdGlvbjogcGFuLXk7IH1cblxuLm8tc3dpcGVyLS13cDgtdmVydGljYWwge1xuICAtbXMtdG91Y2gtYWN0aW9uOiBwYW4teDtcbiAgdG91Y2gtYWN0aW9uOiBwYW4teDsgfVxuXG4vKiBJbWFnZXMgKi9cbi5vLXN3aXBlcl9faW1hZ2Uge1xuICB3aWR0aDogMTAwJTsgfVxuXG4vKiBBcnJvd3MgKi9cbi5vLXN3aXBlcl9fYnV0dG9uIHtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbi5vLXN3aXBlcl9fYnV0dG9uLmlzLWRpc2FibGVkIHtcbiAgb3BhY2l0eTogMC4zNTtcbiAgY3Vyc29yOiBhdXRvO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuXG4uby1zd2lwZXJfX2J1dHRvbiAuby1zd2lwZXJfX2ljb24ge1xuICBjb2xvcjogI0ZGRjtcbiAgdHJhbnNpdGlvbjogZmlsbCAwLjFzOyB9XG5cbi5vLXN3aXBlcl9fYnV0dG9uOmhvdmVyIC5vLXN3aXBlcl9faWNvbiB7XG4gIGNvbG9yOiAjYTYxOTJlOyB9XG5cbi5vLXN3aXBlci0tbWVkaXVtIC5vLXN3aXBlcl9fYnV0dG9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICB6LWluZGV4OiAxOyB9XG5cbi5vLXN3aXBlci0tbWVkaXVtIC5vLXN3aXBlcl9fYnV0dG9uLS1wcmV2IHtcbiAgbGVmdDogLjc1ZW07IH1cblxuLm8tc3dpcGVyLS1tZWRpdW0gLm8tc3dpcGVyX19idXR0b24tLW5leHQge1xuICByaWdodDogLjc1ZW07IH1cblxuLm8tc3dpcGVyX19jYXB0aW9uLWNvbnRhaW5lci0tbWVkaXVtIC5vLXN3aXBlcl9fYnV0dG9uIC5vLXN3aXBlcl9faWNvbiB7XG4gIGNvbG9yOiAjYTYxOTJlOyB9XG5cbi8qICBDYXB0aW9uIENvbnRhaW5lciAqL1xuLm8tc3dpcGVyX19jYXB0aW9uLWNvbnRhaW5lciB7XG4gIG1hcmdpbi1ib3R0b206IDEuNWVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7IH1cblxuLm8tc3dpcGVyX19jYXB0aW9uLWNvbnRhaW5lci0tbWVkaXVtIHtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogM3B4O1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogM3B4O1xuICBib3JkZXItY29sb3I6ICNhZGFmYjE7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogMCAxcHggMXB4IDFweDsgfVxuXG4uby1zd2lwZXJfX2NhcHRpb24ge1xuICBjb2xvcjogI0ZGRjtcbiAgdGV4dC1zaGFkb3c6IDBweCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC41KTsgfVxuXG4uby1zd2lwZXItLW1lZGl1bSAuby1zd2lwZXJfX2NhcHRpb24ge1xuICBib3R0b206IDA7XG4gIGZvbnQtc2l6ZTogMC44NzVlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgcGFkZGluZzogMS41ZW0gM2VtIDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDhyZW0pIHtcbiAgICAuby1zd2lwZXItLW1lZGl1bSAuby1zd2lwZXJfX2NhcHRpb24ge1xuICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICBsaW5lLWhlaWdodDogMS41OyB9IH1cblxuLm8tc3dpcGVyX19jYXB0aW9uLWNvbnRhaW5lciAuby1zd2lwZXJfX2NhcHRpb24ge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMyk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHdoaXRlO1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIG1hcmdpbi1ib3R0b206IDAuNWVtO1xuICBtYXJnaW4tdG9wOiAwLjVlbTtcbiAgcGFkZGluZzogMWVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4cmVtKSB7XG4gICAgLm8tc3dpcGVyX19jYXB0aW9uLWNvbnRhaW5lciAuby1zd2lwZXJfX2NhcHRpb24ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMWVtO1xuICAgICAgbWFyZ2luLXRvcDogMWVtOyB9IH1cblxuLm8tc3dpcGVyX19jYXB0aW9uLWhlYWRsaW5lIHtcbiAgY29sb3I6IHdoaXRlO1xuICBmb250LXNpemU6IDEuMjVlbTtcbiAgbGV0dGVyLXNwYWNpbmc6IC4wNzVlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMTI1O1xuICBtYXJnaW46IDAgMCAwLjI1ZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDMwcmVtKSB7XG4gICAgLm8tc3dpcGVyX19jYXB0aW9uLWhlYWRsaW5lIHtcbiAgICAgIGZvbnQtc2l6ZTogMS41ZW07IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDhyZW0pIHtcbiAgICAuby1zd2lwZXJfX2NhcHRpb24taGVhZGxpbmUge1xuICAgICAgZm9udC1zaXplOiAyZW07IH0gfVxuXG4uby1zd2lwZXJfX2NhcHRpb24tbGluayB7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6IHdoaXRlO1xuICBjb2xvcjogd2hpdGU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cblxuLyogUGFnaW5hdGlvbiBTdHlsZXMgKi9cbi5vLXN3aXBlcl9fcGFnaW5hdGlvbiB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAzMDBtcztcbiAgLW1vei10cmFuc2l0aW9uOiAzMDBtcztcbiAgLW8tdHJhbnNpdGlvbjogMzAwbXM7XG4gIHRyYW5zaXRpb246IDMwMG1zO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB6LWluZGV4OiAxMDsgfVxuXG4uby1zd2lwZXJfX3BhZ2luYXRpb24tLW1lZGl1bSB7XG4gIGJvdHRvbTogMWVtO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAxZW07IH1cblxuLm8tc3dpcGVyX19wYWdpbmF0aW9uLm8tc3dpcGVyX19wYWdpbmF0aW9uLWhpZGRlbiB7XG4gIG9wYWNpdHk6IDA7IH1cblxuLyogQ29tbW9uIFN0eWxlcyAqL1xuLm8tc3dpcGVyX19wYWdpbmF0aW9uLWZyYWN0aW9uLFxuLm8tc3dpcGVyX19wYWdpbmF0aW9uLWN1c3RvbSxcbi5vLXN3aXBlci0taG9yaXpvbnRhbCA+IC5vLXN3aXBlcl9fcGFnaW5hdGlvbi1idWxsZXRzIHtcbiAgYm90dG9tOiAxMHB4O1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTsgfVxuXG4vKiBCdWxsZXRzICovXG4uby1zd2lwZXJfX3BhZ2luYXRpb24tYnVsbGV0IHtcbiAgd2lkdGg6IDE0cHg7XG4gIGhlaWdodDogMTRweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICBib3JkZXI6IDFweCBzb2xpZCB3aGl0ZTtcbiAgbWFyZ2luOiAwIDdweDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDhyZW0pIHtcbiAgICAuby1zd2lwZXJfX3BhZ2luYXRpb24tYnVsbGV0IHtcbiAgICAgIGhlaWdodDogMjBweDtcbiAgICAgIG1hcmdpbjogMCAxMHB4O1xuICAgICAgd2lkdGg6IDIwcHg7IH0gfVxuXG5idXR0b24uby1zd2lwZXJfX3BhZ2luYXRpb24tYnVsbGV0IHtcbiAgYm9yZGVyOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgLW1zLWFwcGVhcmFuY2U6IG5vbmU7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgYXBwZWFyYW5jZTogbm9uZTsgfVxuXG4uby1zd2lwZXJfX3BhZ2luYXRpb24tY2xpY2thYmxlIC5vLXN3aXBlcl9fcGFnaW5hdGlvbi1idWxsZXQge1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cblxuLm8tc3dpcGVyX19wYWdpbmF0aW9uLS13aGl0ZSAuby1zd2lwZXJfX3BhZ2luYXRpb24tYnVsbGV0IHtcbiAgYmFja2dyb3VuZDogI2ZmZjsgfVxuXG4uby1zd2lwZXJfX3BhZ2luYXRpb24tYnVsbGV0LmlzLWFjdGl2ZSB7XG4gIG9wYWNpdHk6IDE7XG4gIGJhY2tncm91bmQ6IHdoaXRlOyB9XG5cbi5vLXN3aXBlcl9fcGFnaW5hdGlvbi0td2hpdGUgLm8tc3dpcGVyX19wYWdpbmF0aW9uLWJ1bGxldC5pcy1hY3RpdmUge1xuICBiYWNrZ3JvdW5kOiAjZmZmOyB9XG5cbi5vLXN3aXBlcl9fcGFnaW5hdGlvbi0tYmxhY2sgLm8tc3dpcGVyX19wYWdpbmF0aW9uLWJ1bGxldC5pcy1hY3RpdmUge1xuICBiYWNrZ3JvdW5kOiAjMDAwOyB9XG5cbi5vLXN3aXBlci0tdmVydGljYWwgPiAuby1zd2lwZXJfX3BhZ2luYXRpb24tYnVsbGV0cyB7XG4gIHJpZ2h0OiAxMHB4O1xuICB0b3A6IDUwJTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDBweCwgLTUwJSwgMCk7XG4gIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIC01MCUsIDApO1xuICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwcHgsIC01MCUpO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIC01MCUsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDBweCwgLTUwJSwgMCk7IH1cblxuLm8tc3dpcGVyLS12ZXJ0aWNhbCA+IC5vLXN3aXBlcl9fcGFnaW5hdGlvbi1idWxsZXRzIC5vLXN3aXBlcl9fcGFnaW5hdGlvbi1idWxsZXQge1xuICBtYXJnaW46IDVweCAwO1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4uby1zd2lwZXItLWhvcml6b250YWwgPiAuby1zd2lwZXJfX3BhZ2luYXRpb24tYnVsbGV0cyAuby1zd2lwZXJfX3BhZ2luYXRpb24tYnVsbGV0IHtcbiAgbWFyZ2luOiAwIDVweDsgfVxuXG4vKiBQcm9ncmVzcyAqL1xuLm8tc3dpcGVyX19wYWdpbmF0aW9uLXByb2dyZXNzIHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjI1KTtcbiAgcG9zaXRpb246IGFic29sdXRlOyB9XG5cbi5vLXN3aXBlcl9fcGFnaW5hdGlvbi1wcm9ncmVzcyAuby1zd2lwZXJfX3BhZ2luYXRpb24tcHJvZ3Jlc3NiYXIge1xuICBiYWNrZ3JvdW5kOiAjMDA3YWZmO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDApO1xuICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgLW8tdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IHRvcDtcbiAgLW1vei10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IHRvcDtcbiAgLW1zLXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgdG9wO1xuICAtby10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IHRvcDtcbiAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCB0b3A7IH1cblxuLm8tc3dpcGVyLS1ob3Jpem9udGFsID4gLm8tc3dpcGVyX19wYWdpbmF0aW9uLXByb2dyZXNzIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNHB4O1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7IH1cblxuLm8tc3dpcGVyLS12ZXJ0aWNhbCA+IC5vLXN3aXBlcl9fcGFnaW5hdGlvbi1wcm9ncmVzcyB7XG4gIHdpZHRoOiA0cHg7XG4gIGhlaWdodDogMTAwJTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwOyB9XG5cbi5vLXN3aXBlcl9fcGFnaW5hdGlvbi1wcm9ncmVzcy5vLXN3aXBlcl9fcGFnaW5hdGlvbi13aGl0ZSB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTsgfVxuXG4uby1zd2lwZXJfX3BhZ2luYXRpb24tcHJvZ3Jlc3Muby1zd2lwZXJfX3BhZ2luYXRpb24td2hpdGUgLm8tc3dpcGVyX19wYWdpbmF0aW9uLXByb2dyZXNzYmFyIHtcbiAgYmFja2dyb3VuZDogI2ZmZjsgfVxuXG4uby1zd2lwZXJfX3BhZ2luYXRpb24tcHJvZ3Jlc3Muby1zd2lwZXJfX3BhZ2luYXRpb24tYmxhY2sgLm8tc3dpcGVyX19wYWdpbmF0aW9uLXByb2dyZXNzYmFyIHtcbiAgYmFja2dyb3VuZDogIzAwMDsgfVxuXG4vKiAzRCBDb250YWluZXIgKi9cbi5zd2lwZXItY29udGFpbmVyLTNkIHtcbiAgLXdlYmtpdC1wZXJzcGVjdGl2ZTogMTIwMHB4O1xuICAtbW96LXBlcnNwZWN0aXZlOiAxMjAwcHg7XG4gIC1vLXBlcnNwZWN0aXZlOiAxMjAwcHg7XG4gIHBlcnNwZWN0aXZlOiAxMjAwcHg7IH1cblxuLnN3aXBlci1jb250YWluZXItM2QgLm8tc3dpcGVyX193cmFwcGVyLFxuLnN3aXBlci1jb250YWluZXItM2QgLm8tc3dpcGVyX19zbGlkZSxcbi5zd2lwZXItY29udGFpbmVyLTNkIC5vLXN3aXBlcl9fc2xpZGUtc2hhZG93LWxlZnQsXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuby1zd2lwZXJfX3NsaWRlLXNoYWRvdy1yaWdodCxcbi5zd2lwZXItY29udGFpbmVyLTNkIC5vLXN3aXBlcl9fc2xpZGUtc2hhZG93LXRvcCxcbi5zd2lwZXItY29udGFpbmVyLTNkIC5vLXN3aXBlcl9fc2xpZGUtc2hhZG93LWJvdHRvbSxcbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItY3ViZS1zaGFkb3cge1xuICAtd2Via2l0LXRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XG4gIC1tb3otdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbiAgLW1zLXRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XG4gIHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7IH1cblxuLnN3aXBlci1jb250YWluZXItM2QgLm8tc3dpcGVyX19zbGlkZS1zaGFkb3ctbGVmdCxcbi5zd2lwZXItY29udGFpbmVyLTNkIC5vLXN3aXBlcl9fc2xpZGUtc2hhZG93LXJpZ2h0LFxuLnN3aXBlci1jb250YWluZXItM2QgLm8tc3dpcGVyX19zbGlkZS1zaGFkb3ctdG9wLFxuLnN3aXBlci1jb250YWluZXItM2QgLm8tc3dpcGVyX19zbGlkZS1zaGFkb3ctYm90dG9tIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB6LWluZGV4OiAxMDsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuby1zd2lwZXJfX3NsaWRlLXNoYWRvdy1sZWZ0IHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCByaWdodCB0b3AsIGZyb20ocmdiYSgwLCAwLCAwLCAwLjUpKSwgdG8ocmdiYSgwLCAwLCAwLCAwKSkpO1xuICAvKiBTYWZhcmkgNCssIENocm9tZSAqL1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChyaWdodCwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbiAgLyogQ2hyb21lIDEwKywgU2FmYXJpIDUuMSssIGlPUyA1KyAqL1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtbW96LWxpbmVhci1ncmFkaWVudChyaWdodCwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbiAgLyogRmlyZWZveCAzLjYtMTUgKi9cbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KHJpZ2h0LCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpO1xuICAvKiBPcGVyYSAxMS4xMC0xMi4wMCAqL1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gbGVmdCwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbiAgLyogRmlyZWZveCAxNissIElFMTAsIE9wZXJhIDEyLjUwKyAqLyB9XG5cbi5zd2lwZXItY29udGFpbmVyLTNkIC5vLXN3aXBlcl9fc2xpZGUtc2hhZG93LXJpZ2h0IHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIHJpZ2h0IHRvcCwgbGVmdCB0b3AsIGZyb20ocmdiYSgwLCAwLCAwLCAwLjUpKSwgdG8ocmdiYSgwLCAwLCAwLCAwKSkpO1xuICAvKiBTYWZhcmkgNCssIENocm9tZSAqL1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpO1xuICAvKiBDaHJvbWUgMTArLCBTYWZhcmkgNS4xKywgaU9TIDUrICovXG4gIGJhY2tncm91bmQtaW1hZ2U6IC1tb3otbGluZWFyLWdyYWRpZW50KGxlZnQsIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XG4gIC8qIEZpcmVmb3ggMy42LTE1ICovXG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudChsZWZ0LCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpO1xuICAvKiBPcGVyYSAxMS4xMC0xMi4wMCAqL1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XG4gIC8qIEZpcmVmb3ggMTYrLCBJRTEwLCBPcGVyYSAxMi41MCsgKi8gfVxuXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuby1zd2lwZXJfX3NsaWRlLXNoYWRvdy10b3Age1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIGxlZnQgYm90dG9tLCBmcm9tKHJnYmEoMCwgMCwgMCwgMC41KSksIHRvKHJnYmEoMCwgMCwgMCwgMCkpKTtcbiAgLyogU2FmYXJpIDQrLCBDaHJvbWUgKi9cbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoYm90dG9tLCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpO1xuICAvKiBDaHJvbWUgMTArLCBTYWZhcmkgNS4xKywgaU9TIDUrICovXG4gIGJhY2tncm91bmQtaW1hZ2U6IC1tb3otbGluZWFyLWdyYWRpZW50KGJvdHRvbSwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbiAgLyogRmlyZWZveCAzLjYtMTUgKi9cbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KGJvdHRvbSwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbiAgLyogT3BlcmEgMTEuMTAtMTIuMDAgKi9cbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHRvcCwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbiAgLyogRmlyZWZveCAxNissIElFMTAsIE9wZXJhIDEyLjUwKyAqLyB9XG5cbi5zd2lwZXItY29udGFpbmVyLTNkIC5vLXN3aXBlcl9fc2xpZGUtc2hhZG93LWJvdHRvbSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IGJvdHRvbSwgbGVmdCB0b3AsIGZyb20ocmdiYSgwLCAwLCAwLCAwLjUpKSwgdG8ocmdiYSgwLCAwLCAwLCAwKSkpO1xuICAvKiBTYWZhcmkgNCssIENocm9tZSAqL1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XG4gIC8qIENocm9tZSAxMCssIFNhZmFyaSA1LjErLCBpT1MgNSsgKi9cbiAgYmFja2dyb3VuZC1pbWFnZTogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpO1xuICAvKiBGaXJlZm94IDMuNi0xNSAqL1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpO1xuICAvKiBPcGVyYSAxMS4xMC0xMi4wMCAqL1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpO1xuICAvKiBGaXJlZm94IDE2KywgSUUxMCwgT3BlcmEgMTIuNTArICovIH1cblxuLyogQ292ZXJmbG93ICovXG4uc3dpcGVyLWNvbnRhaW5lci1jb3ZlcmZsb3cgLm8tc3dpcGVyX193cmFwcGVyLFxuLnN3aXBlci1jb250YWluZXItZmxpcCAuby1zd2lwZXJfX3dyYXBwZXIge1xuICAvKiBXaW5kb3dzIDggSUUgMTAgZml4ICovXG4gIC1tcy1wZXJzcGVjdGl2ZTogMTIwMHB4OyB9XG5cbi8qIEN1YmUgKyBGbGlwICovXG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlLFxuLnN3aXBlci1jb250YWluZXItZmxpcCB7XG4gIG92ZXJmbG93OiB2aXNpYmxlOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLm8tc3dpcGVyX19zbGlkZSxcbi5zd2lwZXItY29udGFpbmVyLWZsaXAgLm8tc3dpcGVyX19zbGlkZSB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgLW1vei1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIC1tcy1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgei1pbmRleDogMTsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIC5vLXN3aXBlcl9fc2xpZGUgLm8tc3dpcGVyX19zbGlkZSxcbi5zd2lwZXItY29udGFpbmVyLWZsaXAgLm8tc3dpcGVyX19zbGlkZSAuby1zd2lwZXJfX3NsaWRlIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cblxuLnN3aXBlci1jb250YWluZXItY3ViZSAuby1zd2lwZXJfX3NsaWRlLmlzLWFjdGl2ZSxcbi5zd2lwZXItY29udGFpbmVyLWZsaXAgLm8tc3dpcGVyX19zbGlkZS5pcy1hY3RpdmUsXG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIC5vLXN3aXBlcl9fc2xpZGUuaXMtYWN0aXZlIC5vLXN3aXBlcl9fc2xpZGUuaXMtYWN0aXZlLFxuLnN3aXBlci1jb250YWluZXItZmxpcCAuby1zd2lwZXJfX3NsaWRlLmlzLWFjdGl2ZSAuby1zd2lwZXJfX3NsaWRlLmlzLWFjdGl2ZSB7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLm8tc3dpcGVyX19zbGlkZS1zaGFkb3ctdG9wLFxuLnN3aXBlci1jb250YWluZXItZmxpcCAuby1zd2lwZXJfX3NsaWRlLXNoYWRvdy10b3AsXG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIC5vLXN3aXBlcl9fc2xpZGUtc2hhZG93LWJvdHRvbSxcbi5zd2lwZXItY29udGFpbmVyLWZsaXAgLm8tc3dpcGVyX19zbGlkZS1zaGFkb3ctYm90dG9tLFxuLnN3aXBlci1jb250YWluZXItY3ViZSAuby1zd2lwZXJfX3NsaWRlLXNoYWRvdy1sZWZ0LFxuLnN3aXBlci1jb250YWluZXItZmxpcCAuby1zd2lwZXJfX3NsaWRlLXNoYWRvdy1sZWZ0LFxuLnN3aXBlci1jb250YWluZXItY3ViZSAuby1zd2lwZXJfX3NsaWRlLXNoYWRvdy1yaWdodCxcbi5zd2lwZXItY29udGFpbmVyLWZsaXAgLm8tc3dpcGVyX19zbGlkZS1zaGFkb3ctcmlnaHQge1xuICB6LWluZGV4OiAwO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgLW1vei1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIC1tcy1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4vKiBDdWJlICovXG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIC5vLXN3aXBlcl9fc2xpZGUge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xuICAtbW96LXRyYW5zZm9ybS1vcmlnaW46IDAgMDtcbiAgLW1zLXRyYW5zZm9ybS1vcmlnaW46IDAgMDtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLm8tc3dpcGVyX19zbGlkZS5pcy1hY3RpdmUsXG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIC5vLXN3aXBlcl9fc2xpZGUtbmV4dCxcbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLm8tc3dpcGVyX19zbGlkZS1wcmV2LFxuLnN3aXBlci1jb250YWluZXItY3ViZSAuby1zd2lwZXJfX3NsaWRlLW5leHQgKyAuby1zd2lwZXJfX3NsaWRlIHtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gIHZpc2liaWxpdHk6IHZpc2libGU7IH1cblxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLWN1YmUtc2hhZG93IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDBweDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZDogIzAwMDtcbiAgb3BhY2l0eTogMC42O1xuICAtd2Via2l0LWZpbHRlcjogYmx1cig1MHB4KTtcbiAgZmlsdGVyOiBibHVyKDUwcHgpO1xuICB6LWluZGV4OiAwOyB9XG5cbi8qIEZhZGUgKi9cbi5zd2lwZXItY29udGFpbmVyLWZhZGUuc3dpcGVyLWNvbnRhaW5lci1mcmVlLW1vZGUgLm8tc3dpcGVyX19zbGlkZSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICAtbW96LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgLW1zLXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgLW8tdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7IH1cblxuLnN3aXBlci1jb250YWluZXItZmFkZSAuby1zd2lwZXJfX3NsaWRlIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcbiAgLW1vei10cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xuICAtby10cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5OyB9XG5cbi5zd2lwZXItY29udGFpbmVyLWZhZGUgLm8tc3dpcGVyX19zbGlkZSAuby1zd2lwZXJfX3NsaWRlIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cblxuLnN3aXBlci1jb250YWluZXItZmFkZSAuby1zd2lwZXJfX3NsaWRlLmlzLWFjdGl2ZSxcbi5zd2lwZXItY29udGFpbmVyLWZhZGUgLm8tc3dpcGVyX19zbGlkZS5pcy1hY3RpdmUgLm8tc3dpcGVyX19zbGlkZS5pcy1hY3RpdmUge1xuICBwb2ludGVyLWV2ZW50czogYXV0bzsgfVxuXG4uc3dpcGVyLXpvb20tY29udGFpbmVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gIGRpc3BsYXk6IC1tb3otYm94O1xuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICBkaXNwbGF5OiBmbGV4O1xuICAtd2Via2l0LWJveC1wYWNrOiBjZW50ZXI7XG4gIC1tb3otYm94LXBhY2s6IGNlbnRlcjtcbiAgLW1zLWZsZXgtcGFjazogY2VudGVyO1xuICAtd2Via2l0LWp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcbiAgLW1vei1ib3gtYWxpZ246IGNlbnRlcjtcbiAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcbiAgLXdlYmtpdC1hbGlnbi1pdGVtczogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLnN3aXBlci16b29tLWNvbnRhaW5lciA+IGltZyxcbi5zd2lwZXItem9vbS1jb250YWluZXIgPiBzdmcsXG4uc3dpcGVyLXpvb20tY29udGFpbmVyID4gY2FudmFzIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuICBvYmplY3QtZml0OiBjb250YWluOyB9XG5cbi8qIFNjcm9sbGJhciAqL1xuLm8tc3dpcGVyX19zY3JvbGxiYXIge1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC1tcy10b3VjaC1hY3Rpb246IG5vbmU7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4xKTsgfVxuXG4uby1zd2lwZXItLWhvcml6b250YWwgPiAuby1zd2lwZXJfX3Njcm9sbGJhciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMSU7XG4gIGJvdHRvbTogM3B4O1xuICB6LWluZGV4OiA1MDtcbiAgaGVpZ2h0OiA1cHg7XG4gIHdpZHRoOiA5OCU7IH1cblxuLm8tc3dpcGVyLS12ZXJ0aWNhbCA+IC5vLXN3aXBlcl9fc2Nyb2xsYmFyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogM3B4O1xuICB0b3A6IDElO1xuICB6LWluZGV4OiA1MDtcbiAgd2lkdGg6IDVweDtcbiAgaGVpZ2h0OiA5OCU7IH1cblxuLm8tc3dpcGVyX19zY3JvbGxiYXItLWRyYWcge1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgbGVmdDogMDtcbiAgdG9wOiAwOyB9XG5cbi5vLXN3aXBlcl9fc2Nyb2xsYmFyLS1jdXJzb3ItZHJhZyB7XG4gIGN1cnNvcjogbW92ZTsgfVxuXG4vKiBQcmVsb2FkZXIgKi9cbi5vLXN3aXBlcl9fcHJlbG9hZGVyIHtcbiAgd2lkdGg6IDQycHg7XG4gIGhlaWdodDogNDJweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiA1MCU7XG4gIHRvcDogNTAlO1xuICBtYXJnaW4tbGVmdDogLTIxcHg7XG4gIG1hcmdpbi10b3A6IC0yMXB4O1xuICB6LWluZGV4OiAxMDtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiA1MCU7XG4gIC1tb3otdHJhbnNmb3JtLW9yaWdpbjogNTAlO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCU7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBzd2lwZXItcHJlbG9hZGVyLXNwaW4gMXMgc3RlcHMoMTIsIGVuZCkgaW5maW5pdGU7XG4gIC1tb3otYW5pbWF0aW9uOiBzd2lwZXItcHJlbG9hZGVyLXNwaW4gMXMgc3RlcHMoMTIsIGVuZCkgaW5maW5pdGU7XG4gIGFuaW1hdGlvbjogc3dpcGVyLXByZWxvYWRlci1zcGluIDFzIHN0ZXBzKDEyLCBlbmQpIGluZmluaXRlOyB9XG5cbi5vLXN3aXBlcl9fcHJlbG9hZGVyOmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyUyMHZpZXdCb3glM0QnMCUyMDAlMjAxMjAlMjAxMjAnJTIweG1sbnMlM0QnaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJyUyMHhtbG5zJTNBeGxpbmslM0QnaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYxOTk5JTJGeGxpbmsnJTNFJTNDZGVmcyUzRSUzQ2xpbmUlMjBpZCUzRCdsJyUyMHgxJTNEJzYwJyUyMHgyJTNEJzYwJyUyMHkxJTNEJzcnJTIweTIlM0QnMjcnJTIwc3Ryb2tlJTNEJyUyMzZjNmM2YyclMjBzdHJva2Utd2lkdGglM0QnMTEnJTIwc3Ryb2tlLWxpbmVjYXAlM0Qncm91bmQnJTJGJTNFJTNDJTJGZGVmcyUzRSUzQ2clM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4yNyclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4yNyclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDMwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMjcnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSg2MCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjI3JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoOTAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4yNyclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDEyMCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjI3JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMTUwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMzcnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgxODAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy40NiclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDIxMCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjU2JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMjQwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuNjYnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgyNzAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy43NSclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDMwMCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjg1JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMzMwJTIwNjAlMkM2MCknJTJGJTNFJTNDJTJGZyUzRSUzQyUyRnN2ZyUzRVwiKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlO1xuICAtd2Via2l0LWJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OyB9XG5cbi5vLXN3aXBlcl9fcHJlbG9hZGVyLS13aGl0ZTphZnRlciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyUyMHZpZXdCb3glM0QnMCUyMDAlMjAxMjAlMjAxMjAnJTIweG1sbnMlM0QnaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJyUyMHhtbG5zJTNBeGxpbmslM0QnaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYxOTk5JTJGeGxpbmsnJTNFJTNDZGVmcyUzRSUzQ2xpbmUlMjBpZCUzRCdsJyUyMHgxJTNEJzYwJyUyMHgyJTNEJzYwJyUyMHkxJTNEJzcnJTIweTIlM0QnMjcnJTIwc3Ryb2tlJTNEJyUyM2ZmZiclMjBzdHJva2Utd2lkdGglM0QnMTEnJTIwc3Ryb2tlLWxpbmVjYXAlM0Qncm91bmQnJTJGJTNFJTNDJTJGZGVmcyUzRSUzQ2clM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4yNyclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4yNyclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDMwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMjcnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSg2MCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjI3JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoOTAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4yNyclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDEyMCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjI3JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMTUwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMzcnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgxODAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy40NiclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDIxMCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjU2JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMjQwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuNjYnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgyNzAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy43NSclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDMwMCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjg1JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMzMwJTIwNjAlMkM2MCknJTJGJTNFJTNDJTJGZyUzRSUzQyUyRnN2ZyUzRVwiKTsgfVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgc3dpcGVyLXByZWxvYWRlci1zcGluIHtcbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB9IH1cblxuQGtleWZyYW1lcyBzd2lwZXItcHJlbG9hZGVyLXNwaW4ge1xuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB9IH1cblxuLypkb2Ncbi0tLVxudGl0bGU6IFRhYnNcbm5hbWU6IHRhYnNcbmNhdGVnb3J5OiBPcmdhbmlzbXNcbi0tLVxuXG5UYWJiZWQgY29udGVudCBpcyB1c2VmdWwgZm9yIHRvZ2dsaW5nIGJldHdlZW4gY29udGVudCB3aXRob3V0IGp1bXBpbmcgYXJvdW5kIHRoZSBwYWdlIG9yIGFjcm9zcyBwYWdlcy5cblxuVGFiIGhlYWRpbmdzIGFyZSBjcmVhdGVkIHdpdGggdGhlIFwiYnV0dG9uLWdyb3VwXCIgb3JnYW5pc20uIE1vZGlmaWVycyBjYW4gYmUgYWRkZWQsIHN1Y2ggYXMgYG0tYnV0dG9uLWdyb3VwLS1lcXVhbGAgZm9yIGVxdWFsIHdpZHRoIHRhYiBoZWFkaW5ncy4gU2ltaWxhcmx5LCBpY29ucyBjYW4gYmUgYWRkZWQgdG8gdGFiIGhlYWRpbmdzLiBTZWUgW3RoZSBidXR0b24tZ3JvdXAgZG9jdW1lbnRhdGlvbl1bYnV0dG9uLWdyb3Vwc10gZm9yIG1vcmUgaW5mb3JtYXRpb24uXG5cbioqTm90ZToqKiBUYWJzIGFyZSBub3QgeWV0IGZ1bmN0aW9uYWwuXG5cbmBgYGh0bWxfZXhhbXBsZVxuPGRpdiBjbGFzcz1cImpzLXRhYnMgIG8tdGFic1wiPlxuXHQ8dWwgY2xhc3M9XCJvLXRhYnNfX2hlYWRpbmdzICBtLWJ1dHRvbi1ncm91cFwiPlxuXHRcdDxsaSBjbGFzcz1cIm8tdGFic19faGVhZGluZyAgby10YWJzX19oZWFkaW5nLS1hY3RpdmUgIG0tYnV0dG9uLWdyb3VwX19pdGVtXCI+XG5cdFx0XHQ8YSBjbGFzcz1cIm0tYnV0dG9uLWdyb3VwX19saW5rXCIgaHJlZj1cIiN0YWIxXCI+XG5cdFx0XHRcdEJ1aWxkaW5nXG5cdFx0XHQ8L2E+XG5cdFx0PC9saT5cblx0XHQ8bGkgY2xhc3M9XCJvLXRhYnNfX2hlYWRpbmcgIG0tYnV0dG9uLWdyb3VwX19pdGVtXCI+XG5cdFx0XHQ8YSBjbGFzcz1cIm0tYnV0dG9uLWdyb3VwX19saW5rXCIgaHJlZj1cIiN0YWIyXCI+XG5cdFx0XHRcdFVyZ2VudCBDYXJlXG5cdFx0XHQ8L2E+XG5cdFx0PC9saT5cblx0XHQ8bGkgY2xhc3M9XCJvLXRhYnNfX2hlYWRpbmcgIG0tYnV0dG9uLWdyb3VwX19pdGVtXCI+XG5cdFx0XHQ8YSBjbGFzcz1cIm0tYnV0dG9uLWdyb3VwX19saW5rXCIgaHJlZj1cIiN0YWIzXCI+XG5cdFx0XHRcdFBoYXJtYWN5XG5cdFx0XHQ8L2E+XG5cdFx0PC9saT5cblx0XHQ8bGkgY2xhc3M9XCJvLXRhYnNfX2hlYWRpbmcgIG0tYnV0dG9uLWdyb3VwX19pdGVtXCI+XG5cdFx0XHQ8YSBjbGFzcz1cIm0tYnV0dG9uLWdyb3VwX19saW5rXCIgaHJlZj1cIiN0YWI0XCI+XG5cdFx0XHRcdENsaW5pY1xuXHRcdFx0PC9hPlxuXHRcdDwvbGk+XG5cdDwvdWw+XG5cdDxkaXYgY2xhc3M9XCJvLXRhYnNfX3BhbmVsICBvLXRhYnNfX3BhbmVsLS1hY3RpdmVcIiBpZD1cInRhYjFcIj5cblx0XHQ8cD5QYW5lbCAxPC9wPlxuXHQ8L2Rpdj5cblx0PGRpdiBjbGFzcz1cIm8tdGFic19fcGFuZWxcIiBpZD1cInRhYjJcIj5cblx0XHQ8cD5QYW5lbCAyPC9wPlxuXHQ8L2Rpdj5cblx0PGRpdiBjbGFzcz1cIm8tdGFic19fcGFuZWxcIiBpZD1cInRhYjNcIj5cblx0XHQ8cD5QYW5lbCAzPC9wPlxuXHQ8L2Rpdj5cblx0PGRpdiBjbGFzcz1cIm8tdGFic19fcGFuZWxcIiBpZD1cInRhYjRcIj5cblx0XHQ8cD5QYW5lbCA0PC9wPlxuXHQ8L2Rpdj5cbjwvZGl2PlxuYGBgXG5cbiovXG4uby10YWJzIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLm8tdGFic19faGVhZGluZ3Mge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIG1hcmdpbjogMDsgfVxuXG4uby10YWJzX19oZWFkaW5nIC5tLWJ1dHRvbi1ncm91cF9fbGluayB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGMkYyRjI7IH1cblxuLm8tdGFic19faGVhZGluZyAubS1idXR0b24tZ3JvdXBfX2ljb24ge1xuICBmaWxsOiBjdXJyZW50Q29sb3I7IH1cblxuLm8tdGFic19faGVhZGluZy0tYWN0aXZlIC5tLWJ1dHRvbi1ncm91cF9fbGluayB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkY7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6ICNGRkY7XG4gIGNvbG9yOiAjYTYxOTJlOyB9XG5cbi5vLXRhYnNfX2hlYWRpbmctLWFjdGl2ZSAubS1idXR0b24tZ3JvdXBfX2ljb24ge1xuICBmaWxsOiBjdXJyZW50Q29sb3I7IH1cblxuLm8tdGFic19fbG9jYXRpb25zIC5tLWJ1dHRvbi1ncm91cF9fbGluay5pcy1hY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjJGMkYyO1xuICBjb2xvcjogI2E2MTkyZTsgfVxuXG4uby10YWJzX19sb2NhdGlvbnMgLm0tYnV0dG9uLWdyb3VwX19pY29uIHtcbiAgZmlsbDogY3VycmVudENvbG9yOyB9XG5cbi5vLXRhYnNfX2hlYWRpbmctLWRpc2FibGVkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogaW5pdGlhbDtcbiAgY29sb3I6ICM3OTdiN2Y7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cblxuLm8tdGFic19fcGFuZWwge1xuICBib3JkZXItY29sb3I6ICM0MTQwNDI7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogMCAxcHggMXB4IDFweDsgfVxuXG4uby10YWJzX19wYW5lbCB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBhZGRpbmc6IDEuNWVtOyB9XG4gIC5vLXRhYnNfX3BhbmVsID4gKjpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5vLXRhYnNfX3BhbmVsLS1hY3RpdmUge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4vKmRvY1xuLS0tXG50aXRsZTogQmlnIExpc3RzXG5uYW1lOiBiaWctbGlzdHNcbmNhdGVnb3J5OiBNb2xlY3VsZXNcbi0tLVxuKkxhc3QgVXBkYXRlZDogRGVjZW1iZXIgMywgMjAxOCpcblxuQmlnIGxpc3RzIGFyZSBmb3IgbG9uZyBsaXN0cywgbWFpbmx5IGxpc3RzIG9mIGxpbmtzLCB0aGF0IHdvdWxkIG90aGVyd2lzZSBsb29rIHBsYWluIGFuZCBib3JpbmcuXG5cbiMjIFVzZVxuXG5HZW5lcmFsbHksIGJpZyBsaXN0cyBhcmUgb25seSB1c2VkIG9uIHBhZ2VzIHdoZXJlIHRoZSBsaXN0IGlzIHRoZSBvbmx5IGNvbnRlbnQgb24gdGhlIHBhZ2UsIGxpa2Ugb24gY29uZGl0aW9ucy90cmVhdG1lbnRzIGxpc3RpbmcgcGFnZXMuIFRoZXJlZm9yZSwgYmlnIGxpc3RzIHR5cGljYWxseSBpbmNsdWRlIGEgZmlsdGVyIGJveCBhdCB0aGUgdG9wLlxuXG5BbGwgbGlzdCBpdGVtcyB3aGVuIGEgc3RhbmQtYWxvbmUgaXRlbSwgb3IgYSBoZWFkaW5nIGZvciBhIHN1Yi1saXN0LCBvciBhcyBhIHN1Yi1saXN0IGl0ZW0gY2FuIGluY2x1ZGUgYW4gYW5jaG9yLCBidXQgdGhpcyBpc24ndCByZXF1aXJlZC4gKElmIGl0J3Mgbm90IGxpbmtlZCwgaXQgd2lsbCBub3QgYmUgdW5kZXJsaW5lZC4pXG5cbiMjIENvZGVcblxuYGBgaHRtbF9leGFtcGxlX3RhYmxlXG48dWwgY2xhc3M9XCJtLWJpZy1saXN0XCI+XG5cdDxsaSBjbGFzcz1cIm0tYmlnLWxpc3RfX2l0ZW1cIj48YSBjbGFzcz1cIm0tYmlnLWxpc3RfX2xpbmtcIiBocmVmPVwiI1wiPkl0ZW0gMTwvYT48L2xpPlx0XHRcdFxuXHQ8bGkgY2xhc3M9XCJtLWJpZy1saXN0X19pdGVtXCI+PHNwYW4gY2xhc3M9XCJtLWJpZy1saXN0X19oZWFkaW5nXCI+SXRlbSAyLCBObyBMaW5rPC9zcGFuPjwvbGk+XHRcdFx0XG5cdDxsaSBjbGFzcz1cIm0tYmlnLWxpc3RfX2l0ZW1cIj48YSBjbGFzcz1cIm0tYmlnLWxpc3RfX2xpbmtcIiBocmVmPVwiI1wiPkl0ZW0gMzwvYT5cblx0XHQ8dWwgY2xhc3M9XCJtLWJpZy1saXN0X19zdWItbGlzdFwiPlxuXHRcdFx0PGxpIGNsYXNzPVwibS1iaWctbGlzdF9fc3ViLWl0ZW1cIj48YSBjbGFzcz1cIm0tYmlnLWxpc3RfX3N1Yi1saW5rXCIgaHJlZj1cIiNcIj5TdWItSXRlbSAxPC9hPjwvbGk+XG5cdFx0XHQ8bGkgY2xhc3M9XCJtLWJpZy1saXN0X19zdWItaXRlbVwiPjxhIGNsYXNzPVwibS1iaWctbGlzdF9fc3ViLWxpbmtcIiBocmVmPVwiI1wiPlN1Yi1JdGVtIDI8L2E+PC9saT5cblx0XHQ8L3VsPlxuXHQ8L2xpPlxuXHRcbjwvdWw+XG5gYGBcblxuKi9cbi5tLWJpZy1saXN0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZTsgfVxuXG4ubS1iaWctbGlzdF9faXRlbSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjNzk3YjdmO1xuICBwYWRkaW5nOiAxZW0gMDsgfVxuICAubS1iaWctbGlzdF9faXRlbTpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItYm90dG9tOiBub25lOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0OHJlbSkge1xuICAgIC5tLWJpZy1saXN0X19pdGVtIHtcbiAgICAgIHBhZGRpbmc6IDEuNWVtOyB9IH1cblxuLm0tYmlnLWxpc3RfX2xpbmssXG4ubS1iaWctbGlzdF9faGVhZGluZyB7XG4gIGJvcmRlci1jb2xvcjogY3VycmVudENvbG9yO1xuICBjb2xvcjogI2E2MTkyZTtcbiAgZm9udC1zaXplOiAxLjVlbTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDc1ZW07XG4gIHBhZGRpbmc6IDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cblxuLm0tYmlnLWxpc3RfX3N1Yi1saXN0IHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMC41ZW0gMCAwOyB9XG5cbi5tLWJpZy1saXN0X19zdWItaXRlbSB7XG4gIHBhZGRpbmc6IDAuNWVtIDAgMC41ZW0gMWVtOyB9XG5cbi5tLWJpZy1saXN0X19zdWItbGluayB7XG4gIGJvcmRlci1jb2xvcjogY3VycmVudENvbG9yO1xuICBjb2xvcjogIzQxNDA0MjsgfVxuXG4ubS1vc3JtIGxpIHtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIC5tLW9zcm0gbGk6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGMkYyRjI7IH1cblxuLypkb2Ncbi0tLVxudGl0bGU6IEJyZWFkY3J1bWJzXG5uYW1lOiBicmVhZGNydW1ic1xuY2F0ZWdvcnk6IE1vbGVjdWxlc1xuLS0tXG4qTGFzdCBVcGRhdGVkOiBEZWNlbWJlciAzLCAyMDE4KlxuXG5CYXNpYyBicmVhZGNydW1iIGVsZW1lbnQuXG5cbiMjIFVzZVxuXG5CcmVhZGNydW1icyBhcmUgYSBzZWNvbmRhcnkgbmF2aWdhdGlvbiBlbGVtZW50IHRoYXQgaGVscHMgcHJvdmlkZSBhIHNlbnNlIG9mIHBsYWNlICh3aGVyZSBhbSBJPyksIGFuZCBwcm92aWRlcyBlcnJvciBjb3JyZWN0aW9uIGlmIGEgdXNlciBmZWVscyB0aGV5IGFyZSBub3Qgd2hlcmUgdGhleSBzaG91bGQgYmUuXG5cblRoZXNlIGFyZSBhdXRvbWF0aWNhbGx5LWdlbmVyYXRlZCBtb2xlY3VsZXMgdGhhdCBzaG91bGQgbmV2ZXIgYmUgaGFyZGNvZGVkIG9yIHVzZWQgYW55d2hlcmUgb3RoZXIgdGhhbiB0aGUgZm9sbG93aW5nIGxvY2F0aW9ucyB3aXRoaW4gdGhlIHNpdGUgVUk6XG5cbjxmaWd1cmUgY2xhc3M9XCJhLWZpZ3VyZS0tZHNcIj5cblx0PGltZyBkYXRhLW9yaWdpbmFsPVwiLi4vaW1hZ2VzL3BhdHRlcm4tbGlicmFyeS9tb2xlY3VsZXMvYnJlYWRjcnVtYnMtZ3JleS1iaWxsYm9hcmQucG5nXCIgYWx0PVwiRXhhbXBsZSBvZiBicmVhZGNydW1icyBpbiBhIGdyZXkgYmlsbGJvYXJkXCIvPlxuXHQ8ZmlnY2FwdGlvbj5GaWcgMTogRXhhbXBsZSBvZiBicmVhZGNydW1icyB1c2VkIGluIGEgZ3JleSBiaWxsYm9hcmQuPC9maWdjYXB0aW9uPlxuPC9maWd1cmU+XG48ZmlndXJlIGNsYXNzPVwiYS1maWd1cmUtLWRzXCI+XG5cdDxpbWcgZGF0YS1vcmlnaW5hbD1cIi4uL2ltYWdlcy9wYXR0ZXJuLWxpYnJhcnkvbW9sZWN1bGVzL2JyZWFkY3J1bWJzLWltZy1iaWxsYm9hcmQuanBnXCIgYWx0PVwiRXhhbXBsZSBvZiBicmVhZGNydW1icyBpbiBhbiBpbWFnZSBiaWxsYm9hcmRcIi8+XG5cdDxmaWdjYXB0aW9uPkZpZyAyOiBFeGFtcGxlIG9mIGJyZWFkY3J1bWJzIHVzZWQgaW4gYW4gaW1hZ2UgYmlsbGJvYXJkLjwvZmlnY2FwdGlvbj5cbjwvZmlndXJlPlxuXG4jIyBDb2RlXG5cbmBgYGh0bWxfZXhhbXBsZV90YWJsZVxuPG9sIGNsYXNzPVwibS1icmVhZGNydW1ic1wiPlxuXHQ8bGkgY2xhc3M9XCJtLWJyZWFkY3J1bWJzX19jcnVtYlwiPjxhIGNsYXNzPVwiYS1saW5rXCI+SG9tZTwvYT48L2xpPlxuXHQ8bGkgY2xhc3M9XCJtLWJyZWFkY3J1bWJzX19jcnVtYlwiPjxhIGNsYXNzPVwiYS1saW5rXCI+U3ViIFBhZ2U8L2E+PC9saT5cbjwvb2w+XG5gYGBcblxuKi9cbi5tLWJyZWFkY3J1bWJzIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCAwIDFlbTtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTsgfVxuXG4ubS1icmVhZGNydW1ic19fY3J1bWIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiBhdXRvO1xuICBwYWRkaW5nOiAwOyB9XG4gIC5tLWJyZWFkY3J1bWJzX19jcnVtYjpub3QoOmxhc3QtY2hpbGQpOmFmdGVyIHtcbiAgICBwYWRkaW5nOiAwIDAuMjVlbSAwIDAuNWVtO1xuICAgIGNvbG9yOiAjYTYxOTJlO1xuICAgIGNvbnRlbnQ6IFwiL1wiOyB9XG5cbi5tLWJyZWFkY3J1bWJzIC5hLWxpbmsge1xuICBjb2xvcjogaW5oZXJpdDsgfVxuXG4vKmRvY1xuLS0tXG50aXRsZTogQnV0dG9uIEdyb3Vwc1xubmFtZTogYnV0dG9uLWdyb3Vwc1xuY2F0ZWdvcnk6IE1vbGVjdWxlc1xuLS0tXG4qTGFzdCBVcGRhdGVkOiBEZWNlbWJlciAzLCAyMDE4KlxuXG5CdXR0b24gZ3JvdXBzIGFyZSBhIHdheSB0byB2aXN1YWxseSBncm91cCBidXR0b25zIHdpdGggcmVsYXRlZCBmdW5jdGlvbnMuIFRoZXNlIHNob3VsZCBiZSB1c2VkIGp1ZGljaW91c2x5LCBwcmltYXJpbHkgdG8gcHJvdmlkZSBVSSBmdWN0aW9uYWxpdHkgKHN1Y2ggYXMgdG8gbWltaWMgbmF2aWdhdGlvbmFsIHRhYnMpLCBvciBhcyBjYWxsLXRvLWFjdGlvbiBidXR0b25zLlxuXG4jIyBVc2VcblxuQ2FuIGJlIHN0eWxlZCBhcyBmb2xsb3dzOlxuXG4qIFtIb3Jpem9udGFsXSgjYnRuLWdycF9ob3Jpem9udGFsKVxuKiBbRXF1YWwgKEhvcml6b250YWwpIFdpZHRoc10oI2J0bi1ncnBfZXF1YWwpXG4qIFtWZXJ0aWNhbF0oI2J0bi1ncnBfdmVydGljYWwpXG4qIFtJY29uc10oI2J0bi1ncnBfaWNvbnMpXG4qIFtEcm9wZG93bnNdKCNidG4tZ3JwX2Ryb3Bkb3ducylcblxuIyMjIDxhIG5hbWU9XCJidG4tZ3JwX2hvcml6b250YWxcIj48L2E+SG9yaXpvbnRhbFxuXG5UbyBncm91cCByZWxhdGVkIGJ1dHRvbnMgdG9nZXRoZXIgeW91IGNhbiB1c2UgdGhlIGAubS1idXR0b24tZ3JvdXBgIHdyYXBwaW5nIGVsZW1lbnQuIFRoaXMgd2lsbCBidW5jaCB0aGUgYnV0dG9ucyB0b2dldGhlciBhbmQgcmVtb3ZlIHRoZSBzcGFjaW5nIGJldHdlZW4gdGhlbS5cblxuYG0tYnV0dG9uLWdyb3VwLS1ub3dyYXBgIHdpbGwgc3RvcCB0aGUgdGV4dCBpbnNpZGUgZnJvbSB3cmFwcGluZyB0byBuZXcgbGluZXMuIGBtLWJ1dHRvbi1ncm91cC0tZmxleC1ub3dyYXBgIHdpbGwgc3RvcCB0aGUgYnV0dG9ucyB0aGVtc2VsdmVzIGZyb20gd3JhcHBpbmcgdG8gbmV3IGxpbmVzLlxuXG4jIyMjIENvZGVcblxuYGBgaHRtbF9leGFtcGxlX3RhYmxlXG48dWwgY2xhc3M9XCJtLWJ1dHRvbi1ncm91cFwiPlxuXHQ8bGkgY2xhc3M9XCJtLWJ1dHRvbi1ncm91cF9faXRlbVwiPjxhIGhyZWY9XCIjXCIgY2xhc3M9XCJtLWJ1dHRvbi1ncm91cF9fbGlua1wiPkJ1dHRvbjwvYT48L2xpPlxuXHQ8bGkgY2xhc3M9XCJtLWJ1dHRvbi1ncm91cF9faXRlbVwiPjxhIGhyZWY9XCIjXCIgY2xhc3M9XCJtLWJ1dHRvbi1ncm91cF9fbGlua1wiPkJ1dHRvbjwvYT48L2xpPlxuXHQ8bGkgY2xhc3M9XCJtLWJ1dHRvbi1ncm91cF9faXRlbVwiPjxhIGhyZWY9XCIjXCIgY2xhc3M9XCJtLWJ1dHRvbi1ncm91cF9fbGlua1wiPkJ1dHRvbjwvYT48L2xpPlxuPC91bD5cbmBgYFxuXG4jIyMgPGEgbmFtZT1cImJ0bi1ncnBfZXF1YWxcIj48L2E+RXF1YWwgV2lkdGhzXG5cbkFkZGluZyB0aGUgYG0tYnV0dG9uLWdyb3VwLS1lcXVhbGAgY2xhc3Mgd2lsbCBtYWtlIGJ1dHRvbnMgZXF1YWwgd2lkdGggZXZlbiBpZiB0ZXh0IGxlbmd0aHMgYXJlIHNpZ25pZmljYW50bHkgZGlmZmVyZW50LlxuXG4jIyMjIENvZGVcblxuYGBgaHRtbF9leGFtcGxlXG48dWwgY2xhc3M9XCJtLWJ1dHRvbi1ncm91cCAgbS1idXR0b24tZ3JvdXAtLWVxdWFsXCI+XG5cdDxsaSBjbGFzcz1cIm0tYnV0dG9uLWdyb3VwX19pdGVtXCI+PGEgaHJlZj1cIiNcIiBjbGFzcz1cIm0tYnV0dG9uLWdyb3VwX19saW5rXCI+U2hvcnQgVGV4dDwvYT48L2xpPlxuXHQ8bGkgY2xhc3M9XCJtLWJ1dHRvbi1ncm91cF9faXRlbVwiPjxhIGhyZWY9XCIjXCIgY2xhc3M9XCJtLWJ1dHRvbi1ncm91cF9fbGlua1wiPkEgQnV0dG9uIFdpdGggTXVjaCBMb25nZXIgVGV4dDwvYT48L2xpPlxuXHQ8bGkgY2xhc3M9XCJtLWJ1dHRvbi1ncm91cF9faXRlbVwiPjxhIGhyZWY9XCIjXCIgY2xhc3M9XCJtLWJ1dHRvbi1ncm91cF9fbGlua1wiPk1vcmUgU2hvcnQgVGV4dDwvYT48L2xpPlxuPC91bD5cbmBgYFxuXG4jIyMgPGEgbmFtZT1cImJ0bi1ncnBfdmVydGljYWxcIj48L2E+VmVydGljYWxcblxuQnV0dG9uIGdyb3VwcyBjYW4gYmUgbWFkZSB2ZXJ0aWNhbCBieSBhZGRpbmcgdGhlIGAubS1idXR0b24tZ3JvdXAtLXZlcnRpY2FsYCBjbGFzcy5cblxuIyMjIyBDb2RlXG5cbmBgYGh0bWxfZXhhbXBsZV90YWJsZVxuPHVsIGNsYXNzPVwibS1idXR0b24tZ3JvdXAgIG0tYnV0dG9uLWdyb3VwLS12ZXJ0aWNhbFwiPlxuXHQ8bGkgY2xhc3M9XCJtLWJ1dHRvbi1ncm91cF9faXRlbVwiPjxhIGhyZWY9XCIjXCIgY2xhc3M9XCJtLWJ1dHRvbi1ncm91cF9fbGlua1wiPkJ1dHRvbjwvYT48L2xpPlxuXHQ8bGkgY2xhc3M9XCJtLWJ1dHRvbi1ncm91cF9faXRlbVwiPjxhIGhyZWY9XCIjXCIgY2xhc3M9XCJtLWJ1dHRvbi1ncm91cF9fbGlua1wiPkJ1dHRvbjwvYT48L2xpPlxuXHQ8bGkgY2xhc3M9XCJtLWJ1dHRvbi1ncm91cF9faXRlbVwiPjxhIGhyZWY9XCIjXCIgY2xhc3M9XCJtLWJ1dHRvbi1ncm91cF9fbGlua1wiPkJ1dHRvbjwvYT48L2xpPlxuPC91bD5cbmBgYFxuXG4jIyMgPGEgbmFtZT1cImJ0bi1ncnBfaWNvbnNcIj48L2E+SWNvbnNcblxuVG8gYWRkIGljb25zIHRvIGJ1dHRvbiBncm91cHMsIGFkZCBhIGBtLWJ1dHRvbi1ncm91cF9fbGluay0taWNvbi1ob3Jpem9udGFsYCBvciBgbS1idXR0b24tZ3JvdXBfX2xpbmstLWljb24tdmVydGljYWxgIGNsYXNzIHRvIHRoZSBsaW5rIGFuZCBhZGQgdGhlIFNWRyBpbnNpZGUgdGhlIGxpbmsuIFRoZSBpY29uIG11c3QgYWxzbyBoYXZlIHR3byBjbGFzc2VzLCBgbS1idXR0b24tZ3JvdXBfX2ljb25gIGFuZCBhIGRpcmVjdGlvbmFsIG1vZGlmaWVyIGNsYXNzOiBgbS1idXR0b24tZ3JvdXBfX2ljb24tLXRvcGAsIGBtLWJ1dHRvbi1ncm91cF9faWNvbi0tbGVmdGAsIGBtLWJ1dHRvbi1ncm91cF9faWNvbi0tYm90dG9tYCwgYG0tYnV0dG9uLWdyb3VwX19pY29uLS1yaWdodGAuXG5cbiMjIyMgQ29kZVxuXG5gYGBodG1sX2V4YW1wbGVcbjx1bCBjbGFzcz1cIm0tYnV0dG9uLWdyb3VwICBtLWJ1dHRvbi1ncm91cC0tZXF1YWxcIj5cblx0PGxpIGNsYXNzPVwibS1idXR0b24tZ3JvdXBfX2l0ZW1cIj5cblx0XHQ8YSBjbGFzcz1cIm0tYnV0dG9uLWdyb3VwX19saW5rICBtLWJ1dHRvbi1ncm91cF9fbGluay0taWNvbi12ZXJ0aWNhbFwiIGhyZWY9XCIjXCI+XG5cdFx0XHQ8c3ZnIGNsYXNzPVwiYS1pY29uICBtLWJ1dHRvbi1ncm91cF9faWNvbiAgbS1idXR0b24tZ3JvdXBfX2ljb24tLXRvcFwiPlxuXHRcdFx0XHQ8dXNlIHhsaW5rOmhyZWY9XCIuLi9pbWFnZXMvc3ZnL2ljb25zLnN2ZyNkb2N0b3JcIj48L3VzZT5cblx0XHRcdDwvc3ZnPlxuXHRcdFx0QnV0dG9uIDFcblx0XHQ8L2E+XG5cdDwvbGk+XG5cdDxsaSBjbGFzcz1cIm0tYnV0dG9uLWdyb3VwX19pdGVtXCI+XG5cdFx0PGEgY2xhc3M9XCJtLWJ1dHRvbi1ncm91cF9fbGluayAgbS1idXR0b24tZ3JvdXBfX2xpbmstLWljb24tdmVydGljYWxcIiBocmVmPVwiI1wiPlxuXHRcdFx0PHN2ZyBjbGFzcz1cImEtaWNvbiAgbS1idXR0b24tZ3JvdXBfX2ljb24gIG0tYnV0dG9uLWdyb3VwX19pY29uLS10b3BcIj5cblx0XHRcdFx0PHVzZSB4bGluazpocmVmPVwiLi4vaW1hZ2VzL3N2Zy9pY29ucy5zdmcjbG9jYXRpb25cIj48L3VzZT5cblx0XHRcdDwvc3ZnPlxuXHRcdFx0QnV0dG9uIDJcblx0XHQ8L2E+XG5cdDwvbGk+XG5cdDxsaSBjbGFzcz1cIm0tYnV0dG9uLWdyb3VwX19pdGVtXCI+XG5cdFx0PGEgY2xhc3M9XCJtLWJ1dHRvbi1ncm91cF9fbGluayAgbS1idXR0b24tZ3JvdXBfX2xpbmstLWljb24tdmVydGljYWxcIiBocmVmPVwiI1wiPlxuXHRcdFx0PHN2ZyBjbGFzcz1cImEtaWNvbiAgbS1idXR0b24tZ3JvdXBfX2ljb24gIG0tYnV0dG9uLWdyb3VwX19pY29uLS10b3BcIj5cblx0XHRcdFx0PHVzZSB4bGluazpocmVmPVwiLi4vaW1hZ2VzL3N2Zy9pY29ucy5zdmcjc3RldGhvc2NvcGVcIj48L3VzZT5cblx0XHRcdDwvc3ZnPlxuXHRcdFx0QnV0dG9uIDNcblx0XHQ8L2E+XG5cdDwvbGk+XG48L3VsPlxuYGBgXG5cbmBgYGh0bWxfZXhhbXBsZV90YWJsZVxuPHVsIGNsYXNzPVwibS1idXR0b24tZ3JvdXAgIG0tYnV0dG9uLWdyb3VwLS12ZXJ0aWNhbFwiPlxuXHQ8bGkgY2xhc3M9XCJtLWJ1dHRvbi1ncm91cF9faXRlbVwiPlxuXHRcdDxhIGNsYXNzPVwibS1idXR0b24tZ3JvdXBfX2xpbmsgIG0tYnV0dG9uLWdyb3VwX19saW5rLS1pY29uLWhvcml6b250YWxcIiBocmVmPVwiI1wiPlxuXHRcdFx0PHN2ZyBjbGFzcz1cImEtaWNvbiAgbS1idXR0b24tZ3JvdXBfX2ljb24gIG0tYnV0dG9uLWdyb3VwX19pY29uLS1sZWZ0XCI+XG5cdFx0XHRcdDx1c2UgeGxpbms6aHJlZj1cIi4uL2ltYWdlcy9zdmcvaWNvbnMuc3ZnI2RvY3RvclwiPjwvdXNlPlxuXHRcdFx0PC9zdmc+XG5cdFx0XHRCdXR0b24gMVxuXHRcdDwvYT5cblx0PC9saT5cblx0PGxpIGNsYXNzPVwibS1idXR0b24tZ3JvdXBfX2l0ZW1cIj5cblx0XHQ8YSBjbGFzcz1cIm0tYnV0dG9uLWdyb3VwX19saW5rICBtLWJ1dHRvbi1ncm91cF9fbGluay0taWNvbi1ob3Jpem9udGFsXCIgaHJlZj1cIiNcIj5cblx0XHRcdDxzdmcgY2xhc3M9XCJhLWljb24gIG0tYnV0dG9uLWdyb3VwX19pY29uICBtLWJ1dHRvbi1ncm91cF9faWNvbi0tbGVmdFwiPlxuXHRcdFx0XHQ8dXNlIHhsaW5rOmhyZWY9XCIuLi9pbWFnZXMvc3ZnL2ljb25zLnN2ZyNsb2NhdGlvblwiPjwvdXNlPlxuXHRcdFx0PC9zdmc+XG5cdFx0XHRCdXR0b24gMlxuXHRcdDwvYT5cblx0PC9saT5cblx0PGxpIGNsYXNzPVwibS1idXR0b24tZ3JvdXBfX2l0ZW1cIj5cblx0XHQ8YSBjbGFzcz1cIm0tYnV0dG9uLWdyb3VwX19saW5rICBtLWJ1dHRvbi1ncm91cF9fbGluay0taWNvbi1ob3Jpem9udGFsXCIgaHJlZj1cIiNcIj5cblx0XHRcdDxzdmcgY2xhc3M9XCJhLWljb24gIG0tYnV0dG9uLWdyb3VwX19pY29uICBtLWJ1dHRvbi1ncm91cF9faWNvbi0tbGVmdFwiPlxuXHRcdFx0XHQ8dXNlIHhsaW5rOmhyZWY9XCIuLi9pbWFnZXMvc3ZnL2ljb25zLnN2ZyNzdGV0aG9zY29wZVwiPjwvdXNlPlxuXHRcdFx0PC9zdmc+XG5cdFx0XHRCdXR0b24gM1xuXHRcdDwvYT5cblx0PC9saT5cbjwvdWw+XG5gYGBcblxuIyMjIDxhIG5hbWU9XCJidG4tZ3JwX2Ryb3Bkb3duc1wiPjwvYT5Ecm9wZG93bnNcblxuKkRyb3Bkb3ducyBhcmUgbm90IGN1cnJlbnRseSBpbXBsZW1lbnRlZCBvbiB0aGUgd2Vic2l0ZS4qIERyb3Bkb3ducyBjYW4gYmUgYWRkZWQgdG8gYnV0dG9ucyBpbiB0aGUgYnV0dG9uIGdyb3VwIHdoZW4gSFRNTCBpcyBmb3JtYXR0ZWQgaW4gdGhlIGZvbGxvd2luZyBtYW5uZXIuXG5cbiMjIyMgQ29kZVxuXG5gYGBodG1sX2V4YW1wbGVcbjx1bCBjbGFzcz1cIm0tYnV0dG9uLWdyb3VwXCI+XG5cdDxsaSBjbGFzcz1cIm0tYnV0dG9uLWdyb3VwX19pdGVtXCI+XG5cdFx0PGEgY2xhc3M9XCJtLWJ1dHRvbi1ncm91cF9fbGlua1wiIGhyZWY9XCIjXCI+QnV0dG9uIDE8L2E+XG5cdDwvbGk+XG5cdDxsaSBjbGFzcz1cIm0tYnV0dG9uLWdyb3VwX19pdGVtICBtLWJ1dHRvbi1ncm91cF9fbGluay0taWNvbi1ob3Jpem9udGFsICBoYXMtZHJvcGRvd25cIj5cblx0XHQ8YSBjbGFzcz1cIm0tYnV0dG9uLWdyb3VwX19saW5rXCIgaHJlZj1cIiNyZXNvdXJjZXNcIj5cblx0XHRcdEJ1dHRvbiAyXG5cdFx0XHQ8c3ZnIGNsYXNzPVwibS1idXR0b24tZ3JvdXBfX2ljb24tLXJpZ2h0ICBhLWljb24gIGEtaWNvbi0teHNtYWxsICB1LWZpbGwtY3VycmVudENvbG9yXCI+XG5cdFx0XHRcdDx1c2UgeGxpbms6aHJlZj1cIi4uL2ltYWdlcy9zdmcvaWNvbnMuc3ZnI2Fycm93LWRvd25cIj48L3VzZT5cblx0XHRcdDwvc3ZnPlxuXHRcdDwvYT5cblx0XHQ8dWwgY2xhc3M9XCJtLWJ1dHRvbi1ncm91cF9fZHJvcGRvd24tbGlzdCAgdS1oaWdoZXJcIj5cblx0XHRcdDxsaSBjbGFzcz1cIm0tYnV0dG9uLWdyb3VwX19kcm9wZG93bi1pdGVtXCI+XG5cdFx0XHRcdDxhIGNsYXNzPVwibS1idXR0b24tZ3JvdXBfX2Ryb3Bkb3duLWxpbmtcIiBocmVmPVwiI1wiPkRyb3Bkb3duIEJ1dHRvbiAxPC9hPlxuXHRcdFx0PC9saT5cblx0XHRcdDxsaSBjbGFzcz1cIm0tYnV0dG9uLWdyb3VwX19kcm9wZG93bi1pdGVtXCI+XG5cdFx0XHRcdDxhIGNsYXNzPVwibS1idXR0b24tZ3JvdXBfX2Ryb3Bkb3duLWxpbmtcIiBocmVmPVwiI1wiPkRyb3Bkb3duIEJ1dHRvbiAyPC9hPlxuXHRcdFx0PC9saT5cblx0XHRcdDxsaSBjbGFzcz1cIm0tYnV0dG9uLWdyb3VwX19kcm9wZG93bi1pdGVtXCI+XG5cdFx0XHRcdDxhIGNsYXNzPVwibS1idXR0b24tZ3JvdXBfX2Ryb3Bkb3duLWxpbmtcIiBocmVmPVwiI1wiPkRyb3Bkb3duIEJ1dHRvbiAzPC9hPlxuXHRcdFx0PC9saT5cblx0XHQ8L3VsPlxuXHQ8L2xpPlxuXHQ8bGkgY2xhc3M9XCJtLWJ1dHRvbi1ncm91cF9faXRlbVwiPlxuXHRcdDxhIGNsYXNzPVwibS1idXR0b24tZ3JvdXBfX2xpbmtcIiBocmVmPVwiI1wiPkJ1dHRvbiAzPC9hPlxuXHQ8L2xpPlxuPC91bD5cbmBgYFxuXG4qL1xuLm0tYnV0dG9uLWdyb3VwIHtcbiAgYm9yZGVyLWNvbG9yOiAjNDE0MDQyO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDFweCAwIDAgMXB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7IH1cblxuLm0tYnV0dG9uLWdyb3VwLS12ZXJ0aWNhbCB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cblxuLm0tYnV0dG9uLWdyb3VwLS1mbGV4LW5vd3JhcCB7XG4gIGZsZXgtd3JhcDogbm93cmFwOyB9XG5cbi5tLWJ1dHRvbi1ncm91cC0tbm93cmFwIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuXG4vKi5tLWJ1dHRvbi1ncm91cCArIC5tLWJ1dHRvbi1ncm91cCB7XG5cdGJvcmRlci10b3A6IG5vbmU7XG59Ki9cbi8qKlxuICogSXRlbXNcbiAqIDEuIGZsZXg6IDEgc3RvcHMgaXRlbXMgZnJvbSB3cmFwcGluZyBpbiBTYWZhcmlcbiAqL1xuLm0tYnV0dG9uLWdyb3VwX19pdGVtIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleDogMSAxIGF1dG87XG4gIC8qIFsxXSAqL1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLm0tYnV0dG9uLWdyb3VwX19pdGVtLS1zaHJpbmsge1xuICBmbGV4OiAwIDAgYXV0bzsgfVxuXG4vKipcbiAqIEVxdWFsIFdpZHRoIEJ1dHRvbnNcbiAqIDEuIEZvcmNlIFNhZmFyaSB0byB3cmFwIG9uIHNtYWxsIHNjcmVlbnNcbiAqL1xuLm0tYnV0dG9uLWdyb3VwLS1lcXVhbCAubS1idXR0b24tZ3JvdXBfX2l0ZW0ge1xuICBmbGV4OiAxO1xuICBtaW4td2lkdGg6IDEyMHB4O1xuICAvKiBbMV0gKi8gfVxuXG4vKipcbiAqIEJ1dHRvbiBzdHlsaW5nXG4gKi9cbi5tLWJ1dHRvbi1ncm91cF9fbGluayB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM0MTQwNDI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkY7XG4gIGNvbG9yOiAjNDE0MDQyO1xuICBsZXR0ZXItc3BhY2luZzogMC4wMjVlbTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMC41ZW07XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgb3V0bGluZTogMDtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiB3cmFwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBmb250LXdlaWdodDogNTAwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBib3JkZXItd2lkdGg6IDAgMXB4IDFweCAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcGFkZGluZzogMmVtIDFlbTtcbiAgd2lkdGg6IDEwMCU7XG4gIC8qJjpmb2N1czpub3QoOmRpc2FibGVkKSB7XG5cdFx0Ym9yZGVyLWNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIGJyYW5kKTtcblx0fSovIH1cbiAgLm0tYnV0dG9uLWdyb3VwX19saW5rLmJ1dHRvbi0tYWN0aXZlIHtcbiAgICBib3JkZXItY29sb3I6ICMyODI3Mjg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzI4MjcyODtcbiAgICBjb2xvcjogI0ZGRjsgfVxuICAubS1idXR0b24tZ3JvdXBfX2xpbms6bm90KDpkaXNhYmxlZCkge1xuICAgIC8qJjpmb2N1cyB7XG5cdFx0XHRib3JkZXItY29sb3I6ICRidXR0b24tZm9jdXMtYm9yZGVyLWNvbG9yO1xuXHRcdFx0Ym94LXNoYWRvdzogJGJ1dHRvbi1mb2N1cy1ib3gtc2hhZG93O1xuXHRcdH0qLyB9XG4gICAgLm0tYnV0dG9uLWdyb3VwX19saW5rOm5vdCg6ZGlzYWJsZWQpOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNhNjE5MmU7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjYTYxOTJlO1xuICAgICAgY29sb3I6ICNGRkY7IH1cbiAgICAubS1idXR0b24tZ3JvdXBfX2xpbms6bm90KDpkaXNhYmxlZCk6YWN0aXZlIHtcbiAgICAgIGJvcmRlci1jb2xvcjogIzdhMTIyMjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM3YTEyMjI7XG4gICAgICBjb2xvcjogI0ZGRjsgfVxuICAubS1idXR0b24tZ3JvdXBfX2xpbms6ZGlzYWJsZWQge1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgb3BhY2l0eTogMC41OyB9XG4gIC5tLWJ1dHRvbi1ncm91cF9fbGluazpub3QoOmRpc2FibGVkKTpob3ZlciB7XG4gICAgYm9yZGVyLXdpZHRoOiAwIDFweCAxcHggMDsgfVxuXG4uaXMtc3R1Y2sgLm0tYnV0dG9uLWdyb3VwLS1zdGlja3kge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDMwMCArIDE7IH1cblxuLm0tYnV0dG9uLWdyb3VwLS1zdGlja3kgLm0tYnV0dG9uLWdyb3VwX19saW5rIHtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgZm9udC1zaXplOiAxZW07XG4gIGxldHRlci1zcGFjaW5nOiBpbmhlcml0O1xuICBwYWRkaW5nOiAxZW0gMC41ZW07XG4gIHRleHQtdHJhbnNmb3JtOiBpbmhlcml0OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NHJlbSkge1xuICAgIC5tLWJ1dHRvbi1ncm91cC0tc3RpY2t5IC5tLWJ1dHRvbi1ncm91cF9fbGluayB7XG4gICAgICBmb250LXNpemU6IDEuMjVlbTtcbiAgICAgIHBhZGRpbmc6IDEuNWVtIDFlbTsgfSB9XG5cbi5tLWJ1dHRvbi1ncm91cF9fbGluay0taWNvbi1ob3Jpem9udGFsIHtcbiAgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuXG4ubS1idXR0b24tZ3JvdXBfX2xpbmstLWljb24tdmVydGljYWwge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG5cbi5tLWJ1dHRvbi1ncm91cF9fbGluay0tbW9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGMkYyRjI7XG4gIG1pbi13aWR0aDogMTAwcHg7IH1cblxuLm0tYnV0dG9uLWdyb3VwX19pY29uIHtcbiAgaGVpZ2h0OiAyLjVlbTtcbiAgbWluLWhlaWdodDogMWVtO1xuICBtaW4td2lkdGg6IDFlbTtcbiAgd2lkdGg6IDIuNWVtOyB9XG5cbi5tLWJ1dHRvbi1ncm91cF9faWNvbi0tdG9wIHtcbiAgbWFyZ2luLWJvdHRvbTogLjc1ZW07IH1cblxuLm0tYnV0dG9uLWdyb3VwX19pY29uLS1yaWdodCB7XG4gIG1hcmdpbi1sZWZ0OiA0JTsgfVxuXG4ubS1idXR0b24tZ3JvdXBfX2ljb24tLWJvdHRvbSB7XG4gIG1hcmdpbi10b3A6IC43NWVtOyB9XG5cbi5tLWJ1dHRvbi1ncm91cF9faWNvbi0tbGVmdCB7XG4gIG1hcmdpbi1yaWdodDogNCU7IH1cblxuLm0tYnV0dG9uLWdyb3VwX19saW5rIC5tLWJ1dHRvbi1ncm91cF9faWNvbiB7XG4gIGNvbG9yOiAjOTM5NTk4OyB9XG5cbi5tLWJ1dHRvbi1ncm91cF9fbGluazpob3ZlciAubS1idXR0b24tZ3JvdXBfX2ljb24ge1xuICBjb2xvcjogaW5oZXJpdDsgfVxuXG4vKipcbiAqIEJ1dHRvbiBzdHlsaW5nIHdoZW4gYnV0dG9uIGdyb3VwIGlzIHN0dWNrIHRvIHdpbmRvd1xuICpcbi5pcy1zdHVjayAubS1idXR0b24tZ3JvdXBfX2xpbmsge1xuXHRwYWRkaW5nOiAkc3BhY2luZy1tZWRpdW07XG59Ki9cbi8qKlxuICogQnV0dG9uIHN0eWxpbmcgd2hlbiB3aW5kb3cgaXMgc2Nyb2xsZWQgdG8gaXRlbVxuICovXG4ubS1idXR0b24tZ3JvdXBfX2xpbmsuaXMtYWN0aXZlIHtcbiAgYm9yZGVyLWJvdHRvbTogOHB4IHNvbGlkICNhNjE5MmU7XG4gIGNvbG9yOiAjYTYxOTJlO1xuICBmb250LXdlaWdodDogNTAwO1xuICBwYWRkaW5nLWJvdHRvbTogY2FsYygyZW0gLSA3cHgpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLm0tYnV0dG9uLWdyb3VwX19saW5rLmlzLWFjdGl2ZTpub3QoOmRpc2FibGVkKTpob3ZlciB7XG4gICAgYm9yZGVyLXdpZHRoOiAwIDFweCA4cHggMDsgfVxuICAubS1idXR0b24tZ3JvdXBfX2xpbmsuaXMtYWN0aXZlOm5vdCg6ZGlzYWJsZWQpOmFjdGl2ZSB7XG4gICAgYm9yZGVyLXdpZHRoOiAwIDFweCA4cHggMDsgfVxuXG4ubS1idXR0b24tZ3JvdXAtLXN0aWNreSAubS1idXR0b24tZ3JvdXBfX2xpbmsuaXMtYWN0aXZlIHtcbiAgcGFkZGluZy1ib3R0b206IGNhbGMoMWVtIC0gN3B4KTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjRyZW0pIHtcbiAgICAubS1idXR0b24tZ3JvdXAtLXN0aWNreSAubS1idXR0b24tZ3JvdXBfX2xpbmsuaXMtYWN0aXZlIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiBjYWxjKDEuNWVtIC0gN3B4KTsgfSB9XG5cbi5tLWJ1dHRvbi1ncm91cF9fbGluay5pcy1hY3RpdmU6OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2E2MTkyZTtcbiAgY29udGVudDogJyc7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDEycHg7XG4gIGxlZnQ6IDUwJTtcbiAgbWFyZ2luLWxlZnQ6IC02cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAtNnB4O1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gIHdpZHRoOiAxMnB4OyB9XG5cbi5tLWJ1dHRvbi1ncm91cF9fbGluay5pcy1hY3RpdmU6YWN0aXZlOjphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3YTEyMjI7IH1cblxuLm0tYnV0dG9uLWdyb3VwX19saW5rLmlzLWFjdGl2ZTphY3RpdmU6OmFmdGVyLFxuLm0tYnV0dG9uLWdyb3VwX19saW5rLmlzLWFjdGl2ZTpob3Zlcjo6YWZ0ZXIge1xuICB6LWluZGV4OiAtMTsgfVxuXG4vKipcbiAqIERyb3Bkb3duIHN0eWxpbmdcbiAqL1xuLm0tYnV0dG9uLWdyb3VwX19pdGVtLmhhcy1kcm9wZG93bjpob3ZlciA+IC5tLWJ1dHRvbi1ncm91cF9fbGluayB7XG4gIGJhY2tncm91bmQ6ICNGMkYyRjI7XG4gIGJvcmRlci1jb2xvcjogIzQxNDA0MjtcbiAgY29sb3I6ICNhNjE5MmU7IH1cblxuLm0tYnV0dG9uLWdyb3VwX19pdGVtLmhhcy1kcm9wZG93bjpob3ZlciA+IC5tLWJ1dHRvbi1ncm91cF9fbGluay5pcy1hY3RpdmUge1xuICBib3JkZXItYm90dG9tLWNvbG9yOiAjYTYxOTJlOyB9XG5cbi5tLWJ1dHRvbi1ncm91cF9faXRlbS5oYXMtZHJvcGRvd246aG92ZXIgPiAubS1idXR0b24tZ3JvdXBfX2xpbmsuaXMtYWN0aXZlOjphZnRlciB7XG4gIHotaW5kZXg6IDE7IH1cblxuLm0tYnV0dG9uLWdyb3VwX19kcm9wZG93bi1saXN0IHtcbiAgZGlzcGxheTogbm9uZTtcbiAgbGVmdDogLTFweDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgdG9wOiAxMDAlO1xuICB6LWluZGV4OiAxMDA7IH1cblxuLm0tYnV0dG9uLWdyb3VwX19pdGVtLmhhcy1kcm9wZG93bjpob3ZlciA+IC5tLWJ1dHRvbi1ncm91cF9fZHJvcGRvd24tbGlzdCB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5tLWJ1dHRvbi1ncm91cF9fZHJvcGRvd24tbGluayB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM0MTQwNDI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkY7XG4gIGNvbG9yOiAjNDE0MDQyO1xuICBsZXR0ZXItc3BhY2luZzogMC4wMjVlbTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMC41ZW07XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgb3V0bGluZTogMDtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiB3cmFwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBmb250LXdlaWdodDogNTAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBib3JkZXItd2lkdGg6IDAgMXB4IDFweCAxcHg7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGxldHRlci1zcGFjaW5nOiBpbmhlcml0O1xuICBwYWRkaW5nOiAxZW07XG4gIHRleHQtdHJhbnNmb3JtOiBpbmhlcml0O1xuICB3aWR0aDogMTAwJTsgfVxuICAubS1idXR0b24tZ3JvdXBfX2Ryb3Bkb3duLWxpbmsuYnV0dG9uLS1hY3RpdmUge1xuICAgIGJvcmRlci1jb2xvcjogIzI4MjcyODtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjgyNzI4O1xuICAgIGNvbG9yOiAjRkZGOyB9XG4gIC5tLWJ1dHRvbi1ncm91cF9fZHJvcGRvd24tbGluazpub3QoOmRpc2FibGVkKSB7XG4gICAgLyomOmZvY3VzIHtcblx0XHRcdGJvcmRlci1jb2xvcjogJGJ1dHRvbi1mb2N1cy1ib3JkZXItY29sb3I7XG5cdFx0XHRib3gtc2hhZG93OiAkYnV0dG9uLWZvY3VzLWJveC1zaGFkb3c7XG5cdFx0fSovIH1cbiAgICAubS1idXR0b24tZ3JvdXBfX2Ryb3Bkb3duLWxpbms6bm90KDpkaXNhYmxlZCk6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2E2MTkyZTtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNhNjE5MmU7XG4gICAgICBjb2xvcjogI0ZGRjsgfVxuICAgIC5tLWJ1dHRvbi1ncm91cF9fZHJvcGRvd24tbGluazpub3QoOmRpc2FibGVkKTphY3RpdmUge1xuICAgICAgYm9yZGVyLWNvbG9yOiAjN2ExMjIyO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzdhMTIyMjtcbiAgICAgIGNvbG9yOiAjRkZGOyB9XG4gIC5tLWJ1dHRvbi1ncm91cF9fZHJvcGRvd24tbGluazpkaXNhYmxlZCB7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICBvcGFjaXR5OiAwLjU7IH1cbiAgLm0tYnV0dG9uLWdyb3VwX19kcm9wZG93bi1saW5rOm5vdCg6ZGlzYWJsZWQpOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjJGMkYyO1xuICAgIGJvcmRlci1jb2xvcjogIzQxNDA0MjtcbiAgICBib3JkZXItd2lkdGg6IDAgMXB4IDFweCAxcHg7XG4gICAgY29sb3I6ICNhNjE5MmU7IH1cblxuLyoqXG4gKiBIb21lcGFnZSBCdXR0b25nIEdyb3VwXG4gKiB0aGlzIGVsZW1lbnQgaXMgdHJpY2t5IGJlY2F1c2UgaXQncyBhIGJ1dHRvbiBsaXN0IG9uIHNtYWxsIHNjcmVlbnNcbiAqIGFuZCBhIGJ1dHRvbiBncm91cCBvbiBsYXJnZSBzY3JlZW5zXG4gKi9cbkBtZWRpYSAobWluLXdpZHRoOiA0OHJlbSkge1xuICAubS1idXR0b24tZ3JvdXBfX2hvbWUtd3JhcHBlciB7XG4gICAgYmFja2dyb3VuZDogI2E2MTkyZTtcbiAgICBjbGlwLXBhdGg6IHBvbHlnb24oMCUgMCUsIDAlIDEwMCUsIDEwMCUgMTAwJSwgMTAwJSAwJSwgY2FsYyg1MCUgKyAxZW0pIDAlLCA1MCUgMWVtLCBjYWxjKDUwJSAtIDFlbSkgMCUpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLWJvdHRvbTogLjNlbTsgfSB9XG5cbi5tLWJ1dHRvbi1ncm91cC0taG9tZSB7XG4gIGJvcmRlcjogbm9uZTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDhyZW0pIHtcbiAgICAubS1idXR0b24tZ3JvdXAtLWhvbWUge1xuICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICM5Mzk1OTg7XG4gICAgICBjbGlwLXBhdGg6IHBvbHlnb24oMCUgMCUsIDAlIDEwMCUsIDEwMCUgMTAwJSwgMTAwJSAwJSwgY2FsYyg1MCUgKyAxLjEyNWVtKSAwJSwgNTAlIDEuMTI1ZW0sIGNhbGMoNTAlIC0gMS4xMjVlbSkgMCUpO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdG9wOiAuM2VtOyB9IH1cblxuLm0tYnV0dG9uLWdyb3VwLS1ob21lIC5tLWJ1dHRvbi1ncm91cF9faXRlbSB7XG4gIGZsZXg6IDAgMCAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDEuNWVtOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAyMC4wMXJlbSkge1xuICAgIC5tLWJ1dHRvbi1ncm91cC0taG9tZSAubS1idXR0b24tZ3JvdXBfX2l0ZW0ge1xuICAgICAgZmxleDogMCAwIDUwJTtcbiAgICAgIG1heC13aWR0aDogNTAlOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4cmVtKSB7XG4gICAgLm0tYnV0dG9uLWdyb3VwLS1ob21lIC5tLWJ1dHRvbi1ncm91cF9faXRlbSB7XG4gICAgICBmbGV4OiAwIDAgMjUlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIG1heC13aWR0aDogMjUlO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgcGFkZGluZy1yaWdodDogMDsgfSB9XG5cbi5tLWJ1dHRvbi1ncm91cC0taG9tZSAubS1idXR0b24tZ3JvdXBfX2xpbmsge1xuICBib3JkZXItY29sb3I6ICM5Mzk1OTg7XG4gIGNvbG9yOiAjYTYxOTJlOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0Ny45OXJlbSkge1xuICAgIC5tLWJ1dHRvbi1ncm91cC0taG9tZSAubS1idXR0b24tZ3JvdXBfX2xpbmsge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgIzkzOTU5ODtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMWVtO1xuICAgICAgcGFkZGluZy10b3A6IDFlbTsgfVxuICAgICAgLm0tYnV0dG9uLWdyb3VwLS1ob21lIC5tLWJ1dHRvbi1ncm91cF9fbGluazpub3QoOmRpc2FibGVkKTpob3ZlciB7XG4gICAgICAgIGJvcmRlci13aWR0aDogMXB4OyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4cmVtKSB7XG4gICAgLm0tYnV0dG9uLWdyb3VwLS1ob21lIC5tLWJ1dHRvbi1ncm91cF9fbGluayB7XG4gICAgICBib3JkZXItdG9wOiAwO1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfSB9XG5cbi5tLWJ1dHRvbi1ncm91cC0taG9tZSAubS1idXR0b24tZ3JvdXBfX2ljb24ge1xuICBtYXJnaW46IDAgMCAuNzVlbTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDhyZW0pIHtcbiAgICAubS1idXR0b24tZ3JvdXAtLWhvbWUgLm0tYnV0dG9uLWdyb3VwX19pY29uIHtcbiAgICAgIG1hcmdpbjogMCA0JSAwIDA7IH0gfVxuXG4vKlxuLm0tYnV0dG9uLWdyb3VwLS1ob21lIDpub3QoOmhvdmVyKSAubS1idXR0b24tZ3JvdXBfX2ljb24ge1xuXHRjb2xvcjogbWFwLWdldCgkY29sb3JzLCBncmV5KTtcbn1cbiovXG4vKmRvY1xuLS0tXG50aXRsZTogQnV0dG9uIExpc3RzXG5uYW1lOiBidXR0b24tbGlzdHNcbmNhdGVnb3J5OiBNb2xlY3VsZXNcbi0tLVxuKkxhc3QgVXBkYXRlZDogRGVjZW1iZXIgMywgMjAxOCpcblxuVXNlZCBmb3IgYSBsaXN0IG9mIGxpbmtzIHRvIHByb3ZpZGUgbW9yZSB2aXN1YWwgaW50ZXJlc3QgdGhhbiBhIHNpbXBsZSBgPHVsPmAgb3IgYDxvbD5gLiBDb21lcyBpbiBzdGFuZGFyZC1zaXplIG9yIGJpZyBidXR0b24gZmxhdm9ycy5cblxuIyMgU3RhbmRhcmQgQnV0dG9uc1xuXG4jIyMgVXNlXG5cblRoZSBzdHlsaW5nIGZvciBidXR0b24gbGlzdHMgaXMgbWluaW1hbC4gVGhlIGJ1bGsgY29tZXMgZnJvbSB0aGUgZ3JpZCBjbGFzc2VzIGFuZCBidXR0b24gY2xhc3Nlcy5cblxuIyMjIyBSZWNvbW1lbmRlZCDwn5GNXG5cblVzZSBmb3IgbGlzdHMgb2YgbGlua3Mgd2l0aCBpdGVtcyBjb250YWluaW5nIG5vIG1vcmUgdGhhbiBhIGxpbmUgb3IgdHdvIG9mIHRleHQuXG5cbk9uIGRlc2t0b3AsIHNob3VsZCB1c3VhbGx5IGJlIHNwcmVhZCBhY3Jvc3MgdGhyZWUgY29sdW1ucy5cblxuIyMjIyBOb3QgUmVjb21tZW5kZWQg8J+RjlxuXG5Bdm9pZCB1c2luZyB3aXRoIGxpc3RzIHRoYXQgaGF2ZSBhIGxhcmdlIG51bWJlciBvZiBsaXN0IGl0ZW1zIChtb3JlIHRoYW4gOSBvciBzbyk7IGxhcmdlciBsaXN0cyBwcmVzZW50IHVzYWJpbGl0eSBpc3N1ZXMgKHN1Y2ggYXM6IGxvd2VyIHNjYW5hYmlsaXR5KS4gRm9yIGxvbmdlciBsaXN0cyBjb25zaWRlciB1c2luZyB0aGUgW0EtWiBMaXN0c11bYS16LWxpc3RzXSBvcmdhbmlzbSBpbnN0ZWFkLlxuXG4jIyMgQ29kZVxuXG5gYGBodG1sX2V4YW1wbGVcbjx1bCBjbGFzcz1cIm0tYnV0dG9uLWxpc3QgIGwtZ3JpZFwiPlxuXHQ8bGkgY2xhc3M9XCJtLWJ1dHRvbi1saXN0X19pdGVtICBsLWdyaWRfX2l0ZW0gIDEvMSAgMS8yQHNtYWxsICAxLzNAbGFyZ2VcIj5cblx0XHQ8YSBjbGFzcz1cIm0tYnV0dG9uLWxpc3RfX2J1dHRvbiAgYS1idXR0b24gIGEtYnV0dG9uLS1leHBhbmQgIGEtYnV0dG9uLS1zbWFsbFwiIGhyZWY9XCIjXCI+QnV0dG9uPC9hPlxuXHQ8L2xpPlxuXHQ8bGkgY2xhc3M9XCJtLWJ1dHRvbi1saXN0X19pdGVtICBsLWdyaWRfX2l0ZW0gIDEvMSAgMS8yQHNtYWxsICAxLzNAbGFyZ2VcIj5cblx0XHQ8YSBjbGFzcz1cIm0tYnV0dG9uLWxpc3RfX2J1dHRvbiAgYS1idXR0b24gIGEtYnV0dG9uLS1leHBhbmQgIGEtYnV0dG9uLS1zbWFsbFwiIGhyZWY9XCIjXCI+TGlzdHM8L2E+XG5cdDwvbGk+XG5cdDxsaSBjbGFzcz1cIm0tYnV0dG9uLWxpc3RfX2l0ZW0gIGwtZ3JpZF9faXRlbSAgMS8xICAxLzJAc21hbGwgIDEvM0BsYXJnZVwiPlxuXHRcdDxhIGNsYXNzPVwibS1idXR0b24tbGlzdF9fYnV0dG9uICBhLWJ1dHRvbiAgYS1idXR0b24tLWV4cGFuZCAgYS1idXR0b24tLXNtYWxsXCIgaHJlZj1cIiNcIj5hcmU8L2E+XG5cdDwvbGk+XG5cdDxsaSBjbGFzcz1cIm0tYnV0dG9uLWxpc3RfX2l0ZW0gIGwtZ3JpZF9faXRlbSAgMS8xICAxLzJAc21hbGwgIDEvM0BsYXJnZVwiPlxuXHRcdDxhIGNsYXNzPVwibS1idXR0b24tbGlzdF9fYnV0dG9uICBhLWJ1dHRvbiAgYS1idXR0b24tLWV4cGFuZCAgYS1idXR0b24tLXNtYWxsXCIgaHJlZj1cIiNcIj5Mb3RzPC9hPlxuXHQ8L2xpPlxuXHQ8bGkgY2xhc3M9XCJtLWJ1dHRvbi1saXN0X19pdGVtICBsLWdyaWRfX2l0ZW0gIDEvMSAgMS8yQHNtYWxsICAxLzNAbGFyZ2VcIj5cblx0XHQ8YSBjbGFzcz1cIm0tYnV0dG9uLWxpc3RfX2J1dHRvbiAgYS1idXR0b24gIGEtYnV0dG9uLS1leHBhbmQgIGEtYnV0dG9uLS1zbWFsbFwiIGhyZWY9XCIjXCI+b2Y8L2E+XG5cdDwvbGk+XG5cdDxsaSBjbGFzcz1cIm0tYnV0dG9uLWxpc3RfX2l0ZW0gIGwtZ3JpZF9faXRlbSAgMS8xICAxLzJAc21hbGwgIDEvM0BsYXJnZVwiPlxuXHRcdDxhIGNsYXNzPVwibS1idXR0b24tbGlzdF9fYnV0dG9uICBhLWJ1dHRvbiAgYS1idXR0b24tLWV4cGFuZCAgYS1idXR0b24tLXNtYWxsXCIgaHJlZj1cIiNcIj5GdW48L2E+XG5cdDwvbGk+XG5cdDxsaSBjbGFzcz1cIm0tYnV0dG9uLWxpc3RfX2l0ZW0gIGwtZ3JpZF9faXRlbSAgMS8xXCI+XG5cdFx0PGEgY2xhc3M9XCJtLWJ1dHRvbi1saXN0X19idXR0b24gIGEtYnV0dG9uICBhLWJ1dHRvbi0tZXhwYW5kXCIgaHJlZj1cIiNcIj5WaWV3IEFsbDwvYT5cblx0PC9saT5cbjwvdWw+XG5gYGBcblxuIyMgQmlnIEJ1dHRvbnNcblxuIyMjIFVzZVxuXG5UbyBiZSB1c2VkIHdpdGggY29udGVudCB0aGF0IHJlcXVpcmVzIHN0cm9uZ2VyIHZpc3VhbCBkaXN0aW5jdGlvbiBhbmQvb3Igd2l0aCBsb25nZXIgdGV4dC5cblxuIyMjIENvZGVcblxuYGBgaHRtbF9leGFtcGxlXG48dWwgY2xhc3M9XCJtLWJ1dHRvbi1saXN0ICBtLWJ1dHRvbi1saXN0LS1sYXJnZSAgbC1ncmlkXCI+XG5cdDxsaSBjbGFzcz1cIm0tYnV0dG9uLWxpc3RfX2l0ZW0gIGwtZ3JpZF9faXRlbSAgMS8xICAxLzJAbWVkaXVtXCI+XG5cdFx0PGEgY2xhc3M9XCJtLWJ1dHRvbi1saXN0X19idXR0b24gIGEtYnV0dG9uICBhLWJ1dHRvbi0tZXhwYW5kICBhLWJ1dHRvbi0tbGFyZ2VcIiBocmVmPVwiI1wiPkhvdyBkbyB5b3UgZ2V0IGNhbmNlciBvZiB0aGUgYW51cz88L2E+XG5cdDwvbGk+XG5cdDxsaSBjbGFzcz1cIm0tYnV0dG9uLWxpc3RfX2l0ZW0gIGwtZ3JpZF9faXRlbSAgMS8xICAxLzJAbWVkaXVtXCI+XG5cdFx0PGEgY2xhc3M9XCJtLWJ1dHRvbi1saXN0X19idXR0b24gIGEtYnV0dG9uICBhLWJ1dHRvbi0tZXhwYW5kICBhLWJ1dHRvbi0tbGFyZ2VcIiBocmVmPVwiI1wiPkhvdyBjYW4gZG9jdG9ycyB0ZWxsIGlmIGFuYWwgY2FuY2VyIGhhcyBzcHJlYWQ/PC9hPlxuXHQ8L2xpPlxuXHQ8bGkgY2xhc3M9XCJtLWJ1dHRvbi1saXN0X19pdGVtICBsLWdyaWRfX2l0ZW0gIDEvMSAgMS8yQG1lZGl1bVwiPlxuXHRcdDxhIGNsYXNzPVwibS1idXR0b24tbGlzdF9fYnV0dG9uICBhLWJ1dHRvbiAgYS1idXR0b24tLWV4cGFuZCAgYS1idXR0b24tLWxhcmdlXCIgaHJlZj1cIiNcIj5Ib3cgZG9lcyBjYW5jZXIgc3ByZWFkPzwvYT5cblx0PC9saT5cblx0PGxpIGNsYXNzPVwibS1idXR0b24tbGlzdF9faXRlbSAgbC1ncmlkX19pdGVtICAxLzEgIDEvMkBtZWRpdW1cIj5cblx0XHQ8YSBjbGFzcz1cIm0tYnV0dG9uLWxpc3RfX2J1dHRvbiAgYS1idXR0b24gIGEtYnV0dG9uLS1leHBhbmQgIGEtYnV0dG9uLS1sYXJnZVwiIGhyZWY9XCIjXCI+VHJlYXRtZW50cyBmb3IgYW5hbCBjYW5jZXIgYXQgSHVudHNtYW4gSW5zdGl0dXRlPC9hPlxuXHQ8L2xpPlxuPC91bD5cbmBgYFxuXG4qL1xuLm0tYnV0dG9uLWxpc3Qge1xuICBwYWRkaW5nLXRvcDogMWVtOyB9XG5cbi5tLWJ1dHRvbi1saXN0X19pdGVtIHtcbiAgZGlzcGxheTogZmxleDtcbiAgbWFyZ2luLWJvdHRvbTogMWVtOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAzMHJlbSkge1xuICAgIC5tLWJ1dHRvbi1saXN0X19pdGVtIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDJlbTsgfSB9XG5cbi5tLWJ1dHRvbi1saXN0X19idXR0b24ge1xuICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG5cbi5tLWJ1dHRvbi1saXN0LS1sYXJnZSAubS1idXR0b24tbGlzdF9fYnV0dG9uIHtcbiAgYm9yZGVyLWNvbG9yOiAjYTYxOTJlO1xuICBmb250LXdlaWdodDogMzAwO1xuICBwYWRkaW5nOiAyZW07IH1cblxuLypkb2Ncbi0tLVxudGl0bGU6IENhbGxvdXQgQm94ZXNcbm5hbWU6IGNhbGxvdXQtYm94ZXNcbmNhdGVnb3J5OiBNb2xlY3VsZXNcbi0tLVxuKkxhc3QgVXBkYXRlZDogRGVjZW1iZXIgMywgMjAxOCpcblxuQ2FsbG91dCBib3hlcyBhcmUgdXNlZCBmb3IgdGhlIG1haW4gY2FsbC10by1hY3Rpb24gb24gYSBwYWdlLlxuXG4jIyBVc2VcblxuIyMjIFJlY29tbWVuZGVkIPCfkY1cblxuVGhleSdyZSB1c2VkIHRvIHByZXNlbnQgcGhvbmUgbnVtYmVyIGFuZCBhcHBvaW50bWVudCByZXF1ZXN0IGJ1dHRvbnMuIFRoZXkgY2FuIGFkZGl0aW9uYWxseSBkaXNwbGF5IGEgcmVmZmVyaW5nIGRvY3RvciBsaW5rLlxuXG5UaGVzZSBib3hlcyB3aWxsIGZpbGwgdGhlIGF2YWlsYWJsZSBzcGFjZS4gV3JhcCBpbnNpZGUgYSBncmlkIGVsZW1lbnQgdG8gYWNoaWV2ZSB0aGUgZGVzaXJlZCB3aWR0aC5cblxuIyMjIE5vdCBSZWNvbW1lbmRlZCDwn5GOXG5cbkRvIG5vdCB1c2UgdGhlc2UgY2FsbG91dCBib3hlcyB3aXRoaW4gdGhlIGJvZHkgb2YgYSBwYWdlLiBJbnN0ZWFkLCB1c2UgdGhlIFtzaW1wbGUgdW5saW5rZWQgY2FyZF0oI2NhcmRfc2ltcGxlLXVubGlua2VkKSBtb2xlY3VsZS5cblxuIyMjIFN0YW5kYXJkXG5cbkJ5IGRlZmF1bHQsIGNhbGxvdXQgYm94ZXMgaGF2ZSBubyBiYWNrZ3JvdW5kLlxuXG4jIyMjIENvZGVcblxuYGBgaHRtbF9leGFtcGxlX3RhYmxlXG48ZGl2IGNsYXNzPVwibS1jYWxsb3V0XCI+XG5cdDxhIGNsYXNzPVwibS1jYWxsb3V0X19waG9uZVwiIGhyZWY9XCJ0ZWw6MS04MDAtNTU1LTU1NTVcIj4oODAwKSA1NTUtNTU1NTwvYT5cblx0PGEgY2xhc3M9XCJtLWNhbGxvdXRfX2J1dHRvblwiIGhyZWY9XCIjXCI+U2NoZWR1bGUgYW4gQXBwb2ludG1lbnQ8L2E+XG5cdDxhIGNsYXNzPVwibS1jYWxsb3V0X19yZWZlclwiIGhyZWY9XCIjXCI+UmVmZXIgYSBQYXRpZW50PC9hPlxuPC9kaXY+XG5gYGBcblxuIyMjIEJhY2tncm91bmRcblxuQWRkaW5nIHRoZSBgbS1jYWxsb3V0LS13aGl0ZWAgY2xhc3Mgd2lsbCBnaXZlIHRoZSBjYWxsb3V0IGEgc2xpZ2h0bHkgdHJhbnNwYXJlbnQgd2hpdGUgYmFja2dyb3VuZC4gVGhpcyBpcyBtYWlubHkgdXNlZCBmb3IgaW1hZ2UgYmlsbGJvYXJkcy5cblxuIyMjIyBDb2RlXG5cbmBgYGh0bWxfZXhhbXBsZV90YWJsZVxuPGRpdiBjbGFzcz1cInUtYmctYmxhY2tcIiBzdHlsZT1cInBhZGRpbmc6MWVtO1wiPlxuXHQ8ZGl2IGNsYXNzPVwibS1jYWxsb3V0ICBtLWNhbGxvdXQtLXdoaXRlXCI+XG5cdFx0PGEgY2xhc3M9XCJtLWNhbGxvdXRfX3Bob25lXCIgaHJlZj1cInRlbDoxLTgwMC01NTUtNTU1NVwiPig4MDApIDU1NS01NTU1PC9hPlxuXHRcdDxhIGNsYXNzPVwibS1jYWxsb3V0X19idXR0b25cIiBocmVmPVwiI1wiPlNjaGVkdWxlIGFuIEFwcG9pbnRtZW50PC9hPlxuXHRcdDxhIGNsYXNzPVwibS1jYWxsb3V0X19yZWZlclwiIGhyZWY9XCIjXCI+UmVmZXIgYSBQYXRpZW50PC9hPlxuXHQ8L2Rpdj5cbjwvZGl2PlxuYGBgXG5cbiovXG4ubS1jYWxsb3V0IHtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBwYWRkaW5nOiAxZW0gMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0OHJlbSkge1xuICAgIC5tLWNhbGxvdXQge1xuICAgICAgcGFkZGluZzogMWVtOyB9IH1cblxuLm0tY2FsbG91dC0td2hpdGUge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuODUpOyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA0Ny45OXJlbSkge1xuICAubS1jYWxsb3V0X19waG9uZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzQxNDA0MjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xuICAgIGNvbG9yOiAjNDE0MDQyO1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjAyNWVtO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDAuNWVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICB3aGl0ZS1zcGFjZTogd3JhcDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjYTYxOTJlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGRkY7XG4gICAgY29sb3I6ICNhNjE5MmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogMWVtOyB9XG4gICAgLm0tY2FsbG91dF9fcGhvbmUuYnV0dG9uLS1hY3RpdmUge1xuICAgICAgYm9yZGVyLWNvbG9yOiAjMjgyNzI4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzI4MjcyODtcbiAgICAgIGNvbG9yOiAjRkZGOyB9XG4gICAgLm0tY2FsbG91dF9fcGhvbmU6bm90KDpkaXNhYmxlZCkge1xuICAgICAgLyomOmZvY3VzIHtcblx0XHRcdGJvcmRlci1jb2xvcjogJGJ1dHRvbi1mb2N1cy1ib3JkZXItY29sb3I7XG5cdFx0XHRib3gtc2hhZG93OiAkYnV0dG9uLWZvY3VzLWJveC1zaGFkb3c7XG5cdFx0fSovIH1cbiAgICAgIC5tLWNhbGxvdXRfX3Bob25lOm5vdCg6ZGlzYWJsZWQpOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2E2MTkyZTtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2E2MTkyZTtcbiAgICAgICAgY29sb3I6ICNGRkY7IH1cbiAgICAgIC5tLWNhbGxvdXRfX3Bob25lOm5vdCg6ZGlzYWJsZWQpOmFjdGl2ZSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzdhMTIyMjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzdhMTIyMjtcbiAgICAgICAgY29sb3I6ICNGRkY7IH1cbiAgICAubS1jYWxsb3V0X19waG9uZTpkaXNhYmxlZCB7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgICAgb3BhY2l0eTogMC41OyB9XG4gICAgLm0tY2FsbG91dF9fcGhvbmUuYnV0dG9uLS1hY3RpdmUge1xuICAgICAgYm9yZGVyLWNvbG9yOiAjN2ExMjIyO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzdhMTIyMjtcbiAgICAgIGNvbG9yOiAjRkZGOyB9XG4gICAgLm0tY2FsbG91dF9fcGhvbmU6bm90KDpkaXNhYmxlZCkge1xuICAgICAgLyomOmZvY3VzIHtcblx0XHRcdGJvcmRlci1jb2xvcjogJGJ1dHRvbi1mb2N1cy1ib3JkZXItY29sb3I7XG5cdFx0XHRib3gtc2hhZG93OiAkYnV0dG9uLWZvY3VzLWJveC1zaGFkb3c7XG5cdFx0fSovIH1cbiAgICAgIC5tLWNhbGxvdXRfX3Bob25lOm5vdCg6ZGlzYWJsZWQpOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2E2MTkyZTtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2E2MTkyZTtcbiAgICAgICAgY29sb3I6ICNGRkY7IH1cbiAgICAgIC5tLWNhbGxvdXRfX3Bob25lOm5vdCg6ZGlzYWJsZWQpOmFjdGl2ZSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzdhMTIyMjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzdhMTIyMjtcbiAgICAgICAgY29sb3I6ICNGRkY7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDhyZW0pIHtcbiAgLm0tY2FsbG91dF9fcGhvbmUge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC1zaXplOiAxLjVlbTtcbiAgICBmb250LXdlaWdodDogaW5oZXJpdDtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVlbTsgfSB9XG5cbi5tLWNhbGxvdXRfX2J1dHRvbiB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM0MTQwNDI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkY7XG4gIGNvbG9yOiAjNDE0MDQyO1xuICBsZXR0ZXItc3BhY2luZzogMC4wMjVlbTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMC41ZW07XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgb3V0bGluZTogMDtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiB3cmFwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBmb250LXdlaWdodDogNTAwO1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2E2MTkyZTtcbiAgY29sb3I6ICNGRkY7XG4gIGxldHRlci1zcGFjaW5nOiAwLjFlbTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgLm0tY2FsbG91dF9fYnV0dG9uLmJ1dHRvbi0tYWN0aXZlIHtcbiAgICBib3JkZXItY29sb3I6ICMyODI3Mjg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzI4MjcyODtcbiAgICBjb2xvcjogI0ZGRjsgfVxuICAubS1jYWxsb3V0X19idXR0b246bm90KDpkaXNhYmxlZCkge1xuICAgIC8qJjpmb2N1cyB7XG5cdFx0XHRib3JkZXItY29sb3I6ICRidXR0b24tZm9jdXMtYm9yZGVyLWNvbG9yO1xuXHRcdFx0Ym94LXNoYWRvdzogJGJ1dHRvbi1mb2N1cy1ib3gtc2hhZG93O1xuXHRcdH0qLyB9XG4gICAgLm0tY2FsbG91dF9fYnV0dG9uOm5vdCg6ZGlzYWJsZWQpOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNhNjE5MmU7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjYTYxOTJlO1xuICAgICAgY29sb3I6ICNGRkY7IH1cbiAgICAubS1jYWxsb3V0X19idXR0b246bm90KDpkaXNhYmxlZCk6YWN0aXZlIHtcbiAgICAgIGJvcmRlci1jb2xvcjogIzdhMTIyMjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM3YTEyMjI7XG4gICAgICBjb2xvcjogI0ZGRjsgfVxuICAubS1jYWxsb3V0X19idXR0b246ZGlzYWJsZWQge1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgb3BhY2l0eTogMC41OyB9XG4gIC5tLWNhbGxvdXRfX2J1dHRvbi5idXR0b24tLWFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzdhMTIyMjsgfVxuICAubS1jYWxsb3V0X19idXR0b246bm90KDpkaXNhYmxlZCkge1xuICAgIC8qJjpmb2N1cyB7XG5cdFx0XHRib3JkZXItY29sb3I6ICRidXR0b24tZm9jdXMtYm9yZGVyLWNvbG9yO1xuXHRcdFx0Ym94LXNoYWRvdzogJGJ1dHRvbi1mb2N1cy1ib3gtc2hhZG93O1xuXHRcdH0qLyB9XG4gICAgLm0tY2FsbG91dF9fYnV0dG9uOm5vdCg6ZGlzYWJsZWQpOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNkMjIwM2E7IH1cbiAgICAubS1jYWxsb3V0X19idXR0b246bm90KDpkaXNhYmxlZCk6YWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM3YTEyMjI7IH1cblxuLm0tY2FsbG91dF9fcmVmZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbWFyZ2luLXRvcDogMWVtOyB9XG5cbi5tLWNhbGxvdXRfX3JlZmVyIC5hLWljb24ge1xuICBtYXJnaW4tcmlnaHQ6IDAuNWVtOyB9XG5cbi5tLWNhbGxvdXRfX3Bob25lICsgLm0tY2FsbG91dF9fcmVmZXIge1xuICBtYXJnaW4tdG9wOiAwLjVlbTsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDhyZW0pIHtcbiAgLm0tY2FsbG91dF9fYnV0dG9uLmlzLXN0dWNrIHtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICByaWdodDogMDtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgyNzBkZWcpIHRyYW5zbGF0ZSg2MCUsIDApO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGJvdHRvbSByaWdodDtcbiAgICB6LWluZGV4OiA2MDA7IH0gfVxuXG4vKmRvY1xuLS0tXG50aXRsZTogSW1hZ2UgQ2FwdGlvbnNcbm5hbWU6IGltYWdlLWNhcHRpb25zXG5jYXRlZ29yeTogTW9sZWN1bGVzXG4tLS1cbipMYXN0IFVwZGF0ZWQ6IERlY2VtYmVyIDMsIDIwMTgqXG5cblRoZXNlIGNsYXNzZXMgY3JlYXRlIGNhcHRpb24gb3ZlcmxheXMgZm9yIGltYWdlcy4gVGhleSBhcmUgcHJpbWFyaWx5IHVzZWQgaW4gY29uanVuY3Rpb24gd2l0aCB0aGUgW2JpbGxib2FyZF1bYmlsbGJvYXJkc10gb3IgW3N3aXBlcl1bc3dpcGVyXSBvcmdhbmlzbXMuXG5cbiMjIFVzZVxuXG5DYW4gYmUgdXNlZCB3aXRoIHRoZSBmb2xsb3dpbmcgb3B0aW9uczpcblxuKiAqKkNvbG9ycyAmIEJveGVzKiogKHVzZSBvbmUpXG5cdC0gW0RhcmtdKCNjYXB0aW9uc19kYXJrKVxuXHQtIFtMaWdodF0oI2NhcHRpb25zX2xpZ2h0KVxuXHQtIFtCb3hlZF0oI2NhcHRpb25zX2JveGVkKVxuKiAqKlBvc2l0aW9uaW5nKiogKHVzZSBvbmUsIGluIGNvbmp1bmN0aW9uIHdpdGggb25lIG9mIHRoZSBhYm92ZSBzdHlsZSBjbGFzc2VzKVxuXHQtIFtCb3R0b21dKCNjYXB0aW9uc19ib3R0b20pXG5cdC0gW1RvcF0oI2NhcHRpb25zX3RvcClcblxuIyMjIDxhIG5hbWU9XCJjYXB0aW9uc19kYXJrXCI+PC9hPkRhcmtcblxuRGFyayBjYXB0aW9ucyBoYXZlIGEgZGFya2VuZWQsIHNlbWktdHJhbnNwYXJlbnQgYmFja2dyb3VuZCB3aXRoIGxpZ2h0IHRleHQuXG5cbiMjIyNDb2RlXG5cbmBgYGh0bWxfZXhhbXBsZVxuPGhlYWRlciBjbGFzcz1cIm8tYmlsbGJvYXJkICBvLWJpbGxib2FyZC0tYmctaW1hZ2UgIG8tYmlsbGJvYXJkLS1zbWFsbCAgbC1jb250YWluZXIgIGwtY29udGFpbmVyLS1zdXBlciAgbC1jb250YWluZXItLWZsdXNoXCIgcm9sZT1cImJhbm5lclwiPlxuXHQ8ZGl2IGNsYXNzPVwiby1iaWxsYm9hcmRfX2ltYWdlLXdyYXBwZXIgIG8tYmlsbGJvYXJkX19pbWFnZS13cmFwcGVyLS1ncmFkaWVudFwiIHN0eWxlPVwiYmFja2dyb3VuZC1pbWFnZTp1cmwoJ2h0dHBzOi8vcGxhY2Vob2xkLml0LzEyMDB4NDAwL0FDQzdCRi9mZmYnKTtcIj5cblx0XHQ8aW1nIGFsdD1cIlwiIGNsYXNzPVwiby1iaWxsYm9hcmRfX2ltYWdlIG8tYmlsbGJvYXJkX19pbWFnZS13cmFwcGVyLS1ncmFkaWVudFwiIHN0eWxlPVwib3BhY2l0eTowO1wiIHNyYz1cImh0dHBzOi8vcGxhY2Vob2xkLml0LzEyMDB4NDAwL0FDQzdCRi9mZmZcIj5cblx0PC9kaXY+XG5cdDxkaXYgY2xhc3M9XCJvLWJpbGxib2FyZF9fY29udGVudFwiPlxuXHRcdDxkaXYgY2xhc3M9XCJvLWJpbGxib2FyZF9faGVhZGVyXCI+PC9kaXY+XG5cdFx0PGRpdiBjbGFzcz1cIm8tYmlsbGJvYXJkX19ib2R5XCI+PC9kaXY+XG5cdFx0PGRpdiBjbGFzcz1cIm8tYmlsbGJvYXJkX19mb290ZXJcIj5cblx0XHRcdDxkaXYgY2xhc3M9XCJtLWNhcHRpb24gIG0tY2FwdGlvbi0tZGFya1wiPlxuXHRcdFx0XHQ8ZGl2IGNsYXNzPVwibC1jb250YWluZXIgIGwtY29udGFpbmVyLS1sYXJnZVwiPlxuXHRcdFx0XHRcdDxoMSBjbGFzcz1cIm0tY2FwdGlvbl9faGVhZGluZ1wiPkhlYWRpbmc8L2gxPlxuXHRcdFx0XHRcdDxwIGNsYXNzPVwibS1jYXB0aW9uX19zdWJoZWFkaW5nXCI+U3ViaGVhZGluZzwvcD5cblx0XHRcdFx0PC9kaXY+XG5cdFx0XHQ8L2Rpdj5cblx0XHQ8L2Rpdj5cblx0PC9kaXY+XG48L2hlYWRlcj5cbmBgYFxuXG4jIyMgPGEgbmFtZT1cImNhcHRpb25zX2xpZ2h0XCI+PC9hPkxpZ2h0XG5cbkxpZ2h0IGNhcHRpb25zIGhhdmUgYSBsaWdodGVuZWQsIHNlbWktdHJhbnNwYXJlbnQgYmFja2dyb3VuZCBhbmQgZGFyayB0ZXh0LlxuXG4jIyMjQ29kZVxuXG5gYGBodG1sX2V4YW1wbGVcbjxoZWFkZXIgY2xhc3M9XCJvLWJpbGxib2FyZCAgby1iaWxsYm9hcmQtLWJnLWltYWdlICBvLWJpbGxib2FyZC0tc21hbGwgIGwtY29udGFpbmVyICBsLWNvbnRhaW5lci0tc3VwZXIgIGwtY29udGFpbmVyLS1mbHVzaFwiIHJvbGU9XCJiYW5uZXJcIj5cblx0PGRpdiBjbGFzcz1cIm8tYmlsbGJvYXJkX19pbWFnZS13cmFwcGVyICBvLWJpbGxib2FyZF9faW1hZ2Utd3JhcHBlci0tZ3JhZGllbnRcIiBzdHlsZT1cImJhY2tncm91bmQtaW1hZ2U6dXJsKCdodHRwczovL3BsYWNlaG9sZC5pdC8xMjAweDQwMC9BQ0M3QkYvZmZmJyk7XCI+XG5cdFx0PGltZyBhbHQ9XCJcIiBjbGFzcz1cIm8tYmlsbGJvYXJkX19pbWFnZSBvLWJpbGxib2FyZF9faW1hZ2Utd3JhcHBlci0tZ3JhZGllbnRcIiBzdHlsZT1cIm9wYWNpdHk6MDtcIiBzcmM9XCJodHRwczovL3BsYWNlaG9sZC5pdC8xMjAweDQwMC9BQ0M3QkYvZmZmXCI+XG5cdDwvZGl2PlxuXHQ8ZGl2IGNsYXNzPVwiby1iaWxsYm9hcmRfX2NvbnRlbnRcIj5cblx0XHQ8ZGl2IGNsYXNzPVwiby1iaWxsYm9hcmRfX2hlYWRlclwiPjwvZGl2PlxuXHRcdDxkaXYgY2xhc3M9XCJvLWJpbGxib2FyZF9fYm9keVwiPjwvZGl2PlxuXHRcdDxkaXYgY2xhc3M9XCJvLWJpbGxib2FyZF9fZm9vdGVyXCI+XG5cdFx0XHQ8ZGl2IGNsYXNzPVwibS1jYXB0aW9uICBtLWNhcHRpb24tLWxpZ2h0XCI+XG5cdFx0XHRcdDxkaXYgY2xhc3M9XCJsLWNvbnRhaW5lciAgbC1jb250YWluZXItLWxhcmdlXCI+XG5cdFx0XHRcdFx0PGgxIGNsYXNzPVwibS1jYXB0aW9uX19oZWFkaW5nXCI+SGVhZGluZzwvaDE+XG5cdFx0XHRcdFx0PHAgY2xhc3M9XCJtLWNhcHRpb25fX3N1YmhlYWRpbmdcIj5TdWJoZWFkaW5nPC9wPlxuXHRcdFx0XHQ8L2Rpdj5cblx0XHRcdDwvZGl2PlxuXHRcdDwvZGl2PlxuXHQ8L2Rpdj5cbjwvaGVhZGVyPlxuYGBgXG5cbiMjIyA8YSBuYW1lPVwiY2FwdGlvbnNfYm94ZWRcIj48L2E+Qm94ZWQgQ2FwdGlvbnNcblxuVG8gZW5jbG9zZSB0aGUgY2FwdGlvbiB3aXRoIGEgYm9yZGVyIGFuZCBjZW50ZXIgYWxpZ24gdGV4dC4gQ3VycmVudGx5IG9ubHkgdXNlZCBvbiB0aGUgaG9tZXBhZ2Ugc2xpZGVyLlxuXG4jIyMjQ29kZVxuXG5gYGBodG1sX2V4YW1wbGVcbjxoZWFkZXIgY2xhc3M9XCJvLWJpbGxib2FyZCAgby1iaWxsYm9hcmQtLWJnLWltYWdlICBvLWJpbGxib2FyZC0tc21hbGwgIGwtY29udGFpbmVyICBsLWNvbnRhaW5lci0tc3VwZXIgIGwtY29udGFpbmVyLS1mbHVzaFwiIHJvbGU9XCJiYW5uZXJcIj5cblx0PGRpdiBjbGFzcz1cIm8tYmlsbGJvYXJkX19pbWFnZS13cmFwcGVyICBvLWJpbGxib2FyZF9faW1hZ2Utd3JhcHBlci0tZ3JhZGllbnRcIiBzdHlsZT1cImJhY2tncm91bmQtaW1hZ2U6dXJsKCdodHRwczovL3BsYWNlaG9sZC5pdC8xMjAweDQwMC9BQ0M3QkYvZmZmJyk7XCI+XG5cdFx0PGltZyBhbHQ9XCJcIiBjbGFzcz1cIm8tYmlsbGJvYXJkX19pbWFnZSBvLWJpbGxib2FyZF9faW1hZ2Utd3JhcHBlci0tZ3JhZGllbnRcIiBzdHlsZT1cIm9wYWNpdHk6MDtcIiBzcmM9XCJodHRwczovL3BsYWNlaG9sZC5pdC8xMjAweDQwMC9BQ0M3QkYvZmZmXCI+XG5cdDwvZGl2PlxuXHQ8ZGl2IGNsYXNzPVwiby1iaWxsYm9hcmRfX2NvbnRlbnRcIj5cblx0XHQ8ZGl2IGNsYXNzPVwiby1iaWxsYm9hcmRfX2hlYWRlclwiPjwvZGl2PlxuXHRcdDxkaXYgY2xhc3M9XCJvLWJpbGxib2FyZF9fYm9keVwiPjwvZGl2PlxuXHRcdDxkaXYgY2xhc3M9XCJvLWJpbGxib2FyZF9fZm9vdGVyXCI+XG5cdFx0XHQ8ZGl2IGNsYXNzPVwibC1jb250YWluZXIgIGwtY29udGFpbmVyLS1sYXJnZVwiPlxuXHRcdFx0XHQ8ZGl2IGNsYXNzPVwibS1jYXB0aW9uICBtLWNhcHRpb24tLWJveCAgbS1jYXB0aW9uLS1kYXJrICB1LXNwYWNlLWJvdHRvbS0tbWVkaXVtXCI+XG5cdFx0XHRcdFx0PGgxIGNsYXNzPVwibS1jYXB0aW9uX19oZWFkaW5nXCI+SGVhZGluZzwvaDE+XG5cdFx0XHRcdFx0PHAgY2xhc3M9XCJtLWNhcHRpb25fX3N1YmhlYWRpbmdcIj5TdWJoZWFkaW5nPC9wPlxuXHRcdFx0XHQ8L2Rpdj5cblx0XHRcdDwvZGl2PlxuXHRcdDwvZGl2PlxuXHQ8L2Rpdj5cbjwvaGVhZGVyPlxuYGBgXG5cbiMjIyA8YSBuYW1lPVwiY2FwdGlvbnNfYm90dG9tXCI+PC9hPkJvdHRvbVxuXG5UbyBwb3NpdGlvbiB0aGUgY2FwdGlvbiBhdCB0aGUgYm90dG9tIG9mIHRoZSBpbWFnZSwgcGxhY2UgYDxkaXYgY2xhc3M9XCJtLWNhcHRpb24gbS1jYXB0aW9uLS1cIj5gIHdpdGhpbiB0aGUgYDxkaXYgY2xhc3M9XCJvLWJpbGxib2FyZF9fZm9vdGVyXCI+YC4gVGhpcyBpcyB0aGUgcmVjb21tZW5kZWQgcG9zaXRpb25pbmcgZm9yIG1vc3QgaW1hZ2VzLlxuXG4jIyMjQ29kZVxuXG5gYGBodG1sX2V4YW1wbGVcbjxoZWFkZXIgY2xhc3M9XCJvLWJpbGxib2FyZCAgby1iaWxsYm9hcmQtLWJnLWltYWdlICBvLWJpbGxib2FyZC0tc21hbGwgIGwtY29udGFpbmVyICBsLWNvbnRhaW5lci0tc3VwZXIgIGwtY29udGFpbmVyLS1mbHVzaFwiIHJvbGU9XCJiYW5uZXJcIj5cblx0PGRpdiBjbGFzcz1cIm8tYmlsbGJvYXJkX19pbWFnZS13cmFwcGVyICBvLWJpbGxib2FyZF9faW1hZ2Utd3JhcHBlci0tZ3JhZGllbnRcIiBzdHlsZT1cImJhY2tncm91bmQtaW1hZ2U6dXJsKCdodHRwczovL3BsYWNlaG9sZC5pdC8xMjAweDQwMC9BQ0M3QkYvZmZmJyk7XCI+XG5cdFx0PGltZyBhbHQ9XCJcIiBjbGFzcz1cIm8tYmlsbGJvYXJkX19pbWFnZSBvLWJpbGxib2FyZF9faW1hZ2Utd3JhcHBlci0tZ3JhZGllbnRcIiBzdHlsZT1cIm9wYWNpdHk6MDtcIiBzcmM9XCJodHRwczovL3BsYWNlaG9sZC5pdC8xMjAweDQwMC9BQ0M3QkYvZmZmXCI+XG5cdDwvZGl2PlxuXHQ8ZGl2IGNsYXNzPVwiby1iaWxsYm9hcmRfX2NvbnRlbnRcIj5cblx0XHQ8ZGl2IGNsYXNzPVwiby1iaWxsYm9hcmRfX2hlYWRlclwiPjwvZGl2PlxuXHRcdDxkaXYgY2xhc3M9XCJvLWJpbGxib2FyZF9fYm9keVwiPjwvZGl2PlxuXHRcdDxkaXYgY2xhc3M9XCJvLWJpbGxib2FyZF9fZm9vdGVyXCI+XG5cdFx0XHQ8ZGl2IGNsYXNzPVwibS1jYXB0aW9uICBtLWNhcHRpb24tLWRhcmtcIj5cblx0XHRcdFx0PGRpdiBjbGFzcz1cImwtY29udGFpbmVyICBsLWNvbnRhaW5lci0tbGFyZ2VcIj5cblx0XHRcdFx0XHQ8aDEgY2xhc3M9XCJtLWNhcHRpb25fX2hlYWRpbmdcIj5IZWFkaW5nPC9oMT5cblx0XHRcdFx0XHQ8cCBjbGFzcz1cIm0tY2FwdGlvbl9fc3ViaGVhZGluZ1wiPlN1YmhlYWRpbmc8L3A+XG5cdFx0XHRcdDwvZGl2PlxuXHRcdFx0PC9kaXY+XG5cdFx0PC9kaXY+XG5cdDwvZGl2PlxuPC9oZWFkZXI+XG5gYGBcblxuIyMjIDxhIG5hbWU9XCJjYXB0aW9uc190b3BcIj48L2E+VG9wXG5cblRvIHBvc2l0aW9uIHRoZSBjYXB0aW9uIGF0IHRoZSB0b3Agb2YgdGhlIGltYWdlLCBwbGFjZSBgPGRpdiBjbGFzcz1cIm0tY2FwdGlvbiBtLWNhcHRpb24tLVwiPmAgd2l0aGluIHRoZSBgPGRpdiBjbGFzcz1cIm8tYmlsbGJvYXJkX19oZWFkZXJcIj5gLiBVc2Ugb25seSB3aGVuIGEgY2FwdGlvbiBwb3NpdGlvbmVkIGluIHRoZSBib3R0b20gd291bGQgb2JzY3VyZSB0aGUgcHJpbWFyeSBmb2N1cyBvZiB0aGUgaW1hZ2UuXG5cbiMjIyNDb2RlXG5cbmBgYGh0bWxfZXhhbXBsZVxuPGhlYWRlciBjbGFzcz1cIm8tYmlsbGJvYXJkICBvLWJpbGxib2FyZC0tYmctaW1hZ2UgIG8tYmlsbGJvYXJkLS1zbWFsbCAgbC1jb250YWluZXIgIGwtY29udGFpbmVyLS1zdXBlciAgbC1jb250YWluZXItLWZsdXNoXCIgcm9sZT1cImJhbm5lclwiPlxuXHQ8ZGl2IGNsYXNzPVwiby1iaWxsYm9hcmRfX2ltYWdlLXdyYXBwZXIgIG8tYmlsbGJvYXJkX19pbWFnZS13cmFwcGVyLS1ncmFkaWVudFwiIHN0eWxlPVwiYmFja2dyb3VuZC1pbWFnZTp1cmwoJ2h0dHBzOi8vcGxhY2Vob2xkLml0LzEyMDB4NDAwL0FDQzdCRi9mZmYnKTtcIj5cblx0XHQ8aW1nIGFsdD1cIlwiIGNsYXNzPVwiby1iaWxsYm9hcmRfX2ltYWdlIG8tYmlsbGJvYXJkX19pbWFnZS13cmFwcGVyLS1ncmFkaWVudFwiIHN0eWxlPVwib3BhY2l0eTowO1wiIHNyYz1cImh0dHBzOi8vcGxhY2Vob2xkLml0LzEyMDB4NDAwL0FDQzdCRi9mZmZcIj5cblx0PC9kaXY+XG5cdDxkaXYgY2xhc3M9XCJvLWJpbGxib2FyZF9fY29udGVudFwiPlxuXHRcdDxkaXYgY2xhc3M9XCJvLWJpbGxib2FyZF9faGVhZGVyXCI+XG5cdFx0XHQ8ZGl2IGNsYXNzPVwibS1jYXB0aW9uICBtLWNhcHRpb24tLWRhcmtcIj5cblx0XHRcdFx0PGRpdiBjbGFzcz1cImwtY29udGFpbmVyICBsLWNvbnRhaW5lci0tbGFyZ2VcIj5cblx0XHRcdFx0XHQ8aDEgY2xhc3M9XCJtLWNhcHRpb25fX2hlYWRpbmdcIj5IZWFkaW5nPC9oMT5cblx0XHRcdFx0XHQ8cCBjbGFzcz1cIm0tY2FwdGlvbl9fc3ViaGVhZGluZ1wiPlN1YmhlYWRpbmc8L3A+XG5cdFx0XHRcdDwvZGl2PlxuXHRcdFx0PC9kaXY+XG5cdFx0PC9kaXY+XG5cdFx0PGRpdiBjbGFzcz1cIm8tYmlsbGJvYXJkX19ib2R5XCI+PC9kaXY+XG5cdFx0PGRpdiBjbGFzcz1cIm8tYmlsbGJvYXJkX19mb290ZXJcIj48L2Rpdj5cblx0PC9kaXY+XG48L2hlYWRlcj5cbmBgYFxuXG4qL1xuLm0tY2FwdGlvbiB7XG4gIHBhZGRpbmctYm90dG9tOiAzZW07XG4gIHBhZGRpbmctdG9wOiAzZW07IH1cblxuLm0tY2FwdGlvbi0tc3VwZXIge1xuICBwYWRkaW5nLWJvdHRvbTogM2VtO1xuICBwYWRkaW5nLXRvcDogM2VtOyB9XG5cbi5tLWNhcHRpb24tLXhsYXJnZSB7XG4gIHBhZGRpbmctYm90dG9tOiAyZW07XG4gIHBhZGRpbmctdG9wOiAyZW07IH1cblxuLm0tY2FwdGlvbi0tbGFyZ2Uge1xuICBwYWRkaW5nLWJvdHRvbTogMS41ZW07XG4gIHBhZGRpbmctdG9wOiAxLjVlbTsgfVxuXG4ubS1jYXB0aW9uLS1tZWRpdW0ge1xuICBwYWRkaW5nLWJvdHRvbTogMWVtO1xuICBwYWRkaW5nLXRvcDogMWVtOyB9XG5cbi5tLWNhcHRpb24tLXNtYWxsIHtcbiAgcGFkZGluZy1ib3R0b206IDAuNWVtO1xuICBwYWRkaW5nLXRvcDogMC41ZW07IH1cblxuLm0tY2FwdGlvbi0teHNtYWxsIHtcbiAgcGFkZGluZy1ib3R0b206IDAuMjVlbTtcbiAgcGFkZGluZy10b3A6IDAuMjVlbTsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMjByZW0pIHtcbiAgLm0tY2FwdGlvbi0tc3VwZXJcXEB4c21hbGwge1xuICAgIHBhZGRpbmctYm90dG9tOiAzZW07XG4gICAgcGFkZGluZy10b3A6IDNlbTsgfVxuICAubS1jYXB0aW9uLS14bGFyZ2VcXEB4c21hbGwge1xuICAgIHBhZGRpbmctYm90dG9tOiAyZW07XG4gICAgcGFkZGluZy10b3A6IDJlbTsgfVxuICAubS1jYXB0aW9uLS1sYXJnZVxcQHhzbWFsbCB7XG4gICAgcGFkZGluZy1ib3R0b206IDEuNWVtO1xuICAgIHBhZGRpbmctdG9wOiAxLjVlbTsgfVxuICAubS1jYXB0aW9uLS1tZWRpdW1cXEB4c21hbGwge1xuICAgIHBhZGRpbmctYm90dG9tOiAxZW07XG4gICAgcGFkZGluZy10b3A6IDFlbTsgfVxuICAubS1jYXB0aW9uLS1zbWFsbFxcQHhzbWFsbCB7XG4gICAgcGFkZGluZy1ib3R0b206IDAuNWVtO1xuICAgIHBhZGRpbmctdG9wOiAwLjVlbTsgfVxuICAubS1jYXB0aW9uLS14c21hbGxcXEB4c21hbGwge1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjI1ZW07XG4gICAgcGFkZGluZy10b3A6IDAuMjVlbTsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAzMHJlbSkge1xuICAubS1jYXB0aW9uLS1zdXBlclxcQHNtYWxsIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogM2VtO1xuICAgIHBhZGRpbmctdG9wOiAzZW07IH1cbiAgLm0tY2FwdGlvbi0teGxhcmdlXFxAc21hbGwge1xuICAgIHBhZGRpbmctYm90dG9tOiAyZW07XG4gICAgcGFkZGluZy10b3A6IDJlbTsgfVxuICAubS1jYXB0aW9uLS1sYXJnZVxcQHNtYWxsIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMS41ZW07XG4gICAgcGFkZGluZy10b3A6IDEuNWVtOyB9XG4gIC5tLWNhcHRpb24tLW1lZGl1bVxcQHNtYWxsIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMWVtO1xuICAgIHBhZGRpbmctdG9wOiAxZW07IH1cbiAgLm0tY2FwdGlvbi0tc21hbGxcXEBzbWFsbCB7XG4gICAgcGFkZGluZy1ib3R0b206IDAuNWVtO1xuICAgIHBhZGRpbmctdG9wOiAwLjVlbTsgfVxuICAubS1jYXB0aW9uLS14c21hbGxcXEBzbWFsbCB7XG4gICAgcGFkZGluZy1ib3R0b206IDAuMjVlbTtcbiAgICBwYWRkaW5nLXRvcDogMC4yNWVtOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4cmVtKSB7XG4gIC5tLWNhcHRpb24tLXN1cGVyXFxAbWVkaXVtIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogM2VtO1xuICAgIHBhZGRpbmctdG9wOiAzZW07IH1cbiAgLm0tY2FwdGlvbi0teGxhcmdlXFxAbWVkaXVtIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMmVtO1xuICAgIHBhZGRpbmctdG9wOiAyZW07IH1cbiAgLm0tY2FwdGlvbi0tbGFyZ2VcXEBtZWRpdW0ge1xuICAgIHBhZGRpbmctYm90dG9tOiAxLjVlbTtcbiAgICBwYWRkaW5nLXRvcDogMS41ZW07IH1cbiAgLm0tY2FwdGlvbi0tbWVkaXVtXFxAbWVkaXVtIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMWVtO1xuICAgIHBhZGRpbmctdG9wOiAxZW07IH1cbiAgLm0tY2FwdGlvbi0tc21hbGxcXEBtZWRpdW0ge1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjVlbTtcbiAgICBwYWRkaW5nLXRvcDogMC41ZW07IH1cbiAgLm0tY2FwdGlvbi0teHNtYWxsXFxAbWVkaXVtIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC4yNWVtO1xuICAgIHBhZGRpbmctdG9wOiAwLjI1ZW07IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNjRyZW0pIHtcbiAgLm0tY2FwdGlvbi0tc3VwZXJcXEBsYXJnZSB7XG4gICAgcGFkZGluZy1ib3R0b206IDNlbTtcbiAgICBwYWRkaW5nLXRvcDogM2VtOyB9XG4gIC5tLWNhcHRpb24tLXhsYXJnZVxcQGxhcmdlIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMmVtO1xuICAgIHBhZGRpbmctdG9wOiAyZW07IH1cbiAgLm0tY2FwdGlvbi0tbGFyZ2VcXEBsYXJnZSB7XG4gICAgcGFkZGluZy1ib3R0b206IDEuNWVtO1xuICAgIHBhZGRpbmctdG9wOiAxLjVlbTsgfVxuICAubS1jYXB0aW9uLS1tZWRpdW1cXEBsYXJnZSB7XG4gICAgcGFkZGluZy1ib3R0b206IDFlbTtcbiAgICBwYWRkaW5nLXRvcDogMWVtOyB9XG4gIC5tLWNhcHRpb24tLXNtYWxsXFxAbGFyZ2Uge1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjVlbTtcbiAgICBwYWRkaW5nLXRvcDogMC41ZW07IH1cbiAgLm0tY2FwdGlvbi0teHNtYWxsXFxAbGFyZ2Uge1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjI1ZW07XG4gICAgcGFkZGluZy10b3A6IDAuMjVlbTsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3OHJlbSkge1xuICAubS1jYXB0aW9uLS1zdXBlclxcQHhsYXJnZSB7XG4gICAgcGFkZGluZy1ib3R0b206IDNlbTtcbiAgICBwYWRkaW5nLXRvcDogM2VtOyB9XG4gIC5tLWNhcHRpb24tLXhsYXJnZVxcQHhsYXJnZSB7XG4gICAgcGFkZGluZy1ib3R0b206IDJlbTtcbiAgICBwYWRkaW5nLXRvcDogMmVtOyB9XG4gIC5tLWNhcHRpb24tLWxhcmdlXFxAeGxhcmdlIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMS41ZW07XG4gICAgcGFkZGluZy10b3A6IDEuNWVtOyB9XG4gIC5tLWNhcHRpb24tLW1lZGl1bVxcQHhsYXJnZSB7XG4gICAgcGFkZGluZy1ib3R0b206IDFlbTtcbiAgICBwYWRkaW5nLXRvcDogMWVtOyB9XG4gIC5tLWNhcHRpb24tLXNtYWxsXFxAeGxhcmdlIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC41ZW07XG4gICAgcGFkZGluZy10b3A6IDAuNWVtOyB9XG4gIC5tLWNhcHRpb24tLXhzbWFsbFxcQHhsYXJnZSB7XG4gICAgcGFkZGluZy1ib3R0b206IDAuMjVlbTtcbiAgICBwYWRkaW5nLXRvcDogMC4yNWVtOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyNXJlbSkge1xuICAubS1jYXB0aW9uLS1zdXBlclxcQHN1cGVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogM2VtO1xuICAgIHBhZGRpbmctdG9wOiAzZW07IH1cbiAgLm0tY2FwdGlvbi0teGxhcmdlXFxAc3VwZXIge1xuICAgIHBhZGRpbmctYm90dG9tOiAyZW07XG4gICAgcGFkZGluZy10b3A6IDJlbTsgfVxuICAubS1jYXB0aW9uLS1sYXJnZVxcQHN1cGVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMS41ZW07XG4gICAgcGFkZGluZy10b3A6IDEuNWVtOyB9XG4gIC5tLWNhcHRpb24tLW1lZGl1bVxcQHN1cGVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMWVtO1xuICAgIHBhZGRpbmctdG9wOiAxZW07IH1cbiAgLm0tY2FwdGlvbi0tc21hbGxcXEBzdXBlciB7XG4gICAgcGFkZGluZy1ib3R0b206IDAuNWVtO1xuICAgIHBhZGRpbmctdG9wOiAwLjVlbTsgfVxuICAubS1jYXB0aW9uLS14c21hbGxcXEBzdXBlciB7XG4gICAgcGFkZGluZy1ib3R0b206IDAuMjVlbTtcbiAgICBwYWRkaW5nLXRvcDogMC4yNWVtOyB9IH1cblxuLm0tY2FwdGlvbi0tbGlnaHQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNjUpOyB9XG5cbi5tLWNhcHRpb24tLWRhcmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMyk7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQ3Ljk5cmVtKSB7XG4gICAgLm0tY2FwdGlvbi0tZGFyayB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7IH0gfVxuXG4ubS1jYXB0aW9uLS1ib3gge1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogMXB4O1xuICBwYWRkaW5nOiAxLjVlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi5tLWNhcHRpb24tLWxpZ2h0Lm0tY2FwdGlvbi0tYm94IHtcbiAgYm9yZGVyLWNvbG9yOiAjNDE0MDQyOyB9XG5cbi5tLWNhcHRpb24tLWRhcmsubS1jYXB0aW9uLS1ib3gge1xuICBib3JkZXItY29sb3I6ICNGRkY7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQ3Ljk5cmVtKSB7XG4gICAgLm0tY2FwdGlvbi0tZGFyay5tLWNhcHRpb24tLWJveCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMyk7IH0gfVxuXG4ubS1jYXB0aW9uX19oZWFkaW5nLFxuLm0tY2FwdGlvbl9fbGluayB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cblxuLm0tY2FwdGlvbl9faGVhZGluZzpsYXN0LWNoaWxkLFxuLm0tY2FwdGlvbl9fc3ViaGVhZGluZzpsYXN0LWNoaWxkLFxuLm0tY2FwdGlvbl9fbGluazpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4ubS1jYXB0aW9uX19oZWFkaW5nIHtcbiAgZm9udC1zaXplOiAxLjI1ZW07XG4gIGxldHRlci1zcGFjaW5nOiAuMDc1ZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIG1hcmdpbjogMCAwIDAuMjVlbTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMzByZW0pIHtcbiAgICAubS1jYXB0aW9uX19oZWFkaW5nIHtcbiAgICAgIGZvbnQtc2l6ZTogMS41ZW07IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDhyZW0pIHtcbiAgICAubS1jYXB0aW9uX19oZWFkaW5nIHtcbiAgICAgIGZvbnQtc2l6ZTogMmVtOyB9IH1cblxuLm0tY2FwdGlvbi0tZGFyayAubS1jYXB0aW9uX19oZWFkaW5nLFxuLm0tY2FwdGlvbi0tZGFyayAubS1jYXB0aW9uX19zdWJoZWFkaW5nLFxuLm0tY2FwdGlvbi0tZGFyayAubS1jYXB0aW9uX19saW5rIHtcbiAgY29sb3I6ICNGRkY7XG4gIHRleHQtc2hhZG93OiAwcHggMXB4IDNweCByZ2JhKDAsIDAsIDAsIDAuNSk7IH1cblxuLm0tY2FwdGlvbi0tbGlnaHQgLm0tY2FwdGlvbl9faGVhZGluZyxcbi5tLWNhcHRpb24tLWxpZ2h0IC5tLWNhcHRpb25fX3N1YmhlYWRpbmcsXG4ubS1jYXB0aW9uLS1saWdodCAubS1jYXB0aW9uX19saW5rIHtcbiAgY29sb3I6ICM0MTQwNDI7XG4gIHRleHQtc2hhZG93OiAwcHggMXB4IDNweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7IH1cblxuLm0tY2FwdGlvbi0tZGFyayAubS1jYXB0aW9uX19saW5rIHtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogI0ZGRjsgfVxuXG4ubS1jYXB0aW9uLS1saWdodCAubS1jYXB0aW9uX19saW5rIHtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogIzQxNDA0MjsgfVxuXG4vKmRvY1xuLS0tXG50aXRsZTogQ2FyZHNcbm5hbWU6IGNhcmRzXG5jYXRlZ29yeTogTW9sZWN1bGVzXG4tLS1cbipMYXN0IFVwZGF0ZWQ6IERlY2VtYmVyIDMsIDIwMTgqXG5cbkNhcmRzIGFyZSBhIGNvbW1vbiBtaW5pbWFsaXN0aWMgZGVzaWduIHRvb2wgdXNlZCB0byBzZWdyZWdhdGUgc2VjdGlvbnMgb2YgY29udGVudC4gV2UncmUgdXNpbmcgY2FyZHMgdG8gbGluayB0byBwYWdlcyB0aGF0IGFyZW4ndCBzcGVjaWFsdGllcywgcHJvY2VkdXJlcywgb3IgcHJvZ3JhbXMuXG5cbiMjIFVzZVxuXG5DYXJkcyBhcmUgYSBnb29kIHdheSB0byBzZXBhcmF0ZSBjZXJ0YWluIGNvbnRlbnQgZnJvbSB0aGUgcmVzdCBvZiBhIHBhZ2VzIGNvbnRlbnQuIFRoZXkgY2FuIGJlIGdyb3VwZWQgKHVzaW5nIFtncmlkXVtncmlkc10gY2xhc3NlcykgdG8gZ3JvdXAgY2FyZHMgd2l0aCByZWxhdGVkIGNvbnRlbnQgKHN1Y2ggYXMgYSByZWxhdGVkIGFydGljbGVzIHNlY3Rpb24pLlxuXG5Ob3RpY2UgdGhlIGVudGlyZSBjYXJkIGlzIHdyYXBwZWQgaW4gYW4gYW5jaG9yIHRhZywgYW5kIHRoZSBjYWxsLXRvLWFjdGlvbiBpcyBhIGBidXR0b25gLiBUaGlzIG1ha2VzIHRoZSBlbnRpcmUgY2FyZCBjbGlja2FibGUuIChFeGNlcHRpbmcgW3NpbXBsZSB1bmxpbmtlZCBjYXJkc10oI2NhcmRfc2ltcGxlLXVubGlua2VkKSwgb2YgY291cnNlLilcblxuQXZhaWxhYmxlIHZlcnNpb25zOlxuXG4qIFtEZWZhdWx0LCB3aXRoIG5vIGJvcmRlcl0oI2NhcmRfZGVmYXVsdClcbiogW0JvcmRlcmVkXSgjY2FyZF9ib3JkZXJlZClcbiogW1NpbXBsZSBsaW5rZWRdKCNjYXJkX3NpbXBsZS1saW5rZWQpXG4qIFtTaW1wbGUgdW5saW5rZWRdKCNjYXJkX3NpbXBsZS11bmxpbmtlZClcbiogW0xvY2F0aW9ucyB1bmxpbmtlZCAoYS5rLmEuIGZpbmQgYSBsb2NhdGlvbiBjYXJkcyldKCNjYXJkX2xvY2F0aW9ucylcblxuIyMjIDxhIG5hbWU9XCJjYXJkX3NpbXBsZS1kZWZhdWx0XCI+PC9hPk5vIEJvcmRlciAoZGVmYXVsdClcblxuQmV0dGVyIHVzZWQgYXMgZnVsbC13aWR0aCBvciB0d28tY29sdW1uIGNhcmRzLiBBbnkgbW9yZSB0aGFuIHRoYXQgYW5kIGVhY2ggY2FyZCBtYXkgbm90IGhhdmUgZW5vdWdoIHZpc3VhbCBzZXBhcmF0aW9uIGZyb20gdGhlIG90aGVycy5cblxuPGZpZ3VyZSBjbGFzcz1cImEtZmlndXJlLS1kc1wiPlxuXHQ8aW1nIHNyYz1cIi4uL2ltYWdlcy9wYXR0ZXJuLWxpYnJhcnkvbW9sZWN1bGVzL2NhcmRzLWRlZmF1bHQuanBnXCIgYWx0PVwiRXhhbXBsZSBvZiBkZWZhdWx0IGNhcmRzIGluIHVzZVwiLz5cblx0PGZpZ2NhcHRpb24+RmlnIDE6IEV4YW1wbGUgb2YgZGVmYXVsdCBjYXJkcyBpbiB1c2U8L2ZpZ2NhcHRpb24+XG48L2ZpZ3VyZT5cblxuIyMjIyBDb2RlXG5cbmBgYGh0bWxfZXhhbXBsZV90YWJsZVxuPGEgY2xhc3M9XCJtLWNhcmRcIiBocmVmPVwiI1wiPlxuXHQ8aW1nIGNsYXNzPVwibS1jYXJkX19pbWFnZVwiIGRhdGEtb3JpZ2luYWw9XCJodHRwczovL3BsYWNlaG9sZC5pdC85MDB4MzYwXCI+XG5cdDxoZWFkZXIgY2xhc3M9XCJtLWNhcmRfX2hlYWRlclwiPlxuXHRcdDxoMyBjbGFzcz1cIm0tY2FyZF9faGVhZGluZ1wiPkNhcmQgVGl0bGU8L2gzPlxuXHQ8L2hlYWRlcj5cblx0PGRpdiBjbGFzcz1cIm0tY2FyZF9fYm9keVwiPlxuXHRcdDxwIGNsYXNzPVwiYS1wYXJhZ3JhcGhcIj5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldCwgY29uc2VjdGV0dXIgYWRpcGlzY2luZyBlbGl0LiBQcm9pbiBpbXBlcmRpZXQgZmFjaWxpc2lzIGVzdCBzZWQgZmF1Y2lidXMuIE1hdXJpcyBldCBkb2xvciBhdCBuZXF1ZSB0aW5jaWR1bnQgZmV1Z2lhdCB1dCBhdCB0dXJwaXMuIFN1c3BlbmRpc3NlIHBvdGVudGkuLi48L3A+XG5cdDwvZGl2PlxuXHQ8Zm9vdGVyIGNsYXNzPVwibS1jYXJkX19mb290ZXJcIj5cblx0XHQ8YnV0dG9uIGNsYXNzPVwiYS1idXR0b24gIGEtYnV0dG9uLS1icmFuZCAgYS1idXR0b24tLWV4cGFuZFwiPlJlYWQgTW9yZTwvYnV0dG9uPlxuXHQ8L2Zvb3Rlcj5cbjwvYT5cbmBgYFxuXG4jIyMgPGEgbmFtZT1cImNhcmRfYm9yZGVyZWRcIj48L2E+Qm9yZGVyZWRcblxuPGZpZ3VyZSBjbGFzcz1cImEtZmlndXJlLS1kc1wiPlxuXHQ8aW1nIHNyYz1cIi4uL2ltYWdlcy9wYXR0ZXJuLWxpYnJhcnkvbW9sZWN1bGVzL2NhcmRzLWJvcmRlcmVkLmpwZ1wiIGFsdD1cIkV4YW1wbGUgb2YgYm9yZGVyZWQgY2FyZHMgaW4gdXNlXCIvPlxuXHQ8ZmlnY2FwdGlvbj5GaWcgMjogRXhhbXBsZSBvZiBib3JkZXJlZCBjYXJkcyBpbiB1c2U8L2ZpZ2NhcHRpb24+XG48L2ZpZ3VyZT5cblxuIyMjIyBDb2RlXG5cbmBgYGh0bWxfZXhhbXBsZV90YWJsZVxuPGEgY2xhc3M9XCJtLWNhcmQgIG0tY2FyZC0tYm9yZGVyZWRcIiBocmVmPVwiI1wiPlxuXHQ8aW1nIGNsYXNzPVwibS1jYXJkX19pbWFnZVwiIGRhdGEtb3JpZ2luYWw9XCJodHRwczovL3BsYWNlaG9sZC5pdC85MDB4MzYwXCI+XG5cdDxoZWFkZXIgY2xhc3M9XCJtLWNhcmRfX2hlYWRlclwiPlxuXHRcdDxoMyBjbGFzcz1cIm0tY2FyZF9faGVhZGluZ1wiPkNhcmQgVGl0bGU8L2gzPlxuXHQ8L2hlYWRlcj5cblx0PGRpdiBjbGFzcz1cIm0tY2FyZF9fYm9keVwiPlxuXHRcdDxwIGNsYXNzPVwiYS1wYXJhZ3JhcGhcIj5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldCwgY29uc2VjdGV0dXIgYWRpcGlzY2luZyBlbGl0LiBQcm9pbiBpbXBlcmRpZXQgZmFjaWxpc2lzIGVzdCBzZWQgZmF1Y2lidXMuIE1hdXJpcyBldCBkb2xvciBhdCBuZXF1ZSB0aW5jaWR1bnQgZmV1Z2lhdCB1dCBhdCB0dXJwaXMuIFN1c3BlbmRpc3NlIHBvdGVudGkuLi48L3A+XG5cdDwvZGl2PlxuXHQ8Zm9vdGVyIGNsYXNzPVwibS1jYXJkX19mb290ZXJcIj5cblx0XHQ8YnV0dG9uIGNsYXNzPVwiYS1idXR0b24gIGEtYnV0dG9uLS1icmFuZCAgYS1idXR0b24tLWV4cGFuZFwiPlJlYWQgTW9yZTwvYnV0dG9uPlxuXHQ8L2Zvb3Rlcj5cbjwvYT5cbmBgYFxuXG4jIyMgPGEgbmFtZT1cImNhcmRfc2ltcGxlLWxpbmtlZFwiPjwvYT5TaW1wbGUgTGlua2VkIENhcmRzXG5cbjxmaWd1cmUgY2xhc3M9XCJhLWZpZ3VyZS0tZHNcIj5cblx0PGltZyBzcmM9XCIuLi9pbWFnZXMvcGF0dGVybi1saWJyYXJ5L21vbGVjdWxlcy9jYXJkcy1zaW1wbGUtbGlua2VkLnBuZ1wiIGFsdD1cIkV4YW1wbGUgb2Ygc2ltcGxlIGxpbmtlZCBjYXJkcyBpbiB1c2VcIi8+XG5cdDxmaWdjYXB0aW9uPkZpZyAzOiBFeGFtcGxlIG9mIHNpbXBsZSBsaW5rZWQgY2FyZHMgaW4gdXNlPC9maWdjYXB0aW9uPlxuPC9maWd1cmU+XG5cblNpbXBsZSBjYXJkcyBhcmUgYW4gaWNvbiB3aXRoIGEgaGVhZGluZy4gVGhlc2UgYXJlIG9mdGVuIHVzZWQgaW5zaWRlIGEgZ3JpZCBsYXlvdXQuXG5cbiMjIyMgQ29kZVxuXG5gYGBodG1sX2V4YW1wbGVcbjxkaXYgY2xhc3M9XCJsLWdyaWQgIHUtc3BhY2UtdG9wLS1tZWRpdW0gIHUtc3BhY2UtdG9wLS1sYXJnZUBtZWRpdW1cIj5cblx0PGRpdiBjbGFzcz1cImwtZ3JpZF9faXRlbSAgMS8xICAxLzJAc21hbGwgIDEvM0BsYXJnZSAgdS1mbGV4XCI+XG5cdFx0PGEgY2xhc3M9XCJtLWNhcmQgIG0tY2FyZC0tYm9yZGVyZWQgIHUtZmxleC1ncm93XCIgaHJlZj1cIiNcIj5cblx0XHRcdDxzdmcgY2xhc3M9XCJtLWNhcmRfX2ltYWdlICBhLWljb24gIGEtaWNvbi0tc3VwZXJcIj5cblx0XHRcdFx0PHVzZSB4bGluazpocmVmPVwiLi4vaW1hZ2VzL3N2Zy9pY29ucy5zdmcjZmFtaWx5XCI+PC91c2U+XG5cdFx0XHQ8L3N2Zz5cblx0XHRcdDxoZWFkZXIgY2xhc3M9XCJtLWNhcmRfX2hlYWRlclwiPlxuXHRcdFx0XHQ8aDUgY2xhc3M9XCJtLWNhcmRfX2hlYWRpbmdcIj5FeGFtcGxlIDE8L2g1PlxuXHRcdFx0PC9oZWFkZXI+XG5cdFx0PC9hPlxuXHQ8L2Rpdj5cblx0PGRpdiBjbGFzcz1cImwtZ3JpZF9faXRlbSAgMS8xICAxLzJAc21hbGwgIDEvM0BsYXJnZSAgdS1mbGV4XCI+XG5cdFx0PGEgY2xhc3M9XCJtLWNhcmQgIG0tY2FyZC0tYm9yZGVyZWQgIHUtZmxleC1ncm93XCIgaHJlZj1cIiNcIj5cblx0XHRcdDxzdmcgY2xhc3M9XCJtLWNhcmRfX2ltYWdlICBhLWljb24gIGEtaWNvbi0tc3VwZXJcIj5cblx0XHRcdFx0PHVzZSB4bGluazpocmVmPVwiLi4vaW1hZ2VzL3N2Zy9pY29ucy5zdmcjYmFieVwiPjwvdXNlPlxuXHRcdFx0PC9zdmc+XG5cdFx0XHQ8aGVhZGVyIGNsYXNzPVwibS1jYXJkX19oZWFkZXJcIj5cblx0XHRcdFx0PGg1IGNsYXNzPVwibS1jYXJkX19oZWFkaW5nXCI+RXhhbXBsZSAyPC9oNT5cblx0XHRcdDwvaGVhZGVyPlxuXHRcdDwvYT5cblx0PC9kaXY+XG5cdDxkaXYgY2xhc3M9XCJsLWdyaWRfX2l0ZW0gIDEvMSAgMS8yQHNtYWxsICAxLzNAbGFyZ2UgIHUtZmxleFwiPlxuXHRcdDxhIGNsYXNzPVwibS1jYXJkICBtLWNhcmQtLWJvcmRlcmVkICB1LWZsZXgtZ3Jvd1wiIGhyZWY9XCIjXCI+XG5cdFx0XHQ8c3ZnIGNsYXNzPVwibS1jYXJkX19pbWFnZSAgYS1pY29uICBhLWljb24tLXN1cGVyXCI+XG5cdFx0XHRcdDx1c2UgeGxpbms6aHJlZj1cIi4uL2ltYWdlcy9zdmcvaWNvbnMuc3ZnI3N0ZXRob3Njb3BlXCI+PC91c2U+XG5cdFx0XHQ8L3N2Zz5cblx0XHRcdDxoZWFkZXIgY2xhc3M9XCJtLWNhcmRfX2hlYWRlclwiPlxuXHRcdFx0XHQ8aDUgY2xhc3M9XCJtLWNhcmRfX2hlYWRpbmdcIj5FeGFtcGxlIDM8L2g1PlxuXHRcdFx0PC9oZWFkZXI+XG5cdFx0PC9hPlxuXHQ8L2Rpdj5cbjwvZGl2PlxuYGBgXG5cbiMjIyA8YSBuYW1lPVwiY2FyZF9zaW1wbGUtdW5saW5rZWRcIj48L2E+U2ltcGxlIFVubGlua2VkIENhcmRzXG5cbkJlc3QgdXNlZCBhcyBhIHNpbmdsZSBjYXJkLCB3cmFwcGVkIGluIFwidS1wdWxsLXJpZ2h0XCIgYDxkaXY+YC4gVXNlIGA8aDM+YCAocGxhY2VkIGJlZm9yZSB0aGUgXCJtLWNhcmRcIiBgPGRpdj5gIGFuZCBpbnNpZGUgdGhlIFwidS1wdWxsLXJpZ2h0XCIgYDxkaXY+YCkgdG8gZ2l2ZSB0aGUgY2FyZCBhIHRpdGxlOyBtYXkgYWxzbyB1c2UgYDxzbWFsbCBjbGFzcz1cInUtY29sb3ItZ3JleVwiPmAgKHBsYWNlZCBhZnRlciB0aGUgXCJtLWNhcmRcIiBgPGRpdj5gIGFuZCBpbnNpZGUgdGhlIFwidS1wdWxsLXJpZ2h0XCIgYDxkaXY+YCkgYXMgYSBjYXB0aW9uL2Zvb3Rub3RlIHRvIHRoZSBjYXJkLlxuXG48ZmlndXJlIGNsYXNzPVwiYS1maWd1cmUtLWRzXCI+XG5cdDxpbWcgc3JjPVwiLi4vaW1hZ2VzL3BhdHRlcm4tbGlicmFyeS9tb2xlY3VsZXMvY2FyZHMtc2ltcGxlLXVubGlua2VkLnBuZ1wiIGFsdD1cIkV4YW1wbGUgb2Ygc2ltcGxlIHVubGlua2VkIGNhcmRzIGluIHVzZVwiLz5cblx0PGZpZ2NhcHRpb24+RmlnIDQ6IEV4YW1wbGUgb2Ygc2ltcGxlIHVubGlua2VkIGNhcmRzIGluIHVzZTwvZmlnY2FwdGlvbj5cbjwvZmlndXJlPlxuXG4jIyMjIENvZGVcblxuYGBgaHRtbF9leGFtcGxlXG48ZGl2IGNsYXNzPVwiby1jb250ZW50XCI+XG5cdDxkaXYgY2xhc3M9XCJ1LXB1bGwtcmlnaHQgIHUtdGV4dC1hbGlnbi0tY2VudGVyXCI+XG5cdFx0PGgzIGNsYXNzPVwidS1zcGFjZS10b3AtLXhzbWFsbFwiPlByb2NlZHVyZSBDb3N0PC9oMz5cblx0XHQ8ZGl2IGNsYXNzPVwibS1jYXJkICBtLWNhcmQtLWJvcmRlcmVkICB1LWZsZXgtZ3JvdyAgdS1zcGFjZS1ib3R0b20tLXhzbWFsbFwiPlxuXHRcdFx0PGhlYWRlciBjbGFzcz1cIm0tY2FyZF9faGVhZGVyXCI+XG5cdFx0XHRcdDxwIGNsYXNzPVwidS1sYXJnZSAgdS1uby1zcGFjZVwiPkxpcG9zdWN0aW9uIChvbmUgYXJlYSk8L3A+XG5cdFx0XHRcdDxwIGNsYXNzPVwidS14bGFyZ2UgIHUtYm9sZCAgdS1jb2xvci1icmFuZCAgdS1uby1zcGFjZVwiPiQzLDMwMCo8L3A+XG5cdFx0XHQ8L2hlYWRlcj5cblx0XHQ8L2Rpdj5cblx0XHQ8c21hbGwgY2xhc3M9XCJ1LWNvbG9yLWdyZXlcIj4qIFByaWNlIGxpc3RlZCBpcyBhbiBlc3RpbWF0ZS48L3NtYWxsPlxuXHQ8L2Rpdj5cblx0PHA+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQsIGNvbnNlY3RldHVyIGFkaXBpc2NpbmcgZWxpdC4gUGVsbGVudGVzcXVlIHRpbmNpZHVudCBzdXNjaXBpdCBmYXVjaWJ1cy4gVXQgZWxlaWZlbmQgcmlzdXMgdml0YWUgZXJvcyBydXRydW0sIGludGVyZHVtIGRhcGlidXMgbmliaCBhbGlxdWFtLiBTZWQgZXQgZmVsaXMgbWF1cmlzLiBBbGlxdWFtIGVsaXQgZHVpLCBhY2N1bXNhbiBuZWMgZXJhdCBpZCwgYmxhbmRpdCBwdWx2aW5hciBvcmNpLjwvcD5cblx0PHA+VmVzdGlidWx1bSBlbGl0IHRlbGx1cywgY29udmFsbGlzIGVmZmljaXR1ciBqdXN0byBpZCwgY29uc2VjdGV0dXIgcHJldGl1bSBkaWFtLiBBZW5lYW4gcHJldGl1bSBhIG1hc3NhIHF1aXMgcG9zdWVyZS4gRXRpYW0gdmVsIG1hbGVzdWFkYSB2ZWxpdC4gRHVpcyBlc3QgZGlhbSwgcnV0cnVtIGNvbmRpbWVudHVtIHVsbGFtY29ycGVyIGVnZXQsIGVnZXN0YXMgYWMgbWFzc2EuIFByYWVzZW50IGxpZ3VsYSBsZW8sIGlhY3VsaXMgdXQgc2VtIGluLCBpbnRlcmR1bSBwb3J0dGl0b3IgYXVndWUuIE1hZWNlbmFzIGNvbnNlY3RldHVyIGVyb3MgaW4gcG9ydHRpdG9yIGJsYW5kaXQuPC9wPlxuPC9kaXY+XG5gYGBcblxuIyMjIDxhIG5hbWU9XCJjYXJkX2xvY2F0aW9uc1wiPjwvYT5GaW5kIEEgTG9jYXRpb24gQ2FyZHNcblxuRnVsbC1mZWF0dXJlZCBjYXJkcyB0aGF0IGNhbiBsaXN0IG1vcmUgbG9jYXRpb24tcmVsYXRlZCBpbmZvIHN1Y2ggYXMgcGhvbmUgbnVtYmVycywgaG91cnMsIGFkZHJlc3NlcywgZXRjLiBUaGUgd2hvbGUgY2FyZCBpcyBub3QgY2xpY2thYmxlLCBidXQgY29udGFpbnMgbGlua3Mgb24gdGhlIGltYWdlLCBidXR0b24sIFwiR2V0IERpcmVjdGlvbnNcIiB0ZXh0LCBhbmQgYW55IG90aGVyIHJlbGV2YW50IGxpbmtzLlxuXG5Qcm92aWRlcyBmaWx0ZXItYmFzZWQgaGlnaGxpZ2h0ZWQgYXJlYXMgKHN1Y2ggYXMgd2hlbiB0aGUgcGhhcm1hY3kgZmlsdGVyIGlzIHNlbGVjdGVkLCB0aGUgcGhhcm1hY3kgaG91cnMgYXJlIGhpZ2hsaWdodGVkKS5cblxuPGZpZ3VyZSBjbGFzcz1cImEtZmlndXJlLS1kc1wiPlxuXHQ8aW1nIHNyYz1cIi4uL2ltYWdlcy9wYXR0ZXJuLWxpYnJhcnkvbW9sZWN1bGVzL2NhcmRzLWxvY2F0aW9ucy5qcGdcIiBhbHQ9XCJFeGFtcGxlIG9mIGZpbmQgYSBsb2NhdGlvbiBjYXJkcyBpbiB1c2VcIi8+XG5cdDxmaWdjYXB0aW9uPkZpZyA1OiBFeGFtcGxlIG9mIGZpbmQgYSBsb2NhdGlvbiBjYXJkcyBpbiB1c2U8L2ZpZ2NhcHRpb24+XG48L2ZpZ3VyZT5cblxuIyMjIyBDb2RlXG5cbmBgYGh0bWxfZXhhbXBsZV90YWJsZVxuPGRpdiBjbGFzcz1cIm0tZHJvcGRvd24taXRlbXMgdS1mbGV4IHUtanVzdGlmeS1iZXR3ZWVuIGwtZ3JpZF9faXRlbSAzLzQgdS1zcGFjZS1ib3R0b20tLW1lZGl1bSBuZy1zY29wZVwiPlxuXHQ8ZGl2IGNsYXNzPVwibS1jYXJkIHUtYm9yZGVyLWFsbCB1LWJvcmRlci0tZ3JleVwiPlxuXHRcdDxhIGNsYXNzPVwidS1ib3JkZXItbm9uZVwiIHRhcmdldD1cIl9zZWxmXCIgaHJlZj1cIi8vaGVhbHRoY2FyZS51dGFoLmVkdS9sb2NhdGlvbnMvZmFybWluZ3Rvbi9pbmRleC5waHBcIj5cblx0XHQgICAgPGRpdiBjbGFzcz1cInUtcmF0aW8gIHUtcmF0aW8tLTIxeDkgdS1yYXRpby0tMngxQG1lZGl1bVwiIHN0eWxlPVwiYmFja2dyb3VuZC1pbWFnZTogdXJsKC8vaGVhbHRoY2FyZS51dGFoLmVkdS9sb2NhdGlvbnMvX2ltYWdlcy9mYXJtaW5ndG9uLW5ldy5qcGcpOyBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO2JhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcIj48L2Rpdj5cblx0XHQ8L2E+XG5cdFx0PGEgY2xhc3M9XCJ1LWJvcmRlci1ub25lXCIgdGFyZ2V0PVwiX3NlbGZcIiBocmVmPVwiLy9oZWFsdGhjYXJlLnV0YWguZWR1L2xvY2F0aW9ucy9mYXJtaW5ndG9uL2luZGV4LnBocFwiPlxuXHRcdCAgICA8ZGl2IGNsYXNzPVwidS1sYXJnZSB1LWNvbG9yLWJyYW5kIHUtYm9sZCB1LXNwYWNlLXRvcC0tbWVkaXVtIG5nLWJpbmRpbmdcIj5GYXJtaW5ndG9uIEhlYWx0aCBDZW50ZXI8L2Rpdj5cblx0XHQ8L2E+XG5cdFx0PGRpdiBjbGFzcz1cIm0tY2FyZF9fYm9keVwiPlxuXHRcdFx0PHAgY2xhc3M9XCJ1LWJvbGQgdS1uby1zcGFjZSB1LXNwYWNlLXRvcC0teHNtYWxsIHUtc3BhY2UtYm90dG9tLS1zbWFsbCBuZy1iaW5kaW5nXCI+ODAxLTIxMy0zMjAwPC9wPlxuXHRcdFx0PHAgY2xhc3M9XCJ1LW5vLXNwYWNlIHUtc3BhY2UtYm90dG9tLS1sYXJnZSBuZy1iaW5kaW5nXCI+MTY1IE4uIFVuaXZlcnNpdHkgQXZlPGJyPiBGYXJtaW5ndG9uLCBVVCA4NDAyNTxicj48YSB0YXJnZXQ9XCJfYmxhbmtcIiBocmVmPVwiaHR0cHM6Ly93d3cuZ29vZ2xlLmNvbS9tYXBzL2Rpci8vMTY1IE4uIFVuaXZlcnNpdHkgQXZlIEZhcm1pbmd0b24gVVQgODQwMjVcIj5HZXQgRGlyZWN0aW9uczwvYT48L3A+XG5cdFx0XHQ8ZGl2IGNsYXNzPVwidS1zcGFjZS1ib3R0b20tLXNtYWxsXCI+XG5cdFx0XHRcdDxkaXYgY2xhc3M9XCJ1LWJvbGQgdS1jb2xvci1icmFuZFwiPkdlbmVyYWwgQnVpbGRpbmcgSG91cnM6PC9kaXY+XG5cdFx0XHRcdDxkaXYgc3R5bGU9XCJ3aGl0ZS1zcGFjZTogcHJlO1wiIGNsYXNzPVwibmctYmluZGluZ1wiPk1vbi1TdW4gNyBBTSAtICAxMSBQTTwvZGl2PlxuXHRcdFx0PC9kaXY+XG5cdFx0XHQ8ZGl2IGNsYXNzPVwic2VwZXJhdGUtaG91cnMgdXJnZW50LWhvdXJzIHUtc3BhY2UtYm90dG9tLS1zbWFsbFwiIHN0eWxlPVwiXCI+XG5cdFx0XHRcdDxkaXYgY2xhc3M9XCJ1LWJvbGQgdS1jb2xvci1icmFuZFwiPlVyZ2VudCBDYXJlIEhvdXJzOjwvZGl2PlxuXHRcdFx0XHQ8ZGl2IHN0eWxlPVwid2hpdGUtc3BhY2U6IHByZTtcIiBjbGFzcz1cIm5nLWJpbmRpbmdcIj5Nb24tU3VuIDcgQU0gLSAgMTEgUE08L2Rpdj5cblx0XHRcdDwvZGl2PlxuXHRcdFx0PGRpdiBjbGFzcz1cInNlcGVyYXRlLWhvdXJzIHBoYXJtYWN5LWhvdXJzIHUtc3BhY2UtYm90dG9tLS1zbWFsbFwiPlxuXHRcdFx0XHQ8ZGl2IGNsYXNzPVwidS1ib2xkIHUtY29sb3ItYnJhbmRcIj5QaGFybWFjeSBIb3Vyczo8L2Rpdj5cblx0XHRcdFx0PGRpdiBzdHlsZT1cIndoaXRlLXNwYWNlOiBwcmU7XCIgY2xhc3M9XCJuZy1iaW5kaW5nXCI+TW9uLVN1biA3IEFNIC0gIDExIFBNPC9kaXY+XG5cdFx0XHQ8L2Rpdj5cblx0XHQ8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cIm0tY2FyZF9fZm9vdGVyXCI+XG5cdCAgICAgICAgPGEgY2xhc3M9XCJhLWJ1dHRvbiBhLWJ1dHRvbi0tYnJhbmQgYS1idXR0b24tLWV4cGFuZCBuZy1iaW5kaW5nXCIgdGFyZ2V0PVwiX3NlbGZcIiBocmVmPVwiLy9oZWFsdGhjYXJlLnV0YWguZWR1L2xvY2F0aW9ucy9mYXJtaW5ndG9uL2luZGV4LnBocFwiPkFib3V0IEZhcm1pbmd0b24gSGVhbHRoIENlbnRlcjwvYT5cbiAgICAgICAgPC9kaXY+XG5cdDwvZGl2PlxuPC9kaXY+XG5gYGBcblxuKi9cbi5tLWNhcmQge1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBtYXJnaW4tYm90dG9tOiAxZW07XG4gIHBhZGRpbmc6IDFlbTtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgLm0tY2FyZCA+IC5vLWltYWdlOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBwYWRkaW5nOiAxZW0gMCAwOyB9XG5cbmEubS1jYXJkOm5vdCgubS1jYXJkLS1wcm9maWxlKTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGMkYyRjI7XG4gIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSg2NSwgNjQsIDY2LCAwLjI1KSwgMCAzcHggNnB4IC0ycHggcmdiYSg2NSwgNjQsIDY2LCAwLjIpO1xuICBjb2xvcjogY3VycmVudENvbG9yOyB9XG5cbi5tLWNhcmQtLWJvcmRlcmVkLFxuLm0tY2FyZC0tYm9yZGVyZWQ6aG92ZXIge1xuICBib3JkZXI6IDFweCBzb2xpZCAjYWRhZmIxOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0OHJlbSkge1xuICAubS1jYXJkLS1ib3JkZXJlZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMmVtOyB9IH1cblxuLmEtZmllbGQgKyAubS1jYXJkIHtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbi5hLWZpZWxkOmNoZWNrZWQgKyAubS1jYXJkLFxuLmEtZmllbGQ6Y2hlY2tlZCArICogLm0tY2FyZF9faGVhZGluZyB7XG4gIGJvcmRlci1jb2xvcjogI2E2MTkyZTtcbiAgY29sb3I6ICNhNjE5MmU7IH1cblxuLm0tY2FyZC0tc3RpY2t5IHtcbiAgbWF4LWhlaWdodDogOTB2aDtcbiAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICBwb3NpdGlvbjogc3RpY2t5O1xuICB0b3A6IDEuNWVtO1xuICB6LWluZGV4OiAxMDA7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDIwcmVtKSB7XG4gIC5tLWNhcmQtLXN0aWNreVxcQHhzbWFsbCB7XG4gICAgbWF4LWhlaWdodDogOTB2aDtcbiAgICBvdmVyZmxvdy15OiBzY3JvbGw7XG4gICAgcG9zaXRpb246IHN0aWNreTtcbiAgICB0b3A6IDEuNWVtO1xuICAgIHotaW5kZXg6IDEwMDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAzMHJlbSkge1xuICAubS1jYXJkLS1zdGlja3lcXEBzbWFsbCB7XG4gICAgbWF4LWhlaWdodDogOTB2aDtcbiAgICBvdmVyZmxvdy15OiBzY3JvbGw7XG4gICAgcG9zaXRpb246IHN0aWNreTtcbiAgICB0b3A6IDEuNWVtO1xuICAgIHotaW5kZXg6IDEwMDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0OHJlbSkge1xuICAubS1jYXJkLS1zdGlja3lcXEBtZWRpdW0ge1xuICAgIG1heC1oZWlnaHQ6IDkwdmg7XG4gICAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgdG9wOiAxLjVlbTtcbiAgICB6LWluZGV4OiAxMDA7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNjRyZW0pIHtcbiAgLm0tY2FyZC0tc3RpY2t5XFxAbGFyZ2Uge1xuICAgIG1heC1oZWlnaHQ6IDkwdmg7XG4gICAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgdG9wOiAxLjVlbTtcbiAgICB6LWluZGV4OiAxMDA7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzhyZW0pIHtcbiAgLm0tY2FyZC0tc3RpY2t5XFxAeGxhcmdlIHtcbiAgICBtYXgtaGVpZ2h0OiA5MHZoO1xuICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIHRvcDogMS41ZW07XG4gICAgei1pbmRleDogMTAwOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyNXJlbSkge1xuICAubS1jYXJkLS1zdGlja3lcXEBzdXBlciB7XG4gICAgbWF4LWhlaWdodDogOTB2aDtcbiAgICBvdmVyZmxvdy15OiBzY3JvbGw7XG4gICAgcG9zaXRpb246IHN0aWNreTtcbiAgICB0b3A6IDEuNWVtO1xuICAgIHotaW5kZXg6IDEwMDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0OHJlbSkge1xuICAubS1jYXJkLS1zdGlja3ktYmVsb3ctbmF2XFxAbWVkaXVtIHtcbiAgICB0b3A6IDQuNzVlbTsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA2NHJlbSkge1xuICAubS1jYXJkLS1zdGlja3ktYmVsb3ctbmF2XFxAbGFyZ2Uge1xuICAgIHRvcDogN2VtOyB9IH1cblxuLm0tY2FyZC0tc3F1YXJlIHtcbiAgYm9yZGVyLXJhZGl1czogMDsgfVxuXG4ubS1jYXJkLS1yb3VuZCB7XG4gIGJvcmRlci1yYWRpdXM6IDMwZW07IH1cblxuLm0tY2FyZF9faW1hZ2Uge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG5cbi8qIGZpeCBJRTEwLTExIGltYWdlIHNjYWxpbmcgKi9cbi5tLWNhcmRfX2ltYWdlOm5vdChzdmcpIHtcbiAgYWxpZ24tc2VsZjogY2VudGVyO1xuICBmbGV4OiBub25lOyB9XG5cbi5tLWNhcmRfX2hlYWRlciB7XG4gIGZsZXgtc2hyaW5rOiAxOyB9XG5cbi5tLWNhcmRfX2hlYWRpbmcge1xuICBjb2xvcjogIzQxNDA0MjtcbiAgbWFyZ2luOiAwLjVlbSAwIDAuMjVlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi5tLWNhcmRfX2hlYWRpbmctLW5vLWNhcHMge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgfVxuXG4ubS1jYXJkLS1wcm9maWxlIC5tLWNhcmRfX2hlYWRpbmcge1xuICBmb250LXdlaWdodDogMzAwO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgfVxuXG4ubS1jYXJkX19pdGVtICsgLm0tY2FyZF9fZm9vdGVyLS1ibG9jayB7XG4gIHBhZGRpbmc6IDA7IH1cblxuLm0tY2FyZF9fYm9keSB7XG4gIGZsZXgtZ3JvdzogMTtcbiAgdGV4dC1hbGlnbjogbGVmdDsgfVxuXG4ubS1jYXJkX19ib2R5IHA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLm0tY2FyZF9fYm9keS0tYm90dG9tIHtcbiAgZmxleC1ncm93OiAwO1xuICBtYXJnaW4tdG9wOiBhdXRvO1xuICBtYXJnaW4tYm90dG9tOiBpbmhlcml0OyB9XG5cbi5tLWNhcmRfX2JvZHktLXRvcCB7XG4gIGZsZXgtZ3JvdzogMDtcbiAgbWFyZ2luLXRvcDogaW5oZXJpdDtcbiAgbWFyZ2luLWJvdHRvbTogYXV0bzsgfVxuXG4ubS1jYXJkX19mb290ZXIge1xuICBmbGV4LXNocmluazogMTtcbiAgcGFkZGluZy10b3A6IDEuNWVtOyB9XG5cbi5tLWNhcmRfX2Zvb3Rlci0tYmxvY2sge1xuICBwYWRkaW5nOiAwLjVlbSAwIDA7IH1cbiAgLm0tY2FyZF9fZm9vdGVyLS1ibG9jayAuYy1pbnB1dC1ncm91cCAuYy1idXR0b246Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDsgfVxuICAubS1jYXJkX19mb290ZXItLWJsb2NrIC5jLWlucHV0LWdyb3VwIC5jLWJ1dHRvbjpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDsgfVxuXG4vKi5tLWNhcmRfX2l0ZW06bm90KDpsYXN0LWNoaWxkKSB7XG5cdGJvcmRlci1ib3R0b206ICRjYXJkLWl0ZW0tYm9yZGVyLWJvdHRvbTtcbn0qL1xuLm0tY2FyZC0tYWNjb3JkaW9uIGxhYmVsLm0tY2FyZF9faXRlbSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLWxlZnQ6IDJlbTtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIC5tLWNhcmQtLWFjY29yZGlvbiBsYWJlbC5tLWNhcmRfX2l0ZW06YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogLjc1ZW07XG4gICAgY29udGVudDogXCIrXCI7IH1cblxuLm0tY2FyZC0tYWNjb3JkaW9uID4gaW5wdXQge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5tLWNhcmQtLWFjY29yZGlvbiA+IGlucHV0ICsgLm0tY2FyZF9faXRlbSArIC5tLWNhcmRfX2l0ZW0ge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5tLWNhcmQtLWFjY29yZGlvbiA+IGlucHV0OmNoZWNrZWQgKyAubS1jYXJkX19pdGVtICsgLm0tY2FyZF9faXRlbSB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5tLWNhcmQtLWFjY29yZGlvbiA+IGlucHV0OmNoZWNrZWQgKyAubS1jYXJkX19pdGVtOmJlZm9yZSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTsgfVxuXG4ubS1jYXJkLS1tZW51IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtaGVpZ2h0OiAyODBweDtcbiAgbWFyZ2luOiAwLjVlbSAwIDAgMDtcbiAgei1pbmRleDogMTAwO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDsgfVxuXG4ubS1jYXJkLS1ncm91cGVkIC5tLWNhcmRfX2l0ZW06bm90KDpsYXN0LWNoaWxkKSB7XG4gIGJvcmRlci1ib3R0b206IDA7IH1cblxuLm0tY2FyZF9fZGl2aWRlciB7XG4gIGhlaWdodDogMXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzk3YjdmO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi5tLWNhcmRfX2l0ZW0tLWRpdmlkZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzk3YjdmO1xuICBjb2xvcjogI0ZGRjtcbiAgZm9udC13ZWlnaHQ6IDUwMDsgfVxuXG4ubS1jYXJkLS1icmFuZCxcbi5tLWNhcmRfX2l0ZW0tLWJyYW5kIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2E2MTkyZTtcbiAgY29sb3I6ICNGRkY7IH1cblxuLm0tY2FyZF9faXRlbS0tZGlzYWJsZWQge1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICBvcGFjaXR5OiAwLjY7IH1cblxuLm0tY2FyZC0tbWVudSAubS1jYXJkX19pdGVtOm5vdCgubS1jYXJkX19pdGVtLS1kaXNhYmxlZCk6bm90KC5tLWNhcmRfX2l0ZW0tLWRpdmlkZXIpOmhvdmVyLFxuLm0tY2FyZC0tYWNjb3JkaW9uIGxhYmVsLm0tY2FyZF9faXRlbTpub3QoLm0tY2FyZF9faXRlbS0tZGlzYWJsZWQpOm5vdCgubS1jYXJkX19pdGVtLS1kaXZpZGVyKTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjN2M4Y2E7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuXG4ubS1jYXJkX19pdGVtLS1hY3RpdmUsXG4ubS1jYXJkLS1hY2NvcmRpb24gPiBpbnB1dDpjaGVja2VkICsgLm0tY2FyZF9faXRlbSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTczLCAxNzUsIDE3NywgMC41KTtcbiAgZm9udC13ZWlnaHQ6IDUwMDsgfVxuXG4ubS1jYXJkX19kYXRlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb2xvcjogI2E2MTkyZTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgcGFkZGluZzogMC4xcmVtIDAuNDVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkY7IH1cblxuZmlnY2FwdGlvbi5tLWNhcmRfX2RhdGUge1xuICBmb250LXNpemU6IDFyZW07IH1cblxucC5tLWNhcmRfX2RhdGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogLTAuMjVyZW07IH1cblxuLm0tY2FyZF9fbmV3cy1zb3VyY2Uge1xuICBjb2xvcjogIzkzOTU5ODtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbWFyZ2luLXRvcDogMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogLTAuN3JlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi8qZG9jXG4tLS1cbnRpdGxlOiBDb250ZW50IEJhbm5lclxubmFtZTogY29udGVudC1iYW5uZXJcbmNhdGVnb3J5OiBNb2xlY3VsZXNcbi0tLVxuKkxhc3QgVXBkYXRlZDogRGVjZW1iZXIgMywgMjAxOCpcblxuQ29udGVudCBiYW5uZXJzIGFyZSBhIGdyZWF0IHdheSB0byBzaG93Y2FzZSBwYXRpZW50IHN0b3JpZXMgYW5kIG90aGVyIGNvbnRlbnQuXG5cbiMjIFVzZVxuXG5UeXBpY2FsbHkgY29udGVudCBiYW5uZXJzIGFyZSB1c2VkIGluIGNvbmp1bmN0aW9uIHdpdGggYG8tc2VjdGlvbmAgb3JnYW5pc21zLlxuXG5JZiB0aGUgYmFja2dyb3VuZCBpbWFnZSBpcyBkYXJrLCB1c2UgdGhlIGBvLXNlY3Rpb24tLWludmVyc2VgIGNsYXNzIHRvIG1ha2UgdGhlIHRleHQgd2hpdGUuXG5cbjxmaWd1cmUgY2xhc3M9XCJhLWZpZ3VyZS0tZHNcIj5cblx0PGltZyBzcmM9XCIuLi9pbWFnZXMvcGF0dGVybi1saWJyYXJ5L21vbGVjdWxlcy9jb250ZW50LWJhbm5lci0xLmpwZ1wiIGFsdD1cIkV4YW1wbGUgb2YgYSBjb250ZW50IGJhbm5lciBpbiB1c2VcIi8+XG5cdDxmaWdjYXB0aW9uPkZpZyAxOiBFeGFtcGxlIG9mICBhIGNvbnRlbnQgYmFubmVyIGluIHVzZTwvZmlnY2FwdGlvbj5cbjwvZmlndXJlPlxuXG4jIyBDb2RlXG5cbmBgYGh0bWxfZXhhbXBsZVxuPHNlY3Rpb24gY2xhc3M9XCJvLXNlY3Rpb24gIG8tc2VjdGlvbi0taW52ZXJzZSAgbS1jb250ZW50LWJhbm5lclwiIHN0eWxlPVwiYmFja2dyb3VuZC1pbWFnZTp1cmwoJy4uL2ltYWdlcy9wYXR0ZXJuLWxpYnJhcnkvbW9sZWN1bGVzL2NvbnRlbnQtYmFubmVyLmpwZycpO1wiPlxuXHQ8ZGl2IGNsYXNzPVwibC1jb250YWluZXIgIGwtY29udGFpbmVyLS1sYXJnZVwiPlxuXHRcdDxoMiBjbGFzcz1cIm8tc2VjdGlvbl9faGVhZGVyICBtLWNvbnRlbnQtYmFubmVyX19oZWFkaW5nXCI+SW4gVml0cm8gRmVydGlsaXphdGlvbiBIZWxwcyBDb3VwbGUgQmVjb21lIGEgRmFtaWx5PC9oMj5cblx0XHQ8cCBjbGFzcz1cIm0tY29udGVudC1iYW5uZXJfX21lc3NhZ2UgIGEtcGFyYWdyYXBoXCI+TWVsaXNzYSBhbmQgU2FtIE9sc29uIGFsd2F5cyB3YW50ZWQgY2hpbGRyZW4uIEhvd2V2ZXIsIHRoZWlyIGF0dGVtcHRzIHRvIGNvbmNlaXZlIGhhZCBiZWVuIHVuc3VjY2Vzc2Z1bCBkdWUgdG8gYSBjb25kaXRpb24gY2FsbGVkIGVuZG9tZXRyaW9zaXMgd2hpY2ggYWZmZWN0ZWQgTWVsaXNzYSdzIHJlcHJvZHVjdGl2ZSBvcmdhbnMuLi48L3A+XG5cdFx0PGRpdiBjbGFzcz1cIm0tY29udGVudC1iYW5uZXJfX2N0YVwiPlxuXHRcdFx0PGEgY2xhc3M9XCJhLWJ1dHRvbiAgYS1idXR0b24tLWJyYW5kXCIgaHJlZj1cIiNcIj5SZWFkIEZ1bGwgU3Rvcnk8L2E+XG5cdFx0PC9kaXY+XG5cdDwvZGl2PlxuPC9zZWN0aW9uPlxuYGBgXG5cbiovXG4ubS1jb250ZW50LWJhbm5lciB7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4ubS1jb250ZW50LWJhbm5lcl9faGVhZGluZyB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIHRleHQtdHJhbnNmb3JtOiBpbmhlcml0OyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0OHJlbSkge1xuICAubS1jb250ZW50LWJhbm5lcl9fbWVzc2FnZSB7XG4gICAgZm9udC1zaXplOiAxLjEyNWVtOyB9IH1cblxuLm0tY29udGVudC1iYW5uZXJfX2N0YSB7XG4gIHBhZGRpbmc6IDAuNWVtIDAgMS41ZW07IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4cmVtKSB7XG4gICAgLm0tY29udGVudC1iYW5uZXJfX2N0YSB7XG4gICAgICBwYWRkaW5nOiAwLjVlbSAwOyB9IH1cblxuLm0tZHJvcGRvd24gLmRyb3Bkb3duLWZpZWxkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtaW4taGVpZ2h0OiA2MnB4OyB9XG5cbi5tLWRyb3Bkb3duIC5tLWRyb3Bkb3duLXNwZWNpYWx0aWVzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5tLWRyb3Bkb3duIC5tLWRyb3Bkb3duLXNwZWNpYWx0aWVzIC5kcm9wZG93bi1maWVsZCB7XG4gICAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbi5tLWRyb3Bkb3duIC5kcm9wZG93bi1maWx0ZXJfX2RhdGEge1xuICBtYXgtaGVpZ2h0OiAxNzVweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgb3ZlcmZsb3cteTogYXV0bzsgfVxuXG4ubS1kcm9wZG93biAuYS1kcm9wZG93bi0tZmllbGQge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHJpZ2h0OiAuNWVtO1xuICBoZWlnaHQ6IDFlbTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICB3aWR0aDogMWVtOyB9XG5cbi5tLWRyb3Bkb3duIC5tLWRyb3Bkb3duLW9wdGlvbiBpbnB1dFt0eXBlPWNoZWNrYm94XSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLm0tZHJvcGRvd24gLm0tZHJvcGRvd24tb3B0aW9uIGlucHV0W3R5cGU9Y2hlY2tib3hdOmNoZWNrZWQgKyBsYWJlbCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogI2E2MTkyZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0YyRjJGMjsgfVxuXG4ubS1kcm9wZG93biAubS1kcm9wZG93bi1vcHRpb24gbGFiZWw6aG92ZXIge1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6ICNhNjE5MmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkZGQgIWltcG9ydGFudDsgfVxuXG4ubS1kcm9wZG93biAubS1kcm9wZG93bi1vcHRpb24gbGFiZWwge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5tLWRyb3Bkb3duIC5tLWRyb3Bkb3duLW9wdGlvbiBsYWJlbCBpbnB1dCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuXG4ubS1kcm9wZG93biAuaW5uZXItc2VhcmNoLWljb24ge1xuICByaWdodDogMWVtICFpbXBvcnRhbnQ7IH1cblxuaW5wdXQubS1kcm9wZG93bi1zZXJ2aWNlcyArIGxhYmVsIHtcbiAgb3V0bGluZTogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBhcHBlYXJhbmNlOiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTsgfVxuXG5pbnB1dC5tLWRyb3Bkb3duLXNlcnZpY2VzOmNoZWNrZWQgKyBsYWJlbCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhNjE5MmU7XG4gIGNvbG9yOiAjRkZGOyB9XG4gIGlucHV0Lm0tZHJvcGRvd24tc2VydmljZXM6Y2hlY2tlZCArIGxhYmVsOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjN2ExMjIyOyB9XG5cbmlucHV0Lm0tZHJvcGRvd24tc2VydmljZXMge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5tLWRyb3Bkb3duLWxpc3Qge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBkaXNwbGF5OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkICM5MDkwOTA7XG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICM5MDkwOTA7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjOTA5MDkwO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogM3B4O1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAzcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLm0tZHJvcGRvd24tc2VsZWN0ZWQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuXG4ubS1kcm9wZG93bi10aXRsZSB7XG4gIGJvcmRlci1yYWRpdXM6IDNweDsgfVxuXG4ubS1kcm9wZG93bi1jbG9zZSB7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDdweDtcbiAgdG9wOiAtMnB4O1xuICBsaW5lLWhlaWdodDogMDtcbiAgcGFkZGluZzogMnB4OyB9XG5cbi5tLWRyb3Bkb3duLXNlcnZpY2VzIHtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbiNzY2hlZHVsZUFwcG9pbnRtZW50IC5kcm9wZG93bi1maWx0ZXJfX2RhdGEge1xuICBtYXgtaGVpZ2h0OiAxODBweDtcbiAgb3ZlcmZsb3cteTogYXV0bzsgfVxuXG4vKmRvY1xuLS0tXG50aXRsZTogRXZlbnRzXG5uYW1lOiBldmVudHNcbmNhdGVnb3J5OiBNb2xlY3VsZXNcbi0tLVxuKkxhc3QgVXBkYXRlZDogRGVjZW1iZXIgMywgMjAxOCpcblxuRXZlbnRzIGlzIGEgbW9sZWN1bGUgdXNlZCB0byBkaXNwbGF5IGNhbGVuZGFyIGV2ZW50cy4gXG5cbiMjIFVzZVxuXG5DdXJyZW50bHksIG9ubHkgdXNlZCBvbiBtYWluIGxhbmRpbmcgcGFnZXMuIFVzZWQgc3BhcmluZ2x5LlxuXG5EaXNwbGF5ZWQgYXMgYSBzaW5nbGUgY29sdW1uIG5leHQgdG8gb3RoZXIgY29udGVudC5cblxuPGZpZ3VyZSBjbGFzcz1cImEtZmlndXJlLS1kcyBsLWNvbnRhaW5lciBsLWNvbnRhaW5lci0teHNtYWxsXCI+XG5cdDxpbWcgc3JjPVwiLi4vaW1hZ2VzL3BhdHRlcm4tbGlicmFyeS9tb2xlY3VsZXMvZXZlbnRzLnBuZ1wiIGFsdD1cIkV4YW1wbGUgb2YgYW4gZXZlbnQgbW9sZWN1bGUgaW4gdXNlXCIvPlxuXHQ8ZmlnY2FwdGlvbj5GaWcgMTogRXhhbXBsZSBvZiAgYW4gZXZlbnQgbW9sZWN1bGUgaW4gdXNlPC9maWdjYXB0aW9uPlxuPC9maWd1cmU+XG5cbiMjIENvZGVcblxuYGBgaHRtbF9leGFtcGxlX3RhYmxlXG48ZGl2IGNsYXNzPVwibS1ldmVudHMgIHUtYmctd2hpdGUgIHUtaGlnaCAgdS1zcGFjZS1ib3R0b20tLW1lZGl1bSAgdS1zcGFjZS1ib3R0b20tLXhsYXJnZUBzbWFsbFwiPlxuXHQ8ZGl2IGNsYXNzPVwibS1ldmVudHNfX2RheVwiPlxuICAgICAgICA8aDMgY2xhc3M9XCJtLWV2ZW50c19faGVhZGluZ1wiPlxuXHRcdFx0PHNwYW4+RGVjIDAzPC9zcGFuPlxuXHRcdFx0PHNwYW4+IHwgPC9zcGFuPlxuXHRcdFx0PHNwYW4gY2xhc3M9XCJ1LWNvbG9yLWdyZXlcIj5Nb248L3NwYW4+XG5cdCAgICA8L2gzPlxuICAgICAgICA8ZGl2IGNsYXNzPVwibS1ldmVudHNfX2V2ZW50XCI+XG5cdFx0XHQ8YSBjbGFzcz1cIm0tZXZlbnRzX19ldmVudC10aXRsZVwiIGhyZWY9XCIjXCI+UmVzaXN0YW5jZSBUcmFpbmluZzwvYT5cblx0XHRcdDxwIGNsYXNzPVwibS1ldmVudHNfX2V2ZW50LWRlc2NyaXB0aW9uXCI+UmVzaXN0YW5jZSBUcmFpbmluZyAtIEZpdG5lc3MgQ2xhc3MuLi4gPGEgaHJlZj1cIiNcIj5MZWFybiBNb3JlPC9hPjwvcD5cblx0ICAgIDwvZGl2PlxuXHQgICAgPGRpdiBjbGFzcz1cIm0tZXZlbnRzX19ldmVudFwiPlxuXHRcdFx0PGEgY2xhc3M9XCJtLWV2ZW50c19fZXZlbnQtdGl0bGVcIiBocmVmPVwiI1wiPlJlc2lzdGFuY2UgVHJhaW5pbmc8L2E+XG5cdFx0XHQ8cCBjbGFzcz1cIm0tZXZlbnRzX19ldmVudC1kZXNjcmlwdGlvblwiPkZpdG5lc3MgQ2xhc3MuLi4gPGEgaHJlZj1cIiNcIj5MZWFybiBNb3JlPC9hPjwvcD5cblx0ICAgIDwvZGl2PlxuXHQgICAgPGRpdiBjbGFzcz1cIm0tZXZlbnRzX19ldmVudFwiPlxuXHRcdFx0PGEgY2xhc3M9XCJtLWV2ZW50c19fZXZlbnQtdGl0bGVcIiBocmVmPVwiI1wiPkNvcmUgJmFtcDsgU3RyZXRjaDwvYT5cblx0XHRcdDxwIGNsYXNzPVwibS1ldmVudHNfX2V2ZW50LWRlc2NyaXB0aW9uXCI+Q29yZSAmYW1wO2FtcDsgU3RyZXRjaCAtIEZpdG5lc3MgQ2xhc3MuLi4gPGEgaHJlZj1cIiNcIj5MZWFybiBNb3JlPC9hPjwvcD5cblx0ICAgIDwvZGl2PlxuXHQgICAgPGRpdiBjbGFzcz1cIm0tZXZlbnRzX19ldmVudFwiPlxuXHRcdFx0PGEgY2xhc3M9XCJtLWV2ZW50c19fZXZlbnQtdGl0bGVcIiBocmVmPVwiI1wiPlp1bWJhwq48L2E+XG5cdFx0XHQ8cCBjbGFzcz1cIm0tZXZlbnRzX19ldmVudC1kZXNjcmlwdGlvblwiPlp1bWJhwq4gLSBGaXRuZXNzIENsYXNzLi4uIDxhIGhyZWY9XCIjXCI+TGVhcm4gTW9yZTwvYT48L3A+XG5cdCAgICA8L2Rpdj5cblx0ICAgIDxkaXYgY2xhc3M9XCJtLWV2ZW50c19fZXZlbnRcIj5cblx0XHRcdDxhIGNsYXNzPVwibS1ldmVudHNfX2V2ZW50LXRpdGxlXCIgaHJlZj1cIiNcIj5NaW5kaW5nIE1vdGlvbuKEojwvYT5cblx0XHRcdDxwIGNsYXNzPVwibS1ldmVudHNfX2V2ZW50LWRlc2NyaXB0aW9uXCI+TWluZGluZyBNb3Rpb27ihKIgLSBGaXRuZXNzLi4uIDxhIGhyZWY9XCIjXCI+TGVhcm4gTW9yZTwvYT48L3A+XG5cdCAgICA8L2Rpdj5cblx0PC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cInUtcGFkZGluZy0tbWVkaXVtXCI+XG5cdFx0PGEgY2xhc3M9XCJhLWJ1dHRvbiAgYS1idXR0b24tLWJyYW5kICBhLWJ1dHRvbi0tZXhwYW5kXCIgaHJlZj1cIiNcIj5WaWV3IEFsbCBFdmVudHM8L2E+XG5cdDwvZGl2PlxuPC9kaXY+XG5gYGBcblxuKi9cbi5tLWV2ZW50c19fZGF5IHtcbiAgcGFkZGluZzogMS41ZW0gMS41ZW0gMC41ZW07IH1cblxuLm0tZXZlbnRzX19kYXk6bm90KDpmaXJzdC1jaGlsZCkge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgIzkzOTU5ODsgfVxuXG4ubS1ldmVudHNfX2hlYWRpbmcge1xuICBmb250LXdlaWdodDogMzAwO1xuICBtYXJnaW46IDAuNWVtIDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4ubS1ldmVudHNfX2V2ZW50IHtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgbWFyZ2luLWJvdHRvbTogMmVtOyB9XG5cbi5tLWV2ZW50c19fZXZlbnQtdGl0bGUge1xuICBib3JkZXI6IG5vbmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAwLjVlbTsgfVxuXG4ubS1ldmVudHNfX2V2ZW50LWRlc2NyaXB0aW9uIHtcbiAgZm9udC1zaXplOiAwLjg3NWVtOyB9XG5cbi8qZG9jXG4tLS1cbnRpdGxlOiBGb3JtcyArIElucHV0IE1vbGVjdWxlc1xubmFtZTogZm9ybXNcbmNhdGVnb3J5OiBNb2xlY3VsZXNcbi0tLVxuXG5Tb21lIGZvcm0gZWxlbWVudHMgYXJlIGNvbGxlY3Rpb25zIG9mIGF0b21zLiBUaGVyZWZvcmUsIHRoZXNlIGFyZSBtb2xlY3VsZXMuIEZvciBvdGhlciBmb3JtIGlucHV0cyBzZWUgdGhlIFtpbnB1dHMgc2VjdGlvbl1baW5wdXRzXSBpbiBhdG9tcy5cblxuIyMgPGEgbmFtZT1cImZvcm1zX2FjY2Vzc2liaWxpdHlcIj48L2E+QWNjZXNzaWJpbGl0eSBDb25zaWRlcmF0aW9uc1xuXG4jIyMgUGxhY2Vob2xkZXIgdGV4dFxuXG5QbGFjZWhvbGRlciB0ZXh0IHNob3VsZCBub3QgYmUgdXNlZCB0byBnaXZlIGluc3RydWN0aW9ucyB0byBhIHVzZXIgb24gaG93IHRvIHVzZSBhIGZvcm0gZmllbGQuIE1vc3Qgc2NyZWVuIHJlYWRlcnMgZG8gbm90IHJlYWQgdGhlIHBsYWNlaG9sZGVyIHRleHQuIFRoZSBgPGxhYmVsPmAgdGFnIHNob3VsZCBiZSB1c2VkIGZvciB0aGlzIHRleHQuIEluIHNvbWUgY2FzZXMsIHRoZSBcInUtdmlzdWFsbHloaWRkZW5cIiBbdmlzaWJpbGl0eSBjbGFzc11bdmlzaWJpbGl0eV0gY2FuIGJlIHVzZWQgdG8gaGlkZSB0aGUgbGFiZWwgZnJvbSBhbGwgdXNlcnMsIGV4Y2VwdCB0aG9zZSB1c2luZyBzY3JlZW4gcmVhZGVycy5cblxuIyMgVXNlXG5cblRoZSBhdmFpbGFibGUgZm9ybSBpbnB1dCBtb2xlY3VsZXMgYXJlOlxuXG4qIFtJbnB1dHMgd2l0aCBpY29ucyAoc3VjaCBhcyBhIHNlYXJjaCBiYXIpXSgjZm9ybXNfaWNvbnMpXG4qIFtGaWVsZHNldHMgYW5kIGxlZ2VuZHNdKCNmb3Jtc19maWVsZHNldHMpXG4qIFtMYWJlbHMgYW5kIGZvcm0gZWxlbWVudHNdKCNmb3Jtc19sYWJlbHMpXG4qIFtGaWx0ZXJpbmcgZGF0YV0oI2Zvcm1zX2ZpbHRlcilcbiogW0Ryb3Bkb3duIHNlYXJjaC9maWx0ZXJdKCNmb3Jtc19kcm9wZG93bi1zZWFyY2gpXG5cbiMjIyA8YSBuYW1lPVwiZm9ybXNfaWNvbnNcIj48L2E+SW5wdXRzIHdpdGggSWNvbnMgKFJlYWQ6IFNlYXJjaCBCYXIpXG5cbkdlbmVyYWxseSwgdGhpcyB3aWxsIG9ubHkgYmUgdXNlZCB3aXRoIHRoZSBzZWFyY2ggaWNvbi5cblxuIyMjIyBDb2RlXG5cbmBgYGh0bWxfZXhhbXBsZVxuPGRpdiBjbGFzcz1cIm0tZmllbGQgIG0tZmllbGQtLWljb24tbGVmdCB1LXNwYWNlLWJvdHRvbS0tbWVkaXVtXCI+XG5cdDxzdmcgY2xhc3M9XCJhLWljb25cIj5cblx0XHQ8dXNlIHhsaW5rOmhyZWY9XCIuLi9pbWFnZXMvc3ZnL2ljb25zLnN2ZyNzZWFyY2gtaWNvblwiPjwvdXNlPlxuXHQ8L3N2Zz5cblx0PGlucHV0IGNsYXNzPVwiYS1maWVsZFwiIHR5cGU9XCJ0ZXh0XCI+XG48L2Rpdj5cbmBgYFxuXG4jIyMgPGEgbmFtZT1cImZvcm1zX2ZpZWxkc2V0c1wiPjwvYT5GaWVsZHNldHMgYW5kIExlZ2VuZHNcblxuVXNlIGAubS1maWVsZHNldGAgYW5kIGAubS1maWVsZHNldF9fbGVnZW5kYCBjbGFzc2VzIHRvIGFwcGx5IGNvbnNpc3RlbnQgZmllbGRzZXQgYmVoYXZpb3Vycy5cblxuIyMjIyBDb2RlXG5cbmBgYGh0bWxfZXhhbXBsZV90YWJsZVxuPGZpZWxkc2V0IGNsYXNzPVwibS1maWVsZHNldFwiPlxuXHQ8bGVnZW5kIGNsYXNzPVwibS1maWVsZHNldF9fbGVnZW5kXCI+QSBncm91cCBvZiBjb250cm9sczwvbGVnZW5kPlxuXHQ8bGFiZWwgY2xhc3M9XCJhLWZpZWxkICBhLWZpZWxkLS1jaG9pY2VcIj5cblx0XHQ8aW5wdXQgdHlwZT1cInJhZGlvXCIgbmFtZT1cIm9wdGlvbnNSYWRpb3NcIj5cblx0XHRPcHRpb24gb25lXG5cdDwvbGFiZWw+XG5cdDxsYWJlbCBjbGFzcz1cImEtZmllbGQgIGEtZmllbGQtLWNob2ljZVwiPlxuXHRcdDxpbnB1dCB0eXBlPVwicmFkaW9cIiBuYW1lPVwib3B0aW9uc1JhZGlvc1wiPlxuXHRcdE9wdGlvbiB0d29cblx0PC9sYWJlbD5cblx0PGxhYmVsIGNsYXNzPVwiYS1maWVsZCAgYS1maWVsZC0tY2hvaWNlXCI+XG5cdFx0PGlucHV0IHR5cGU9XCJyYWRpb1wiIG5hbWU9XCJvcHRpb25zUmFkaW9zXCI+XG5cdFx0T3B0aW9uIHRocmVlXG5cdDwvbGFiZWw+XG5cdDxsYWJlbCBjbGFzcz1cImEtZmllbGQgIGEtZmllbGQtLWNob2ljZVwiPlxuXHRcdDxpbnB1dCB0eXBlPVwicmFkaW9cIiBuYW1lPVwib3B0aW9uc1JhZGlvc1wiPlxuXHRcdE9wdGlvbiBmb3VyXG5cdDwvbGFiZWw+XG48L2ZpZWxkc2V0PlxuYGBgXG5cbiMjIyA8YSBuYW1lPVwiZm9ybXNfbGFiZWxzXCI+PC9hPkxhYmVscyBhbmQgRm9ybSBFbGVtZW50c1xuXG5TZWUgW0FjY2Vzc2liaWxpdHkgQ29uc2lkZXJhdGlvbnNdKCNmb3Jtc19hY2Nlc3NpYmlsaXR5KSBhYm92ZSBmb3Igd2h5IGxhYmVscyBzaG91bGQgYmUgdXNlZCwgbm90IGp1c3QgcGxhY2Vob2xkZXIgdGV4dC5cblxuIyMjIyBDb2RlXG5cbmBgYGh0bWxfZXhhbXBsZV90YWJsZVxuPCEtLSBBcHByb2FjaCBvbmUgLS0+XG48ZGl2IGNsYXNzPVwibS1mb3JtLWVsZW1lbnRcIj5cblx0PGxhYmVsIGNsYXNzPVwiYS1sYWJlbFwiIGZvcj1cIm5pY2tuYW1lXCI+Tmlja25hbWU6PC9sYWJlbD5cblx0PGlucHV0IGlkPVwibmlja25hbWVcIiBwbGFjZWhvbGRlcj1cIk5pY2tuYW1lXCIgY2xhc3M9XCJhLWZpZWxkXCI+XG48L2Rpdj5cbjwhLS0gQXBwcm9hY2ggdHdvIC0tPlxuPGxhYmVsIGNsYXNzPVwiYS1sYWJlbCAgbS1mb3JtLWVsZW1lbnRcIj5cblx0UmVhbCBuYW1lOlxuXHQ8aW5wdXQgY2xhc3M9XCJhLWZpZWxkICBhLWZpZWxkLS1sYWJlbFwiIHBsYWNlaG9sZGVyPVwiUmVhbCBuYW1lXCI+XG48L2xhYmVsPlxuYGBgXG5cbiMjIyA8YSBuYW1lPVwiZm9ybXNfZmlsdGVyXCI+PC9hPkZpbHRlcmluZyBEYXRhXG5cbkZpbHRlcmluZyBkYXRhIGlzIGEgY29tYmluYXRpb24gb2YgYW4gaW5wdXQgZWxlbWVudCBhbmQgYSBzaW1wbGUgZGF0YXNldC0tdXN1YWxseSBhbiB1bm9yZGVyZWQgbGlzdC4gQWRkIHRoZSBganMtZmlsdGVyX19pbnB1dGAgY2xhc3MgdG8gYW4gaW5wdXQsIGFkZCB0aGUgYGpzLWZpbHRlcl9fZGF0YWAgY2xhc3MgdG8gYSBsaXN0LCBhbmQgY3JlYXRlIGEgbWVzc2FnZSB0byBkaXNwbGF5IGlmIGFsbCByZXN1bHRzIGFyZSBmaWx0ZXJlZCB3aXRoIHRoZSBganMtZmlsdGVyX19lbXB0eWAgY2xhc3MuIFV0aWxpdHkgY2xhc3NlcyBjYW4gYmUgYWRkZWQgdG8gYW55IGVsZW1lbnQgdG8gYWRqdXN0IHN0eWxpbmcuIEZvciBleGFtcGxlOiB0aGUgYHUtMmNvbGAgY2xhc3MgY2FuIGJlIGFkZGVkIHRvIHRoZSBsaXN0IHRvIHNwbGl0IGl0IGludG8gdHdvIGNvbHVtbnMuXG5cbioqTm90ZToqKiBDdXJyZW50bHkgb25seSBvbmUgZmlsdGVyIGNhbiBiZSB1c2VkIHBlciBwYWdlLlxuXG4jIyMjIENvZGVcblxuYGBgaHRtbF9leGFtcGxlX3RhYmxlXG48ZGl2IGNsYXNzPVwibS1maWVsZCAgdS1zcGFjZS1ib3R0b20tLXNtYWxsXCI+XG4gIDxpbnB1dCBjbGFzcz1cImpzLWZpbHRlcl9faW5wdXQgIGEtZmllbGQgIGEtZmllbGQtLWVtcGhhc2lzICB1LWxvd1wiIHR5cGU9XCJ0ZXh0XCIgcGxhY2Vob2xkZXI9XCJGaWx0ZXJpbmcgRXhhbXBsZVwiIC8+XG48L2Rpdj5cbjxwIGNsYXNzPVwianMtZmlsdGVyX19lbXB0eSAgdS14bGFyZ2VcIiBzdHlsZT1cImRpc3BsYXk6IG5vbmU7XCI+U29ycnksIG5vIHJlc3VsdHMgd2VyZSBmb3VuZC48L3A+XG48dWwgY2xhc3M9XCJqcy1maWx0ZXJfX2RhdGEgIGEtbGlzdC0tdW5zdHlsZWRcIj5cbiAgPGxpIGNsYXNzPVwidS1wYWRkaW5nLXRvcC0tbGFyZ2UgIHUtcGFkZGluZy0tYm90dG9tLS1sYXJnZVwiPjxhIGNsYXNzPVwidS1jb2xvci1ibGFja1wiIGhyZWY9XCIjXCI+QWxsZXJneTwvYT48L2xpPlxuICA8bGkgY2xhc3M9XCJ1LXBhZGRpbmctdG9wLS1sYXJnZSAgdS1wYWRkaW5nLS1ib3R0b20tLWxhcmdlXCI+PGEgY2xhc3M9XCJ1LWNvbG9yLWJsYWNrXCIgaHJlZj1cIiNcIj5CYXJpYXRyaWMgU3VyZ2VyeTwvYT48L2xpPlxuICA8bGkgY2xhc3M9XCJ1LXBhZGRpbmctdG9wLS1sYXJnZSAgdS1wYWRkaW5nLS1ib3R0b20tLWxhcmdlXCI+PGEgY2xhc3M9XCJ1LWNvbG9yLWJsYWNrXCIgaHJlZj1cIiNcIj5CZWhhdmlvcmFsIEhlYWx0aDwvYT48L2xpPlxuICA8bGkgY2xhc3M9XCJ1LXBhZGRpbmctdG9wLS1sYXJnZSAgdS1wYWRkaW5nLS1ib3R0b20tLWxhcmdlXCI+PGEgY2xhc3M9XCJ1LWNvbG9yLWJsYWNrXCIgaHJlZj1cIiNcIj5DYXJkaW9sb2d5PC9hPjwvbGk+XG48L3VsPlxuYGBgXG5cbiMjIyA8YSBuYW1lPVwiZm9ybXNfZHJvcGRvd24tc2VhcmNoXCI+PC9hPkRyb3Bkb3duIFNlYXJjaC9GaWx0ZXJcblxuVXNlZCB0byBmaWx0ZXIgc2VhcmNoIHJlc3VsdHMgd2hlbiB0aGVyZSBpcyBhIGxvbmcgbGlzdCBvZiBhdmFpbGFibGUgZmlsdGVycy5cblxuPGZpZ3VyZSBjbGFzcz1cImEtZmlndXJlLS1kc1wiPlxuXHQ8aW1nIHNyYz1cIi4uL2ltYWdlcy9wYXR0ZXJuLWxpYnJhcnkvbW9sZWN1bGVzL2Ryb3Bkb3duLXNlYXJjaC5wbmdcIiBhbHQ9XCJFeGFtcGxlIG9mIGRyb3Bkb3duIGZpbHRlcnMgaW4gdXNlXCIvPlxuXHQ8ZmlnY2FwdGlvbj5GaWcgMTogRXhhbXBsZSBvZiBkcm9wZG93biBmaWx0ZXJzIGluIHVzZTwvZmlnY2FwdGlvbj5cbjwvZmlndXJlPlxuXG4jIyMjIENvZGVcblxuRHVlIHRvIGxhY2sgb2YgbmVjZXNzYXJ5IGNvZGUgdG8gZGlzcGxheSB0aGlzIG1vbGVjdWxlIGhlcmUsIHBsZWFzZSB2aXNpdCB0aGUgW0ZpbmQgQSBMb2NhdGlvbiBwYWdlXSgvL2hlYWx0aGNhcmUudXRhaC5lZHUvbG9jYXRpb25zLykgdG8gc2VlIGl0IGluIGFjdGlvbi5cbiovXG4ubS1maWVsZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAubS1maWVsZCAuYS1maWVsZDpkaXNhYmxlZCB+IC5hLWljb24ge1xuICAgIGZpbGw6ICM3OTdiN2Y7IH1cbiAgLm0tZmllbGQgLmEtaWNvbiB7XG4gICAgaGVpZ2h0OiAxZW07XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICB3aWR0aDogMWVtOyB9XG5cbi5tLWZpZWxkLS1pY29uLXJpZ2h0IC5hLWZpZWxkICsgLmEtaWNvbiB7XG4gIHJpZ2h0OiAwLjVlbTsgfVxuXG4ubS1maWVsZC0taWNvbi1yaWdodCAuYS1maWVsZCB7XG4gIHBhZGRpbmctcmlnaHQ6IDJlbTsgfVxuXG4ubS1maWVsZC0taWNvbi1sZWZ0IC5hLWljb246Zmlyc3QtY2hpbGQge1xuICBsZWZ0OiAwLjVlbTsgfVxuXG4ubS1maWVsZC0taWNvbi1sZWZ0IC5hLWZpZWxkIHtcbiAgcGFkZGluZy1sZWZ0OiAyZW07IH1cblxuLm0tZmllbGRzZXQsXG4ubS1maWVsZHNldC5hLWxpc3Qge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMC41ZW0gMDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiAwOyB9XG5cbi5tLWZpZWxkc2V0X19sZWdlbmQge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXdlaWdodDogNTAwO1xuICBwYWRkaW5nOiAxZW0gMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDAuMjVlbSAwOyB9XG5cbi5tLWZpZWxkc2V0LS1kaXNhYmxlZCAuYS1maWVsZCxcbi5tLWZpZWxkc2V0OmRpc2FibGVkIC5hLWZpZWxkIHtcbiAgY29sb3I6ICM3OTdiN2Y7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gIGJvcmRlci1jb2xvcjogIzc5N2I3ZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2M3YzhjYTsgfVxuICAubS1maWVsZHNldC0tZGlzYWJsZWQgLmEtZmllbGQuYS1maWVsZC0tY2hvaWNlLFxuICAubS1maWVsZHNldDpkaXNhYmxlZCAuYS1maWVsZC5hLWZpZWxkLS1jaG9pY2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi5tLWZvcm0tZWxlbWVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogMWVtIDA7IH1cbiAgLm0tZm9ybS1lbGVtZW50IC5hLWxhYmVsOmZpcnN0LWNoaWxkIHtcbiAgICBwYWRkaW5nOiAwIDAgMC41ZW0gMDsgfVxuXG4vKmRvY1xuLS0tXG50aXRsZTogUGFnaW5hdGlvblxubmFtZTogcGFnaW5hdGlvblxuY2F0ZWdvcnk6IE1vbGVjdWxlc1xuLS0tXG4qTGFzdCBVcGRhdGVkOiBEZWNlbWJlciA0LCAyMDE4KlxuXG5Vc2VkIHRvIHNlcGFyYXRlIGxvbmcgbGlzdHMgb2YgY29udGVudCBpbnRvIG11bHRpcGxlIHBhZ2VzLiBQcmltYXJpbHkgdXNlZCBpbiBzZWFyY2ggcmVzdWx0cyBhbmQgaW5kZXggcGFnZXMgZm9yIHNpdGVzIHN1Y2ggYXMgVGhlIFNjb3BlLCBIZWFsdGhGZWVkLCBldGMuXG5cbiMjIFVzZVxuXG48ZmlndXJlIGNsYXNzPVwiYS1maWd1cmUtLWRzXCI+XG5cdDxpbWcgc3JjPVwiLi4vaW1hZ2VzL3BhdHRlcm4tbGlicmFyeS9tb2xlY3VsZXMvcGFnaW5hdGlvbi0xLnBuZ1wiIGFsdD1cIkV4YW1wbGUgb2YgcGFnaW5hdGlvbiBvbiBhIHNlYXJjaCByZXN1bHRzIHBhZ2VcIi8+XG5cdDxmaWdjYXB0aW9uPkZpZyAxOiBFeGFtcGxlIG9mIHBhZ2luYXRpb24gb24gYSBzZWFyY2ggcmVzdWx0cyBwYWdlPC9maWdjYXB0aW9uPlxuPC9maWd1cmU+XG5cbjxmaWd1cmUgY2xhc3M9XCJhLWZpZ3VyZS0tZHNcIj5cblx0PGltZyBzcmM9XCIuLi9pbWFnZXMvcGF0dGVybi1saWJyYXJ5L21vbGVjdWxlcy9wYWdpbmF0aW9uLTIuanBnXCIgYWx0PVwiRXhhbXBsZSBvZiBwYWdpbmF0aW9uIG9uIFRoZSBTY29wZSBwb2RjYXN0cyBpbmRleCBwYWdlXCIvPlxuXHQ8ZmlnY2FwdGlvbj5GaWcgMTogRXhhbXBsZSBvZiBwYWdpbmF0aW9uIG9uIFRoZSBTY29wZSBwb2RjYXN0cyBpbmRleCBwYWdlPC9maWdjYXB0aW9uPlxuPC9maWd1cmU+XG5cbmBgYGh0bWxfZXhhbXBsZVxuPGRpdiBjbGFzcz1cIm0tcGFnaW5hdGlvblwiPlxuXHQ8ZGl2IGNsYXNzPVwibS1wYWdpbmF0aW9uX19jb250cm9scyAgbS1wYWdpbmF0aW9uX19jb250cm9scy0tYmFja3dhcmRcIj5cblx0XHQ8IS0tPGJ1dHRvbiBjbGFzcz1cIm0tcGFnaW5hdGlvbl9fY29udHJvbFwiPsKrIEZpcnN0PC9idXR0b24+LS0+XG5cdFx0PGJ1dHRvbiBjbGFzcz1cIm0tcGFnaW5hdGlvbl9fY29udHJvbFwiPuKAuSBQcmV2PC9idXR0b24+XG5cdDwvZGl2PlxuXHQ8ZGl2IGNsYXNzPVwibS1wYWdpbmF0aW9uX19jb250cm9sc1wiPlxuXHRcdDxidXR0b24gY2xhc3M9XCJtLXBhZ2luYXRpb25fX3BhZ2VcIj4xPC9idXR0b24+XG5cdFx0PGJ1dHRvbiBjbGFzcz1cIm0tcGFnaW5hdGlvbl9fcGFnZSAgbS1wYWdpbmF0aW9uX19wYWdlLS1jdXJyZW50XCI+MjwvYnV0dG9uPlxuXHRcdDxidXR0b24gY2xhc3M9XCJtLXBhZ2luYXRpb25fX3BhZ2VcIj4zPC9idXR0b24+XG5cdDwvZGl2PlxuXHQ8ZGl2IGNsYXNzPVwibS1wYWdpbmF0aW9uX19jb250cm9scyAgbS1wYWdpbmF0aW9uX19jb250cm9scy0tZm9yd2FyZFwiPlxuXHRcdDxidXR0b24gY2xhc3M9XCJtLXBhZ2luYXRpb25fX2NvbnRyb2xcIj5OZXh0IOKAujwvYnV0dG9uPlxuXHRcdDwhLS08YnV0dG9uIGNsYXNzPVwibS1wYWdpbmF0aW9uX19jb250cm9sXCI+TGFzdCDCuzwvYnV0dG9uPi0tPlxuXHQ8L2Rpdj5cbjwvZGl2PlxuYGBgXG5cbiovXG4ubS1wYWdpbmF0aW9uIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAxZW0gMDtcbiAgZm9udC1zaXplOiAwLjg3NWVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLm0tcGFnaW5hdGlvbl9fY29udHJvbHMge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4ubS1wYWdpbmF0aW9uX19jb250cm9scy0tYmFja3dhcmQge1xuICBmbG9hdDogbGVmdDtcbiAgdGV4dC1hbGlnbjogbGVmdDsgfVxuXG4ubS1wYWdpbmF0aW9uX19jb250cm9scy0tZm9yd2FyZCB7XG4gIGZsb2F0OiByaWdodDtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cblxuLm0tcGFnaW5hdGlvbl9fY29udHJvbCxcbi5tLXBhZ2luYXRpb25fX3BhZ2Uge1xuICBib3JkZXI6IDFweCBzb2xpZCAjNDE0MDQyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xuICBjb2xvcjogIzQxNDA0MjtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDI1ZW07XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAuNWVtO1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIG91dGxpbmU6IDA7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDFlbTtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogd3JhcDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBhcHBlYXJhbmNlOiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgYm9yZGVyOiAxcHggc29saWQgIzQxNDA0MjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRjtcbiAgY29sb3I6ICM0MTQwNDI7XG4gIG1pbi13aWR0aDogMi40ZW07XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDMwZW07XG4gIHBhZGRpbmc6IDAuNWVtOyB9XG4gIC5tLXBhZ2luYXRpb25fX2NvbnRyb2wuYnV0dG9uLS1hY3RpdmUsXG4gIC5tLXBhZ2luYXRpb25fX3BhZ2UuYnV0dG9uLS1hY3RpdmUge1xuICAgIGJvcmRlci1jb2xvcjogIzI4MjcyODtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjgyNzI4O1xuICAgIGNvbG9yOiAjRkZGOyB9XG4gIC5tLXBhZ2luYXRpb25fX2NvbnRyb2w6bm90KDpkaXNhYmxlZCksXG4gIC5tLXBhZ2luYXRpb25fX3BhZ2U6bm90KDpkaXNhYmxlZCkge1xuICAgIC8qJjpmb2N1cyB7XG5cdFx0XHRib3JkZXItY29sb3I6ICRidXR0b24tZm9jdXMtYm9yZGVyLWNvbG9yO1xuXHRcdFx0Ym94LXNoYWRvdzogJGJ1dHRvbi1mb2N1cy1ib3gtc2hhZG93O1xuXHRcdH0qLyB9XG4gICAgLm0tcGFnaW5hdGlvbl9fY29udHJvbDpub3QoOmRpc2FibGVkKTpob3ZlcixcbiAgICAubS1wYWdpbmF0aW9uX19wYWdlOm5vdCg6ZGlzYWJsZWQpOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNhNjE5MmU7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjYTYxOTJlO1xuICAgICAgY29sb3I6ICNGRkY7IH1cbiAgICAubS1wYWdpbmF0aW9uX19jb250cm9sOm5vdCg6ZGlzYWJsZWQpOmFjdGl2ZSxcbiAgICAubS1wYWdpbmF0aW9uX19wYWdlOm5vdCg6ZGlzYWJsZWQpOmFjdGl2ZSB7XG4gICAgICBib3JkZXItY29sb3I6ICM3YTEyMjI7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjN2ExMjIyO1xuICAgICAgY29sb3I6ICNGRkY7IH1cbiAgLm0tcGFnaW5hdGlvbl9fY29udHJvbDpkaXNhYmxlZCxcbiAgLm0tcGFnaW5hdGlvbl9fcGFnZTpkaXNhYmxlZCB7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICBvcGFjaXR5OiAwLjU7IH1cbiAgLm0tcGFnaW5hdGlvbl9fY29udHJvbC5idXR0b24tLWFjdGl2ZSxcbiAgLm0tcGFnaW5hdGlvbl9fcGFnZS5idXR0b24tLWFjdGl2ZSB7XG4gICAgYm9yZGVyLWNvbG9yOiAjMjgyNzI4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyODI3Mjg7XG4gICAgY29sb3I6ICNGRkY7IH1cbiAgLm0tcGFnaW5hdGlvbl9fY29udHJvbDpub3QoOmRpc2FibGVkKSxcbiAgLm0tcGFnaW5hdGlvbl9fcGFnZTpub3QoOmRpc2FibGVkKSB7XG4gICAgLyomOmZvY3VzIHtcblx0XHRcdGJvcmRlci1jb2xvcjogJGJ1dHRvbi1mb2N1cy1ib3JkZXItY29sb3I7XG5cdFx0XHRib3gtc2hhZG93OiAkYnV0dG9uLWZvY3VzLWJveC1zaGFkb3c7XG5cdFx0fSovIH1cbiAgICAubS1wYWdpbmF0aW9uX19jb250cm9sOm5vdCg6ZGlzYWJsZWQpOmhvdmVyLFxuICAgIC5tLXBhZ2luYXRpb25fX3BhZ2U6bm90KDpkaXNhYmxlZCk6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2E2MTkyZTtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNhNjE5MmU7XG4gICAgICBjb2xvcjogI0ZGRjsgfVxuICAgIC5tLXBhZ2luYXRpb25fX2NvbnRyb2w6bm90KDpkaXNhYmxlZCk6YWN0aXZlLFxuICAgIC5tLXBhZ2luYXRpb25fX3BhZ2U6bm90KDpkaXNhYmxlZCk6YWN0aXZlIHtcbiAgICAgIGJvcmRlci1jb2xvcjogIzdhMTIyMjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM3YTEyMjI7XG4gICAgICBjb2xvcjogI0ZGRjsgfVxuXG4ubS1wYWdpbmF0aW9uX19wYWdlLS1jdXJyZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1jb2xvcjogI2E2MTkyZTtcbiAgYm9yZGVyLXdpZHRoOiAxcHg7XG4gIGNvbG9yOiAjYTYxOTJlOyB9XG5cbi5tLXBhZ2luYXRpb25fX2VsbGlwc2lzIHtcbiAgcGFkZGluZzogMCAxZW07IH1cblxuLm0tcmF0aW5nIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuXG4ubS1yYXRpbmdfX2Rlc2NyaXB0aW9uIHtcbiAgbWFyZ2luOiAwOyB9XG5cbi5tLXJhdGluZ19fdmFsdWUge1xuICBmb250LXNpemU6IDIuNXJlbTtcbiAgbWFyZ2luOiBhdXRvIDAgMDsgfVxuXG4vKmRvY1xuLS0tXG50aXRsZTogU2lnbnBvc3Rcbm5hbWU6IHNpZ25wb3N0XG5jYXRlZ29yeTogTW9sZWN1bGVzXG4tLS1cbipMYXN0IFVwZGF0ZWQ6IERlY2VtYmVyIDQsIDIwMTgqXG5cblNpZ25wb3N0cyBhcmUgYnV0dG9uLWxpa2UgZWxlbWVudHMgdGhhdCBjYW4gYmUgdXNlZCB3aGVuIHRoZXJlIGlzIGEgYml0IHRvbyBtdWNoIHRleHQgZm9yIGEgc3RhbmRhcmQgYnV0dG9uLlxuXG4jIyBVc2VcblxuVHlwaWNhbGx5IHRoZSBbY2FyZCBtb2xlY3VsZV1bY2FyZHNdIGlzIHVzZWQgaW5zdGVhZCBvZiB0aGUgc2lnbnBvc3Q7IGhvd2V2ZXIgb24gcGFnZXMgZG9taW5hdGVkIGJ5IGNhcmRzLCB0aGUgdXNlIG9mIGEgc2lnbnBvc3QgbWF5IGhlbHAgYWRkIHZpc3VhbCBpbnRlcmVzdCB0byB0aGUgY29udGVudCBjb250YWluZWQgaW5zaWRlLlxuXG5JZiB0aGUgc2lnbnBvc3QgaXMgY29tcGxldGVseSBlbmNsb3NlZCB3aXRoaW4gYW4gYDxhPmAgdGFnLCB0aGUgZW50aXJlIGVsZW1lbnQgd2lsbCBvcGVyYXRlIGxpa2UgYSBidXR0b24uXG5cbiMjIyBDb2RlXG5cbiooKipJZ25vcmUgdGhlIFwibC1ncmlkXCIgZGl2cywgdGhleSBhcmUgdXNlZCBoZXJlIGZvciBwcmVzZW50YXRpb24gcHVycG9zZXMgb25seS4qKikqXG5cbmBgYGh0bWxfZXhhbXBsZVxuPGRpdiBjbGFzcz1cImwtZ3JpZFwiPlxuXHQ8ZGl2IGNsYXNzPVwibC1ncmlkX19pdGVtXCI+XG5cdFx0PGRpdiBjbGFzcz1cIm0tc2lnbnBvc3RcIj5cblx0XHQgICAgPGRpdiBjbGFzcz1cIm0tc2lnbnBvc3RfX2hlYWRlclwiPlxuXHRcdCAgICAgICAgPGg0IGNsYXNzPVwibS1zaWducG9zdF9faGVhZGluZyB1LWNvbG9yLWJsYWNrXCI+U2lnbnBvc3QgSGVhZGluZzwvaDQ+XG5cdFx0XHRcdDxwIGNsYXNzPVwibS1zaWducG9zdF9fY29weVwiPk9ubHkgdGhlIGNhbGwtdG8tYWN0aW9uIGJ1dHRvbiBpcyBsaW5rZWQgb24gdGhpcyBzaWducG9zdC48L3A+XG5cdFx0ICAgIDwvZGl2PlxuXHRcdCAgICA8YSBocmVmPVwiI1wiIGNsYXNzPVwibS1zaWducG9zdF9fZm9vdGVyIHUtYm9yZGVyLW5vbmVcIj5cblx0XHQgICAgICAgIENhbGwgdG8gQWN0aW9uXG5cdFx0ICAgIDwvYT5cblx0XHQ8L2Rpdj5cblx0PC9kaXY+XG5cdDxkaXYgY2xhc3M9XCJsLWdyaWRfX2l0ZW1cIj5cblx0XHQ8YSBjbGFzcz1cIm0tc2lnbnBvc3RcIiBocmVmPVwiI1wiPlxuXHRcdFx0PGRpdiBjbGFzcz1cIm0tc2lnbnBvc3RfX2hlYWRlclwiPlxuXHRcdFx0XHQ8aDQgY2xhc3M9XCJtLXNpZ25wb3N0X19oZWFkaW5nIHUtY29sb3ItYmxhY2tcIj5TaWducG9zdCBIZWFkaW5nPC9oND5cblx0XHRcdFx0PHAgY2xhc3M9XCJtLXNpZ25wb3N0X19jb3B5IHUtcmVndWxhclwiPlRoaXMgZW50aXJlIHNpZ25wb3N0IGlzIGEgbGluay48L3A+XG5cdFx0XHQ8L2Rpdj5cblx0XHRcdDxkaXYgY2xhc3M9XCJtLXNpZ25wb3N0X19mb290ZXJcIj5cblx0XHRcdFx0Q2FsbCB0byBBY3Rpb25cblx0XHRcdDwvZGl2PlxuXHRcdDwvYT5cblx0PC9kaXY+XG48L2Rpdj5cbmBgYFxuXHRcbmBgYGh0bWxfZXhhbXBsZVxuPGRpdiBjbGFzcz1cImwtZ3JpZFwiPlxuXHQ8ZGl2IGNsYXNzPVwibC1ncmlkX19pdGVtXCI+XG5cdFx0PGRpdiBjbGFzcz1cIm0tc2lnbnBvc3QgbS1zaWducG9zdC0tYnJhbmRcIj5cblx0XHQgICAgPGRpdiBjbGFzcz1cIm0tc2lnbnBvc3RfX2hlYWRlclwiPlxuXHRcdCAgICAgICAgPGg0IGNsYXNzPVwibS1zaWducG9zdF9faGVhZGluZ1wiPlNpZ25wb3N0IEhlYWRpbmc8L2g0PlxuXHRcdFx0XHQ8cCBjbGFzcz1cIm0tc2lnbnBvc3RfX2NvcHlcIj5Pbmx5IHRoZSBjYWxsLXRvLWFjdGlvbiBidXR0b24gaXMgbGlua2VkIG9uIHRoaXMgc2lnbnBvc3QuPC9wPlxuXHRcdCAgICA8L2Rpdj5cblx0XHQgICAgPGEgaHJlZj1cIiNcIiBjbGFzcz1cIm0tc2lnbnBvc3RfX2Zvb3RlciB1LWJvcmRlci1ub25lXCI+XG5cdFx0ICAgICAgICBDYWxsIHRvIEFjdGlvblxuXHRcdCAgICA8L2E+XG5cdFx0PC9kaXY+XG5cdDwvZGl2PlxuXHQ8ZGl2IGNsYXNzPVwibC1ncmlkX19pdGVtXCI+XG5cdFx0PGEgY2xhc3M9XCJtLXNpZ25wb3N0IG0tc2lnbnBvc3QtLWJyYW5kXCIgaHJlZj1cIiNcIj5cblx0XHRcdDxkaXYgY2xhc3M9XCJtLXNpZ25wb3N0X19oZWFkZXJcIj5cblx0XHRcdFx0PGg0IGNsYXNzPVwibS1zaWducG9zdF9faGVhZGluZ1wiPlNpZ25wb3N0IEhlYWRpbmc8L2g0PlxuXHRcdFx0XHQ8cCBjbGFzcz1cIm0tc2lnbnBvc3RfX2NvcHkgdS1yZWd1bGFyXCI+VGhpcyBlbnRpcmUgc2lnbnBvc3QgaXMgYSBsaW5rLjwvcD5cblx0XHRcdDwvZGl2PlxuXHRcdFx0PGRpdiBjbGFzcz1cIm0tc2lnbnBvc3RfX2Zvb3RlclwiPlxuXHRcdFx0XHRDYWxsIHRvIEFjdGlvblxuXHRcdFx0PC9kaXY+XG5cdFx0PC9hPlxuXHQ8L2Rpdj5cbjwvZGl2PlxuYGBgXG5cbiovXG4ubS1zaWducG9zdCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0MTQwNDI7XG4gIGJhY2tncm91bmQtY2xpcDogYm9yZGVyLWJveDtcbiAgYm9yZGVyLWNvbG9yOiAjNzk3YjdmO1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIGJvcmRlci13aWR0aDogMXB4O1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3gtc2hhZG93OiAwIDFweCAzcHggMCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIGNvbG9yOiAjNDE0MDQyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBtYXJnaW46IDAgMCAxLjVlbTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5tLXNpZ25wb3N0OmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjgyNzI4O1xuICAgIGJvcmRlci1jb2xvcjogZGFya2VyKCM0MTQwNDIsIDEwKTtcbiAgICBjb2xvcjogIzQxNDA0MjsgfVxuICAubS1zaWducG9zdDpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAjYTYxOTJlO1xuICAgIGNvbG9yOiAjNDE0MDQyOyB9XG4gIC5tLXNpZ25wb3N0OmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzViNTk1YzsgfVxuXG4ubS1zaWducG9zdC0tYnJhbmQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTYxOTJlO1xuICBib3JkZXItY29sb3I6ICNhNjE5MmU7IH1cbiAgLm0tc2lnbnBvc3QtLWJyYW5kOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjN2ExMjIyO1xuICAgIGJvcmRlci1jb2xvcjogIzdhMTIyMjtcbiAgICBjb2xvcjogIzQxNDA0MjsgfVxuICAubS1zaWducG9zdC0tYnJhbmQ6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogI2E2MTkyZTsgfVxuICAubS1zaWducG9zdC0tYnJhbmQ6YWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDIyMDNhOyB9XG5cbi5tLXNpZ25wb3N0X19oZWFkaW5nLFxuLm0tc2lnbnBvc3RfX2Zvb3RlciB7XG4gIGZvbnQtc2l6ZTogMC44NzVlbTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMWVtO1xuICBsaW5lLWhlaWdodDogMS4zMjU7XG4gIG1hcmdpbjogMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuXG4ubS1zaWducG9zdF9faGVhZGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRjtcbiAgcGFkZGluZzogMWVtIDEuNWVtOyB9XG5cbi5tLXNpZ25wb3N0X19jb3B5IHtcbiAgbWFyZ2luOiAwLjI1ZW0gMCAwLjVlbTsgfVxuXG4ubS1zaWducG9zdF9fZm9vdGVyIHtcbiAgY29sb3I6ICNGRkY7XG4gIHBhZGRpbmc6IDFlbSAxLjVlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5tLXNpZ25wb3N0X19mb290ZXI6aG92ZXIge1xuICBjb2xvcjogI0ZGRjsgfVxuXG4ubS1zaWducG9zdF9fZm9vdGVyOjphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkY7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiA4cHg7XG4gIG1hcmdpbi1sZWZ0OiAtNHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDUwJTtcbiAgdG9wOiAtNHB4O1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gIHdpZHRoOiA4cHg7IH1cblxuLypkb2Ncbi0tLVxudGl0bGU6IFRpbGVzXG5uYW1lOiB0aWxlc1xuY2F0ZWdvcnk6IE1vbGVjdWxlc1xuLS0tXG4qTGFzdCBVcGRhdGVkOiBEZWNlbWJlciA0LCAyMDE4KlxuXG5UaWxlcyBhcmUgd2hhdCB3ZSBjYWxsIGltYWdlcyB3aXRoIHRleHQgb3ZlcmxhaWQuIFRpbGVzIGNhbiBiZSBjb21iaW5lZCB3aXRoIHJhdGlvIHV0aWxpdGllcyB0byBtYWludGFpbiBwcm9wZXIgYXNwZWN0IHJhdGlvcywgc3VjaCBhcyBhIHNxdWFyZSwgYXQgYWxsIHNjcmVlbiBzaXplcy5cblxuIyMgQWNjZXNzaWJpbGl0eSBDb25zaWRlcmF0aW9uc1xuXG5EdWUgdG8gbGVnaWJpbGl0eSBpc3N1ZXMgd2l0aCBwbGFjaW5nIHRleHQgb24gdG9wIG9mIGFuIGltYWdlLCB0aWxlcyBzaG91bGQgYmUgdXNlZCBqdWRpY2lvdXNseS4gRW5zdXJlIHRoYXQgdGhlIGltYWdlIHVzZWQgcHJvdmlkZXMgc3VmZmljaWVudCBjb250cmFzdCB0byB0aGUgb3ZlcmxhaWQgdGV4dC5cblxuIyMgVXNlXG5cbiMjIyBOb3QgUmVjb21tZW5kZWQg8J+RjlxuXG5UaWxlcyBzaG91bGQgYmUgdXNlZCBzcGFyaW5nbHkgYW5kIHNob3VsZCBub3QgYmUgdXNlZCBmb3IgYW4gaW1wb3J0YW50IGNhbGwtdG8tYWN0aW9uLiBVc2FiaWxpdHkgc3R1ZGllcyBoYXZlIHJlcGVhdGVkbHkgc2hvd24gdGhhdCBtYW55IHVzZXJzIHdpbGwgY29tcGxldGVseSBpZ25vcmUgYW55IGVsZW1lbnQgdGhhdCBjbG9zZWx5IG1pcnJvcnMgZGVzaWduIGNvbnZlbnRpb25zIHVzZWQgZm9yIG9ubGluZSBhZHZlcnRpc2luZzsgd2l0aCB0ZXh0IG92ZXIgYW4gaW1hZ2UgYmVpbmcgdGhlIG1vc3QgY29tbW9uIGFkLlxuXG4jIyMgUmVjb21tZW5kZWQg8J+RjVxuXG5UaWxlcyBhcmUgbWFkZSB1cCBvZiBhIHdyYXBwZXIgZWxlbWVudDogYG0tdGlsZXNgLCBpbmRpdmlkdWFsIHRpbGVzOiBgbS10aWxlYCwgYW5kIGVhY2ggdGlsZSBjb250YWlucyB0aHJlZSBjaGlsZHJlbiB0byBwb3NpdGlvbiB0ZXh0OiBgbS10aWxlX19oZWFkZXJgLCBgbS10aWxlX19ib2R5YCwgYG0tdGlsZV9fZm9vdGVyYC4gVGhlIHdyYXBwZXIgZWxlbWVudCB1c2VzIHRoZSBuZXcgQ1NTIGRpc3BsYXk6Z3JpZCBwcm9wZXJ0eSB0byBtYWludGFpbiBwcm9wZXIgaGVpZ2h0cyBhbmQgd2lkdGhzIGZvciBlYWNoIHRpbGUuXG5cbkVhY2ggaW5kaXZpZHVhbCB0aWxlIGhhcyBhIG1pbmltdW0gaGVpZ2h0IG9mIHJvdWdobHkgMjAwcHguIEZlYXR1cmVkIHRpbGVzIC0tIGRlc2NyaWJlZCBiZWxvdyAtLSBoYXZlIGEgbWluaW11bSBoZWlnaHQgb2YgYWJvdXQgNDAwcHguXG5cbkF2YWlsYWJsZSBvcHRpb25zIGZvciB0aWxlcyBhcmU6XG5cbiogW0RlZmF1bHRdKCN0aWxlc19kZWZhdWx0KVxuKiBbQ29sdW1uc10oI3RpbGVzX2NvbHVtbnMpXG4qIFtHdXR0ZXIgbW9kaWZpZXJzXSgjdGlsZXNfZ3V0dGVycylcbiogW1RleHQgcGxhY2VtZW50XSgjdGlsZXNfdGV4dClcbiogW1RoZW1lIG1vZGlmaWVycyAodGV4dCBjb2xvcildKCN0aWxlc190aGVtZSlcbiogW0ZlYXR1cmVkIHRpbGVzXSgjdGlsZXNfZmVhdHVyZWQpXG5cbiMjIyA8YSBuYW1lPVwidGlsZXNfZGVmYXVsdFwiPjwvYT5EZWZhdWx0XG5gYGBodG1sX2V4YW1wbGVfdGFibGVcbjxkaXYgY2xhc3M9XCJtLXRpbGVzICBtLXRpbGVzLS0yQG1lZGl1bVwiPlxuXHQ8ZGl2IGNsYXNzPVwidS1yYXRpbyAgdS1yYXRpby0tMXgxXCI+XG5cdFx0PGRpdiBjbGFzcz1cInUtcmF0aW9fX2NvbnRlbnRcIj5cblx0XHRcdDxkaXYgY2xhc3M9XCJtLXRpbGUgIG0tdGlsZS0tZGFya1wiIHN0eWxlPVwiYmFja2dyb3VuZC1pbWFnZTp1cmwoJy4uL2ltYWdlcy9wYXR0ZXJuLWxpYnJhcnkvbW9sZWN1bGVzL3RpbGVzLXMtZGFyay5qcGcnKVwiPlxuXHRcdFx0XHQ8ZGl2IGNsYXNzPVwibS10aWxlX19oZWFkZXIgdS14bGFyZ2VcIj48L2Rpdj5cblx0XHRcdFx0PGRpdiBjbGFzcz1cIm0tdGlsZV9fYm9keVwiPlxuXHRcdFx0XHRcdDxwIGNsYXNzPVwidS14bGFyZ2UgIHUtbGluZS1oZWlnaHQtLXRpdGxlICB1LXRleHQtYWxpZ24tLWNlbnRlclwiPkNlbnRlcmVkIFRleHQ8L3A+XG5cdFx0XHRcdDwvZGl2PlxuXHRcdFx0XHQ8ZGl2IGNsYXNzPVwibS10aWxlX19mb290ZXIgdS14bGFyZ2VcIj48L2Rpdj5cblx0XHRcdDwvZGl2PlxuXHRcdDwvZGl2PlxuXHQ8L2Rpdj5cblx0PGRpdiBjbGFzcz1cInUtcmF0aW8gIHUtcmF0aW8tLTF4MVwiPlxuXHRcdDxkaXYgY2xhc3M9XCJ1LXJhdGlvX19jb250ZW50XCI+XG5cdFx0XHQ8ZGl2IGNsYXNzPVwibS10aWxlICBtLXRpbGUtLWRhcmtcIiBzdHlsZT1cImJhY2tncm91bmQtaW1hZ2U6dXJsKCcuLi9pbWFnZXMvcGF0dGVybi1saWJyYXJ5L21vbGVjdWxlcy90aWxlcy1zLWRhcmsuanBnJylcIj5cblx0XHRcdFx0PGRpdiBjbGFzcz1cIm0tdGlsZV9faGVhZGVyIHUteGxhcmdlXCI+PC9kaXY+XG5cdFx0XHRcdDxkaXYgY2xhc3M9XCJtLXRpbGVfX2JvZHlcIj5cblx0XHRcdFx0XHQ8cCBjbGFzcz1cInUteGxhcmdlICB1LWxpbmUtaGVpZ2h0LS10aXRsZSAgdS10ZXh0LWFsaWduLS1jZW50ZXJcIj5DZW50ZXJlZCBUZXh0PC9wPlxuXHRcdFx0XHQ8L2Rpdj5cblx0XHRcdFx0PGRpdiBjbGFzcz1cIm0tdGlsZV9fZm9vdGVyIHUteGxhcmdlXCI+PC9kaXY+XG5cdFx0XHQ8L2Rpdj5cblx0XHQ8L2Rpdj5cblx0PC9kaXY+XG48L2Rpdj5cbmBgYFxuXG4jIyMgPGEgbmFtZT1cInRpbGVzX2NvbHVtbnNcIj48L2E+Q29sdW1uc1xuXG5UaGUgYG0tdGlsZXNgIHdyYXBwZXIgY2FuIGJlIHVzZWQgdG8gc2V0IGhvdyBtYW55IHRpbGVzIGFwcGVhciBpbiBlYWNoIHJvdywgd2l0aCBhIG1heGltdW0gb2YgNC4gU21hbGwgc2NyZWVucyBmb3JjZSB0aWxlcyBpbnRvIGEgc2luZ2xlIGNvbHVtbiwgaG93ZXZlciwgb24gbGFyZ2VyIHNjcmVlbnMgdGhlIG51bWJlciBvZiB0aWxlcyBjYW4gYmUgc2V0IHdpdGggY2xhc3NlcyBpbiB0aGlzIGZvcm1hdDogYG0tdGlsZXMtLTJAc21hbGxgLCBgbS10aWxlcy0tM0BtZWRpdW1gLCBgbS10aWxlcy0tNEBsYXJnZWAsIGV0Yy5cblxuYGBgaHRtbF9leGFtcGxlXG48ZGl2IGNsYXNzPVwibS10aWxlc1wiPlxuXHQ8ZGl2IGNsYXNzPVwibS10aWxlIG0tdGlsZS0tZGFya1wiIHN0eWxlPVwiYmFja2dyb3VuZC1pbWFnZTp1cmwoJy4uL2ltYWdlcy9wYXR0ZXJuLWxpYnJhcnkvbW9sZWN1bGVzL3RpbGVzLXN1cGVyLWRhcmsuanBnJylcIj5cblx0XHQ8ZGl2IGNsYXNzPVwibS10aWxlX19oZWFkZXIgdS14bGFyZ2VcIj5vbmUgY29sdW1uPC9kaXY+XG5cdFx0PGRpdiBjbGFzcz1cIm0tdGlsZV9fYm9keSB1LXhsYXJnZVwiPjwvZGl2PlxuXHRcdDxkaXYgY2xhc3M9XCJtLXRpbGVfX2Zvb3RlciB1LXhsYXJnZVwiPjwvZGl2PlxuXHQ8L2Rpdj5cbjwvZGl2PlxuYGBgXG5cbmBgYGh0bWxfZXhhbXBsZVxuPGRpdiBjbGFzcz1cIm0tdGlsZXMgIG0tdGlsZXMtLTJAbWVkaXVtXCI+XG5cdDxkaXYgY2xhc3M9XCJtLXRpbGUgbS10aWxlLS1kYXJrXCIgc3R5bGU9XCJiYWNrZ3JvdW5kLWltYWdlOnVybCgnLi4vaW1hZ2VzL3BhdHRlcm4tbGlicmFyeS9tb2xlY3VsZXMvdGlsZXMteGwtZGFyay5qcGcnKVwiPlxuXHRcdDxkaXYgY2xhc3M9XCJtLXRpbGVfX2hlYWRlciB1LXhsYXJnZVwiPnR3byBjb2x1bW5zPC9kaXY+XG5cdFx0PGRpdiBjbGFzcz1cIm0tdGlsZV9fYm9keSB1LXhsYXJnZVwiPjwvZGl2PlxuXHRcdDxkaXYgY2xhc3M9XCJtLXRpbGVfX2Zvb3RlciB1LXhsYXJnZVwiPjwvZGl2PlxuXHQ8L2Rpdj5cblx0PGRpdiBjbGFzcz1cIm0tdGlsZSBtLXRpbGUtLWRhcmtcIiBzdHlsZT1cImJhY2tncm91bmQtaW1hZ2U6dXJsKCcuLi9pbWFnZXMvcGF0dGVybi1saWJyYXJ5L21vbGVjdWxlcy90aWxlcy14bC1kYXJrLmpwZycpXCI+XG5cdFx0PGRpdiBjbGFzcz1cIm0tdGlsZV9faGVhZGVyIHUteGxhcmdlXCI+dHdvIGNvbHVtbnM8L2Rpdj5cblx0XHQ8ZGl2IGNsYXNzPVwibS10aWxlX19ib2R5IHUteGxhcmdlXCI+PC9kaXY+XG5cdFx0PGRpdiBjbGFzcz1cIm0tdGlsZV9fZm9vdGVyIHUteGxhcmdlXCI+PC9kaXY+XG5cdDwvZGl2PlxuPC9kaXY+XG5gYGBcblxuYGBgaHRtbF9leGFtcGxlXG48ZGl2IGNsYXNzPVwibS10aWxlcyAgbS10aWxlcy0tM0BtZWRpdW1cIj5cblx0PGRpdiBjbGFzcz1cIm0tdGlsZSBtLXRpbGUtLWRhcmtcIiBzdHlsZT1cImJhY2tncm91bmQtaW1hZ2U6dXJsKCcuLi9pbWFnZXMvcGF0dGVybi1saWJyYXJ5L21vbGVjdWxlcy90aWxlcy1sLWRhcmsuanBnJylcIj5cblx0XHQ8ZGl2IGNsYXNzPVwibS10aWxlX19oZWFkZXIgdS14bGFyZ2VcIj50aHJlZSBjb2x1bW5zPC9kaXY+XG5cdFx0PGRpdiBjbGFzcz1cIm0tdGlsZV9fYm9keSB1LXhsYXJnZVwiPjwvZGl2PlxuXHRcdDxkaXYgY2xhc3M9XCJtLXRpbGVfX2Zvb3RlciB1LXhsYXJnZVwiPjwvZGl2PlxuXHQ8L2Rpdj5cblx0PGRpdiBjbGFzcz1cIm0tdGlsZSBtLXRpbGUtLWRhcmtcIiBzdHlsZT1cImJhY2tncm91bmQtaW1hZ2U6dXJsKCcuLi9pbWFnZXMvcGF0dGVybi1saWJyYXJ5L21vbGVjdWxlcy90aWxlcy1sLWRhcmsuanBnJylcIj5cblx0XHQ8ZGl2IGNsYXNzPVwibS10aWxlX19oZWFkZXIgdS14bGFyZ2VcIj50aHJlZSBjb2x1bW5zPC9kaXY+XG5cdFx0PGRpdiBjbGFzcz1cIm0tdGlsZV9fYm9keSB1LXhsYXJnZVwiPjwvZGl2PlxuXHRcdDxkaXYgY2xhc3M9XCJtLXRpbGVfX2Zvb3RlciB1LXhsYXJnZVwiPjwvZGl2PlxuXHQ8L2Rpdj5cblx0PGRpdiBjbGFzcz1cIm0tdGlsZSBtLXRpbGUtLWRhcmtcIiBzdHlsZT1cImJhY2tncm91bmQtaW1hZ2U6dXJsKCcuLi9pbWFnZXMvcGF0dGVybi1saWJyYXJ5L21vbGVjdWxlcy90aWxlcy1sLWRhcmsuanBnJylcIj5cblx0XHQ8ZGl2IGNsYXNzPVwibS10aWxlX19oZWFkZXIgdS14bGFyZ2VcIj50aHJlZSBjb2x1bW5zPC9kaXY+XG5cdFx0PGRpdiBjbGFzcz1cIm0tdGlsZV9fYm9keSB1LXhsYXJnZVwiPjwvZGl2PlxuXHRcdDxkaXYgY2xhc3M9XCJtLXRpbGVfX2Zvb3RlciB1LXhsYXJnZVwiPjwvZGl2PlxuXHQ8L2Rpdj5cbjwvZGl2PlxuYGBgXG5cbmBgYGh0bWxfZXhhbXBsZVxuPGRpdiBjbGFzcz1cIm0tdGlsZXMgIG0tdGlsZXMtLTRAbWVkaXVtXCI+XG5cdDxkaXYgY2xhc3M9XCJtLXRpbGUgbS10aWxlLS1kYXJrXCIgc3R5bGU9XCJiYWNrZ3JvdW5kLWltYWdlOnVybCgnLi4vaW1hZ2VzL3BhdHRlcm4tbGlicmFyeS9tb2xlY3VsZXMvdGlsZXMtbS1kYXJrLmpwZycpXCI+XG5cdFx0PGRpdiBjbGFzcz1cIm0tdGlsZV9faGVhZGVyIHUteGxhcmdlXCI+Zm91ciBjb2x1bW5zPC9kaXY+XG5cdFx0PGRpdiBjbGFzcz1cIm0tdGlsZV9fYm9keSB1LXhsYXJnZVwiPjwvZGl2PlxuXHRcdDxkaXYgY2xhc3M9XCJtLXRpbGVfX2Zvb3RlciB1LXhsYXJnZVwiPjwvZGl2PlxuXHQ8L2Rpdj5cblx0PGRpdiBjbGFzcz1cIm0tdGlsZSBtLXRpbGUtLWRhcmtcIiBzdHlsZT1cImJhY2tncm91bmQtaW1hZ2U6dXJsKCcuLi9pbWFnZXMvcGF0dGVybi1saWJyYXJ5L21vbGVjdWxlcy90aWxlcy1tLWRhcmsuanBnJylcIj5cblx0XHQ8ZGl2IGNsYXNzPVwibS10aWxlX19oZWFkZXIgdS14bGFyZ2VcIj5mb3VyIGNvbHVtbnM8L2Rpdj5cblx0XHQ8ZGl2IGNsYXNzPVwibS10aWxlX19ib2R5IHUteGxhcmdlXCI+PC9kaXY+XG5cdFx0PGRpdiBjbGFzcz1cIm0tdGlsZV9fZm9vdGVyIHUteGxhcmdlXCI+PC9kaXY+XG5cdDwvZGl2PlxuXHQ8ZGl2IGNsYXNzPVwibS10aWxlIG0tdGlsZS0tZGFya1wiIHN0eWxlPVwiYmFja2dyb3VuZC1pbWFnZTp1cmwoJy4uL2ltYWdlcy9wYXR0ZXJuLWxpYnJhcnkvbW9sZWN1bGVzL3RpbGVzLW0tZGFyay5qcGcnKVwiPlxuXHRcdDxkaXYgY2xhc3M9XCJtLXRpbGVfX2hlYWRlciB1LXhsYXJnZVwiPmZvdXIgY29sdW1uczwvZGl2PlxuXHRcdDxkaXYgY2xhc3M9XCJtLXRpbGVfX2JvZHkgdS14bGFyZ2VcIj48L2Rpdj5cblx0XHQ8ZGl2IGNsYXNzPVwibS10aWxlX19mb290ZXIgdS14bGFyZ2VcIj48L2Rpdj5cblx0PC9kaXY+XG5cdDxkaXYgY2xhc3M9XCJtLXRpbGUgbS10aWxlLS1kYXJrXCIgc3R5bGU9XCJiYWNrZ3JvdW5kLWltYWdlOnVybCgnLi4vaW1hZ2VzL3BhdHRlcm4tbGlicmFyeS9tb2xlY3VsZXMvdGlsZXMtbS1kYXJrLmpwZycpXCI+XG5cdFx0PGRpdiBjbGFzcz1cIm0tdGlsZV9faGVhZGVyIHUteGxhcmdlXCI+Zm91ciBjb2x1bW5zPC9kaXY+XG5cdFx0PGRpdiBjbGFzcz1cIm0tdGlsZV9fYm9keSB1LXhsYXJnZVwiPjwvZGl2PlxuXHRcdDxkaXYgY2xhc3M9XCJtLXRpbGVfX2Zvb3RlciB1LXhsYXJnZVwiPjwvZGl2PlxuXHQ8L2Rpdj5cbjwvZGl2PlxuYGBgXG5cbiMjIyA8YSBuYW1lPVwidGlsZXNfZ3V0dGVyc1wiPjwvYT5HdXR0ZXIgTW9kaWZpZXJzXG5cblRvIGdpdmUgdGlsZXMgYSBkaWZmZXJlbnQgZ3V0dGVyLCBhZGQgb25lIG9mIHRoZSBmb2xsb3dpbmcgbW9kaWZpZXIgY2xhc3NlcyB0byB0aGUgYG0tdGlsZXNgIGVsZW1lbnQ6XG5gbS10aWxlcy0tZ3V0dGVyLXhzbWFsbGAsIGBtLXRpbGVzLS1ndXR0ZXItc21hbGxgLCBgbS10aWxlcy0tZ3V0dGVyLW1lZGl1bWAsIGBtLXRpbGVzLS1ndXR0ZXItbGFyZ2VgLCBgbS10aWxlcy0tZ3V0dGVyLXhsYXJnZWAsIGBtLXRpbGVzLS1ndXR0ZXItc3VwZXJgLlxuXG5gYGBodG1sX2V4YW1wbGVcbjxkaXYgY2xhc3M9XCJtLXRpbGVzICBtLXRpbGVzLS1ndXR0ZXIteHNtYWxsICBtLXRpbGVzLS0zQG1lZGl1bVwiPlxuXHQ8ZGl2IGNsYXNzPVwibS10aWxlICBtLXRpbGUtLWRhcmtcIiBzdHlsZT1cImJhY2tncm91bmQtaW1hZ2U6dXJsKCcuLi9pbWFnZXMvcGF0dGVybi1saWJyYXJ5L21vbGVjdWxlcy90aWxlcy1sLWRhcmsuanBnJylcIj5cblx0XHQ8ZGl2IGNsYXNzPVwibS10aWxlX19oZWFkZXIgdS14bGFyZ2VcIj54c21hbGw8L2Rpdj5cblx0XHQ8ZGl2IGNsYXNzPVwibS10aWxlX19ib2R5IHUteGxhcmdlXCI+PC9kaXY+XG5cdFx0PGRpdiBjbGFzcz1cIm0tdGlsZV9fZm9vdGVyIHUteGxhcmdlXCI+PC9kaXY+XG5cdDwvZGl2PlxuXHQ8ZGl2IGNsYXNzPVwibS10aWxlICBtLXRpbGUtLWRhcmtcIiBzdHlsZT1cImJhY2tncm91bmQtaW1hZ2U6dXJsKCcuLi9pbWFnZXMvcGF0dGVybi1saWJyYXJ5L21vbGVjdWxlcy90aWxlcy1sLWRhcmsuanBnJylcIj5cblx0XHQ8ZGl2IGNsYXNzPVwibS10aWxlX19oZWFkZXIgdS14bGFyZ2VcIj54c21hbGw8L2Rpdj5cblx0XHQ8ZGl2IGNsYXNzPVwibS10aWxlX19ib2R5IHUteGxhcmdlXCI+PC9kaXY+XG5cdFx0PGRpdiBjbGFzcz1cIm0tdGlsZV9fZm9vdGVyIHUteGxhcmdlXCI+PC9kaXY+XG5cdDwvZGl2PlxuXHQ8ZGl2IGNsYXNzPVwibS10aWxlICBtLXRpbGUtLWRhcmtcIiBzdHlsZT1cImJhY2tncm91bmQtaW1hZ2U6dXJsKCcuLi9pbWFnZXMvcGF0dGVybi1saWJyYXJ5L21vbGVjdWxlcy90aWxlcy1sLWRhcmsuanBnJylcIj5cblx0XHQ8ZGl2IGNsYXNzPVwibS10aWxlX19oZWFkZXIgdS14bGFyZ2VcIj54c21hbGw8L2Rpdj5cblx0XHQ8ZGl2IGNsYXNzPVwibS10aWxlX19ib2R5IHUteGxhcmdlXCI+PC9kaXY+XG5cdFx0PGRpdiBjbGFzcz1cIm0tdGlsZV9fZm9vdGVyIHUteGxhcmdlXCI+PC9kaXY+XG5cdDwvZGl2PlxuPC9kaXY+XG5gYGBcblxuYGBgaHRtbF9leGFtcGxlXG48ZGl2IGNsYXNzPVwibS10aWxlcyAgbS10aWxlcy0tZ3V0dGVyLXNtYWxsICBtLXRpbGVzLS0zQG1lZGl1bVwiPlxuXHQ8ZGl2IGNsYXNzPVwibS10aWxlICBtLXRpbGUtLWRhcmtcIiBzdHlsZT1cImJhY2tncm91bmQtaW1hZ2U6dXJsKCcuLi9pbWFnZXMvcGF0dGVybi1saWJyYXJ5L21vbGVjdWxlcy90aWxlcy1sLWRhcmsuanBnJylcIj5cblx0XHQ8ZGl2IGNsYXNzPVwibS10aWxlX19oZWFkZXIgdS14bGFyZ2VcIj5zbWFsbDwvZGl2PlxuXHRcdDxkaXYgY2xhc3M9XCJtLXRpbGVfX2JvZHkgdS14bGFyZ2VcIj48L2Rpdj5cblx0XHQ8ZGl2IGNsYXNzPVwibS10aWxlX19mb290ZXIgdS14bGFyZ2VcIj48L2Rpdj5cblx0PC9kaXY+XG5cdDxkaXYgY2xhc3M9XCJtLXRpbGUgIG0tdGlsZS0tZGFya1wiIHN0eWxlPVwiYmFja2dyb3VuZC1pbWFnZTp1cmwoJy4uL2ltYWdlcy9wYXR0ZXJuLWxpYnJhcnkvbW9sZWN1bGVzL3RpbGVzLWwtZGFyay5qcGcnKVwiPlxuXHRcdDxkaXYgY2xhc3M9XCJtLXRpbGVfX2hlYWRlciB1LXhsYXJnZVwiPnNtYWxsPC9kaXY+XG5cdFx0PGRpdiBjbGFzcz1cIm0tdGlsZV9fYm9keSB1LXhsYXJnZVwiPjwvZGl2PlxuXHRcdDxkaXYgY2xhc3M9XCJtLXRpbGVfX2Zvb3RlciB1LXhsYXJnZVwiPjwvZGl2PlxuXHQ8L2Rpdj5cblx0PGRpdiBjbGFzcz1cIm0tdGlsZSAgbS10aWxlLS1kYXJrXCIgc3R5bGU9XCJiYWNrZ3JvdW5kLWltYWdlOnVybCgnLi4vaW1hZ2VzL3BhdHRlcm4tbGlicmFyeS9tb2xlY3VsZXMvdGlsZXMtbC1kYXJrLmpwZycpXCI+XG5cdFx0PGRpdiBjbGFzcz1cIm0tdGlsZV9faGVhZGVyIHUteGxhcmdlXCI+c21hbGw8L2Rpdj5cblx0XHQ8ZGl2IGNsYXNzPVwibS10aWxlX19ib2R5IHUteGxhcmdlXCI+PC9kaXY+XG5cdFx0PGRpdiBjbGFzcz1cIm0tdGlsZV9fZm9vdGVyIHUteGxhcmdlXCI+PC9kaXY+XG5cdDwvZGl2PlxuPC9kaXY+XG5gYGBcblxuYGBgaHRtbF9leGFtcGxlXG48ZGl2IGNsYXNzPVwibS10aWxlcyAgbS10aWxlcy0tZ3V0dGVyLW1lZGl1bSAgbS10aWxlcy0tM0BtZWRpdW1cIj5cblx0PGRpdiBjbGFzcz1cIm0tdGlsZSAgbS10aWxlLS1kYXJrXCIgc3R5bGU9XCJiYWNrZ3JvdW5kLWltYWdlOnVybCgnLi4vaW1hZ2VzL3BhdHRlcm4tbGlicmFyeS9tb2xlY3VsZXMvdGlsZXMtbC1kYXJrLmpwZycpXCI+XG5cdFx0PGRpdiBjbGFzcz1cIm0tdGlsZV9faGVhZGVyIHUteGxhcmdlXCI+bWVkaXVtPC9kaXY+XG5cdFx0PGRpdiBjbGFzcz1cIm0tdGlsZV9fYm9keSB1LXhsYXJnZVwiPjwvZGl2PlxuXHRcdDxkaXYgY2xhc3M9XCJtLXRpbGVfX2Zvb3RlciB1LXhsYXJnZVwiPjwvZGl2PlxuXHQ8L2Rpdj5cblx0PGRpdiBjbGFzcz1cIm0tdGlsZSAgbS10aWxlLS1kYXJrXCIgc3R5bGU9XCJiYWNrZ3JvdW5kLWltYWdlOnVybCgnLi4vaW1hZ2VzL3BhdHRlcm4tbGlicmFyeS9tb2xlY3VsZXMvdGlsZXMtbC1kYXJrLmpwZycpXCI+XG5cdFx0PGRpdiBjbGFzcz1cIm0tdGlsZV9faGVhZGVyIHUteGxhcmdlXCI+bWVkaXVtPC9kaXY+XG5cdFx0PGRpdiBjbGFzcz1cIm0tdGlsZV9fYm9keSB1LXhsYXJnZVwiPjwvZGl2PlxuXHRcdDxkaXYgY2xhc3M9XCJtLXRpbGVfX2Zvb3RlciB1LXhsYXJnZVwiPjwvZGl2PlxuXHQ8L2Rpdj5cblx0PGRpdiBjbGFzcz1cIm0tdGlsZSAgbS10aWxlLS1kYXJrXCIgc3R5bGU9XCJiYWNrZ3JvdW5kLWltYWdlOnVybCgnLi4vaW1hZ2VzL3BhdHRlcm4tbGlicmFyeS9tb2xlY3VsZXMvdGlsZXMtbC1kYXJrLmpwZycpXCI+XG5cdFx0PGRpdiBjbGFzcz1cIm0tdGlsZV9faGVhZGVyIHUteGxhcmdlXCI+bWVkaXVtPC9kaXY+XG5cdFx0PGRpdiBjbGFzcz1cIm0tdGlsZV9fYm9keSB1LXhsYXJnZVwiPjwvZGl2PlxuXHRcdDxkaXYgY2xhc3M9XCJtLXRpbGVfX2Zvb3RlciB1LXhsYXJnZVwiPjwvZGl2PlxuXHQ8L2Rpdj5cbjwvZGl2PlxuYGBgXG5cbmBgYGh0bWxfZXhhbXBsZVxuPGRpdiBjbGFzcz1cIm0tdGlsZXMgIG0tdGlsZXMtLWd1dHRlci1sYXJnZSAgbS10aWxlcy0tM0BtZWRpdW1cIj5cblx0PGRpdiBjbGFzcz1cIm0tdGlsZSAgbS10aWxlLS1kYXJrXCIgc3R5bGU9XCJiYWNrZ3JvdW5kLWltYWdlOnVybCgnLi4vaW1hZ2VzL3BhdHRlcm4tbGlicmFyeS9tb2xlY3VsZXMvdGlsZXMtbC1kYXJrLmpwZycpXCI+XG5cdFx0PGRpdiBjbGFzcz1cIm0tdGlsZV9faGVhZGVyIHUteGxhcmdlXCI+bGFyZ2U8L2Rpdj5cblx0XHQ8ZGl2IGNsYXNzPVwibS10aWxlX19ib2R5IHUteGxhcmdlXCI+PC9kaXY+XG5cdFx0PGRpdiBjbGFzcz1cIm0tdGlsZV9fZm9vdGVyIHUteGxhcmdlXCI+PC9kaXY+XG5cdDwvZGl2PlxuXHQ8ZGl2IGNsYXNzPVwibS10aWxlICBtLXRpbGUtLWRhcmtcIiBzdHlsZT1cImJhY2tncm91bmQtaW1hZ2U6dXJsKCcuLi9pbWFnZXMvcGF0dGVybi1saWJyYXJ5L21vbGVjdWxlcy90aWxlcy1sLWRhcmsuanBnJylcIj5cblx0XHQ8ZGl2IGNsYXNzPVwibS10aWxlX19oZWFkZXIgdS14bGFyZ2VcIj5sYXJnZTwvZGl2PlxuXHRcdDxkaXYgY2xhc3M9XCJtLXRpbGVfX2JvZHkgdS14bGFyZ2VcIj48L2Rpdj5cblx0XHQ8ZGl2IGNsYXNzPVwibS10aWxlX19mb290ZXIgdS14bGFyZ2VcIj48L2Rpdj5cblx0PC9kaXY+XG5cdDxkaXYgY2xhc3M9XCJtLXRpbGUgIG0tdGlsZS0tZGFya1wiIHN0eWxlPVwiYmFja2dyb3VuZC1pbWFnZTp1cmwoJy4uL2ltYWdlcy9wYXR0ZXJuLWxpYnJhcnkvbW9sZWN1bGVzL3RpbGVzLWwtZGFyay5qcGcnKVwiPlxuXHRcdDxkaXYgY2xhc3M9XCJtLXRpbGVfX2hlYWRlciB1LXhsYXJnZVwiPmxhcmdlPC9kaXY+XG5cdFx0PGRpdiBjbGFzcz1cIm0tdGlsZV9fYm9keSB1LXhsYXJnZVwiPjwvZGl2PlxuXHRcdDxkaXYgY2xhc3M9XCJtLXRpbGVfX2Zvb3RlciB1LXhsYXJnZVwiPjwvZGl2PlxuXHQ8L2Rpdj5cbjwvZGl2PlxuYGBgXG5cbmBgYGh0bWxfZXhhbXBsZVxuPGRpdiBjbGFzcz1cIm0tdGlsZXMgIG0tdGlsZXMtLWd1dHRlci14bGFyZ2UgIG0tdGlsZXMtLTNAbWVkaXVtXCI+XG5cdDxkaXYgY2xhc3M9XCJtLXRpbGUgIG0tdGlsZS0tZGFya1wiIHN0eWxlPVwiYmFja2dyb3VuZC1pbWFnZTp1cmwoJy4uL2ltYWdlcy9wYXR0ZXJuLWxpYnJhcnkvbW9sZWN1bGVzL3RpbGVzLWwtZGFyay5qcGcnKVwiPlxuXHRcdDxkaXYgY2xhc3M9XCJtLXRpbGVfX2hlYWRlciB1LXhsYXJnZVwiPnhsYXJnZTwvZGl2PlxuXHRcdDxkaXYgY2xhc3M9XCJtLXRpbGVfX2JvZHkgdS14bGFyZ2VcIj48L2Rpdj5cblx0XHQ8ZGl2IGNsYXNzPVwibS10aWxlX19mb290ZXIgdS14bGFyZ2VcIj48L2Rpdj5cblx0PC9kaXY+XG5cdDxkaXYgY2xhc3M9XCJtLXRpbGUgIG0tdGlsZS0tZGFya1wiIHN0eWxlPVwiYmFja2dyb3VuZC1pbWFnZTp1cmwoJy4uL2ltYWdlcy9wYXR0ZXJuLWxpYnJhcnkvbW9sZWN1bGVzL3RpbGVzLWwtZGFyay5qcGcnKVwiPlxuXHRcdDxkaXYgY2xhc3M9XCJtLXRpbGVfX2hlYWRlciB1LXhsYXJnZVwiPnhsYXJnZTwvZGl2PlxuXHRcdDxkaXYgY2xhc3M9XCJtLXRpbGVfX2JvZHkgdS14bGFyZ2VcIj48L2Rpdj5cblx0XHQ8ZGl2IGNsYXNzPVwibS10aWxlX19mb290ZXIgdS14bGFyZ2VcIj48L2Rpdj5cblx0PC9kaXY+XG5cdDxkaXYgY2xhc3M9XCJtLXRpbGUgIG0tdGlsZS0tZGFya1wiIHN0eWxlPVwiYmFja2dyb3VuZC1pbWFnZTp1cmwoJy4uL2ltYWdlcy9wYXR0ZXJuLWxpYnJhcnkvbW9sZWN1bGVzL3RpbGVzLWwtZGFyay5qcGcnKVwiPlxuXHRcdDxkaXYgY2xhc3M9XCJtLXRpbGVfX2hlYWRlciB1LXhsYXJnZVwiPnhsYXJnZTwvZGl2PlxuXHRcdDxkaXYgY2xhc3M9XCJtLXRpbGVfX2JvZHkgdS14bGFyZ2VcIj48L2Rpdj5cblx0XHQ8ZGl2IGNsYXNzPVwibS10aWxlX19mb290ZXIgdS14bGFyZ2VcIj48L2Rpdj5cblx0PC9kaXY+XG48L2Rpdj5cbmBgYFxuXG4jIyMgPGEgbmFtZT1cInRpbGVzX3RleHRcIj48L2E+UGxhY2luZyBUZXh0XG5cbkVhY2ggdGlsZSBjb250YWlucyB0aHJlZSBjaGlsZCBlbGVtZW50cywgYG0tdGlsZV9faGVhZGVyYCwgYG0tdGlsZV9fYm9keWAsIGBtLXRpbGVfX2Zvb3RlcmAsIHdoaWNoIGNhbiBiZSB1c2VkIHRvIHZlcnRpY2FsbHkgcG9zaXRpb24gdGV4dCBhdCB0aGUgdG9wLCBpbiB0aGUgbWlkZGxlLCBvciBhdCB0aGUgYm90dG9tIG9mIGEgdGlsZS5cblxuVG8gcG9zaXRpb24gaXRlbXMgaG9yaXpvbnRhbGx5LCB1c2UgdGhlIHRleHQgYWxpZ25tZW50IHV0aWxpdGllczogYHUtdGV4dC1hbGlnbi0tY2VudGVyYCwgYHUtdGV4dC1hbGlnbi0tcmlnaHRgLlxuXG4jIyMjIFRvcFxuXG5gYGBodG1sX2V4YW1wbGVfdGFibGVcbjxkaXYgY2xhc3M9XCJtLXRpbGUgIG0tdGlsZS0tbGlnaHRcIiBzdHlsZT1cImJhY2tncm91bmQtaW1hZ2U6dXJsKCcuLi9pbWFnZXMvcGF0dGVybi1saWJyYXJ5L21vbGVjdWxlcy90aWxlcy14bC1saWdodC5qcGcnKVwiPlxuXHQ8ZGl2IGNsYXNzPVwibS10aWxlX19oZWFkZXIgdS14bGFyZ2VcIj50b3A8L2Rpdj5cblx0PGRpdiBjbGFzcz1cIm0tdGlsZV9fYm9keSB1LXhsYXJnZVwiPjwvZGl2PlxuXHQ8ZGl2IGNsYXNzPVwibS10aWxlX19mb290ZXIgdS14bGFyZ2VcIj48L2Rpdj5cbjwvZGl2PlxuYGBgXG5cbiMjIyMgTWlkZGxlXG5cbmBgYGh0bWxfZXhhbXBsZV90YWJsZVxuPGRpdiBjbGFzcz1cIm0tdGlsZSAgbS10aWxlLS1kYXJrXCIgc3R5bGU9XCJiYWNrZ3JvdW5kLWltYWdlOnVybCgnLi4vaW1hZ2VzL3BhdHRlcm4tbGlicmFyeS9tb2xlY3VsZXMvdGlsZXMteGwtZGFyay5qcGcnKVwiPlxuXHQ8ZGl2IGNsYXNzPVwibS10aWxlX19oZWFkZXIgdS14bGFyZ2VcIj48L2Rpdj5cblx0PGRpdiBjbGFzcz1cIm0tdGlsZV9fYm9keSB1LXhsYXJnZVwiPm1pZGRsZTwvZGl2PlxuXHQ8ZGl2IGNsYXNzPVwibS10aWxlX19mb290ZXIgdS14bGFyZ2VcIj48L2Rpdj5cbjwvZGl2PlxuYGBgXG5cbiMjIyMgQm90dG9tXG5cbmBgYGh0bWxfZXhhbXBsZV90YWJsZVxuPGRpdiBjbGFzcz1cIm0tdGlsZSAgbS10aWxlLS1saWdodFwiIHN0eWxlPVwiYmFja2dyb3VuZC1pbWFnZTp1cmwoJy4uL2ltYWdlcy9wYXR0ZXJuLWxpYnJhcnkvbW9sZWN1bGVzL3RpbGVzLXhsLWxpZ2h0LmpwZycpXCI+XG5cdDxkaXYgY2xhc3M9XCJtLXRpbGVfX2hlYWRlciB1LXhsYXJnZVwiPjwvZGl2PlxuXHQ8ZGl2IGNsYXNzPVwibS10aWxlX19ib2R5IHUteGxhcmdlXCI+PC9kaXY+XG5cdDxkaXYgY2xhc3M9XCJtLXRpbGVfX2Zvb3RlciB1LXhsYXJnZVwiPmJvdHRvbTwvZGl2PlxuPC9kaXY+XG5gYGBcblxuIyMjIyBDZW50ZXIgSG9yaXpvbnRhbGx5XG5cbmBgYGh0bWxfZXhhbXBsZV90YWJsZVxuPGRpdiBjbGFzcz1cIm0tdGlsZSAgbS10aWxlLS1kYXJrXCIgc3R5bGU9XCJiYWNrZ3JvdW5kLWltYWdlOnVybCgnLi4vaW1hZ2VzL3BhdHRlcm4tbGlicmFyeS9tb2xlY3VsZXMvdGlsZXMtbC1kYXJrLmpwZycpXCI+XG5cdDxkaXYgY2xhc3M9XCJtLXRpbGVfX2hlYWRlciB1LXhsYXJnZVwiPjwvZGl2PlxuXHQ8ZGl2IGNsYXNzPVwibS10aWxlX19ib2R5IHUteGxhcmdlIHUtdGV4dC1hbGlnbi0tY2VudGVyXCI+Y2VudGVyPC9kaXY+XG5cdDxkaXYgY2xhc3M9XCJtLXRpbGVfX2Zvb3RlciB1LXhsYXJnZVwiPjwvZGl2PlxuPC9kaXY+XG5gYGBcblxuIyMjIyBSaWdodFxuXG5gYGBodG1sX2V4YW1wbGVfdGFibGVcbjxkaXYgY2xhc3M9XCJtLXRpbGUgIG0tdGlsZS0tbGlnaHRcIiBzdHlsZT1cImJhY2tncm91bmQtaW1hZ2U6dXJsKCcuLi9pbWFnZXMvcGF0dGVybi1saWJyYXJ5L21vbGVjdWxlcy90aWxlcy1sLWxpZ2h0LmpwZycpXCI+XG5cdDxkaXYgY2xhc3M9XCJtLXRpbGVfX2hlYWRlciB1LXhsYXJnZVwiPjwvZGl2PlxuXHQ8ZGl2IGNsYXNzPVwibS10aWxlX19ib2R5IHUteGxhcmdlIHUtdGV4dC1hbGlnbi0tcmlnaHRcIj5yaWdodDwvZGl2PlxuXHQ8ZGl2IGNsYXNzPVwibS10aWxlX19mb290ZXIgdS14bGFyZ2VcIj48L2Rpdj5cbjwvZGl2PlxuYGBgXG5cbiMjIyA8YSBuYW1lPVwidGlsZXNfdGhlbWVcIj48L2E+VGhlbWUgTW9kaWZpZXJzXG5cbkFzIGltYWdlcyB2YXJ5IGluIGNvbG9yLCB3ZSBvZmZlciB0d28gdGhlbWVzLCBsaWdodCBhbmQgZGFyay4gVXNlIHRoZSBtb2RpZmllciBgbS10aWxlLS1saWdodGAgd2hlbiB0aGUgaW1hZ2UgaXMgbGlnaHQgYW5kIHlvdSB3YW50IGRhcmsgdGV4dC4gVXNlIHRoZSBtb2RpZmllciBgbS10aWxlLS1kYXJrYCB3aGVuIHRoZSBpbWFnZSBpcyBkYXJrIGFuZCB5b3Ugd2FudCBsaWdodCB0ZXh0LlxuXG5gYGBodG1sX2V4YW1wbGVcbjxkaXYgY2xhc3M9XCJtLXRpbGVzICBtLXRpbGVzLS0yQG1lZGl1bVwiPlxuXHQ8ZGl2IGNsYXNzPVwibS10aWxlICBtLXRpbGUtLWxpZ2h0XCIgc3R5bGU9XCJiYWNrZ3JvdW5kLWltYWdlOnVybCgnLi4vaW1hZ2VzL3BhdHRlcm4tbGlicmFyeS9tb2xlY3VsZXMvdGlsZXMtbS1saWdodC5qcGcnKVwiPlxuXHRcdDxkaXYgY2xhc3M9XCJtLXRpbGVfX2hlYWRlciB1LXhsYXJnZVwiPjwvZGl2PlxuXHRcdDxkaXYgY2xhc3M9XCJtLXRpbGVfX2JvZHkgdS14bGFyZ2VcIj48L2Rpdj5cblx0XHQ8ZGl2IGNsYXNzPVwibS10aWxlX19mb290ZXIgdS14bGFyZ2VcIj5saWdodDwvZGl2PlxuXHQ8L2Rpdj5cblx0PGRpdiBjbGFzcz1cIm0tdGlsZSAgbS10aWxlLS1kYXJrXCIgc3R5bGU9XCJiYWNrZ3JvdW5kLWltYWdlOnVybCgnLi4vaW1hZ2VzL3BhdHRlcm4tbGlicmFyeS9tb2xlY3VsZXMvdGlsZXMtc3VwZXItZGFyay5qcGcnKVwiPlxuXHRcdDxkaXYgY2xhc3M9XCJtLXRpbGVfX2hlYWRlciB1LXhsYXJnZVwiPjwvZGl2PlxuXHRcdDxkaXYgY2xhc3M9XCJtLXRpbGVfX2JvZHkgdS14bGFyZ2VcIj48L2Rpdj5cblx0XHQ8ZGl2IGNsYXNzPVwibS10aWxlX19mb290ZXIgdS14bGFyZ2UgdS10ZXh0LWFsaWduLS1jZW50ZXJcIj5kYXJrPC9kaXY+XG5cdDwvZGl2PlxuPC9kaXY+XG5gYGBcblxuIyMjIDxhIG5hbWU9XCJ0aWxlc19mZWF0dXJlZFwiPjwvYT5GZWF0dXJlZCBUaWxlc1xuXG5GZWF0dXJlZCB0aWxlcyBzcGFuIHR3byBjb2x1bW5zIGFuZCBoYXZlIGEgbGFyZ2UgbWluaW11bSBoZWlnaHQgdG8gc2hvdyB0aGVpciBpbXBvcnRhbmNlLiBUaGlzIGlzIHByaW1hcmlseSB1c2VkIGZvciBuZXdzIHRpbGVzLlxuXG5gYGBodG1sX2V4YW1wbGVcbjxkaXYgY2xhc3M9XCJtLXRpbGVzICBtLXRpbGVzLS0yQG1lZGl1bVwiPlxuXHQ8YSBjbGFzcz1cIm0tdGlsZSAgbS10aWxlLS1kYXJrICBtLXRpbGUtLWZlYXR1cmVkXCIgaHJlZj1cIiNcIiBzdHlsZT1cImJhY2tncm91bmQtaW1hZ2U6dXJsKCcuLi9pbWFnZXMvcGF0dGVybi1saWJyYXJ5L21vbGVjdWxlcy90aWxlcy14bC1kYXJrLmpwZycpXCI+XG5cdFx0PGRpdiBjbGFzcz1cIm0tdGlsZV9faGVhZGVyIHUteGxhcmdlXCI+PC9kaXY+XG5cdFx0PGRpdiBjbGFzcz1cIm0tdGlsZV9fYm9keSB1LXhsYXJnZVwiPjwvZGl2PlxuXHRcdDxkaXYgY2xhc3M9XCJtLXRpbGVfX2Zvb3RlciB1LXhsYXJnZVwiPkZlYXR1cmVkIFRpbGU8L2Rpdj5cblx0PC9hPlxuXHQ8YSBjbGFzcz1cIm0tdGlsZSB1LXhsYXJnZSBtLXRpbGUtLWxpZ2h0XCIgaHJlZj1cIiNcIiBzdHlsZT1cImJhY2tncm91bmQtaW1hZ2U6dXJsKCcuLi9pbWFnZXMvcGF0dGVybi1saWJyYXJ5L21vbGVjdWxlcy90aWxlcy1sLWxpZ2h0LmpwZycpXCI+UmVndWxhciBUaWxlPC9hPlxuXHQ8YSBjbGFzcz1cIm0tdGlsZSB1LXhsYXJnZSBtLXRpbGUtLWRhcmtcIiBocmVmPVwiI1wiIHN0eWxlPVwiYmFja2dyb3VuZC1pbWFnZTp1cmwoJy4uL2ltYWdlcy9wYXR0ZXJuLWxpYnJhcnkvbW9sZWN1bGVzL3RpbGVzLWwtZGFyay5qcGcnKVwiPlJlZ3VsYXIgVGlsZTwvYT5cbjwvZGl2PlxuYGBgXG5cbiovXG4ubS10aWxlcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDsgfVxuXG4ubS10aWxlcy0tMiA+ICoge1xuICBtYXgtd2lkdGg6IDUwJTsgfVxuXG4ubS10aWxlcy0tMyA+ICoge1xuICBtYXgtd2lkdGg6IDMzLjMzMyU7IH1cblxuLm0tdGlsZXMtLTQgPiAqIHtcbiAgbWF4LXdpZHRoOiAyNSU7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDIwcmVtKSB7XG4gIC5tLXRpbGVzLS0yXFxAeHNtYWxsID4gKiB7XG4gICAgbWF4LXdpZHRoOiA1MCU7IH1cbiAgLm0tdGlsZXMtLTNcXEB4c21hbGwgPiAqIHtcbiAgICBtYXgtd2lkdGg6IDMzLjMzMyU7IH1cbiAgLm0tdGlsZXMtLTRcXEB4c21hbGwgPiAqIHtcbiAgICBtYXgtd2lkdGg6IDI1JTsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAzMHJlbSkge1xuICAubS10aWxlcy0tMlxcQHNtYWxsID4gKiB7XG4gICAgbWF4LXdpZHRoOiA1MCU7IH1cbiAgLm0tdGlsZXMtLTNcXEBzbWFsbCA+ICoge1xuICAgIG1heC13aWR0aDogMzMuMzMzJTsgfVxuICAubS10aWxlcy0tNFxcQHNtYWxsID4gKiB7XG4gICAgbWF4LXdpZHRoOiAyNSU7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDhyZW0pIHtcbiAgLm0tdGlsZXMtLTJcXEBtZWRpdW0gPiAqIHtcbiAgICBtYXgtd2lkdGg6IDUwJTsgfVxuICAubS10aWxlcy0tM1xcQG1lZGl1bSA+ICoge1xuICAgIG1heC13aWR0aDogMzMuMzMzJTsgfVxuICAubS10aWxlcy0tNFxcQG1lZGl1bSA+ICoge1xuICAgIG1heC13aWR0aDogMjUlOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDY0cmVtKSB7XG4gIC5tLXRpbGVzLS0yXFxAbGFyZ2UgPiAqIHtcbiAgICBtYXgtd2lkdGg6IDUwJTsgfVxuICAubS10aWxlcy0tM1xcQGxhcmdlID4gKiB7XG4gICAgbWF4LXdpZHRoOiAzMy4zMzMlOyB9XG4gIC5tLXRpbGVzLS00XFxAbGFyZ2UgPiAqIHtcbiAgICBtYXgtd2lkdGg6IDI1JTsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3OHJlbSkge1xuICAubS10aWxlcy0tMlxcQHhsYXJnZSA+ICoge1xuICAgIG1heC13aWR0aDogNTAlOyB9XG4gIC5tLXRpbGVzLS0zXFxAeGxhcmdlID4gKiB7XG4gICAgbWF4LXdpZHRoOiAzMy4zMzMlOyB9XG4gIC5tLXRpbGVzLS00XFxAeGxhcmdlID4gKiB7XG4gICAgbWF4LXdpZHRoOiAyNSU7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTI1cmVtKSB7XG4gIC5tLXRpbGVzLS0yXFxAc3VwZXIgPiAqIHtcbiAgICBtYXgtd2lkdGg6IDUwJTsgfVxuICAubS10aWxlcy0tM1xcQHN1cGVyID4gKiB7XG4gICAgbWF4LXdpZHRoOiAzMy4zMzMlOyB9XG4gIC5tLXRpbGVzLS00XFxAc3VwZXIgPiAqIHtcbiAgICBtYXgtd2lkdGg6IDI1JTsgfSB9XG5cbkBzdXBwb3J0cyAoZGlzcGxheTogZ3JpZCkge1xuICAubS10aWxlcyB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLWdhcDogLjc1ZW07XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBhdXRvO1xuICAgIGdyaWQtdGVtcGxhdGUtcm93czogYXV0bzsgfVxuICAubS10aWxlcy0tMiB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTsgfVxuICAubS10aWxlcy0tMyB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTsgfVxuICAubS10aWxlcy0tNCB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNCwgMWZyKTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMjByZW0pIHtcbiAgICAubS10aWxlcy0tMlxcQHhzbWFsbCB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpOyB9XG4gICAgLm0tdGlsZXMtLTNcXEB4c21hbGwge1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTsgfVxuICAgIC5tLXRpbGVzLS00XFxAeHNtYWxsIHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDQsIDFmcik7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMzByZW0pIHtcbiAgICAubS10aWxlcy0tMlxcQHNtYWxsIHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7IH1cbiAgICAubS10aWxlcy0tM1xcQHNtYWxsIHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7IH1cbiAgICAubS10aWxlcy0tNFxcQHNtYWxsIHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDQsIDFmcik7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDhyZW0pIHtcbiAgICAubS10aWxlcy0tMlxcQG1lZGl1bSB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpOyB9XG4gICAgLm0tdGlsZXMtLTNcXEBtZWRpdW0ge1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTsgfVxuICAgIC5tLXRpbGVzLS00XFxAbWVkaXVtIHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDQsIDFmcik7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjRyZW0pIHtcbiAgICAubS10aWxlcy0tMlxcQGxhcmdlIHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7IH1cbiAgICAubS10aWxlcy0tM1xcQGxhcmdlIHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7IH1cbiAgICAubS10aWxlcy0tNFxcQGxhcmdlIHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDQsIDFmcik7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzhyZW0pIHtcbiAgICAubS10aWxlcy0tMlxcQHhsYXJnZSB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpOyB9XG4gICAgLm0tdGlsZXMtLTNcXEB4bGFyZ2Uge1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTsgfVxuICAgIC5tLXRpbGVzLS00XFxAeGxhcmdlIHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDQsIDFmcik7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTI1cmVtKSB7XG4gICAgLm0tdGlsZXMtLTJcXEBzdXBlciB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpOyB9XG4gICAgLm0tdGlsZXMtLTNcXEBzdXBlciB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCAxZnIpOyB9XG4gICAgLm0tdGlsZXMtLTRcXEBzdXBlciB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg0LCAxZnIpOyB9IH1cbiAgLm0tdGlsZXMtLWd1dHRlci14c21hbGwge1xuICAgIGdyaWQtZ2FwOiAuNWVtOyB9XG4gIC5tLXRpbGVzLS1ndXR0ZXItc21hbGwge1xuICAgIGdyaWQtZ2FwOiAuNzVlbTsgfVxuICAubS10aWxlcy0tZ3V0dGVyLW1lZGl1bSB7XG4gICAgZ3JpZC1nYXA6IDFlbTsgfVxuICAubS10aWxlcy0tZ3V0dGVyLWxhcmdlIHtcbiAgICBncmlkLWdhcDogMS41ZW07IH1cbiAgLm0tdGlsZXMtLWd1dHRlci14bGFyZ2Uge1xuICAgIGdyaWQtZ2FwOiAyZW07IH1cbiAgLm0tdGlsZXMtLWd1dHRlci1zdXBlciB7XG4gICAgZ3JpZC1nYXA6IDNlbTsgfVxuICAubS10aWxlcyA+ICoge1xuICAgIG1heC13aWR0aDogbm9uZTsgfSB9XG5cbi5tLXRpbGUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDEyLjVlbTtcbiAgcGFkZGluZzogMWVtO1xuICB3aWR0aDogMTAwJTsgfVxuXG5hLm0tdGlsZSxcbi5tLXRpbGVzIGEge1xuICBib3JkZXI6IG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbi5tLXRpbGUtLWZlYXR1cmVkIHtcbiAgbWluLWhlaWdodDogMjVlbTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDhyZW0pIHtcbiAgICAubS10aWxlLS1mZWF0dXJlZCB7XG4gICAgICBncmlkLWNvbHVtbi1lbmQ6IHNwYW4gMjsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NHJlbSkge1xuICAgIC5tLXRpbGUtLWZlYXR1cmVkIHtcbiAgICAgIGdyaWQtcm93LWVuZDogc3BhbiAyOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4cmVtKSB7XG4gIEBzdXBwb3J0cyAoZGlzcGxheTogZ3JpZCkge1xuICAgIC5tLXRpbGUtLWZlYXR1cmVkIHtcbiAgICAgIGdyaWQtY29sdW1uLWVuZDogc3BhbiAyOyB9IH0gfVxuXG4ubS10aWxlLS1saWdodCxcbmEubS10aWxlLS1saWdodCxcbmEubS10aWxlLS1saWdodDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC42NSk7XG4gIGNvbG9yOiAjNDE0MDQyO1xuICB0ZXh0LXNoYWRvdzogMHB4IDFweCAzcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpOyB9XG5cbi5tLXRpbGUtLWRhcmssXG5hLm0tdGlsZS0tZGFyayxcbmEubS10aWxlLS1kYXJrOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg2NSwgNjQsIDY2LCAwLjY1KTtcbiAgY29sb3I6ICNGRkY7XG4gIHRleHQtc2hhZG93OiAwcHggMXB4IDNweCByZ2JhKDAsIDAsIDAsIDAuNSk7IH1cblxuLm0tdGlsZS0tYmctb3ZlcmxheSB7XG4gIGJhY2tncm91bmQtYmxlbmQtbW9kZTogbXVsdGlwbHk7IH1cblxuLm0tdGlsZXMtLWd1dHRlci14c21hbGwgLm0tdGlsZSB7XG4gIG1hcmdpbi1ib3R0b206IC4yNWVtOyB9XG5cbi5tLXRpbGVzLS1ndXR0ZXItc21hbGwgLm0tdGlsZSB7XG4gIG1hcmdpbi1ib3R0b206IC43NWVtOyB9XG5cbi5tLXRpbGVzLS1ndXR0ZXItbWVkaXVtIC5tLXRpbGUge1xuICBtYXJnaW4tYm90dG9tOiAxZW07IH1cblxuLm0tdGlsZXMtLWd1dHRlci1sYXJnZSAubS10aWxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMS41ZW07IH1cblxuLm0tdGlsZXMtLWd1dHRlci14bGFyZ2UgLm0tdGlsZSB7XG4gIG1hcmdpbi1ib3R0b206IDJlbTsgfVxuXG4ubS10aWxlcy0tZ3V0dGVyLXN1cGVyIC5tLXRpbGUge1xuICBtYXJnaW4tYm90dG9tOiAzZW07IH1cblxuQHN1cHBvcnRzIChkaXNwbGF5OiBncmlkKSB7XG4gIC5tLXRpbGVzLS1ndXR0ZXIteHNtYWxsIC5tLXRpbGUsXG4gIC5tLXRpbGVzLS1ndXR0ZXItc21hbGwgLm0tdGlsZSxcbiAgLm0tdGlsZXMtLWd1dHRlci1tZWRpdW0gLm0tdGlsZSxcbiAgLm0tdGlsZXMtLWd1dHRlci1sYXJnZSAubS10aWxlLFxuICAubS10aWxlcy0tZ3V0dGVyLXhsYXJnZSAubS10aWxlLFxuICAubS10aWxlcy0tZ3V0dGVyLXN1cGVyIC5tLXRpbGUge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfVxuXG4ubS10aWxlX19oZWFkZXIge1xuICBtYXJnaW4tYm90dG9tOiBhdXRvOyB9XG5cbi5tLXRpbGVfX2JvZHkge1xuICBtYXJnaW4tYm90dG9tOiBhdXRvO1xuICBtYXJnaW4tdG9wOiBhdXRvOyB9XG5cbi5tLXRpbGVfX2Zvb3RlciB7XG4gIG1hcmdpbi10b3A6IGF1dG87IH1cblxuLm0tdGlsZSAqOmxhc3QtY2hpbGQsXG4ubS10aWxlX19oZWFkZXIgKjpsYXN0LWNoaWxkLFxuLm0tdGlsZV9fYm9keSAqOmxhc3QtY2hpbGQsXG4ubS10aWxlX19mb290ZXIgKjpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4ubS10aWxlX190aXRsZSB7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBmb250LXNpemU6IDEuMTI1ZW07XG4gIGxldHRlci1zcGFjaW5nOiBpbml0aWFsO1xuICBtYXJnaW4tdG9wOiBhdXRvO1xuICB0ZXh0LXRyYW5zZm9ybTogaW5pdGlhbDsgfVxuXG4ubS10aWxlX19kZXNjcmlwdGlvbiB7XG4gIGZvbnQtc2l6ZTogLjkyNWVtO1xuICBsaW5lLWhlaWdodDogMS4zNTsgfVxuXG4ubS10aWxlX19jYXB0aW9uIHtcbiAgbGVmdDogNTAlO1xuICBwYWRkaW5nOiAxLjVlbTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5tLXRpbGVfX2NhcHRpb24tLWJvdHRvbSB7XG4gIGJvdHRvbTogMDtcbiAgdG9wOiBhdXRvO1xuICBsZWZ0OiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgcGFkZGluZzogMC41ZW07IH1cblxuLm0tdGlsZV9faW1hZ2Uge1xuICBtYXgtd2lkdGg6IDEwMCU7IH1cblxuLm0tdGlsZV9fY29udGVudCB7XG4gIGNvbG9yOiAjRkZGO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBhZGRpbmc6IDFlbTsgfVxuXG4ubS10aWxlX19jb250ZW50LS1ob3ZlciB7XG4gIG9wYWNpdHk6IDA7IH1cblxuLm0tdGlsZTpob3ZlciAubS10aWxlX19jb250ZW50LS1ob3Zlcixcbi5tLXRpbGU6Zm9jdXMgLm0tdGlsZV9fY29udGVudC0taG92ZXIsXG4ubS10aWxlOmFjdGl2ZSAubS10aWxlX19jb250ZW50LS1ob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC42KTtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNpdGlvbjogYWxsIC42cyBlYXNlLWluLW91dDsgfVxuXG4jbmV3LWJyYW5kLW1vZGFsIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC0xMDBweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDhyZW0pIHtcbiAgICAjbmV3LWJyYW5kLW1vZGFsIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4jbmV3LWJyYW5kLWFycm93IHtcbiAgZmxvYXQ6IGxlZnQ7IH1cblxuI25ldy1icmFuZC1tb2RhbC10ZXh0IHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGJvcmRlcjogMnB4IHNvbGlkICNhNjE5MmU7XG4gIGJvcmRlci1yYWRpdXM6IDNweDsgfVxuXG4jbmV3LWJyYW5kLWNsb3NlLW1vZGFsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJvdHRvbTogMjVweDtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIGJvcmRlcjogMnB4IHNvbGlkICNhNjE5MmU7XG4gIGJvcmRlci1yYWRpdXM6IDE1cHg7IH1cblxuLypkb2Ncbi0tLVxudGl0bGU6IFR5cG9ncmFwaHlcbm5hbWU6IHR5cG9ncmFwaHlcbmNhdGVnb3J5OiBBdG9tc1xuLS0tXG4qTGFzdCBVcGRhdGVkOiBBdWd1c3QgMjMsIDIwMTgqXG5cbiMjIFVzZVxuXG5BbGwgaW5saW5lIHRhZ3MgKGA8c3Ryb25nPmAsIGA8ZW0+YCwgZXRjLikgY2FuIGJlIHVzZWQgaW4gY29uanVjdGlvbiB3aXRoIGVhY2ggb3RoZXIgd2hlbiBhcHByb3ByaWF0ZS5cblxuQSBbdHlwb2dyYXBoaWMgdXRpbGl0eSBjbGFzc11bdHlwb2dyYXBoaWMtdXRpbGl0aWVzXSBpbiBhIGA8c3Bhbj5gIGJsb2NrIHNob3VsZCBuZXZlciBiZSB1c2VkIGluIHBsYWNlIG9mIHRoZSBhc3NvY2lhdGVkIGh0bWwgdGFnLlxuXG4qIGA8cD5gOiBVc2UgZm9yIGFjdHVhbCBwYXJhZ3JhcGggdGV4dC5cbiAgICAtICoqRG8qKiBlbmNsb3NlIGV2ZXJ5IHBhcmFncmFwaCBvZiB0ZXh0IGluIGl0cyBvd24gYDxwPjwvcD5gIHRhZ3NcbiAgICAtICoqRG9uJ3QgdXNlKiogPGJyPiB0byBicmVhayB1cCBwYXJhZ3JhcGhzLCB1bmxlc3Mgc3BlY2lmaWNhbGx5IGluc3RydWN0ZWQgZm9yIGNlcnRhaW4gUGF0dGVybiBMaWJyYXJ5IGVsZW1lbnRzXG4gICAgLSAqKkRvbid0IHVzZSoqIGZvciBsYXlvdXQgYmxvY2tzICh1c2UgYDxkaXY+YCBmb3IgbGF5b3V0IGVsZW1lbnRzIHVucmVsYXRlZCB0byB0ZXh0KVxuKiBgPHN0cm9uZz5gOiBVc2UgdG8gYm9sZCB0ZXh0LlxuICAgIC0gKipEb24ndCB1c2UqKiB3aGVuIGEgaGVhZGVyIChgPGgxPmAgLSBgPGg2PmApIHRhZyBpcyBuZWVkZWQgdG8gc2VtYW50aWNhbGx5IG9yZ2FuaXplIGNvbnRlbnRcbiAgICAtICoqRG9uJ3QgdXNlKiogdGhlIGRlcHJlY2F0ZWQgYDxiPmAgdGFnXG4qIGA8ZW0+YDogVXNlIHRvIGl0YWxpY2l6ZSB0ZXh0LlxuICAgIC0gKipEb24ndCB1c2UqKiB0aGUgZGVwcmVjYXRlZCBgPGk+YCB0YWdcbiogYDxzdXA+YDogVXNlZCBmb3Igc3VwZXJzY3JpcHRzLlxuICAgIC0gKipEbyB1c2UqKiBmb3IgZm9vdG5vdGVzICh1c3VhbGx5IGluIGNvbmp1bmN0aW9uIHdpdGggYW4gYDxhPmAgdGFnKVxuICAgIC0gKipEb24ndCB1c2UqKiB0byBzaW1wbHkgbWFrZSB0ZXh0IHNtYWxsZXIgKHVzZSBgPHNtYWxsPmAgZm9yIHRoYXQpXG4gICAgXG4jIyBDb2RlIEV4YW1wbGVzXG5cbkhlcmUgaXMgYW4gZXhhbXBsZSBwYXJhZ3JhcGggY29udGFpbmluZyBtb3N0IG9mIHRoZSBiYXNpYyB0eXBvZ3JhcGhpYyB0YWdzLlxuXG5gYGBodG1sX2V4YW1wbGVfdGFibGVcbjxwPjxzdHJvbmc+UGVsbGVudGVzcXVlIGhhYml0YW50IG1vcmJpIHRyaXN0aXF1ZTwvc3Ryb25nPiBzZW5lY3R1cyBldCBuZXR1cyBldCBtYWxlc3VhZGEgZmFtZXMgYWMgdHVycGlzIGVnZXN0YXM8c3VwPjI8L3N1cD4uIFZlc3RpYnVsdW0gdG9ydG9yIHF1YW0sIGZldWdpYXQgdml0YWUgPGFiYnIgdGl0bGU9XCJBYmJyZXZpYXRpb25cIj5hYmJyPC9hYmJyPiwgdWx0cmljaWVzIGVnZXQsIHRlbXBvciBzaXQgYW1ldCwgYW50ZS4gRG9uZWMgZXUgbGliZXJvIHNpdCBhbWV0IHF1YW0gZWdlc3RhcyBzZW1wZXIuIDxlbT5BZW5lYW4gdWx0cmljaWVzIG1pIHZpdGFlIGVzdC48L2VtPiBNYXVyaXMgcGxhY2VyYXQgZWxlaWZlbmQgbGVvLiBRdWlzcXVlIHNpdCBhbWV0IGVzdCBldCBzYXBpZW4gdWxsYW1jb3JwZXIgcGhhcmV0cmEuIFZlc3RpYnVsdW0gZXJhdCB3aXNpLCBjb25kaW1lbnR1bSBzZWQsIDxjb2RlPmNvbW1vZG8gdml0YWU8L2NvZGU+LCBvcm5hcmUgc2l0IGFtZXQsIHdpc2kuIEFlbmVhbiBmZXJtZW50dW0sIGVsaXQgZWdldCB0aW5jaWR1bnQgY29uZGltZW50dW0sIGVyb3MgaXBzdW0gcnV0cnVtIG9yY2ksIDxtYXJrPnNhZ2l0dGlzIHRlbXB1czwvbWFyaz4gbGFjdXMgZW5pbSBhYyBkdWkuIDxhIGhyZWY9XCIjXCI+RG9uZWMgbm9uIGVuaW08L2E+IGluIHR1cnBpcyBwdWx2aW5hciBmYWNpbGlzaXMuIDxzbWFsbD5VdCBmZWxpcy48L3NtYWxsPjwvcD5cbmBgYFxuXG4qL1xuaHRtbCB7XG4gIGZvbnQtc2l6ZTogMWVtOyB9XG5cbmJvZHkge1xuICBjb2xvcjogIzQxNDA0MjtcbiAgZm9udC1mYW1pbHk6IFwic29maWEtcHJvXCIsIFwiQ2VudHVyeSBHb3RoaWNcIiwgXCJNZXJyaXdlYXRoZXIgU2Fuc1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDFlbTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogMzAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4wMjVlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNjI1OyB9XG5cbi8qIFBhcmFncmFwaFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbnAge1xuICBtYXJnaW4tYm90dG9tOiAxLjVlbTsgfVxuXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogMC44NzVlbTsgfVxuXG4uaHlwaGVuYXRlIHtcbiAgb3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZDtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBoeXBoZW5zOiBhdXRvOyB9XG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogNTAwOyB9XG5cbmVtLFxuaSxcbmNpdGUsXG5kZm4sXG52YXIge1xuICBmb250LXN0eWxlOiBpdGFsaWM7IH1cblxuc3ViLFxuc3VwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tbGVmdDogLjI1cmVtO1xuICBmb250LXNpemU6IDg1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgfVxuXG5zdXAge1xuICB0b3A6IC0uNXJlbTsgfVxuXG5zdWIge1xuICBib3R0b206IC0uMjVyZW07IH1cblxuYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiAwLjA2MjVyZW0gZG90dGVkICM0MTQwNDI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG5tYXJrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogeWVsbG93O1xuICBjb2xvcjogIzQxNDA0MjtcbiAgcGFkZGluZzogLjI1cmVtOyB9XG5cbjo6c2VsZWN0aW9uIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQ6ICNhNjE5MmU7IH1cblxuLypkb2Ncbi0tLVxudGl0bGU6IEhlYWRpbmdzXG5uYW1lOiBoZWFkaW5nc1xuY2F0ZWdvcnk6IEF0b21zXG4tLS1cbipMYXN0IFVwZGF0ZWQ6IEF1Z3VzdCAyMSwgMjAxOCpcblxuSGVhZGluZ3MgKGA8aDE+YCAtIGA8aDY+YCkgYXJlIHVzZWQgZm9yIGNvbnRlbnQgc3RydWN0dXJlLCBub3QgcHJlc2VzZW50YXRpb24uXG5cbiMjIEFjY2Vzc2liaWxpdHkgQ29uc2lkZXJhdGlvbnNcblxuVG8gYXZvaWQgY29uZnVzaW5nIHVzZXJzIHdobyBuYXZpZ2F0ZSB3aXRoIGEgc2NyZWVuIHJlYWRlciwgYXZvaWQgc2tpcHBpbmcgaGVhZGluZyBsZXZlbHMuXG5cbiMjIFVzZVxuXG5IZWFkaW5ncyBkZWZpbmUgdGhlIGhpZXJhcmNoeSBvZiBwYWdlIGNvbnRlbnQuIFRoZXkgcHJvdmlkZSBjb25zaXN0ZW50LCByZWxpYWJsZSBwb2ludHMgb2YgcmVmZXJlbmNlIHRvIGEgdXNlciB3aGlsZSBzY2FubmluZyBhIHBhZ2UncyBjb250ZW50LiBUaGV5IGFyZSBub3QgZm9yIGNoYW5naW5nIHRoZSB2aXN1YWwgZGVzaWduIG9mIHRleHQuIFRvIG1vZGlmeSB0aGUgbG9vayBhbmQgZmVlbCBvZiB0ZXh0LCBwbGVhc2UgdXNlIHRoZSBhcHByb3ByaWF0ZSB1dGlsaXR5IGNsYXNzZXMgKFtjb2xvcnNdW2NvbG9yc10sIFthbGlnbm1lbnRdW2FsaWdubWVudF0sIFtsaW5lIGhlaWdodF1bbGluZS1oZWlnaHRzXSwgW3NpemVdW3NpemVzXSwgW2V0Yy5dW3R5cG9ncmFwaGljLXV0aWxpdGllc10pLlxuXG5Tb21lIGNvbnNpZGVyYXRpb25zIHRvIGZvbGxvdzpcblxuKiBBdm9pZCBza2lwcGluZyBoZWFkaW5nIGxldmVscyAoaS5lLjogaDEsIGgyLCBoMywgaDYpXG4qIE9ubHkgdXNlIGA8aDE+YCBvbmNlIG9uIGV2ZXJ5IHBhZ2UgKHVubGVzcyB5b3UncmUgdXNpbmcgSG9sb2dyYW0gdG8gYnVpbGQgYSBwYXR0ZXJuIGxpYnJhcnkgOjApXG4qIFVzZSBvdXIgYnVpbHQtaW4gdXRpbGl0eSBjbGFzc2VzIHdoZW4gd2FudGluZyB0byBhbHRlciB0ZXh0IGFwcGVhcmFuY2VcblxuIyMgQ29kZSBFeGFtcGxlXG5cbmBgYGh0bWxfZXhhbXBsZV90YWJsZVxuPGgxIGNsYXNzPVwiYS1oMVwiPmgxIDQwcHg8L2gxPlxuPGgyIGNsYXNzPVwiYS1oMlwiPmgyIDI4cHg8L2gyPlxuPGgzIGNsYXNzPVwiYS1oM1wiPmgzIDIycHg8L2gzPlxuPGg0IGNsYXNzPVwiYS1oNFwiPmg0IDE5cHg8L2g0PlxuPGg1IGNsYXNzPVwiYS1oNVwiPmg1IDE3cHg8L2g1PlxuPGg2IGNsYXNzPVwiYS1oNlwiPmg2IDE2cHg8L2g2PlxuYGBgXG5cbiMjIEV4dGVybmFsIFJlc291cmNlc1xuXG4qIFtNRE4gRW50cnkgZm9yIHRoZSBIVE1MIFNlY3Rpb24gSGVhZGluZyBFbGVtZW50c10oaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvSFRNTC9FbGVtZW50L0hlYWRpbmdfRWxlbWVudHMpXG5cbioqKlxuXG4qL1xuaDEsIGgyLCBoMywgaDQsIGg1LCBoNixcbi5hLWgxLCAuYS1oMiwgLmEtaDMsIC5hLWg0LCAuYS1oNSwgLmEtaDYge1xuICBjb2xvcjogIzQxNDA0MjtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi8qXG5oMTpmaXJzdC1jaGlsZCxcbmgyOmZpcnN0LWNoaWxkLFxuaDM6Zmlyc3QtY2hpbGQsXG5oNDpmaXJzdC1jaGlsZCxcbmg1OmZpcnN0LWNoaWxkLFxuaDY6Zmlyc3QtY2hpbGQsXG4uYS1oMTpmaXJzdC1jaGlsZCxcbi5hLWgyOmZpcnN0LWNoaWxkLFxuLmEtaDM6Zmlyc3QtY2hpbGQsXG4uYS1oNDpmaXJzdC1jaGlsZCxcbi5hLWg1OmZpcnN0LWNoaWxkLFxuLmEtaDY6Zmlyc3QtY2hpbGQge1xuXHRtYXJnaW4tdG9wOiBpbmhlcml0O1xufVxuKi9cbmgxLCBoMixcbi5hLWgxLCAuYS1oMiB7XG4gIGNvbG9yOiAjYTYxOTJlOyB9XG5cbmgxLFxuLmEtaDEge1xuICBmb250LXNpemU6IDJlbTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMWVtO1xuICBsaW5lLWhlaWdodDogMS4xMjU7XG4gIG1hcmdpbi1ib3R0b206IDFlbTtcbiAgbWFyZ2luLXRvcDogMWVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0OHJlbSkge1xuICAgIGgxLFxuICAgIC5hLWgxIHtcbiAgICAgIGZvbnQtc2l6ZTogMi4yNWVtOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0cmVtKSB7XG4gICAgaDEsXG4gICAgLmEtaDEge1xuICAgICAgZm9udC1zaXplOiAyLjVlbTsgfSB9XG5cbmgyLFxuLmEtaDIge1xuICBmb250LXNpemU6IDEuNWVtO1xuICBsaW5lLWhlaWdodDogMS4yNTtcbiAgbWFyZ2luLWJvdHRvbTogLjVlbTtcbiAgbWFyZ2luLXRvcDogLjVlbTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDhyZW0pIHtcbiAgICBoMixcbiAgICAuYS1oMiB7XG4gICAgICBmb250LXNpemU6IDEuNjI1ZW07IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjRyZW0pIHtcbiAgICBoMixcbiAgICAuYS1oMiB7XG4gICAgICBmb250LXNpemU6IDEuNzVlbTsgfSB9XG5cbiogKyBoMixcbiogKyAuYS1oMiB7XG4gIG1hcmdpbi10b3A6IDIuNWVtOyB9XG5cbmgzLFxuLmEtaDMge1xuICBmb250LXNpemU6IDEuMjVlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMjU7XG4gIG1hcmdpbi1ib3R0b206IC41ZW07XG4gIG1hcmdpbi10b3A6IC41ZW07IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4cmVtKSB7XG4gICAgaDMsXG4gICAgLmEtaDMge1xuICAgICAgZm9udC1zaXplOiAxLjNlbTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NHJlbSkge1xuICAgIGgzLFxuICAgIC5hLWgzIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4zNzVlbTsgfSB9XG5cbiogKyBoMyxcbiogKyAuYS1oMyB7XG4gIG1hcmdpbi10b3A6IDJlbTsgfVxuXG5oNCxcbi5hLWg0IHtcbiAgZm9udC1zaXplOiAxLjJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMjU7XG4gIG1hcmdpbi1ib3R0b206IC41ZW07XG4gIG1hcmdpbi10b3A6IC41ZW07IH1cblxuKiArIGg0LFxuKiArIC5hLWg0IHtcbiAgbWFyZ2luLXRvcDogMS41ZW07IH1cblxuaDUsXG4uYS1oNSB7XG4gIGZvbnQtc2l6ZTogMS4xZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjEyNTtcbiAgbWFyZ2luLWJvdHRvbTogLjVlbTtcbiAgbWFyZ2luLXRvcDogLjVlbTsgfVxuXG4qICsgaDUsXG4qICsgLmEtaDUge1xuICBtYXJnaW4tdG9wOiAyZW07IH1cblxuaDYsXG4uYS1oNiB7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBsaW5lLWhlaWdodDogMS4xMjU7XG4gIG1hcmdpbi1ib3R0b206IC41ZW07XG4gIG1hcmdpbi10b3A6IC41ZW07IH1cblxuKiArIGgzLFxuKiArIC5hLWgzIHtcbiAgbWFyZ2luLXRvcDogMmVtOyB9XG5cbmgxICsgaDIsXG4uYS1oMSArIC5hLWgyIHtcbiAgbWFyZ2luLXRvcDogMS42MjVweDtcbiAgbWFyZ2luLXRvcDogMS42MjVyZW07IH1cblxuaDIgKyBoMyxcbi5hLWgyICsgLmEtaDMsXG5oMyArIGg0LFxuLmEtaDMgKyAuYS1oNCxcbmg0ICsgaDUsXG4uYS1oNCArIC5hLWg1IHtcbiAgbWFyZ2luLXRvcDogMC44MTI1cHg7XG4gIG1hcmdpbi10b3A6IDAuODEyNXJlbTsgfVxuXG5oNSArIGg2LFxuLmEtaDUgKyAuYS1oNiB7XG4gIG1hcmdpbi10b3A6IDAuMjQzNzVweDtcbiAgbWFyZ2luLXRvcDogMC4yNDM3NXJlbTsgfVxuXG5oNixcbi5hLWg2IHtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDsgfVxuXG5oZ3JvdXAsXG4uYS1oZ3JvdXAge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4vKmRvY1xuLS0tXG50aXRsZTogQWRkcmVzc2VzXG5uYW1lOiBhZGRyZXNzXG5jYXRlZ29yeTogQXRvbXNcbi0tLVxuKkxhc3QgVXBkYXRlZDogQXVndXN0IDIwLCAyMDE4KlxuXG5Vc2Ugb25seSBmb3IgLiAuIC4gYWRkcmVzc2VzP1xuXG4jIyBDb2RlIEV4YW1wbGVcbmBgYGh0bWxfZXhhbXBsZV90YWJsZVxuPGFkZHJlc3MgY2xhc3M9XCJhLWFkZHJlc3NcIj5cblx0PHNwYW4gY2xhc3M9XCJhLWFkZHJlc3NfX2hlYWRpbmdcIj5UaGUgU2ltcHNvbnMsPC9zcGFuPlxuXHQ3NDIgRXZlcmdyZWVuIFRlcnJhY2UsPGJyPlxuXHRTcHJpbmdmaWVsZCw8YnI+XG5cdDgwMDg1LDxicj5cblx0VVNBXG48L2FkZHJlc3M+XG5gYGBcblxuIyMgRXh0ZXJuYWwgUmVzb3VyY2VzXG5cbiogW01ETiBFbnRyeSBmb3IgVGhlIENvbnRhY3QgQWRkcmVzcyBFbGVtZW50XShodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9IVE1ML0VsZW1lbnQvYWRkcmVzcylcblxuKioqXG5cbiovXG5hZGRyZXNzLFxuLmEtYWRkcmVzcyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXN0eWxlOiAzMDA7XG4gIG1hcmdpbi1ib3R0b206IDEuNWVtOyB9XG5cbi5hLWFkZHJlc3NfX2hlYWRpbmcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC13ZWlnaHQ6IDUwMDsgfVxuXG4vKmRvY1xuLS0tXG50aXRsZTogQXZhdGFyc1xubmFtZTogYXZhdGFyc1xuY2F0ZWdvcnk6IEF0b21zXG4tLS1cbipMYXN0IFVwZGF0ZWQ6IERlY2VtYmVyIDQsIDIwMTgqXG5cbkF2YXRhcnMgYXJlIHVzZWZ1bCBmb3IgcXVvdGF0aW9ucywgcHJvZmlsZSBwaWN0dXJlcyBhbmQgYWNjb3VudCBwaG90b3MuXG5cbiMjIEFjY2Vzc2liaWxpdHkgQ29uc2lkZXJhdGlvbnNcblxuU2FtZSBjb25zaWRlcmF0aW9ucyBhcyB0aGUgW2ltYWdlIGF0b21dW2ltYWdlc10sIHdpdGggdGhlIHByaW1hcnkgY29uY2VybiBiZWluZyB0aGUgaW5jbHVzaW9uIG9mIHRoZSBhbHQgYXR0cmlidXRlLiBTaW5jZSB0aGUgYXZhdGFyIGF0b20gc2hvdWxkIG5ldmVyIGJlIHVzZWQgbWVyZWx5IGFzIGEgZGVjb3JhdGl2ZSBlbGVtZW50LCB0aGUgYWx0IGRlc2NyaXB0aW9uICoqbXVzdCBiZSBpbmNsdWRlZCoqLCB3aXRob3V0IGV4Y2VwdGlvbi5cblxuRW5zdXJlIHRoYXQgdGhlIGFsdCBhdHRyaWJ1dGUgdGhvcm91Z2hseSBkZXNjcmliZXMgdGhlIGltYWdlOyBuZXZlciBzaW1wbHkgcGxhY2UgdGhlIGZpbGUgbmFtZSBoZXJlLiBJbiBtb3N0IGNhc2VzIHRoZSBhdmF0YXIgd2lsbCBjb250YWluIGEgcG9ydHJhaXQsIHNvIGEgZ29vZCBhbHQgZGVzY3JpcHRpb24gd291bGQgYmUgXCJKb2huIFEuIFB1YmxpYywgTUQsIENhcmRpb3Rob3JhY2ljIFN1cmdlb24sXCIgbm90IFwiRHIuIFB1YmxpY1wiIG9yIFwicHVibGljLWpvaG4uanBnLlwiXG5cbiMjIFVzZVxuXG5QcmltYXJpbHkgdXNlZCBpbiB0aGUgW2NvbnRlbnQgYmFubmVyIG1vbGVjdWxlXVtjb250ZW50LWJhbm5lcl0uXG5cbiMjIyBSZWNvbW1lbmRlZCDwn5GNXG5cbjxmaWd1cmUgY2xhc3M9XCJhLWZpZ3VyZS0tZHNfX2dvb2RcIj5cblx0PGltZyBkYXRhLW9yaWdpbmFsPVwiLi4vaW1hZ2VzL3BhdHRlcm4tbGlicmFyeS9tb2xlY3VsZXMvY29udGVudC1iYW5uZXItMS5qcGdcIiBhbHQ9XCJFeGFtcGxlIG9mIGFuIGF2YXRhciB1c2Ugd2l0aGluIGEgY29udGVudCBiYW5uZXIgbW9sZWN1bGVcIi8+XG5cdDxmaWdjYXB0aW9uPkZpZyAxOiBFeGFtcGxlIG9mIGFuIGF2YXRhciB1c2Ugd2l0aGluIGEgY29udGVudCBiYW5uZXIgbW9sZWN1bGUuPC9maWdjYXB0aW9uPlxuPC9maWd1cmU+XG5cbiMjIyBOb3QgUmVjb21tZW5kZWQg8J+RjlxuXG48ZmlndXJlIGNsYXNzPVwiYS1maWd1cmUtLWRzX19iYWRcIj5cblx0PGltZyBzcmM9XCIuLi9pbWFnZXMvcGF0dGVybi1saWJyYXJ5L2F0b21zL2F2YXRhci1uby5qcGdcIiBhbHQ9XCJFeGFtcGxlIG9mIGF2YXRhciB1c2VkIGZsb2F0ZWQgdG8gdGhlIHJpZ2h0IGluIGEgcGFyYWdyYXBoXCIvPlxuXHQ8ZmlnY2FwdGlvbj5GaWcgMjogRXhhbXBsZSBvZiBob3cgbm90IHRvIHVzZSBhbiBhdmF0YXIgKGZsb2F0ZWQgdG8gdGhlIHJpZ2h0IGluIGEgcGFyYWdyYXBoKS48L2ZpZ2NhcHRpb24+XG48L2ZpZ3VyZT5cblxuIyMgQ29kZSBFeGFtcGxlcyAod2l0aCB2YXJpYXRpb25zKVxuXG5gYGBodG1sX2V4YW1wbGVcbjxkaXYgY2xhc3M9XCJhLWF2YXRhciAgYS1hdmF0YXItLXN1cGVyXCI+XG4gIDxpbWcgY2xhc3M9XCJhLWF2YXRhcl9faW1nXCIgc3JjPVwiaHR0cHM6Ly9zb3VyY2UudW5zcGxhc2guY29tL3JhbmRvbS8yMDB4MjAwXCI+XG4gIDxwIGNsYXNzPVwidS10ZXh0LWFsaWduLS1jZW50ZXIgdS1jb2xvci1ibGFja1wiPjxzdHJvbmc+U3VwZXI8L3N0cm9uZz48L3A+XG48L2Rpdj5cbjxkaXYgY2xhc3M9XCJhLWF2YXRhciAgYS1hdmF0YXItLXhsYXJnZVwiPlxuICA8aW1nIGNsYXNzPVwiYS1hdmF0YXJfX2ltZ1wiIHNyYz1cImh0dHBzOi8vc291cmNlLnVuc3BsYXNoLmNvbS9yYW5kb20vMjAweDIwMFwiPlxuICA8cCBjbGFzcz1cInUtdGV4dC1hbGlnbi0tY2VudGVyIHUtY29sb3ItYmxhY2tcIj48c3Ryb25nPlhMYXJnZTwvc3Ryb25nPjwvcD5cbjwvZGl2PlxuPGRpdiBjbGFzcz1cImEtYXZhdGFyICBhLWF2YXRhci0tbGFyZ2VcIj5cbiAgPGltZyBjbGFzcz1cImEtYXZhdGFyX19pbWdcIiBzcmM9XCJodHRwczovL3NvdXJjZS51bnNwbGFzaC5jb20vcmFuZG9tLzIwMHgyMDBcIj5cbiAgPHAgY2xhc3M9XCJ1LXRleHQtYWxpZ24tLWNlbnRlciB1LWNvbG9yLWJsYWNrXCI+PHN0cm9uZz5MYXJnZTwvc3Ryb25nPjwvcD5cbjwvZGl2PlxuPGRpdiBjbGFzcz1cImEtYXZhdGFyXCI+XG4gIDxpbWcgY2xhc3M9XCJhLWF2YXRhcl9faW1nXCIgc3JjPVwiaHR0cHM6Ly9zb3VyY2UudW5zcGxhc2guY29tL3JhbmRvbS8yMDB4MjAwXCI+XG4gIDxwIGNsYXNzPVwidS10ZXh0LWFsaWduLS1jZW50ZXIgdS1jb2xvci1ibGFja1wiPjxzdHJvbmc+TWVkaXVtPC9zdHJvbmc+PC9wPlxuPC9kaXY+XG48ZGl2IGNsYXNzPVwiYS1hdmF0YXIgIGEtYXZhdGFyLS1zbWFsbFwiPlxuICA8aW1nIGNsYXNzPVwiYS1hdmF0YXJfX2ltZ1wiIHNyYz1cImh0dHBzOi8vc291cmNlLnVuc3BsYXNoLmNvbS9yYW5kb20vMjAweDIwMFwiPlxuICA8cCBjbGFzcz1cInUtdGV4dC1hbGlnbi0tY2VudGVyIHUtY29sb3ItYmxhY2sgdS14c21hbGxcIj48c3Ryb25nPlNtYWxsPC9zdHJvbmc+PC9wPlxuPC9kaXY+XG48ZGl2IGNsYXNzPVwiYS1hdmF0YXIgIGEtYXZhdGFyLS14c21hbGxcIj5cbiAgPGltZyBjbGFzcz1cImEtYXZhdGFyX19pbWdcIiBzcmM9XCJodHRwczovL3NvdXJjZS51bnNwbGFzaC5jb20vcmFuZG9tLzIwMHgyMDBcIj5cbiAgPHAgY2xhc3M9XCJ1LXRleHQtYWxpZ24tLWNlbnRlciB1LWNvbG9yLWJsYWNrIHUteHNtYWxsXCI+PHN0cm9uZz5YU21hbGw8L3N0cm9uZz48L3A+XG48L2Rpdj5cbmBgYFxuXG4jIyMgSW5pdGlhbHNcblxuSWYgbm8gcGljdHVyZSBpcyBhdmFpbGFibGUsIHVzZSBgZGF0YS10ZXh0YCB0byBhZGQgaW5pdGlhbHMuXG5cbmBgYGh0bWxfZXhhbXBsZV90YWJsZVxuPGRpdiBjbGFzcz1cImEtYXZhdGFyXCIgZGF0YS10ZXh0PVwiTVJcIj48L2Rpdj5cbmBgYFxuXG4jIyMgQ29ybmVyc1xuXG5JZiBubyBwaWN0dXJlIGlzIGF2YWlsYWJsZSwgdXNlIGBkYXRhLXRleHRgIHRvIGFkZCBpbml0aWFscy5cblxuYGBgaHRtbF9leGFtcGxlX3RhYmxlXG48ZGl2IGNsYXNzPVwiYS1hdmF0YXIgIGEtYXZhdGFyLS1zcXVhcmVcIj5cbiAgPGltZyBjbGFzcz1cImEtYXZhdGFyX19pbWdcIiBzcmM9XCJodHRwczovL3NvdXJjZS51bnNwbGFzaC5jb20vcmFuZG9tLzIwMHgyMDBcIj5cbjwvZGl2PlxuPGRpdiBjbGFzcz1cImEtYXZhdGFyICBhLWF2YXRhci0tcmFkaXVzXCI+XG4gIDxpbWcgY2xhc3M9XCJhLWF2YXRhcl9faW1nXCIgc3JjPVwiaHR0cHM6Ly9zb3VyY2UudW5zcGxhc2guY29tL3JhbmRvbS8yMDB4MjAwXCI+XG48L2Rpdj5cbjxkaXYgY2xhc3M9XCJhLWF2YXRhciAgYS1hdmF0YXItLXJvdW5kXCI+XG4gIDxpbWcgY2xhc3M9XCJhLWF2YXRhcl9faW1nXCIgc3JjPVwiaHR0cHM6Ly9zb3VyY2UudW5zcGxhc2guY29tL3JhbmRvbS8yMDB4MjAwXCI+XG48L2Rpdj5cbmBgYFxuXG4jIyBFeHRlcm5hbCBSZXNvdXJjZXNcblxuKiBbTUROIEVudHJ5IGZvciBJbWFnZSBFbGVtZW50XShodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9IVE1ML0VsZW1lbnQvaW1nKVxuXG4qKipcblxuKi9cbi5hLWF2YXRhciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogNGVtO1xuICBoZWlnaHQ6IDRlbTtcbiAgbWFyZ2luOiAwO1xuICBib3JkZXItcmFkaXVzOiAzMGVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTYxOTJlO1xuICBjb2xvcjogI0ZGRjsgfVxuXG4uYS1hdmF0YXJbZGF0YS10ZXh0XTphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIGNvbnRlbnQ6IGF0dHIoZGF0YS10ZXh0KTsgfVxuXG4uYS1hdmF0YXJfX2ltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBib3JkZXItcmFkaXVzOiAzMGVtO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi5hLWF2YXRhci0tc3F1YXJlLFxuLmEtYXZhdGFyLS1zcXVhcmUgLmEtYXZhdGFyX19pbWcge1xuICBib3JkZXItcmFkaXVzOiAwOyB9XG5cbi5hLWF2YXRhci0tcm91bmQsXG4uYS1hdmF0YXItLXJvdW5kIC5hLWF2YXRhcl9faW1nIHtcbiAgYm9yZGVyLXJhZGl1czogMzBlbTsgfVxuXG4uYS1hdmF0YXItLXJhZGl1cyxcbi5hLWF2YXRhci0tcmFkaXVzIC5hLWF2YXRhcl9faW1nIHtcbiAgYm9yZGVyLXJhZGl1czogM3B4OyB9XG5cbi5hLWF2YXRhci0teHNtYWxsIHtcbiAgaGVpZ2h0OiAxZW07XG4gIHdpZHRoOiAxZW07IH1cblxuLmEtYXZhdGFyLS1zbWFsbCB7XG4gIGhlaWdodDogMmVtO1xuICB3aWR0aDogMmVtOyB9XG5cbi5hLWF2YXRhci0tbWVkaXVtIHtcbiAgaGVpZ2h0OiA0ZW07XG4gIHdpZHRoOiA0ZW07IH1cblxuLmEtYXZhdGFyLS1sYXJnZSB7XG4gIGhlaWdodDogNmVtO1xuICB3aWR0aDogNmVtOyB9XG5cbi5hLWF2YXRhci0teGxhcmdlIHtcbiAgaGVpZ2h0OiA4ZW07XG4gIHdpZHRoOiA4ZW07IH1cblxuLmEtYXZhdGFyLS1zdXBlciB7XG4gIGhlaWdodDogMTBlbTtcbiAgd2lkdGg6IDEwZW07IH1cblxuLypkb2Ncbi0tLVxudGl0bGU6IEJhZGdlc1xubmFtZTogYmFkZ2VzXG5jYXRlZ29yeTogQXRvbXNcbi0tLVxuKkxhc3QgVXBkYXRlZDogQXVndXN0IDIwLCAyMDE4KlxuXG5CYWRnZXMgYXJlIHVzZWZ1bCB3aGVuIHlvdSB3YW50IHRvIHNob3cgYWRkaXRpb25hbCBpbmZvIGxpa2Ugc3RhdHVzLCB0YWdzLCBvciBjYXRlZ29yaWVzLlxuXG5UeXBpY2FsbHkgYmFkZ2VzIHdpbGwgdXNlIGEgYDxzcGFuPmAgZWxlbWVudC5cblxuIyMgQ29kZSBFeGFtcGxlXG5cbmBgYGh0bWxfZXhhbXBsZV90YWJsZVxuPHNwYW4gY2xhc3M9XCJhLWJhZGdlXCI+QmFkZ2U8L3NwYW4+XG5cbjxzcGFuIGNsYXNzPVwiYS1iYWRnZSAgYS1iYWRnZS0tYnJhbmRcIj5CcmFuZDwvc3Bhbj5cblxuPHNwYW4gY2xhc3M9XCJhLWJhZGdlICBhLWJhZGdlLS1zcXVhcmVcIj5TcXVhcmU8L3NwYW4+XG5cbjxzcGFuIGNsYXNzPVwiYS1iYWRnZSAgYS1iYWRnZS0tcm91bmRcIj5Sb3VuZDwvc3Bhbj5cbmBgYFxuKioqXG5cbiovXG4uYS1iYWRnZSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM3OTdiN2Y7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogIzc5N2I3ZjtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBmb250LXdlaWdodDogMzAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4wNzVlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwLjI1ZW0gMC41ZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cblxuLmEtYmFkZ2UtLWJyYW5kIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2E2MTkyZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiAjYTYxOTJlOyB9XG5cbi5hLWJhZGdlLS1zcXVhcmUge1xuICBib3JkZXItcmFkaXVzOiAwOyB9XG5cbi5hLWJhZGdlLS1yb3VuZCB7XG4gIGJvcmRlci1yYWRpdXM6IDMwZW07IH1cblxuLmEtYmFkZ2UtLXJvdW5kLXNxdWFyZSB7XG4gIGJvcmRlci1yYWRpdXM6IDNweDsgfVxuXG4vKmRvY1xuLS0tXG50aXRsZTogQmxvY2txdW90ZXNcbm5hbWU6IGJsb2NrcXVvdGVcbmNhdGVnb3J5OiBBdG9tc1xuLS0tXG4qTGFzdCBVcGRhdGVkOiBBdWd1c3QgMjEsIDIwMTgqXG5cbkEgYmxvY2txdW90ZSBpcyBhIGNhbGxvdXQgc2VjdGlvbiB0aGF0IGlzIHF1b3RlZCBmcm9tIGFub3RoZXIgc291cmNlLCBvciBoaWdobGlnaHQgcXVvdGVkIGZyb20gd2l0aGluIHRoZSBhcnRpY2xlIGl0c2VsZi5cblxuIyMgVXNlXG5cbldoZW4gdXNlZCBhcyBhIGNhbGxvdXQgdG8gYW4gaW4tcGFnZSBxdW90YXRpb24sIGA8Y2l0ZT5gIGlzIG5vdCByZXF1aXJlZCAoYnV0IGNhbiBiZSB1c2VkIGlmIHNvbWVvbmUgb3RoZXIgdGhhbiB0aGUgYXJ0aWNsZSdzIGF1dGhvciBpcyBiZWluZyBxdW90ZWQpLiBGb3IgYWxsIG90aGVyIHF1b3RlcywgYDxjaXRlPmAgbXVzdCBiZSB1c2VkIGFuZCBzaG91bGQgaW5jbHVkZSBhcyBtdWNoIG9mIHRoZSBmb2xsb3dpbmcgYXMgcG9zc2libGU6XG5cbiogQXV0aG9yJ3MgbmFtZVxuKiBUaXRsZSBvZiB3b3JrXG4qIFVybCBjb250YWluaW5nIG9yaWdpbmFsIHF1b3RlLCBvciBhdXRob3IncyB3b3JrIChwbGFjZSBpbiB0aGUgJ2NpdGUnIGF0dHJpYnV0ZSB3aXRoaW4gdGhlIGA8YmxvY2txdW90ZT5gIHRhZyBhbmQgaW4gdGhlICdocmVmJyBhdHRyaWJ1dGUgaW4gdGhlIGA8YT5gIHRhZyBzb3Jyb3VuZGluZyB0aGUgc291cmNlIHRleHQgaW4gdGhlIGA8Y2l0ZT5gIHRhZylcbiogTG9jYXRpb24gb2YgdGhlIHF1b3RhdGlvbiB3aXRoaW4gdGhlIGNpdGVkIHdvcmtcblxuIyMgQ29kZSBFeGFtcGxlc1xuXG5gYGBodG1sX2V4YW1wbGVfdGFibGVcbjxibG9ja3F1b3RlIGNsYXNzPVwiYS1ibG9ja3F1b3RlXCIgY2l0ZT1cImh0dHBzOi8vd3d3LmRlZXB0aG91Z2h0c2J5amFja2hhbmRleS5jb20vXCI+XG5cdDxkaXYgY2xhc3M9XCJhLWJsb2NrcXVvdGVfX2JvZHlcIj5cblx0XHRDaGlsZHJlbiBuZWVkIGVuY291cmFnZW1lbnQuIElmIGEga2lkIGdldHMgYW4gYW5zd2VyIHJpZ2h0LCB0ZWxsIGhpbSBpdCB3YXMgYSBsdWNreSBndWVzcy4gVGhhdCB3YXkgaGUgZGV2ZWxvcHMgYSBnb29kLCBsdWNreSBmZWVsaW5nLlxuXHQ8L2Rpdj5cblx0PGZvb3RlciBjbGFzcz1cImEtYmxvY2txdW90ZV9fZm9vdGVyXCI+XG5cdFx0PGNpdGUgY2xhc3M9XCJhLWNpdGVcIj5KYWNrIEhhbmRleSwgPGEgaHJlZj1cImh0dHBzOi8vd3d3LmRlZXB0aG91Z2h0c2J5amFja2hhbmRleS5jb20vXCIgdGFyZ2V0PVwiX2JsYW5rXCI+PGVtPkRlZXAgVGhvdWdodHM8L2VtPjwvYT48L2NpdGU+XG5cdDwvZm9vdGVyPlxuPC9ibG9ja3F1b3RlPlxuYGBgXG5cbmBgYGh0bWxfZXhhbXBsZV90YWJsZVxuPGJsb2NrcXVvdGUgY2xhc3M9XCJhLWJsb2NrcXVvdGUgIGEtYmxvY2txdW90ZS0tZW1waGFzaXNcIj5cblx0PGRpdiBjbGFzcz1cImEtYmxvY2txdW90ZV9fYm9keVwiPlxuXHRcdDxwPkEgbG90IG9mIHBlb3BsZSBhcmUgYWZyYWlkIG9mIGhlaWdodHMuIE5vdCBtZS4gSSdtIGFmcmFpZCBvZiB3aWR0aHMuPC9wPlxuXHQ8L2Rpdj5cblx0PGZvb3RlciBjbGFzcz1cImEtYmxvY2txdW90ZV9fZm9vdGVyXCI+XG5cdFx0PGNpdGUgY2xhc3M9XCJhLWNpdGVcIj5TdGV2ZW4gV3JpZ2h0PC9jaXRlPlxuXHQ8L2Zvb3Rlcj5cbjwvYmxvY2txdW90ZT5cbmBgYFxuXG4jIyBFeHRlcm5hbCBSZXNvdXJjZXNcblxuKiBbTUROIEVudHJ5IGZvciB0aGUgQmxvY2txdW90ZSBFbGVtZW50XShodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9IVE1ML0VsZW1lbnQvYmxvY2txdW90ZSlcbiogW01ETiBFbnRyeSBmb3IgdGhlIENpdGUgRWxlbWVudF0oaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvSFRNTC9FbGVtZW50L2NpdGUpXG5cbioqKlxuXG4qL1xuYmxvY2txdW90ZSxcbi5hLWJsb2NrcXVvdGUge1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkICM3OTdiN2Y7XG4gIGNvbG9yOiAjYTYxOTJlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1mYW1pbHk6IFwic29maWEtcHJvXCIsIFwiQ2VudHVyeSBHb3RoaWNcIiwgXCJNZXJyaXdlYXRoZXIgU2Fuc1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDEuNWVtO1xuICBsaW5lLWhlaWdodDogMS4yNTtcbiAgbWFyZ2luLWJvdHRvbTogMS41ZW07XG4gIHBhZGRpbmc6IDAgMWVtOyB9XG5cbmJsb2NrcXVvdGUgcCxcbi5hLWJsb2NrcXVvdGUgcCB7XG4gIG1hcmdpbjogMDsgfVxuICBibG9ja3F1b3RlIHAgKyBwLFxuICAuYS1ibG9ja3F1b3RlIHAgKyBwIHtcbiAgICBtYXJnaW4tdG9wOiAwLjVlbTsgfVxuICBibG9ja3F1b3RlIHA6Zmlyc3Qtb2YtdHlwZTo6YmVmb3JlLCBibG9ja3F1b3RlIHA6bGFzdC1vZi10eXBlOjphZnRlcixcbiAgLmEtYmxvY2txdW90ZSBwOmZpcnN0LW9mLXR5cGU6OmJlZm9yZSxcbiAgLmEtYmxvY2txdW90ZSBwOmxhc3Qtb2YtdHlwZTo6YWZ0ZXIge1xuICAgIGZvbnQtc2l6ZTogMS4yNWVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxOyB9XG5cbmJsb2NrcXVvdGUgY2l0ZSxcbi5hLWJsb2NrcXVvdGUgLmEtY2l0ZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAuNWVtIDA7XG4gIGNvbG9yOiAjNzk3YjdmO1xuICBmb250LXNpemU6IDFyZW07XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgbWFyZ2luLXRvcDogMC41ZW07XG4gIC8qJjo6YmVmb3JlIHtcblx0XHRjb250ZW50OiBcIlxcMjAxNCBcXDIwMDlcIjtcblx0fSovIH1cblxuLyouYS1ibG9ja3F1b3RlX19ib2R5LFxuJWEtYmxvY2txdW90ZV9fYm9keSB7XG5cdEBpbmNsdWRlIHBhcmFncmFwaDtcblx0Zm9udC1zaXplOiAkYmxvY2txdW90ZS1mb250LXNpemU7XG5cdHBhZGRpbmctdG9wOiAwO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0cDpmaXJzdC1jaGlsZDo6YmVmb3JlLFxuXHRwOmxhc3QtY2hpbGQ6OmFmdGVyIHtcblx0XHRmb250LXNpemU6ICR0ZXh0LWZvbnQtc2l6ZS1sYXJnZTtcblx0fVxuXHRwOmZpcnN0LWNoaWxkOjpiZWZvcmUge1xuXHQgICAgY29udGVudDogJ1xcMjAxQyc7XG5cdH1cblx0cDpsYXN0LWNoaWxkOjphZnRlciB7XG5cdCAgICBjb250ZW50OiAnXFwyMDFEJztcblx0fVxufVxuXG4uYS1ibG9ja3F1b3RlX19mb290ZXIsXG4lYS1ibG9ja3F1b3RlX19mb290ZXIge1xuXHRAaW5jbHVkZSBwYXJhZ3JhcGg7XG5cdGNvbG9yOiAkYmxvY2txdW90ZS1mb290ZXItY29sb3I7XG5cdGZvbnQtc2l6ZTogJGJsb2NrcXVvdGUtZm9vdGVyLWZvbnQtc2l6ZTtcblx0Ly9mb250LXN0eWxlOiAkYmxvY2txdW90ZS1mb290ZXItZm9udC1zdHlsZTtcblx0cGFkZGluZy1ib3R0b206IDA7XG59Ki9cbi8qLmEtYmxvY2txdW90ZS0tYnJhbmQsXG4lYS1ibG9ja3F1b3RlLS1icmFuZCB7XG5cdGJvcmRlci1sZWZ0LWNvbG9yOiAkYmxvY2txdW90ZS1icmFuZC1ib3JkZXItY29sb3I7XG59Ki9cbi5hLWJsb2NrcXVvdGUtLWVtcGhhc2lzIHtcbiAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIHBhZGRpbmc6IDEuNjI1cHggMHB4O1xuICBwYWRkaW5nOiAxLjYyNXJlbSAwcmVtOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NHJlbSkge1xuICAgIC5hLWJsb2NrcXVvdGUtLWVtcGhhc2lzIHtcbiAgICAgIHBhZGRpbmc6IDMuMjVweCAwcHggMS42MjVweDtcbiAgICAgIHBhZGRpbmc6IDMuMjVyZW0gMHJlbSAxLjYyNXJlbTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfSB9XG4gIC5hLWJsb2NrcXVvdGUtLWVtcGhhc2lzID4gcCxcbiAgLmEtYmxvY2txdW90ZS0tZW1waGFzaXMgLmEtYmxvY2txdW90ZV9fYm9keSB7XG4gICAgZm9udC1zaXplOiAyN3B4O1xuICAgIGZvbnQtc2l6ZTogMS42ODc1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDMwcmVtKSB7XG4gIC5hLWJsb2NrcXVvdGUtLXJpZ2h0IHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgbWFyZ2luLWxlZnQ6IDFlbTsgfVxuICAuYS1ibG9ja3F1b3RlLS1sZWZ0IHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tcmlnaHQ6IDFlbTsgfVxuICAuYS1ibG9ja3F1b3RlLS1yaWdodCxcbiAgLmEtYmxvY2txdW90ZS0tbGVmdCB7XG4gICAgbWF4LXdpZHRoOiAyMHJlbTtcbiAgICBwYWRkaW5nOiAwcHggMS42MjVweDtcbiAgICBwYWRkaW5nOiAwcmVtIDEuNjI1cmVtOyB9IH1cblxuLypkb2Ncbi0tLVxudGl0bGU6IEJ1dHRvbnNcbm5hbWU6IGJ1dHRvblxuY2F0ZWdvcnk6IEF0b21zXG4tLS1cbipMYXN0IFVwZGF0ZWQ6IEF1Z3VzdCAyMSwgMjAxOCpcblxuQnV0dG9ucyBhZGQgdmlzdWFsIGludGVyZXN0IGFuZCBkcmF3IHRoZSB1c2VyJ3MgZXllLCB3aGVuIHVzZWQgYXBwcm9wcmlhdGVseS5cblxuIyMgVXNlXG5cbkJ1dHRvbiBzdHlsZXMgY2FuIGJlIGFwcGxpZWQgdG8gYW55IGVsZW1lbnQuIFR5cGljYWxseSB5b3UnbGwgd2FudFxudG8gdXNlIGVpdGhlciBhIGA8YnV0dG9uPmAgb3IgYW4gYDxhPmAgZWxlbWVudDpcblxuSWYgeW91ciBidXR0b24gaXMgYWN0dWFsbHkgYSBsaW5rIHRvIGFub3RoZXIgcGFnZSwgcGxlYXNlIHVzZSB0aGVcbmA8YT5gIGVsZW1lbnQsIHdoaWxlIGlmIHlvdXIgYnV0dG9uIHBlcmZvcm1zIGFuIGFjdGlvbiwgc3VjaCBhc1xuc3VibWl0dGluZyBhIGZvcm0gb3IgdHJpZ2dlcmluZyBzb21lIGphdmFzY3JpcHQgZXZlbnQsIHRoZW4gdXNlIGFcbmA8YnV0dG9uPmAgZWxlbWVudC5cblxuIyMjIFJlY29tbWVuZGVkIPCfkY1cblxuPGZpZ3VyZSBjbGFzcz1cImEtZmlndXJlLS1kc19fZ29vZFwiPlxuXHQ8aW1nIHNyYz1cIi4uL2ltYWdlcy9wYXR0ZXJuLWxpYnJhcnkvYXRvbXMvYnV0dG9uLWZpZy0xLnBuZ1wiIGFsdD1cIkV4YW1wbGUgb2YgYnV0dG9uIHVzZSBpbiB0aGUgcGFnZSdzIHByaW1hcnkgY2FsbC10by1hY3Rpb25cIi8+XG5cdDxmaWdjYXB0aW9uPkZpZyAxOiBFeGFtcGxlIG9mIGJ1dHRvbiB1c2UgaW4gdGhlIHBhZ2UncyBwcmltYXJ5IGNhbGwtdG8tYWN0aW9uPC9maWdjYXB0aW9uPlxuPC9maWd1cmU+XG5cbiMjIyBOb3QgUmVjb21tZW5kZWQg8J+RjlxuXG48ZmlndXJlIGNsYXNzPVwiYS1maWd1cmUtLWRzX19iYWRcIj5cblx0PGltZyBzcmM9XCIuLi9pbWFnZXMvcGF0dGVybi1saWJyYXJ5L2F0b21zL2J1dHRvbi1maWctMi5wbmdcIiBhbHQ9XCJFeGFtcGxlIG9mIGJ1dHRvbiB1c2UgaW4gdGhlIHBhZ2UncyBwcmltYXJ5IGNhbGwtdG8tYWN0aW9uXCIvPlxuXHQ8ZmlnY2FwdGlvbj5GaWcgMjogRXhhbXBsZSBvZiBob3cgbm90IHRvIHVzZSBhIGJ1dHRvbi48L2ZpZ2NhcHRpb24+XG48L2ZpZ3VyZT5cblxuIyMgQ29kZSBFeGFtcGxlcyAmIFZhcmlhdGlvbnNcblxuYGBgaHRtbF9leGFtcGxlX3RhYmxlXG48YnV0dG9uIGNsYXNzPVwiYS1idXR0b25cIj5CdXR0b248L2J1dHRvbj5cbmBgYFxuXG4jIyMgQnV0dG9uIENvbG9yc1xuXG5gYGBodG1sX2V4YW1wbGVfdGFibGVcbjxhIGNsYXNzPVwiYS1idXR0b24gIGEtYnV0dG9uLS1icmFuZFwiIGhyZWY9XCIjXCI+QnJhbmQ8L2E+XG5gYGBcblxuYGBgaHRtbF9leGFtcGxlX3RhYmxlXG48YSBjbGFzcz1cImEtYnV0dG9uICBhLWJ1dHRvbi0tYnJhbmQtZmlsbFwiIGhyZWY9XCIjXCI+QnJhbmQtRmlsbDwvYT5cbmBgYFxuXG4jIyMgQnV0dG9uIFNpemVzXG5cbmBgYGh0bWxfZXhhbXBsZV90YWJsZVxuPGEgY2xhc3M9XCJhLWJ1dHRvbiAgYS1idXR0b24tLXhzbWFsbFwiIGhyZWY9XCIjXCI+eHNtYWxsPC9hPlxuXG48YSBjbGFzcz1cImEtYnV0dG9uICBhLWJ1dHRvbi0tc21hbGxcIiBocmVmPVwiI1wiPnNtYWxsPC9hPlxuXG48YSBjbGFzcz1cImEtYnV0dG9uICBhLWJ1dHRvbi0tbWVkaXVtXCIgaHJlZj1cIiNcIj5tZWRpdW08L2E+XG5cbjxhIGNsYXNzPVwiYS1idXR0b24gIGEtYnV0dG9uLS1sYXJnZVwiIGhyZWY9XCIjXCI+bGFyZ2U8L2E+XG5cbjxhIGNsYXNzPVwiYS1idXR0b24gIGEtYnV0dG9uLS14bGFyZ2VcIiBocmVmPVwiI1wiPnhsYXJnZTwvYT5cblxuPGEgY2xhc3M9XCJhLWJ1dHRvbiAgYS1idXR0b24tLXN1cGVyXCIgaHJlZj1cIiNcIj5zdXBlcjwvYT5cbmBgYFxuXG4jIyMgQnV0dG9uIENvcm5lcnNcblxuYGBgaHRtbF9leGFtcGxlX3RhYmxlXG48YSBjbGFzcz1cImEtYnV0dG9uICBhLWJ1dHRvbi0tc3F1YXJlXCIgaHJlZj1cIiNcIj5zcXVhcmU8L2E+XG5cbjxhIGNsYXNzPVwiYS1idXR0b24gIGEtYnV0dG9uLS1yb3VuZFwiIGhyZWY9XCIjXCI+cm91bmQ8L2E+XG5gYGBcblxuIyMjIEZ1bGwtV2lkdGggQnV0dG9uc1xuXG5gYGBodG1sX2V4YW1wbGVfdGFibGVcbjxhIGNsYXNzPVwiYS1idXR0b24gIGEtYnV0dG9uLS1leHBhbmRcIiBocmVmPVwiI1wiPmV4cGFuZDwvYT5cbmBgYFxuXG4jIyMgRGlzYWJsZWQgQnV0dG9uc1xuXG5gYGBodG1sX2V4YW1wbGVfdGFibGVcbjxhIGNsYXNzPVwiYS1idXR0b24gIGEtYnV0dG9uLS1kaXNhYmxlZFwiIGhyZWY9XCIjXCI+ZGlzYWJsZWQ8L2E+XG5gYGBcbioqKlxuXG4qL1xuLmEtYnV0dG9uIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzQxNDA0MjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRjtcbiAgY29sb3I6ICM0MTQwNDI7XG4gIGxldHRlci1zcGFjaW5nOiAwLjAyNWVtO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwLjVlbTtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBvdXRsaW5lOiAwO1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAxZW07XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2hpdGUtc3BhY2U6IHdyYXA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDNweCAwIHJnYmEoMCwgMCwgMCwgMC4yKTsgfVxuICAuYS1idXR0b24uYnV0dG9uLS1hY3RpdmUge1xuICAgIGJvcmRlci1jb2xvcjogIzI4MjcyODtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjgyNzI4O1xuICAgIGNvbG9yOiAjRkZGOyB9XG4gIC5hLWJ1dHRvbjpub3QoOmRpc2FibGVkKSB7XG4gICAgLyomOmZvY3VzIHtcblx0XHRcdGJvcmRlci1jb2xvcjogJGJ1dHRvbi1mb2N1cy1ib3JkZXItY29sb3I7XG5cdFx0XHRib3gtc2hhZG93OiAkYnV0dG9uLWZvY3VzLWJveC1zaGFkb3c7XG5cdFx0fSovIH1cbiAgICAuYS1idXR0b246bm90KDpkaXNhYmxlZCk6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2E2MTkyZTtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNhNjE5MmU7XG4gICAgICBjb2xvcjogI0ZGRjsgfVxuICAgIC5hLWJ1dHRvbjpub3QoOmRpc2FibGVkKTphY3RpdmUge1xuICAgICAgYm9yZGVyLWNvbG9yOiAjN2ExMjIyO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzdhMTIyMjtcbiAgICAgIGNvbG9yOiAjRkZGOyB9XG4gIC5hLWJ1dHRvbjpkaXNhYmxlZCB7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICBvcGFjaXR5OiAwLjU7IH1cbiAgLmEtYnV0dG9uOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBkb3R0ZWQgdGhpbjsgfVxuXG4uYS1idXR0b24tLXJlc2V0LXRleHQge1xuICB0ZXh0LXRyYW5zZm9ybTogaW5pdGlhbDtcbiAgbGV0dGVyLXNwYWNpbmc6IGluaXRpYWw7IH1cblxuLmEtYnV0dG9uLS1icmFuZCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNhNjE5MmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkY7XG4gIGNvbG9yOiAjYTYxOTJlOyB9XG4gIC5hLWJ1dHRvbi0tYnJhbmQuYnV0dG9uLS1hY3RpdmUge1xuICAgIGJvcmRlci1jb2xvcjogIzdhMTIyMjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjN2ExMjIyO1xuICAgIGNvbG9yOiAjRkZGOyB9XG4gIC5hLWJ1dHRvbi0tYnJhbmQ6bm90KDpkaXNhYmxlZCkge1xuICAgIC8qJjpmb2N1cyB7XG5cdFx0XHRib3JkZXItY29sb3I6ICRidXR0b24tZm9jdXMtYm9yZGVyLWNvbG9yO1xuXHRcdFx0Ym94LXNoYWRvdzogJGJ1dHRvbi1mb2N1cy1ib3gtc2hhZG93O1xuXHRcdH0qLyB9XG4gICAgLmEtYnV0dG9uLS1icmFuZDpub3QoOmRpc2FibGVkKTpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTYxOTJlO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2E2MTkyZTtcbiAgICAgIGNvbG9yOiAjRkZGOyB9XG4gICAgLmEtYnV0dG9uLS1icmFuZDpub3QoOmRpc2FibGVkKTphY3RpdmUge1xuICAgICAgYm9yZGVyLWNvbG9yOiAjN2ExMjIyO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzdhMTIyMjtcbiAgICAgIGNvbG9yOiAjRkZGOyB9XG5cbi5hLWJ1dHRvbi0tYnJhbmQtZmlsbCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTYxOTJlO1xuICBjb2xvcjogI0ZGRjsgfVxuICAuYS1idXR0b24tLWJyYW5kLWZpbGwuYnV0dG9uLS1hY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM3YTEyMjI7IH1cbiAgLmEtYnV0dG9uLS1icmFuZC1maWxsOm5vdCg6ZGlzYWJsZWQpIHtcbiAgICAvKiY6Zm9jdXMge1xuXHRcdFx0Ym9yZGVyLWNvbG9yOiAkYnV0dG9uLWZvY3VzLWJvcmRlci1jb2xvcjtcblx0XHRcdGJveC1zaGFkb3c6ICRidXR0b24tZm9jdXMtYm94LXNoYWRvdztcblx0XHR9Ki8gfVxuICAgIC5hLWJ1dHRvbi0tYnJhbmQtZmlsbDpub3QoOmRpc2FibGVkKTpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDIyMDNhOyB9XG4gICAgLmEtYnV0dG9uLS1icmFuZC1maWxsOm5vdCg6ZGlzYWJsZWQpOmFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjN2ExMjIyOyB9XG5cbi5hLWJ1dHRvbi0tZ2hvc3Qge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMyk7XG4gIGJvcmRlci1jb2xvcjogd2hpdGU7XG4gIGNvbG9yOiB3aGl0ZTsgfVxuICAuYS1idXR0b24tLWdob3N0OmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7IH1cblxuLmEtYnV0dG9uLS14c21hbGwge1xuICBmb250LXNpemU6IDAuNzVlbTsgfVxuXG4uYS1idXR0b24tLXNtYWxsIHtcbiAgZm9udC1zaXplOiAwLjg3NWVtOyB9XG5cbi5hLWJ1dHRvbi0tbWVkaXVtIHtcbiAgZm9udC1zaXplOiAxZW07IH1cblxuLmEtYnV0dG9uLS1sYXJnZSB7XG4gIGZvbnQtc2l6ZTogMS4yNWVtOyB9XG5cbi5hLWJ1dHRvbi0teGxhcmdlIHtcbiAgZm9udC1zaXplOiAxLjVlbTsgfVxuXG4uYS1idXR0b24tLXN1cGVyIHtcbiAgZm9udC1zaXplOiAyZW07IH1cblxuLmEtYnV0dG9uX19pY29uLWxlZnQge1xuICBwYWRkaW5nLXJpZ2h0OiAwLjVlbTsgfVxuXG4uYS1idXR0b25fX2ljb24tcmlnaHQge1xuICBwYWRkaW5nLWxlZnQ6IDAuNWVtOyB9XG5cbi5hLWJ1dHRvbi0tc3F1YXJlIHtcbiAgYm9yZGVyLXJhZGl1czogMDsgfVxuXG4uYS1idXR0b24tLXJvdW5kIHtcbiAgYm9yZGVyLXJhZGl1czogMzBlbTsgfVxuXG4uYS1idXR0b24tLWV4cGFuZCxcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0uYS1idXR0b24tLWV4cGFuZCxcbmlucHV0W3R5cGU9XCJyZXNldFwiXS5hLWJ1dHRvbi0tZXhwYW5kLFxuaW5wdXRbdHlwZT1cImJ1dHRvblwiXS5hLWJ1dHRvbi0tZXhwYW5kIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMC41ZW07XG4gIHBhZGRpbmctbGVmdDogMC41ZW07XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEwMCU7IH1cblxuYnV0dG9uW2Rpc2FibGVkXSxcbi5hLWJ1dHRvbi0tZGlzYWJsZWQge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgIzkzOTU5ODtcbiAgY29sb3I6ICM5Mzk1OTg7IH1cblxuLyogUmVtb3ZlZCBmcm9tIHRoZSBQYXR0ZXJuIExpYnJhcnkgYXMgb2YgOC8yMS8yMDE4XG4tLS1cbnRpdGxlOiBDb2RlXG5uYW1lOiBjb2RlXG5jYXRlZ29yeTogQXRvbXNcbi0tLVxuXG5JdCBpcyB1bmxpa2VseSB5b3Ugd2lsbCBuZWVkIHRvIHVzZSBgY29kZWAgZWxlbWVudHMgb3V0c2lkZSBvZiB0aGUgc3R5bGVndWlkZS5cblxuYGBgaHRtbF9leGFtcGxlX3RhYmxlXG48Y29kZSBjbGFzcz1cImEtY29kZVwiPlxuXHRIZWxsbyBXb3JsZCFcbjwvY29kZT5cbmBgYFxuKi9cbmNvZGUsXG5rYmQsXG5wcmUsXG5zYW1wLFxuLmEtY29kZSxcbi5hLXByZSB7XG4gIGZvbnQtZmFtaWx5OiBDb25zb2xhcywgXCJBbmRhbGUgTW9ubyBXVFwiLCBcIkFuZGFsZSBNb25vXCIsIFwiTHVjaWRhIENvbnNvbGVcIiwgXCJMdWNpZGEgU2FucyBUeXBld3JpdGVyXCIsIFwiRGVqYVZ1IFNhbnMgTW9ub1wiLCBcIkJpdHN0cmVhbSBWZXJhIFNhbnMgTW9ub1wiLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBcIk5pbWJ1cyBNb25vIExcIiwgTW9uYWNvLCBcIkNvdXJpZXIgTmV3XCIsIENvdXJpZXIsIG1vbm9zcGFjZTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zaXplOiAuODc1cmVtO1xuICBjb2xvcjogIzQxNDA0MjsgfVxuXG5wcmUsXG4uYS1wcmUge1xuICBtYXJnaW46IDAgMCAxLjVlbSAwO1xuICBwYWRkaW5nOiAxcmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjJGMkYyO1xuICB3aGl0ZS1zcGFjZTogcHJlLXdyYXA7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIHRhYi1zaXplOiAyOyB9XG5cbmNvZGUsXG4uYS1jb2RlIHtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBwYWRkaW5nOiAuMjVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNGMkYyRjI7IH1cblxucHJlIGNvZGUsXG4uYS1wcmUgLmEtY29kZSB7XG4gIHBhZGRpbmc6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi5hLWNvZGUtLW11bHRpbGluZSB7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG92ZXJmbG93LXg6IGF1dG87XG4gIHBhZGRpbmc6IDAuNWVtIDFlbTtcbiAgd2hpdGUtc3BhY2U6IHByZTsgfVxuXG4vKmRvY1xuLS0tXG50aXRsZTogRmlndXJlcyAoTW92ZSB0byBNb2xlY3VsZXM/KVxubmFtZTogZmlndXJlc1xuY2F0ZWdvcnk6IEF0b21zXG4tLS1cbipMYXN0IFVwZGF0ZWQ6IEF1Z3VzdCAyMSwgMjAxOCpcblxuRmlndXJlcyBhcmUgc2VsZi1jb250YWluZWQgY29udGVudCwgcmVmZXJlbmNlZCBpbiB0aGUgbWFpbiBib2R5IG9mIGEgcGFnZSwgYnV0IGNhbiBiZSBwbGFjZWQgYW55d2hlcmUgb24gdGhhdCBwYWdlIHdpdGhvdXQgYWZmZWN0aW5nIHRoZSBmbG93IG9mIHRoZSBwYWdlLiBUeXBpY2FsbHkgaW5jbHVkZXMgYW4gW2A8aW1nPmBdW2ltYWdlc10gYW5kIGEgYDxmaWdjYXB0aW9uPmAuXG5cbiMjIEFjY2Vzc2liaWxpdHkgQ29uc2lkZXJhdGlvbnNcblxuV2hlbiB1c2luZyBgPGltZz5gLCB3aXRoIHRoZSBgc3JjYCBhcyBhIHJhc3RlciBpbWFnZSAoLmpwZywgLnBuZywgLmdpZiksIHRoZSBzYW1lIGNvbnNpZGVyYXRpb25zIGFzIHRoZSBbaW1hZ2UgYXRvbV1baW1hZ2VzXSBhcHBseSwgd2l0aCB0aGUgcHJpbWFyeSBjb25jZXJuIGJlaW5nIHRoZSBpbmNsdXNpb24gb2YgdGhlIGFsdCBhdHRyaWJ1dGUuIFNpbmNlIHRoZSBmaWd1cmUgbW9sZWN1bGUgc2hvdWxkIG5ldmVyIGJlIHVzZWQgbWVyZWx5IGFzIGEgZGVjb3JhdGl2ZSBlbGVtZW50LCB0aGUgYWx0IGRlc2NyaXB0aW9uICoqbXVzdCBiZSBpbmNsdWRlZCoqLCB3aXRob3V0IGV4Y2VwdGlvbi5cblxuRW5zdXJlIHRoYXQgdGhlIGFsdCBhdHRyaWJ1dGUgdGhvcm91Z2hseSBkZXNjcmliZXMgdGhlIGltYWdlOyBuZXZlciBzaW1wbHkgcGxhY2UgdGhlIGZpbGUgbmFtZSBoZXJlLiBBbHNvLCB0cnkgdG8gbWFrZSB0aGUgYWx0IGRlc2NyaXB0aW9uIGRpc3RpbmN0IGZyb20gdGhlIGA8ZmlnY2FwdGlvbj5gIHRleHQuIEZvciBleGFtcGxlOiBcIndoaXRlIGdvYXQsIHN0YW5kcyBvbiB0aGUgYmFjayBvZiBicm93biBjb3csXCIgbm90IFwiY293LWdvYXQuanBnLlwiXG5cbiMjIFVzZVxuXG5BIGZpZ3VyZSBpbmNsdWRlcyBpbGx1c3RyYXRpdmUgY29udGVudCB1c2VkIGFzIGFkZGl0aW9uYWwgaW5mb3JtYXRpb24gdG8gc3RyZW5ndGhlbiB0aGUgbWFpbiB0ZXh0LiBJdHMgdmFsdWUgcmVtYWlucywgcmVnYXJkbGVzcyBvZiB3aGVyZSBpdCdzIHBsYWNlZCB3aXRoIHRoZSBwYWdlOyBob3dldmVyLCBpdCBpcyB0eXBpY2FsbHkgcGxhY2VkIGltbWVkaWF0ZWx5IGJlbG93IGl0cyBmaXJzdCByZWZlcmVuY2Ugd2l0aGluIHRoZSBtYWluIHRleHQuXG5cblRoZSBmaWd1cmUgYm9keSBjb21tb25seSBjb250YWlucyBhIHBob3RvICguanBnLCAucG5nLCAuZ2lmKSwgdmVjdG9yIGdyYXBoaWMsIGluZm9ncmFwaGljIChzdmcpLCBvciBkYXRhIHZpc3VhbGl6YXRpb24gKHN2ZykuXG5cbioqTm90ZToqKiBub3RpY2UgdGhlIGBpbWdgIGVsZW1lbnRzIGhhdmUgYSBgZGF0YS1vcmlnaW5hbGAgYXR0cmlidXRlIGluc3RlYWQgb2YgYSBgc3JjYC4gVGhpcyBpcyBmb3IgbGF6eSBsb2FkaW5nLiBUaGVzZSBpbWFnZXMgd2lsbCBub3QgbG9hZCB1bnRpbCB0aGV5IGFyZSBpbiB0aGUgdmlld3BvcnQuIFRoaXMgc2F2ZXMgYmFuZHdpZHRoIGZvciB1cyBhbmQgdGhlIHVzZXIuIElmIHlvdSBkbyBub3Qgd2lzaCB0byBsYXp5IGxvYWQgaW1hZ2VzLCB1c2UgYHNyY2AuXG5cbmBgYGh0bWxfZXhhbXBsZV90YWJsZVxuPGZpZ3VyZSBjbGFzcz1cImEtZmlndXJlXCI+XG5cdDxpbWcgY2xhc3M9XCJhLWZpZ3VyZV9faW1hZ2VcIiBkYXRhLW9yaWdpbmFsPVwiaHR0cDovL3BsYWNlaG9sZC5pdC82MDB4MzAwXCIgYWx0PVwicGxhY2Vob2xkZXIgaW1hZ2VcIj5cblx0PGZpZ2NhcHRpb24gY2xhc3M9XCJhLWZpZ3VyZV9fY2FwdGlvblwiPlRoaXMgaXMgYSBjYXB0aW9uPC9maWdjYXB0aW9uPlxuPC9maWd1cmU+XG5gYGBcblxuIyMjIEZpZ3VyZSBBbGlnbm1lbnRcblxuYGBgaHRtbF9leGFtcGxlX3RhYmxlXG48ZmlndXJlIGNsYXNzPVwiYS1maWd1cmUgIGEtZmlndXJlLS1sZWZ0XCI+XG5cdDxpbWcgY2xhc3M9XCJhLWZpZ3VyZV9faW1hZ2VcIiBkYXRhLW9yaWdpbmFsPVwiaHR0cDovL3BsYWNlaG9sZC5pdC8yMDB4MjAwXCIgYWx0PVwicGxhY2Vob2xkZXIgaW1hZ2VcIj5cblx0PGZpZ2NhcHRpb24gY2xhc3M9XCJhLWZpZ3VyZV9fY2FwdGlvblwiPlRoaXMgaXMgYSBsZWZ0LWFsaWduZWQgZmlndXJlPC9maWdjYXB0aW9uPlxuPC9maWd1cmU+XG5cbjxmaWd1cmUgY2xhc3M9XCJhLWZpZ3VyZSAgYS1maWd1cmUtLXJpZ2h0XCI+XG5cdDxpbWcgY2xhc3M9XCJhLWZpZ3VyZV9faW1hZ2VcIiBkYXRhLW9yaWdpbmFsPVwiaHR0cDovL3BsYWNlaG9sZC5pdC8yMDB4MjAwXCIgYWx0PVwicGxhY2Vob2xkZXIgaW1hZ2VcIj5cblx0PGZpZ2NhcHRpb24gY2xhc3M9XCJhLWZpZ3VyZV9fY2FwdGlvblwiPlRoaXMgaXMgYSByaWdodC1hbGlnbmVkIGZpZ3VyZTwvZmlnY2FwdGlvbj5cbjwvZmlndXJlPlxuYGBgXG5cbiMjIFNpemluZ1xuXG5PbiBsYXJnZXIgc2NyZWVucywgZmlndXJlcyBoYXZlIGEgbWF4IHdpZHRoIG9mIDMwMHB4LiBJbiBvcmRlciB0byBpbmNyZWFzZSBvciBkZWNyZWFzZSB0aGUgc2l6ZSBvZiBmaWd1cmUsIHVzZSBvbmUgb2YgdGhlc2UgbW9kaWZpZXJzOiBgYS1maWd1cmUtLXNtYWxsYCwgYGEtZmlndXJlLS1sYXJnZWAsIGBhLWZpZ3VyZS0teGxhcmdlYC5cblxuIyMgRXh0ZXJuYWwgUmVzb3VyY2VzXG5cbiogW01ETiBFbnRyeSBmb3IgdGhlIEZpZ3VyZSBFbGVtZW50XShodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9IVE1ML0VsZW1lbnQvZmlndXJlKVxuKiBbTUROIEVudHJ5IGZvciB0aGUgRmlnY2FwaXRvbiBFbGVtZW50XShodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9IVE1ML0VsZW1lbnQvZmlnY2FwdGlvbilcblxuKioqXG5cbiovXG5maWd1cmUsXG4uYS1maWd1cmUge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgbWFyZ2luOiAwIDAgMS41ZW07XG4gIG1heC13aWR0aDogMTAwJTsgfVxuXG4uYS1maWd1cmVfX2ltYWdlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cblxuZmlnY2FwdGlvbixcbi5hLWZpZ3VyZV9fY2FwdGlvbiB7XG4gIGNhcHRpb24tc2lkZTogYm90dG9tO1xuICBjb2xvcjogIzkzOTU5ODtcbiAgZGlzcGxheTogdGFibGUtY2FwdGlvbjtcbiAgZm9udC1zaXplOiAwLjg3NWVtO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBwYWRkaW5nOiAwLjI1ZW0gMDtcbiAgdGV4dC1hbGlnbjogbGVmdDsgfVxuXG4uYS1maWd1cmUtLWNlbnRlciBmaWdjYXB0aW9uLFxuLmEtZmlndXJlLS1jZW50ZXIgLmEtZmlndXJlX19jYXB0aW9uIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAzMHJlbSkge1xuICAuYS1maWd1cmUtLWNlbnRlciB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gIC5hLWZpZ3VyZS0tcmlnaHQge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW4tbGVmdDogMWVtOyB9XG4gIC5hLWZpZ3VyZS0tbGVmdCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAxZW07IH1cbiAgLmEtZmlndXJlLS1yaWdodCxcbiAgLmEtZmlndXJlLS1sZWZ0IHtcbiAgICBtYXgtd2lkdGg6IDE4Ljc1cmVtO1xuICAgIC8qQGlmICRwYXJhZ3JhcGgtaW5kZW50ID09IHRydWUge1xuXHRcdFx0QGluY2x1ZGUgcGFkZGluZy1lcXVhbCgxKTtcblx0XHRcdEBpbmNsdWRlIG1hcmdpbi1ib3R0b20oMCk7XG5cdFx0fSBAZWxzZSB7XG5cdFx0XHRAaW5jbHVkZSBwYWRkaW5nKDAsIDEpO1xuXHRcdH0qLyB9XG4gIC5hLWZpZ3VyZS0tc21hbGwge1xuICAgIG1heC13aWR0aDogOS4zNzVyZW07IH1cbiAgLyogMTUwcHggKi9cbiAgLyogLmEtZmlndXJlLS1tZWRpdW0geyBtYXgtd2lkdGg6IDE4Ljc1cmVtOyB9ICAgMzAwcHgsIGRlZmF1bHQgKi9cbiAgLmEtZmlndXJlLS1sYXJnZSB7XG4gICAgbWF4LXdpZHRoOiAyOC4xMjVyZW07IH1cbiAgLyogNDUwcHggKi9cbiAgLmEtZmlndXJlLS14bGFyZ2Uge1xuICAgIG1heC13aWR0aDogMzcuNXJlbTsgfVxuICAvKiA2MDBweCAqLyB9XG5cbi8qZG9jXG4tLS1cbnRpdGxlOiBIb3Jpem9udGFsIFJ1bGVzXG5uYW1lOiBoclxuY2F0ZWdvcnk6IEF0b21zXG4tLS1cbipMYXN0IFVwZGF0ZWQ6IEF1Z3VzdCAyMSwgMjAxOCpcblxuSG9yaXpvbnRhbCBydWxlcyBhcmUgdXNlZCB0byBzZXBhcmF0ZSBjb250ZW50IG9yIGRlZmluZSBhIGNoYW5nZSBpbiBhbiBIVE1MIHBhZ2UuXG5cbiMjIENvZGUgRXhhbXBsZVxuXG5gYGBodG1sX2V4YW1wbGVfdGFibGVcbjxociBjbGFzcz1cImEtaHJcIj5cblxuPGhyIGNsYXNzPVwiYS1ociAgYS1oci0tYmxvY2tcIj5cblxuPGhyIGNsYXNzPVwiYS1ociAgYS1oci0tdHlwZVwiPlxuYGBgXG5cbioqKlxuXG4qL1xuaHIsXG4uYS1ociB7XG4gIG1hcmdpbi10b3A6IDEuNjI1cHg7XG4gIG1hcmdpbi10b3A6IDEuNjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAxLjYyNXB4O1xuICBtYXJnaW4tYm90dG9tOiAxLjYyNXJlbTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgdHJhbnNwYXJlbnQgNTAlLCB3aGl0ZSA1MCUsICM5Mzk1OTggY2FsYyg1MCUgKyAxcHgpLCB0cmFuc3BhcmVudCBjYWxjKDUwJSArIDFweCkpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDEwMCU7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIGJvcmRlcjogMDtcbiAgY29sb3I6ICM5Mzk1OTg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDEuNjI1cHg7XG4gIGhlaWdodDogMS42MjVyZW07XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5hLWhyLS1ibG9jayB7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxNnB4O1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMS42MjVyZW07XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHRyYW5zcGFyZW50IDFweCwgdHJhbnNwYXJlbnQgNnB4LCAjOTM5NTk4IDZweCwgIzkzOTU5OCAxMHB4LCB0cmFuc3BhcmVudCAxMHB4LCB0cmFuc3BhcmVudCAxNnB4KTtcbiAgd2lkdGg6IDEwMHB4OyB9XG5cbi5hLWhyLS10eXBlIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5hLWhyLS10eXBlOmJlZm9yZSB7XG4gICAgY29udGVudDogXCIqKipcIjtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4zZW07XG4gICAgdmVydGljYWwtYWxpZ246IC0uM2VtOyB9XG5cbi8qZG9jXG4tLS1cbnRpdGxlOiBJY29uc1xubmFtZTogaWNvbnNcbmNhdGVnb3J5OiBBdG9tc1xuLS0tXG4qTGFzdCBVcGRhdGVkOiBEZWNlbWJlciA0LCAyMDE4KlxuXG5JY29ucyBhcmUgc2VydmVkIHZpYSBhbiBTVkcgc3ByaXRlIHN5c3RlbS4gRm9yIGEgZnVsbCBsaXN0IG9mIGF2YWlsYWJsZSBpY29ucywgY2hlY2sgb3V0IHRoZSBbSWNvbiBMaWJyYXJ5XSguLi9pY29ucy8pLlxuXG4jIyBVc2VcblxuSWNvbnMgY2FuIHByb3ZpZGUgYSBzaW1wbGUgd2F5IHRvIGRyYXcgYSB1c2VyJ3MgZXllIHRvIGEgc3BlY2lmaWMgZWxlbWVudDsgYnV0IG9ubHkgaWYgdGhleSdyZSB1c2VkIHNwYXJpbmdseSBhbmQgYXJlIGFjY29tcGFuaWVkIGJ5IGV4cGxhbmF0b3J5IHRleHQuIE9uIGl0cyBvd24sIGFuIGljb24ncyBtZWFuaW5nIGlzIG9wZW4gdG8gYnJvYWQgaW50ZXJwcmV0YXRpb24sIHdpdGggZmV3IGV4Y2VwdGlvbnMuIFdoaWxlIGljb25zIGNhbiBhZGQgdmlzdWFsIGludGVyZXN0IHRvIGFuIGVsZW1lbnQgdGhleSwgZ2VuZXJhbGx5IHNwZWFraW5nLCBhZGQgbGl0dGxlIGJlbmVmaXQgdG8gdGhlIHVzYWJpbGl0eSBvZiBzYWlkIGVsZW1lbnQuXG5cbiMjIENvZGUgRXhhbXBsZXNcblxuIyMjIFNpemVzXG5cblNpemUgbW9kaWZpZXJzIGNoYW5nZSB0aGUgc2l6ZSBvZiBpY29ucy5cblxuYGBgaHRtbF9leGFtcGxlXG48c3ZnIGNsYXNzPVwiYS1pY29uICBhLWljb24tLXhzbWFsbFwiPlxuXHQ8dXNlIHhsaW5rOmhyZWY9XCIuLi9pbWFnZXMvc3ZnL2ljb25zLnN2ZyNzZWFyY2gtaWNvblwiPjwvdXNlPlxuPC9zdmc+XG48c3ZnIGNsYXNzPVwiYS1pY29uICBhLWljb24tLXNtYWxsXCI+XG5cdDx1c2UgeGxpbms6aHJlZj1cIi4uL2ltYWdlcy9zdmcvaWNvbnMuc3ZnI3NlYXJjaC1pY29uXCI+PC91c2U+XG48L3N2Zz5cbjxzdmcgY2xhc3M9XCJhLWljb24gIGEtaWNvbi0tbWVkaXVtXCI+XG5cdDx1c2UgeGxpbms6aHJlZj1cIi4uL2ltYWdlcy9zdmcvaWNvbnMuc3ZnI3NlYXJjaC1pY29uXCI+PC91c2U+XG48L3N2Zz5cbjxzdmcgY2xhc3M9XCJhLWljb24gIGEtaWNvbi0tbGFyZ2VcIj5cblx0PHVzZSB4bGluazpocmVmPVwiLi4vaW1hZ2VzL3N2Zy9pY29ucy5zdmcjc2VhcmNoLWljb25cIj48L3VzZT5cbjwvc3ZnPlxuPHN2ZyBjbGFzcz1cImEtaWNvbiAgYS1pY29uLS14bGFyZ2VcIj5cblx0PHVzZSB4bGluazpocmVmPVwiLi4vaW1hZ2VzL3N2Zy9pY29ucy5zdmcjc2VhcmNoLWljb25cIj48L3VzZT5cbjwvc3ZnPlxuPHN2ZyBjbGFzcz1cImEtaWNvbiAgYS1pY29uLS1zdXBlclwiPlxuXHQ8dXNlIHhsaW5rOmhyZWY9XCIuLi9pbWFnZXMvc3ZnL2ljb25zLnN2ZyNzZWFyY2gtaWNvblwiPjwvdXNlPlxuPC9zdmc+XG5gYGBcblxuIyMjIFNvY2lhbCBNZWRpYVxuXG5Tb2NpYWwgbWVkaWEgbW9kaWZpZXJzIGNhbiBiZSB1c2VkIHRvIGZpbGwgaWNvbnMgd2l0aCBlYWNoIG5ldHdvcmsncyBicmFuZCBjb2xvci5cblxuYGBgaHRtbF9leGFtcGxlX3RhYmxlXG48c3ZnIGNsYXNzPVwiYS1pY29uICBhLWljb24tLWZhY2Vib29rXCI+XG5cdDx1c2UgeGxpbms6aHJlZj1cIi4uL2ltYWdlcy9zdmcvaWNvbnMuc3ZnI2ZhY2Vib29rXCI+PC91c2U+XG48L3N2Zz5cbjxzdmcgY2xhc3M9XCJhLWljb24gIGEtaWNvbi0tdHdpdHRlclwiPlxuXHQ8dXNlIHhsaW5rOmhyZWY9XCIuLi9pbWFnZXMvc3ZnL2ljb25zLnN2ZyN0d2l0dGVyXCI+PC91c2U+XG48L3N2Zz5cbmBgYFxuXG4qKipcblxuKi9cbi5hLWljb24ge1xuICBjb2xvcjogY3VycmVudENvbG9yO1xuICBtYXgtd2lkdGg6IDEwMCU7IH1cblxuLmEtaWNvbi0tZnN0IHtcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMjBweDsgfVxuXG4uYS1pY29uLS1mc3QtbG9jYXRpb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogNXB4O1xuICBjb2xvcjogI2E2MTkyZTsgfVxuXG4uYS1pY29uLS14c21hbGwge1xuICBoZWlnaHQ6IDAuNzVlbTtcbiAgd2lkdGg6IDAuNzVlbTsgfVxuXG4uYS1pY29uLS1zbWFsbCB7XG4gIGhlaWdodDogMWVtO1xuICB3aWR0aDogMWVtOyB9XG5cbi5hLWljb24tLW1lZGl1bSB7XG4gIGhlaWdodDogMS4yNWVtO1xuICB3aWR0aDogMS4yNWVtOyB9XG5cbi5hLWljb24tLWxhcmdlIHtcbiAgaGVpZ2h0OiAxLjc1ZW07XG4gIHdpZHRoOiAxLjc1ZW07IH1cblxuLmEtaWNvbi0teGxhcmdlIHtcbiAgaGVpZ2h0OiAyLjVlbTtcbiAgd2lkdGg6IDIuNWVtOyB9XG5cbi5hLWljb24tLXN1cGVyIHtcbiAgaGVpZ2h0OiA0ZW07XG4gIHdpZHRoOiA0ZW07IH1cblxuLmEtaWNvbi0tdmlkZW9wbGF5IHtcbiAgaGVpZ2h0OiA4ZW07XG4gIHdpZHRoOiA4ZW07IH1cblxuLmEtaWNvbi0tZmFjZWJvb2sge1xuICBjb2xvcjogIzNiNTk5ODsgfVxuXG4uYS1pY29uLS1naXRodWIge1xuICBjb2xvcjogIzE3MTUxNTsgfVxuXG4uYS1pY29uLS1nb29nbGUtcGx1cyB7XG4gIGNvbG9yOiAjZGQ0YjM5OyB9XG5cbi5hLWljb24tLWluc3RhZ3JhbSB7XG4gIGNvbG9yOiAjNTE3ZmE0OyB9XG5cbi5hLWljb24tLWxpbmtlZGluIHtcbiAgY29sb3I6ICMwMDdiYjY7IH1cblxuLmEtaWNvbi0tc2t5cGUge1xuICBjb2xvcjogIzAwQUZGMDsgfVxuXG4uYS1pY29uLS1zb3VuZGNsb3VkIHtcbiAgY29sb3I6ICNmZjNhMDA7IH1cblxuLmEtaWNvbi0tdHVtYmxyIHtcbiAgY29sb3I6ICMzMjUwNmQ7IH1cblxuLmEtaWNvbi0tdHdpdHRlciB7XG4gIGNvbG9yOiAjMDBhY2VkOyB9XG5cbi5hLWljb24tLXZpbWVvIHtcbiAgY29sb3I6ICNhYWQ0NTA7IH1cblxuLmEtaWNvbi0tdmsge1xuICBjb2xvcjogIzQ1NjY4ZTsgfVxuXG4uYS1pY29uLS15b3V0dWJlIHtcbiAgY29sb3I6ICNiYjAwMDA7IH1cblxuLmEtaWNvbi0tcnNzIHtcbiAgY29sb3I6ICNGRjY2MDA7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDQ3Ljk5cmVtKSB7XG4gIC5hLWljb24tLWFjY29yZGlvbi1taW51cyB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAuby1zZWN0aW9uX19hY2NvcmRpb24tdGFwLm8tc2VjdGlvbl9fYWNjb3JkaW9uLWFjdGl2ZSAuYS1pY29uLS1hY2NvcmRpb24tbWludXMge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5vLXNlY3Rpb25fX2FjY29yZGlvbi10YXAuby1zZWN0aW9uX19hY2NvcmRpb24tYWN0aXZlIC5hLWljb24tLWFjY29yZGlvbi1wbHVzIHtcbiAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuQG1lZGlhIHByaW50IHtcbiAgLmEtaWNvbi0tYWNjb3JkaW9uLXBsdXMsXG4gIC5hLWljb24tLWFjY29yZGlvbi1taW51cyB7XG4gICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi5hLWtBdWRpb09ubHkgLmtXaWRnZXRQbGF5QnRuIHtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7IH1cbiAgLmEta0F1ZGlvT25seSAua1dpZGdldFBsYXlCdG46aG92ZXIge1xuICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjsgfVxuXG4uYS1rQXVkaW9Pbmx5IGltZyB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLypkb2Ncbi0tLVxudGl0bGU6IElucHV0c1xubmFtZTogaW5wdXRzXG5jYXRlZ29yeTogQXRvbXNcbi0tLVxuKkxhc3QgVXBkYXRlZDogRGVjZW1iZXIgNCwgMjAxOCpcblxuSW5wdXRzIGFyZSB0cmlja3kgYmVjYXVzZSBzb21lIGFyZSBhdG9tcyBhbmQgc29tZSBhcmUgbW9sZWN1bGVzLiBLZWVwIGFuIGV5ZSBvbiB0aGUgbmFtZXNwYWNpbmcuIEZvciBvdGhlciBmb3JtIGVsZW1lbnQgd2hpY2ggY29tYmluZSB0d28gb3IgbW9yZSBhdG9tcywgc2VlIFtmb3Jtc11bZm9ybXNdIGluIG1vbGVjdWxlcy5cblxuIyMgVXNlXG5cbiMjIyBBY2Nlc3NpYmxpdHkgQ29uc2lkZXJhdGlvbnNcblxuUGxhY2Vob2xkZXIgdGV4dCBzaG91bGQgbm90IGJlIHVzZWQgdG8gZ2l2ZSBpbnN0cnVjdGlvbnMgdG8gYSB1c2VyIG9uIGhvdyB0byB1c2UgYSBmb3JtIGZpZWxkLiBNb3N0IHNjcmVlbiByZWFkZXJzIGRvIG5vdCByZWFkIHRoZSBwbGFjZWhvbGRlciB0ZXh0LiBUaGUgYDxsYWJlbD5gIHRhZyBzaG91bGQgYmUgdXNlZCBmb3IgdGhpcyB0ZXh0LiBJbiBzb21lIGNhc2VzLCB0aGUgXCJ1LXZpc3VhbGx5aGlkZGVuXCIgW3Zpc2liaWxpdHkgY2xhc3NdW3Zpc2liaWxpdHldIGNhbiBiZSB1c2VkIHRvIGhpZGUgdGhlIGxhYmVsIGZyb20gYWxsIHVzZXJzLCBleGNlcHQgdGhvc2UgdXNpbmcgc2NyZWVuIHJlYWRlcnMuXG5cbiMjIENvZGUgRXhhbXBsZXNcblxuIyMjIFRleHQgSW5wdXRzXG5cbmBgYGh0bWxfZXhhbXBsZV90YWJsZVxuPGxhYmVsIGZvcj1cInRleHQtaW5wdXRcIj5TdGFuZGFyZCBUZXh0IElucHV0PC9sYWJlbD5cbjxpbnB1dCBpZD1cInRleHQtaW5wdXRcIiBjbGFzcz1cImEtZmllbGRcIiB0eXBlPVwidGV4dFwiPlxuXG48bGFiZWwgZm9yPVwic2VsZWN0LWJveFwiPkNob29zZSBvbmUgb2YgdGhlIGZvbGxvd2luZzo8L2xhYmVsPlxuPHNlbGVjdCBpZD1cInNlbGVjdC1ib3hcIiBjbGFzcz1cImEtZmllbGRcIj5cblx0PG9wdGlvbj5DaG9vc2UgbWUuLi48L29wdGlvbj5cblx0PG9wdGlvbj5ObywgY2hvb3NlIG1lPC9vcHRpb24+XG5cdDxvcHRpb24+Tm8sIGNob29zZSBNRUVFRSEhITwvb3B0aW9uPlxuPC9zZWxlY3Q+XG5cbjxsYWJlbCBmb3I9XCJ0ZXh0LWFyZWFcIj5Vc2UgdGhpcyB0eXBlIG9mIGZpZWxkIGZvciBtdWx0aS1saW5lIGlucHV0PC9sYWJlbD5cbjx0ZXh0YXJlYSBpZD1cInRleHQtYXJlYVwiIGNsYXNzPVwiYS1maWVsZFwiPjwvdGV4dGFyZWE+XG5gYGBcblxuIyMjIENvbG9yc1xuXG5gYGBodG1sX2V4YW1wbGVfdGFibGVcbjxpbnB1dCBjbGFzcz1cImEtZmllbGQgIGEtZmllbGQtLXN1Y2Nlc3NcIiB0eXBlPVwidGV4dFwiIHBsYWNlaG9sZGVyPVwiLmEtZmllbGQtLXN1Y2Nlc3NcIj5cblxuPGlucHV0IGNsYXNzPVwiYS1maWVsZCAgYS1maWVsZC0tZXJyb3JcIiB0eXBlPVwidGV4dFwiIHBsYWNlaG9sZGVyPVwiLmEtZmllbGQtLWVycm9yXCI+XG5cbjxpbnB1dCBjbGFzcz1cImEtZmllbGRcIiBkaXNhYmxlZCB0eXBlPVwidGV4dFwiIHBsYWNlaG9sZGVyPVwiZGlzYWJsZWRcIj5cbmBgYFxuXG4jIyMgSWNvbnNcblxuVGVjaG5pY2FsbHksIGlucHV0IGVsZW1lbnRzIHdpdGggaWNvbnMgYXJlIG1vbGVjdWxlcywgbm90IGF0b21zLiBUaGVyZWZvcmUsIHRoZXkgYXJlIHByZWZpeGVkIHdpdGggYG0tYCBpbnN0ZWFkIG9mIGBhLWAuXG5cbmBgYGh0bWxfZXhhbXBsZV90YWJsZVxuPGRpdiBjbGFzcz1cIm0tZmllbGQgIG0tZmllbGQtLWljb24tbGVmdFwiPlxuXHQ8c3ZnIGNsYXNzPVwiYS1pY29uXCI+XG5cdFx0PHVzZSB4bGluazpocmVmPVwiI3NlYXJjaC1pY29uXCI+PC91c2U+XG5cdDwvc3ZnPlxuXHQ8aW5wdXQgY2xhc3M9XCJhLWZpZWxkXCIgdHlwZT1cInRleHRcIj5cbjwvZGl2PlxuYGBgXG5cbiMjIyBTaXplc1xuXG5UbyBjaGFuZ2UgdGhlIHNpemUgb2YgYGlucHV0YCBlbGVtZW50cyB3ZSB3aWxsIHVzZSB1dGlsaXR5IGNsYXNzZXMuXG5cbmBgYGh0bWxfZXhhbXBsZV90YWJsZVxuPGlucHV0IGNsYXNzPVwiYS1maWVsZCAgdS14c21hbGxcIiB0eXBlPVwidGV4dFwiIHBsYWNlaG9sZGVyPVwiLnUteHNtYWxsXCI+XG5cbjxpbnB1dCBjbGFzcz1cImEtZmllbGQgIHUtc21hbGxcIiB0eXBlPVwidGV4dFwiIHBsYWNlaG9sZGVyPVwiLnUtc21hbGxcIj5cblxuPGlucHV0IGNsYXNzPVwiYS1maWVsZCAgdS1tZWRpdW1cIiB0eXBlPVwidGV4dFwiIHBsYWNlaG9sZGVyPVwiLnUtbWVkaXVtXCI+XG5cbjxpbnB1dCBjbGFzcz1cImEtZmllbGQgIHUtbGFyZ2VcIiB0eXBlPVwidGV4dFwiIHBsYWNlaG9sZGVyPVwiLnUtbGFyZ2VcIj5cblxuPGlucHV0IGNsYXNzPVwiYS1maWVsZCAgdS14bGFyZ2VcIiB0eXBlPVwidGV4dFwiIHBsYWNlaG9sZGVyPVwiLnUteGxhcmdlXCI+XG5cbjxpbnB1dCBjbGFzcz1cImEtZmllbGQgIHUtc3VwZXJcIiB0eXBlPVwidGV4dFwiIHBsYWNlaG9sZGVyPVwiLnUtc3VwZXJcIj5cbmBgYFxuXG4jIyMgQ2hlY2tib3hlcyBhbmQgUmFkaW9zXG5cblBsYWNlIHlvdXIgY2hlY2tib3hlcyBhbmQgcmFkaW9zIHdpdGhpbiBsYWJlbHMgYW5kIGFwcGVuZCB0aGUgYC5hLWZpZWxkLS1jaG9pY2VgIG1vZGlmaWVyIGNsYXNzLlxuXG5gYGBodG1sX2V4YW1wbGVfdGFibGVcbjxsYWJlbCBjbGFzcz1cImEtZmllbGQgIGEtZmllbGQtLWNob2ljZVwiPlxuXHQ8aW5wdXQgdHlwZT1cImNoZWNrYm94XCI+IFRpY2sgdGhlIGJveFxuPC9sYWJlbD5cblxuPGxhYmVsIGNsYXNzPVwiYS1maWVsZCAgYS1maWVsZC0tY2hvaWNlXCI+XG5cdDxpbnB1dCBuYW1lPVwicmFkaW9zXCIgdHlwZT1cInJhZGlvXCIgY2hlY2tlZD4gWWVzLCB0aGlzIGlzIGEgc3RhbmRhcmQgcmFkaW9cbjwvbGFiZWw+XG48bGFiZWwgY2xhc3M9XCJhLWZpZWxkICBhLWZpZWxkLS1jaG9pY2VcIj5cblx0PGlucHV0IGlkPVwibm8tcmFkaW9cIiBuYW1lPVwicmFkaW9zXCIgdHlwZT1cInJhZGlvXCI+IE5vLCB0aGUgaXMgYSByZWd1bGFyIHJhZGlvXG48L2xhYmVsPlxuYGBgXG5cbiMjIyBDaGVja2JveCBCdXR0b24gR3JpZFxuXG5BbiBhbHRlcm5hdGUgc3R5bGluZywgY3VycmVudGx5IG9ubHkgaW4gdXNlIG9uIHRoZSBbRmluZCBBIExvY2F0aW9uIHBhZ2VdKGh0dHBzOi8vaGVhbHRoY2FyZS51dGFoLmVkdS9sb2NhdGlvbnMvKS4gRm9yIG1vcmUgZ3JpZCBvcHRpb25zIHNlZSB0aGUgW2dyaWRzIHNlY3Rpb24gaW4gbGF5b3V0c11bZ3JpZHNdLlxuXG5gYGBodG1sX2V4YW1wbGVcbjxkaXYgY2xhc3M9XCJsLWdyaWRcIj5cblx0PGRpdiBjbGFzcz1cImwtZ3JpZF9faXRlbSAxLzNcIj5cblx0XHQ8bGFiZWwgY2xhc3M9XCJtLWRyb3Bkb3duLXNlcnZpY2VzIGEtYnV0dG9uICBhLWJ1dHRvbi0tYnJhbmQgYS1idXR0b24tLXNtYWxsIGEtYnV0dG9uLS1leHBhbmQgdS1zcGFjZS1ib3R0b20tLW1lZGl1bVwiIGZvcj1cIm9wdGlvbi1vbmVcIj5PbmU8L2xhYmVsPlxuXHRcdDxpbnB1dCBjbGFzcz1cIm0tZHJvcGRvd24tc2VydmljZXNcIiBpZD1cIm9wdGlvbi1vbmVcIiB0eXBlPVwiY2hlY2tib3hcIiBuYW1lPVwiZmlsdGVyXCIgdmFsdWU9XCJvcHRpb24tb25lXCI+XG5cdDwvZGl2PlxuXHQ8ZGl2IGNsYXNzPVwibC1ncmlkX19pdGVtIDEvM1wiPlxuXHRcdDxsYWJlbCBjbGFzcz1cIm0tZHJvcGRvd24tc2VydmljZXMgYS1idXR0b24gIGEtYnV0dG9uLS1icmFuZCBhLWJ1dHRvbi0tc21hbGwgYS1idXR0b24tLWV4cGFuZCB1LXNwYWNlLWJvdHRvbS0tbWVkaXVtXCIgZm9yPVwib3B0aW9uLXR3b1wiPlR3bzwvbGFiZWw+XG5cdFx0PGlucHV0IGNsYXNzPVwibS1kcm9wZG93bi1zZXJ2aWNlc1wiIGlkPVwib3B0aW9uLXR3b1wiIHR5cGU9XCJjaGVja2JveFwiIG5hbWU9XCJmaWx0ZXJcIiB2YWx1ZT1cIm9wdGlvbi10d29cIj5cblx0PC9kaXY+XG5cdDxkaXYgY2xhc3M9XCJsLWdyaWRfX2l0ZW0gMS8zXCI+XG5cdFx0PGxhYmVsIGNsYXNzPVwibS1kcm9wZG93bi1zZXJ2aWNlcyBhLWJ1dHRvbiAgYS1idXR0b24tLWJyYW5kIGEtYnV0dG9uLS1zbWFsbCBhLWJ1dHRvbi0tZXhwYW5kIHUtc3BhY2UtYm90dG9tLS1tZWRpdW1cIiBmb3I9XCJvcHRpb24tY1wiPkM8L2xhYmVsPlxuXHRcdDxpbnB1dCBjbGFzcz1cIm0tZHJvcGRvd24tc2VydmljZXNcIiBpZD1cIm9wdGlvbi1jXCIgdHlwZT1cImNoZWNrYm94XCIgbmFtZT1cImZpbHRlclwiIHZhbHVlPVwib3B0aW9uLWNcIj5cblx0PC9kaXY+XG48L2Rpdj5cbmBgYFxuXG4jIyBFeHRlcm5hbCBSZXNvdXJjZXNcblxuKiBbTUROIEVudHJ5IGZvciB0aGUgSW5wdXQgKEZvcm0gSW5wdXQpIEVsZW1lbnRdKGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0hUTUwvRWxlbWVudC9pbnB1dClcblxuKioqXG5cbiovXG4uYS1sYWJlbCB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIHBhZGRpbmc6IDFlbSAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB3aWR0aDogMTAwJTsgfVxuXG4uYS1maWVsZCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwLjVlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgIzc5N2I3ZjtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBvdXRsaW5lOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAxZW07XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIHJlc2l6ZTogdmVydGljYWw7XG4gIGFwcGVhcmFuY2U6IG5vbmU7IH1cbiAgLmEtZmllbGQ6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogI2E2MTkyZTtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAxcHggI2QyMjAzYTsgfVxuXG5zZWxlY3QuYS1maWVsZCB7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuXG5zZWxlY3QuYS1maWVsZDpub3QoW211bHRpcGxlXSkge1xuICBwYWRkaW5nLXJpZ2h0OiAxZW07XG4gIGJhY2tncm91bmQ6IHVybChcImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxSMGxHT0RsaER3QVVBSUFCQUFBQUFQLy8veUg1QkFFQUFBRUFMQUFBQUFBUEFCUUFBQUlYakkrcHkrMFBvNXdIMkhzWHptdy8vbEhpU0pabVVBQUFPdz09XCIpIG5vLXJlcGVhdCA5OSUgNTAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyB9XG5cbi5hLWZpZWxkIGlucHV0IHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjEyNWVtO1xuICBvdXRsaW5lOiAwO1xuICBmb250LXNpemU6IDFlbTsgfVxuXG4uYS1maWVsZC0tbGFiZWwge1xuICBtYXJnaW46IDAuNWVtIDAgMCAwOyB9XG5cbi5hLWZpZWxkLS1lcnJvciB7XG4gIGJvcmRlci1jb2xvcjogI0M4MTAyRTtcbiAgY29sb3I6ICNDODEwMkU7IH1cblxuLmEtZmllbGQtLXN1Y2Nlc3Mge1xuICBib3JkZXItY29sb3I6ICMwMDg3NTU7XG4gIGNvbG9yOiBpbmhlcml0OyB9XG5cbi5hLWZpZWxkLS1jaG9pY2Uge1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi5hLWZpZWxkLS1kaXNhYmxlZCxcbi5hLWZpZWxkOmRpc2FibGVkIHtcbiAgY29sb3I6ICM3OTdiN2Y7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gIGJvcmRlci1jb2xvcjogIzc5N2I3ZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2M3YzhjYTsgfVxuICAuYS1maWVsZC0tZGlzYWJsZWQuYS1maWVsZC0tY2hvaWNlLFxuICAuYS1maWVsZDpkaXNhYmxlZC5hLWZpZWxkLS1jaG9pY2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi5hLWZpZWxkIGlucHV0OmRpc2FibGVkIHtcbiAgY29sb3I6ICM3OTdiN2Y7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cblxuOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICM5Mzk1OTg7IH1cblxuOjotbW96LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICM5Mzk1OTg7IH1cblxuOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjOTM5NTk4OyB9XG5cbi5hLWZpZWxkLS1lbXBoYXNpczo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjNDE0MDQyOyB9XG5cbi5hLWZpZWxkLS1lbXBoYXNpczo6LW1vei1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjNDE0MDQyO1xuICBvcGFjaXR5OiAxOyB9XG5cbi5hLWZpZWxkLS1lbXBoYXNpcyA6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICM0MTQwNDI7IH1cblxuLypkb2Ncbi0tLVxudGl0bGU6IEltYWdlc1xubmFtZTogaW1hZ2VzXG5jYXRlZ29yeTogQXRvbXNcbi0tLVxuKkxhc3QgVXBkYXRlZDogQXVndXN0IDIyLCAyMDE4KlxuXG5ObyBjbGFzc2VzIG5lY2Vzc2FyeSBmb3IgaW1hZ2VzLiBUaGV5IHdpbGwgYmVoYXZlIHJlc3BvbnNpdmVseSBieSBkZWZhdWx0LlxuXG4jIyBBY2Nlc3NpYmlsaXR5IENvbnNpZGVyYXRpb25zXG5cblRha2Ugc3BlY2lhbCBjb25zaWRlcmF0aW9uIHRvIHRoZSBgYWx0YCBhdHRyaWJ1dGUuIElmIHRoZSBpbWFnZSBpcyBwdXJlbHkgZGVjb3JhdGl2ZSwgaW5jb25zZXF1ZW50aWFsIHRvIHRoZSBzdXJyb3VuZGluZyBjb250ZW50LCB1c2UgdGhlIGFsdCBhdHRyaWJ1dGUsIGJ1dCBsZWF2ZSBpdCBibGFuayAoYGFsdD1cIlwiYCkuIE90aGVyd2lzZSwgdGhvcm91Z2hseSBkZXNjcmliZSB0aGUgaW1hZ2Ugc28gdGhhdCB1c2VycyB3aXRoIHNjcmVlbiByZWFkZXJzIG9yIG90aGVyIGFzc2lzdGl2ZSBkZXZpY2VzIGJlbmVmaXQgZnJvbSB0aGUgZnVsbCBtZXNzYWdlLiBUaGUgZmlsZSBuYW1lIG5ldmVyIGJlbG9uZ3MgaW4gdGhlIGFsdCBkZXNjcmlwdGlvbi4gRm9yIGV4YW1wbGUsIGBhbHQ9XCJGb3VyIGtpZHMgcGxheWluZyBiYXNrZXRiYWxsIG91dHNpZGUgb24gYSBzdW5ueSBkYXlcImAsIG5vdCBgYWx0PVwiYmFza2V0YmFsbFwiYCBvciBgYWx0PVwiRFNDXzAwMDc4NjUuanBnXCJgLlxuXG4jIyBVc2VcblxuTm90ZTogbm90aWNlIHRoZSBgaW1nYCBlbGVtZW50cyBoYXZlIGEgYGRhdGEtb3JpZ2luYWxgIGF0dHJpYnV0ZSBpbnN0ZWFkIG9mIGEgYHNyY2AuIFRoaXMgaXMgZm9yIGxhenkgbG9hZGluZy4gVGhlc2UgaW1hZ2VzIHdpbGwgbm90IGxvYWQgdW50aWwgdGhleSBhcmUgaW4gdGhlIHZpZXdwb3J0LiBUaGlzIHNhdmVzIGJhbmR3aWR0aCBmb3IgdXMgYW5kIHRoZSB1c2VyLiBJZiB5b3UgZG8gbm90IHdpc2ggdG8gbGF6eSBsb2FkIGltYWdlcywgdXNlIGBzcmNgLlxuXG4jIyBDb2RlIEV4YW1wbGVcblxuYGBgaHRtbF9leGFtcGxlX3RhYmxlXG48aW1nIGFsdD1cInBsYWNlaG9sZGVyXCIgZGF0YS1vcmlnaW5hbD1cImh0dHBzOi8vcGxhY2Vob2xkLml0LzIwMHgyMDBcIi8+XG5gYGBcblxuIyMgRXh0ZXJuYWwgUmVzb3VyY2VzXG5cbiogW01ETiBFbnRyeSBmb3IgdGhlIEltYWdlIEVtYmVkIEVsZW1lbnRdKGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0hUTUwvRWxlbWVudC9pbWcpXG5cbioqKlxuXG4qL1xuaW1nLFxuc3ZnIHtcbiAgbWF4LXdpZHRoOiAxMDAlOyB9XG5cbmltZyB7XG4gIGJvcmRlcjogMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogaW5oZXJpdCBhdXRvOyB9XG5cbmltZzpub3QoW3NyY10pIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi8qZG9jXG4tLS1cbnRpdGxlOiBMaW5rc1xubmFtZTogbGlua3NcbmNhdGVnb3J5OiBBdG9tc1xuLS0tXG4qTGFzdCBVcGRhdGVkOiBBdWd1c3QgMjIsIDIwMTgqXG5cbk91ciBzdGFuZGFyZCwgaW4tdGV4dCBsaW5rIGlzIHJlZCwgc2xpZ2h0bHktYm9sZGVkIHdpdGggYSBzb2xpZCB1bmRlcmxpbmUuIFVzZWQgZm9yIGluLXBhZ2UgYW5jaG9yIGxpbmtzIG9yIGxpbmtzIHRvIG90aGVyIHBhZ2VzLCBzcGVjaWZ5aW5nIHRoZSB0YXJnZXQgd2luZG93LlxuXG4jIyBBY2Nlc3NpYmlsaXR5IENvbnNpZGVyYXRpb25zXG5cbkxpbmtzIHRoYXQgaGF2ZSBgdGFyZ2V0PVwiX2JsYW5rXCJgIHNob3VsZCBwcm92aWRlIGFuIGluZGljYXRpb24gdGhhdCBhIG5ldyB3aW5kb3cgd2lsbCBvcGVuIChpLmUuIGA8YSBocmVmPVwiaHR0cDovL2dvb2dsZS5jb21cIiB0YXJnZXQ9XCJfYmxhbmtcIj5gW0dvb2dsZSAob3BlbnMgYW4gZXh0ZXJuYWwgcGFnZSBpbiBhIG5ldyB3aW5kb3cvdGFiKV0oaHR0dHA6Ly9nb29nbGUuY29tKWA8L2E+YCkuXG5cbldoZW4gbGlua2luZyB0byBhIG5vbi1odG1sIGRvY3R1bWVudCwgaW5kaWNhdGUgd2hhdCB0eXBlIG9mIGZpbGUgdGhlIGxpbmsgd2lsbCBvcGVuLlxuXG4jIyBVc2VcblxuV2UgdXNlIGB0YXJnZXQ9XCJfYmxhbmtcImAgZm9yIGFsbCBsaW5rcyB0byB3ZWJwYWdlcyBvdXRzaWRlIG9mIG91ciBkb21haW5zIChoZWFsdGhjYXJlLnV0YWguZWR1LCBtZWRpY2luZS51dGFoLmVkdSwgZXRjLikuXG5cbkZvciBpbnRlcm5hbCBsaW5rcywgYXZvaWQgdXNpbmcgYHRhcmdldD1cIl9ibGFua1wiYC5cblxuTWFpbiBib2R5IHRleHQgbGlua3Mgc2hvdWxkIG5vdCBiZSByZXN0eWxlZCBpbiBhbnkgd2F5IChldmVuIHVzaW5nIHV0aWxpdHkgY2xhc3NlcykuXG5cbiMjIENvZGUgRXhhbXBsZVxuXG5gYGBodG1sX2V4YW1wbGVfdGFibGVcbjxhIGNsYXNzPVwiYS1saW5rXCI+aHlwZXItbGluazwvYT5cbmBgYFxuXG4jIyBFeHRlcm5hbCBSZXNvdXJjZXNcblxuKiBbTUROIEVudHJ5IGZvciB0aGUgQW5jaG9yIEVsZW1lbnRdKGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0hUTUwvRWxlbWVudC9hKVxuXG4qKipcblxuKi9cbmEsXG4uYS1saW5rIHtcbiAgYm9yZGVyLWJvdHRvbTogMC4xMjVyZW0gc29saWQgY3VycmVudENvbG9yO1xuICBjb2xvcjogI2E2MTkyZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmb250LXdlaWdodDogNDAwO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuM3MsIGJvcmRlci1jb2xvciAwLjNzO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIC8qJjp2aXNpdGVkIHtcblx0XHRjb2xvcjogJGNvbG9yLXB1cnBsZTtcblx0fSovXG4gIC8qJjpob3ZlciBpbWcge1xuXHRcdGJvcmRlcjogbm9uZTtcblx0XHRiYWNrZ3JvdW5kOiBub25lO1xuXHRcdG9wYWNpdHk6IDAuOTtcblx0XHRmaWx0ZXI6IGFscGhhKG9wYWNpdHk9OTApO1xuXHR9Ki8gfVxuICBhOmFjdGl2ZSwgYTpob3ZlcixcbiAgLmEtbGluazphY3RpdmUsXG4gIC5hLWxpbms6aG92ZXIge1xuICAgIG91dGxpbmU6IDA7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gIGE6aG92ZXIsXG4gIC5hLWxpbms6aG92ZXIge1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICM3YTEyMjI7XG4gICAgY29sb3I6ICM3YTEyMjI7IH1cbiAgYTphY3RpdmUsXG4gIC5hLWxpbms6YWN0aXZlIHtcbiAgICBjb2xvcjogI2QyMjAzYTsgfVxuICBhIGltZyxcbiAgLmEtbGluayBpbWcge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiBub25lOyB9XG5cbi8qXG4gKiBWaXNpdGVkIENvbG9yXG4gKiBkZXNjcmlwdGlvbjogb25seSBtYWtlIHZpc2l0ZWQgbGlua3MgcHVycGxlIGlmIGxpbmsgaGFzIG5vIGNsYXNzZXNcbiAqL1xuYTp2aXNpdGVkOm5vdChbY2xhc3NdKSB7XG4gIGNvbG9yOiAjNkM1NEEzOyB9XG5cbi8qIG1haW4ge1xuXG5cdGE6bm90KC5hLWJ1dHRvbik6bm90KC5tLWNhbGxvdXRfX2J1dHRvbik6bm90KC5tLWNhcmQpOm5vdCgubS1idXR0b24tZ3JvdXBfX2xpbmspOm5vdCgubS1wYWdpbmF0aW9uX19wYWdlKTpub3QoLm0tcGFnaW5hdGlvbl9fY29udHJvbCk6bm90KC5tLXRpbGUpOm5vdCguby1zd2lwZXJfX2NhcHRpb24tbGluayk6bm90KFtjbGFzc149XCJ1LWNvbG9yXCJdKTpub3QoW2hyZWY9XCJcIl0pOm5vdCg6aG92ZXIpOnZpc2l0ZWQge1xuXHRcdGNvbG9yOiAkY29sb3ItcHVycGxlO1xuXHR9XG5cbn0gKi9cbi5hLWxpbmstLWJvcmRlcmxlc3Mge1xuICBib3JkZXItYm90dG9tOiBub25lOyB9XG5cbi5hLWxpbmstLW11dGVkLFxuLmEtbGluay0tbXV0ZWQgYSB7XG4gIGNvbG9yOiAjOTM5NTk4OyB9XG5cbi5hLWxpbmstLW11dGVkOmhvdmVyLFxuLmEtbGluay0tbXV0ZWQgYTpob3ZlciB7XG4gIGNvbG9yOiAjNzk3YjdmOyB9XG5cbi5hLWxpbmstLXRleHQ6bm90KDpob3ZlciksXG4uYS1saW5rLS10ZXh0IGE6bm90KDpob3Zlcikge1xuICBjb2xvcjogaW5oZXJpdDsgfVxuXG4uYS1saW5rLS1hbmNob3JqcyB7XG4gIGJvcmRlcjogbm9uZTtcbiAgY29sb3I6ICM5Mzk1OTg7IH1cblxuLmEtcXVpY2stbGlua3Mge1xuICBmb250LXNpemU6IDAuODc1ZW07XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHotaW5kZXg6IDE7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4cmVtKSB7XG4gIC5hLXF1aWNrLWxpbmtzLS1sZWZ0LFxuICAuYS1xdWljay1saW5rcy0tcmlnaHQge1xuICAgIG1heC13aWR0aDogNTB2dzsgfVxuICAuYS1xdWljay1saW5rcy0tbGVmdCB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIzc5N2I3ZjtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tcmlnaHQ6IDEuNWVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuNWVtOyB9XG4gIC5hLXF1aWNrLWxpbmtzLS1yaWdodCB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjNzk3YjdmO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW4tbGVmdDogMS41ZW07XG4gICAgcGFkZGluZy1sZWZ0OiAxLjVlbTsgfSB9XG5cbi5hLXF1aWNrLWxpbmtzX19pdGVtIHtcbiAgcGFkZGluZzogMWVtIDJlbTsgfVxuXG4uYS1xdWljay1saW5rc19faXRlbTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM3OTdiN2Y7IH1cblxuLmEtcXVpY2stbGlua3NfX2xpbmsge1xuICBib3JkZXItYm90dG9tOiBub25lOyB9XG5cbi8qZG9jXG4tLS1cbnRpdGxlOiBMaXN0c1xubmFtZTogbGlzdHNcbmNhdGVnb3J5OiBBdG9tc1xuLS0tXG4qTGFzdCBVcGRhdGVkOiBBdWd1c3QgMjMsIDIwMTgqXG5cbkxpc3RzIGdyb3VwIHJlbGF0ZWQgaXRlbXMgaW50byBhbiBlYXN5IHRvIHNjYW4gYmxvY2sgZm9yIGJldHRlciBjb250ZW50IGxlZ2liaWxpdHkuIExpc3RzIGNhbiBiZSBuZXN0ZWQgYXMgbmVlZGVkIGZvciBsaXN0cyB3aXRoaW4gbGlzdHMgd2l0aGluIGxpc3RzIHdpdGhpbiAuIC4gLlxuXG4jIyBVc2VcblxuVW5vcmRlcmVkIGxpc3RzIChgPHVsPmApIGNvbnRhaW4gaXRlbXMgd2hvc2Ugb3JkZXIgaXMgdW5pbXBvcnRhbnQgdG8gdGhlIG1lYW5pbmcgb2YgdGhlIGNvbnRlbnQuIFRoZSBpdGVtIG9yZGVyIGNvdWxkIGJlIGNoYW5nZWQgd2l0aG91dCBjaGFuZ2luZyB0aGUgbWVhbmluZy5cblxuT3JkZXJlZCBsaXN0cyAoYDxvbD5gKSBjb250YWluIGl0ZW1zIHdob3NlIG9yZGVyIGlzIGVzc2VudGlhbCB0byB0aGUgbWVhbmluZyBhbmQvb3IgZmxvdyBvZiB0aGUgY29udGVudC5cblxuIyMgQ29kZSBFeGFtcGxlc1xuXG4jIyMgVW5vcmRlcmVkXG5cbmBgYGh0bWxfZXhhbXBsZV90YWJsZVxuPHVsIGNsYXNzPVwiYS1saXN0XCI+XG5cdDxsaSBjbGFzcz1cImEtbGlzdF9faXRlbVwiPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0PC9saT5cblx0PGxpIGNsYXNzPVwiYS1saXN0X19pdGVtXCI+Q29uc2VjdGV0dXIgYWRpcGlzY2luZyBlbGl0PC9saT5cblx0PGxpIGNsYXNzPVwiYS1saXN0X19pdGVtXCI+TnVsbGEgdm9sdXRwYXQgYWxpcXVhbSB2ZWxpdFxuXHRcdDx1bCBjbGFzcz1cImEtbGlzdFwiPlxuXHRcdFx0PGxpIGNsYXNzPVwiYS1saXN0X19pdGVtXCI+UGhhc2VsbHVzIGlhY3VsaXMgbmVxdWU8L2xpPlxuXHRcdFx0PGxpIGNsYXNzPVwiYS1saXN0X19pdGVtXCI+UHVydXMgc29kYWxlcyB1bHRyaWNpZXM8L2xpPlxuXHRcdFx0PGxpIGNsYXNzPVwiYS1saXN0X19pdGVtXCI+VmVzdGlidWx1bSBsYW9yZWV0IHBvcnR0aXRvciBzZW08L2xpPlxuXHRcdFx0PGxpIGNsYXNzPVwiYS1saXN0X19pdGVtXCI+QWMgdHJpc3RpcXVlIGxpYmVybyB2b2x1dHBhdCBhdDwvbGk+XG5cdFx0PC91bD5cblx0PC9saT5cblx0PGxpIGNsYXNzPVwiYS1saXN0X19pdGVtXCI+RmF1Y2lidXMgcG9ydGEgbGFjdXMgZnJpbmdpbGxhIHZlbDwvbGk+XG48L3VsPlxuYGBgXG5cbiMjIyBPcmRlcmVkXG5cbmBgYGh0bWxfZXhhbXBsZV90YWJsZVxuPG9sIGNsYXNzPVwiYS1saXN0XCI+XG5cdDxsaSBjbGFzcz1cImEtbGlzdF9faXRlbVwiPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0PC9saT5cblx0PGxpIGNsYXNzPVwiYS1saXN0X19pdGVtXCI+Q29uc2VjdGV0dXIgYWRpcGlzY2luZyBlbGl0PC9saT5cblx0PGxpIGNsYXNzPVwiYS1saXN0X19pdGVtXCI+TnVsbGEgdm9sdXRwYXQgYWxpcXVhbSB2ZWxpdFxuXHRcdDxvbCBjbGFzcz1cImEtbGlzdFwiPlxuXHRcdFx0PGxpIGNsYXNzPVwiYS1saXN0X19pdGVtXCI+UGhhc2VsbHVzIGlhY3VsaXMgbmVxdWU8L2xpPlxuXHRcdFx0PGxpIGNsYXNzPVwiYS1saXN0X19pdGVtXCI+UHVydXMgc29kYWxlcyB1bHRyaWNpZXM8L2xpPlxuXHRcdFx0PGxpIGNsYXNzPVwiYS1saXN0X19pdGVtXCI+VmVzdGlidWx1bSBsYW9yZWV0IHBvcnR0aXRvciBzZW08L2xpPlxuXHRcdFx0PGxpIGNsYXNzPVwiYS1saXN0X19pdGVtXCI+QWMgdHJpc3RpcXVlIGxpYmVybyB2b2x1dHBhdCBhdDwvbGk+XG5cdFx0PC9vbD5cblx0PC9saT5cblx0PGxpIGNsYXNzPVwiYS1saXN0X19pdGVtXCI+RmF1Y2lidXMgcG9ydGEgbGFjdXMgZnJpbmdpbGxhIHZlbDwvbGk+XG48L29sPlxuYGBgXG4jIyMgVmFyaWF0aW9uc1xuXG4jIyMjIERpdmlkZXJcblxuQWRkIGxpbmVzIGJldHdlZW4gbGlzdCBpdGVtcy4gVXNlZCBwcmltYXJpbHkgaW4gbmF2aWdhdGlvbmFsIGVsZW1lbnRzLCBzdWNoIGFzIGEgcmVsYXRlZCBjb250ZW50IHNpZGViYXIuXG5cbmBgYGh0bWxfZXhhbXBsZV90YWJsZVxuPHVsIGNsYXNzPVwiYS1saXN0ICBhLWxpc3QtLWRpdmlkZXJcIj5cblx0PGxpIGNsYXNzPVwiYS1saXN0X19pdGVtXCI+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ8L2xpPlxuXHQ8bGkgY2xhc3M9XCJhLWxpc3RfX2l0ZW1cIj5Db25zZWN0ZXR1ciBhZGlwaXNjaW5nIGVsaXQ8L2xpPlxuXHQ8bGkgY2xhc3M9XCJhLWxpc3RfX2l0ZW1cIj5GYXVjaWJ1cyBwb3J0YSBsYWN1cyBmcmluZ2lsbGEgdmVsPC9saT5cbjwvdWw+XG5gYGBcblxuIyMjIFVuLXN0eWxlZFxuXG5BcHBseWluZyBgLmEtbGlzdC0tdW5zdHlsZWRgIHRvIGEgbGlzdCB3aWxsIHJlbW92ZSB0aGUgYnVsbGV0IHBvaW50cy5cblxuWW91IGNhbiByZW1vdmUgYnVsbGV0IHBvaW50cyBvbiBpbmRpdmlkdWFsIGl0ZW1zIGJ5IGFkZGluZyB0aGUgYC5hLWxpc3RfX2l0ZW0tLXVuc3R5bGVkYCBtb2RpZmllci5cblxuYGBgaHRtbF9leGFtcGxlX3RhYmxlXG48dWwgY2xhc3M9XCJhLWxpc3QgIGEtbGlzdC0tdW5zdHlsZWRcIj5cblx0PGxpIGNsYXNzPVwiYS1saXN0X19pdGVtXCI+PHN0cm9uZz5JJ20gYW4gdW5zdHlsZWQgbGlzdDwvc3Ryb25nPjwvbGk+XG5cdDxsaSBjbGFzcz1cImEtbGlzdF9faXRlbVwiPkNvbnNlY3RldHVyIGFkaXBpc2NpbmcgZWxpdDwvbGk+XG5cdDxsaSBjbGFzcz1cImEtbGlzdF9faXRlbVwiPk51bGxhIHZvbHV0cGF0IGFsaXF1YW0gdmVsaXRcblx0XHQ8dWwgY2xhc3M9XCJhLWxpc3RcIj4gPCEtLSBIYXMgYnVsbGV0IHBvaW50cy0tPlxuXHRcdFx0PGxpIGNsYXNzPVwiYS1saXN0X19pdGVtXCI+UGhhc2VsbHVzIGlhY3VsaXMgbmVxdWU8L2xpPlxuXHRcdFx0PGxpIGNsYXNzPVwiYS1saXN0X19pdGVtXCI+UHVydXMgc29kYWxlcyB1bHRyaWNpZXM8L2xpPlxuXHRcdFx0PGxpIGNsYXNzPVwiYS1saXN0X19pdGVtICBhLWxpc3RfX2l0ZW0tLXVuc3R5bGVkXCI+PHN0cm9uZz5JJ20gYW4gdW5zdHlsZWQgaXRlbTwvc3Ryb25nPjwvbGk+XG5cdFx0XHQ8bGkgY2xhc3M9XCJhLWxpc3RfX2l0ZW1cIj5BYyB0cmlzdGlxdWUgbGliZXJvIHZvbHV0cGF0IGF0PC9saT5cblx0XHQ8L3VsPlxuXHQ8L2xpPlxuXHQ8bGkgY2xhc3M9XCJhLWxpc3RfX2l0ZW1cIj5GYXVjaWJ1cyBwb3J0YSBsYWN1cyBmcmluZ2lsbGEgdmVsPC9saT5cbjwvdWw+XG5gYGBcblxuIyMjIElubGluZVxuXG5UbyBtYWtlIHlvdXIgbGlzdCBpdGVtcyBmbG93IGxlZnQgdG8gcmlnaHQgYXBwbHkgdGhlIGAuYS1saXN0LS1pbmxpbmVgIG1vZGlmaWVyLiBVc2Ugd2l0aCBzbWFsbCBsaXN0cyB3aXRoIGxvdy13b3JkIGNvdW50IGl0ZWFtcy5cblxuYGBgaHRtbF9leGFtcGxlX3RhYmxlXG48dWwgY2xhc3M9XCJhLWxpc3QgIGEtbGlzdC0taW5saW5lXCI+XG5cdDxsaSBjbGFzcz1cImEtbGlzdF9faXRlbVwiPkxvcmVtPC9saT5cblx0PGxpIGNsYXNzPVwiYS1saXN0X19pdGVtXCI+aXBzdW08L2xpPlxuXHQ8bGkgY2xhc3M9XCJhLWxpc3RfX2l0ZW1cIj5kb2xvcjwvbGk+XG48L3VsPlxuYGBgXG5cbiMjIEV4dGVybmFsIFJlc291cmNlc1xuXG4qIFtNRE4gRW50cnkgZm9yIHRoZSBVbm9yZGVyZWQgTGlzdCBFbGVtZW50XShodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9IVE1ML0VsZW1lbnQvdWwpXG4qIFtNRE4gRW50cnkgZm9yIHRoZSBPcmRlcmVkIExpc3QgRWxlbWVudF0oaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvSFRNTC9FbGVtZW50L29sKVxuKiBbTUROIEVudHJ5IGZvciB0aGUgTGlzdCBJdGVtIExpc3QgRWxlbWVudF0oaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvSFRNTC9FbGVtZW50L2xpKVxuXG4qKipcblxuKi9cbnVsLFxub2wsXG5kbCxcbi5hLWxpc3Qge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwIDAgMS41ZW07XG4gIHBhZGRpbmc6IDAgMCAwIDFlbTtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7IH1cblxudWwgdWwsXG51bCBvbCxcbm9sIG9sLFxub2wgdWwsXG4uYS1saXN0IC5hLWxpc3Qge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBwYWRkaW5nOiAwIDAgMCAxZW07IH1cblxudWwge1xuICBsaXN0LXN0eWxlLXR5cGU6IGRpc2M7IH1cbiAgdWwgdWwge1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogc3F1YXJlOyB9XG4gICAgdWwgdWwgdWwge1xuICAgICAgbGlzdC1zdHlsZS10eXBlOiBjaXJjbGU7IH1cblxub2wge1xuICBsaXN0LXN0eWxlLXR5cGU6IGRlY2ltYWw7IH1cbiAgb2wgb2wge1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogdXBwZXItYWxwaGE7IH1cbiAgICBvbCBvbCBvbCB7XG4gICAgICBsaXN0LXN0eWxlLXR5cGU6IGxvd2VyLXJvbWFuOyB9XG5cbmxpOjptYXJrZXIge1xuICBjb2xvcjogI2E2MTkyZTsgfVxuXG5kbCB7XG4gIG1hcmdpbi1sZWZ0OiAwOyB9XG5cbmR0IHtcbiAgZm9udC13ZWlnaHQ6IDUwMDsgfVxuXG5kZCB7XG4gIG1hcmdpbi1ib3R0b206IDEuNWVtOyB9XG5cbi5hLWxpc3QtLXVuc3R5bGVkLFxuLmEtbGlzdC0tb3JkZXJlZCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7IH1cblxuLmEtbGlzdC0taW5saW5lIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIHBhZGRpbmc6IDA7IH1cbiAgLmEtbGlzdC0taW5saW5lIC5hLWxpc3RfX2l0ZW0ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogYXV0bztcbiAgICBwYWRkaW5nLXJpZ2h0OiAxZW07IH1cbiAgLmEtbGlzdC0taW5saW5lOm5vdCguYS1saXN0LS11bnN0eWxlZCkgLmEtbGlzdF9faXRlbTpiZWZvcmUge1xuICAgIHBhZGRpbmc6IDAgMC41ZW0gMCAwO1xuICAgIGNvbnRlbnQ6IFwi4oCiXCI7IH1cblxuLmEtbGlzdC0tb3JkZXJlZCB7XG4gIGNvdW50ZXItcmVzZXQ6IG9yZGVyZWQ7IH1cbiAgLmEtbGlzdC0tb3JkZXJlZCAuYS1saXN0X19pdGVtOmJlZm9yZSB7XG4gICAgcGFkZGluZzogMCAwLjVlbSAwIDA7XG4gICAgY29udGVudDogY291bnRlcnMob3JkZXJlZCwgXCIuXCIpIFwiIFwiO1xuICAgIGNvdW50ZXItaW5jcmVtZW50OiBvcmRlcmVkOyB9XG5cbi5hLWxpc3QtLWRpdmlkZXIge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nLWxlZnQ6IDA7IH1cblxuLmEtbGlzdC0tZGl2aWRlciA+IGxpOm50aC1jaGlsZChuKzIpIHtcbiAgbWFyZ2luLXRvcDogMC41ZW07XG4gIHBhZGRpbmctdG9wOiAwLjVlbTtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNhZGFmYjE7IH1cblxuLmEtbGlzdF9faXRlbSB7XG4gIHBhZGRpbmc6IDA7IH1cblxuLmEtbGlzdF9faXRlbS0tdW5zdHlsZWQge1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7IH1cblxuLypkb2Ncbi0tLVxudGl0bGU6IE92ZXJsYXlzXG5uYW1lOiBvdmVybGF5c1xuY2F0ZWdvcnk6IEF0b21zXG4tLS1cbipMYXN0IFVwZGF0ZWQ6IEF1Z3VzdCAyMywgMjAxOCpcblxuT3ZlcmxheXMgYXJlIHVzZWQgdG8gYmxhY2tvdXQgdGhlIGJhY2tncm91bmQgY29udGV4dCBvZiB0aGUgcGFnZS5cblxuIyMgVXNlXG5cbk92ZXJsYXlzIGFyZSBvbmx5IHVzZWQgb24gb3VyIHNpdGVzIGluIGNvbmp1bmN0aW9uIHdpdGggdGhlIG1vZGFsIG1vbGVjdWxlLiBCZWNhdXNlIG92ZXJsYXlzLCBlc3BlY2lhbGx5IGZ1bGwtcGFnZSBvbmVzLCBkaXNydXB0IGEgdXNlcidzIGZsb3cgdXNlIGp1ZGljaW91c2x5LiBVc2Ugd2hlbiB0aGUgdXNlcidzIGF0dGVudGlvbiBvbiB0aGUgbW9kYWwgaXMgZXNzZW50aWFsIHRvIGhpbS9oZXIgYWNjb21wbGlzaGluZyBoaXMvaGVyIGdvYWwuXG5cblRvIGNvbnRhaW4gYW4gb3ZlcmxheSB3aXRoaW4gYW4gZWxlbWVudCBzZXQgdGhlIHBhcmVudCBlbGVtZW50IENTUyB0byBgcG9zaXRpb246IHJlbGF0aXZlO2BcblxuPGZpZ3VyZSBjbGFzcz1cImEtZmlndXJlLS1kc1wiPlxuXHQ8aW1nIHNyYz1cIi4uL2ltYWdlcy9wYXR0ZXJuLWxpYnJhcnkvbW9sZWN1bGVzL21vZGFsLmpwZ1wiIGFsdD1cIkV4YW1wbGUgb2YgYSBmdWxsLXBhZ2Ugb3ZlcmxheSB1c2VkIGluIGEgbW9kYWxcIi8+XG5cdDxmaWdjYXB0aW9uPkZpZyAxOiBFeGFtcGxlIGEgZnVsbC1wYWdlIG92ZXJsYXkgdXNlZCBpbiBhIG1vZGFsPC9maWdjYXB0aW9uPlxuPC9maWd1cmU+XG5cbiMjIENvZGUgRXhhbXBsZXNcblxuYGBgaHRtbF9leGFtcGxlX3RhYmxlXG48ZGl2IGNsYXNzPVwidS1iZy1ibGFjayAgdS1wYWRkaW5nLS1tZWRpdW1cIiBzdHlsZT1cInBvc2l0aW9uOnJlbGF0aXZlO1wiPlxuXHQ8ZGl2IGNsYXNzPVwiYS1vdmVybGF5XCI+PC9kaXY+XG48L2Rpdj5cbmBgYFxuXG4jIyMgRGlzbWlzc2FibGVcblxuRGlzbWlzc2FibGUgb3ZlcmxheXMgY2hhbmdlIHRoZSBtb3VzZSBjdXJzb3IgdG8gYSBoYW5kIG9uIG1vdXNlb3Zlci5cblxuYGBgaHRtbF9leGFtcGxlX3RhYmxlXG48ZGl2IGNsYXNzPVwidS1iZy1ibGFjayAgdS1wYWRkaW5nLS1tZWRpdW1cIiBzdHlsZT1cInBvc2l0aW9uOnJlbGF0aXZlO1wiPlxuXHQ8ZGl2IGNsYXNzPVwiYS1vdmVybGF5ICBhLW92ZXJsYXktLWRpc21pc3NhYmxlXCI+PC9kaXY+XG48L2Rpdj5cbmBgYFxuXG4jIyMgVHJhbnNwYXJlbnRcblxuT3ZlcmxheXMgZG9uJ3QgbmVjZXNzYXJpbHkgbmVlZCB0byBiZSB2aXNpYmxlLCB0aGV5IGNhbiBhcHBlYXIgdHJhbnNwYXJlbnQgdG8gcHJvdmlkZSBmdW5jdGlvbmFsaXR5IGJ1dCBubyB2aXN1YWwgY3Vlcy4gSWYgc28gdXNlIHRoZSBgYS1vdmVybGF5LS10cmFuc3BhcmVudGAgbW9kaWZpZXIuIFxuXG5gYGBodG1sX2V4YW1wbGVfdGFibGVcbjxkaXYgY2xhc3M9XCJ1LWJnLWJsYWNrICB1LXBhZGRpbmctLW1lZGl1bVwiIHN0eWxlPVwicG9zaXRpb246cmVsYXRpdmU7XCI+XG5cdDxkaXYgY2xhc3M9XCJhLW92ZXJsYXkgIGEtb3ZlcmxheS0tdHJhbnNwYXJlbnRcIj48L2Rpdj5cbjwvZGl2PlxuYGBgXG5cbiMjIyBXaGl0ZVxuXG5UaGUgYGEtb3ZlcmxheS0td2hpdGVgIGNsYXNzIHdpbGwgbWFrZSB0aGUgb3ZlcmxheSBhIHRyYW5zcGFyZW50IHdoaXRlIGNvbG9yLlxuXG5gYGBodG1sX2V4YW1wbGVfdGFibGVcbjxkaXYgY2xhc3M9XCJ1LWJnLWJsYWNrICB1LXBhZGRpbmctLW1lZGl1bVwiIHN0eWxlPVwicG9zaXRpb246cmVsYXRpdmU7XCI+XG5cdDxkaXYgY2xhc3M9XCJhLW92ZXJsYXkgIGEtb3ZlcmxheS0td2hpdGVcIj48L2Rpdj5cbjwvZGl2PlxuYGBgXG5cbiMjIyBGdWxsIFBhZ2VcblxuWW91IGNhbiBtYWtlIG92ZXJsYXlzIGNvdmVyIHRoZSBlbnRpcmUgcGFnZSBieSBhZGRpbmcgdGhlIGBhLW92ZXJsYXktLWZ1bGxwYWdlYCBtb2RpZmllci4gVGhlIG92ZXJsYXkgd2lsbCByZW1haW4gaW4gYSBmaXhlZCBwb3NpdGlvbiBiZWhpbmQgdGhlIGNvbnRlbnQgeW91IHdhbnQgdG8gcHJvbW90ZS5cblxuKioqXG5cbiovXG4uYS1vdmVybGF5IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG4gIHotaW5kZXg6IDUwMDsgfVxuXG4uYS1vdmVybGF5LS1mdWxscGFnZSB7XG4gIHBhZGRpbmctdG9wOiA1ZW07XG4gIHBvc2l0aW9uOiBmaXhlZDsgfVxuXG4uYS1vdmVybGF5LS10cmFuc3BhcmVudCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi5hLW92ZXJsYXktLXdoaXRlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpOyB9XG5cbi5hLW92ZXJsYXktLWRpc21pc3NhYmxlIHtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbi8qZG9jXG4tLS1cbnRpdGxlOiBQcm9ncmVzc1xubmFtZTogcHJvZ3Jlc3NcbmNhdGVnb3J5OiBBdG9tc1xuLS0tXG4qTGFzdCBVcGRhdGVkOiBBdWd1c3QgMjMsIDIwMTgqXG5cblByb2dyZXNzIGJhcnMgYXJlIHVzZWQgdG8gaGVscCBzZXQgdXNlciBleHBlY3RhdGlvbnMgb24gaG93IGxvbmcgYSBjZXJ0YWluIHRhc2sgd2lsbCB0YWtlIGFuZCB3aGVyZSBoZS9zaGUgaXMgaW4gdGhlIHByb2Nlc3MuXG5cbiMjIFVzZVxuXG5UaGVzZSBhcmUgcHJpbWFyeSB1c2VkIGluIG9uZS10aGluZy1hdC1hLXRpbWUgZm9ybXMsIHdoZXJlIHRoZSBmb3JtIGlzIGJyb2tlbiB1cCBpbnRvIGluZGl2aWR1YWwgY2h1bmtzIHRvIGltcHJvdmUgdGhlIG92ZXJhbGwgY29tcGxldGlvbiByYXRlIG9mIHRoZSBmb3JtLiBTaG91bGQgbm90IGJlIHVzZWQgYXMgYW4gKiplc3RpbWF0ZSoqIG9mIGhvdyBtdWNoIHRoZSB1c2VyIGhhcyByZW1haW5pbmcsIGJ1dCByYXRoZXIgYXMgYW4gZXhhY3QgbnVtYmVyLlxuXG5Vc2UgdGhlIGBzdHlsZT1cIndpZHRoOjAwJVwiYCBhdHRyaWJ1dGUsIHVzaW5nIHdpZHRoIHRvIHNldCB0aGUgXCJwZXJjZW50YWdlXCIgcmVtYWluaW5nLiBUaGUgdGV4dCBvdmVybGFpZCBvbiB0aGUgcHJvZ3Jlc3MgYmFyIGlzIHBsYWNlZCB3aXRoaW4gdGhlIHNhbWUgYDxkaXY+YCB0aGF0IGhhcyBzYWlkIHN0eWxlIGF0dHJpYnV0ZS5cblxuPGZpZ3VyZSBjbGFzcz1cImEtZmlndXJlLS1kc1wiPlxuXHQ8aW1nIHNyYz1cIi4uL2ltYWdlcy9wYXR0ZXJuLWxpYnJhcnkvYXRvbXMvcHJvZ3Jlc3MucG5nXCIgYWx0PVwiRXhhbXBsZSBvZiBhIHByb2dyZXNzIGJhciB1c2VkIGluIGEgb25lLXRoaW5nLWF0LWEtdGltZSBmb3JtIHVzZWQgb24gdGhlIFZpcnR1YWwgVmlzaXRzIHNpdGVcIi8+XG5cdDxmaWdjYXB0aW9uPkZpZyAxOiBFeGFtcGxlIG9mIGEgcHJvZ3Jlc3MgYmFyIHVzZWQgaW4gYSBvbmUtdGhpbmctYXQtYS10aW1lIGZvcm0gdXNlZCBvbiB0aGUgVmlydHVhbCBWaXNpdHMgc2l0ZTwvZmlnY2FwdGlvbj5cbjwvZmlndXJlPlxuXG4jIyBDb2RlIEV4YW1wbGVzXG5cbmBgYGh0bWxfZXhhbXBsZVxuPGRpdiBjbGFzcz1cImEtcHJvZ3Jlc3MgdS1zcGFjZS1ib3R0b20tLXNtYWxsXCI+XG5cdDxkaXYgY2xhc3M9XCJhLXByb2dyZXNzX19iYXJcIiBzdHlsZT1cIndpZHRoOjE1JTtcIj48L2Rpdj5cbjwvZGl2PlxuYGBgXG5cbiMjIyBSb3VuZGVkXG5cbmBgYGh0bWxfZXhhbXBsZVxuPGRpdiBjbGFzcz1cImEtcHJvZ3Jlc3MgIGEtcHJvZ3Jlc3MtLXJvdW5kZWQgdS1zcGFjZS1ib3R0b20tLXNtYWxsXCI+XG5cdDxkaXYgY2xhc3M9XCJhLXByb2dyZXNzX19iYXJcIiBzdHlsZT1cIndpZHRoOjE1JTtcIj48L2Rpdj5cbjwvZGl2PlxuYGBgXG5cbiMjIyBDb2xvcnNcblxuYGBgaHRtbF9leGFtcGxlXG48ZGl2IGNsYXNzPVwiYS1wcm9ncmVzcyB1LXNwYWNlLWJvdHRvbS0tc21hbGxcIj5cblx0PGRpdiBjbGFzcz1cImEtcHJvZ3Jlc3NfX2JhciAgYS1wcm9ncmVzc19fYmFyLS1icmFuZFwiIHN0eWxlPVwid2lkdGg6MTUlO1wiPjwvZGl2PlxuPC9kaXY+XG5gYGBcblxuIyMjIFNpemVzXG5cbmBgYGh0bWxfZXhhbXBsZV90YWJsZVxuPGRpdiBjbGFzcz1cImEtcHJvZ3Jlc3MgIHUteHNtYWxsXCI+XG5cdDxkaXYgY2xhc3M9XCJhLXByb2dyZXNzX19iYXJcIiBzdHlsZT1cIndpZHRoOjUlO1wiPjUlPC9kaXY+XG48L2Rpdj48YnI+XG48ZGl2IGNsYXNzPVwiYS1wcm9ncmVzcyAgdS1zbWFsbFwiPlxuXHQ8ZGl2IGNsYXNzPVwiYS1wcm9ncmVzc19fYmFyXCIgc3R5bGU9XCJ3aWR0aDoxNSU7XCI+MTUlPC9kaXY+XG48L2Rpdj48YnI+XG48ZGl2IGNsYXNzPVwiYS1wcm9ncmVzcyAgdS1tZWRpdW1cIj5cblx0PGRpdiBjbGFzcz1cImEtcHJvZ3Jlc3NfX2JhclwiIHN0eWxlPVwid2lkdGg6MjAlO1wiPjIwJTwvZGl2PlxuPC9kaXY+PGJyPlxuPGRpdiBjbGFzcz1cImEtcHJvZ3Jlc3MgIHUtbGFyZ2VcIj5cblx0PGRpdiBjbGFzcz1cImEtcHJvZ3Jlc3NfX2JhclwiIHN0eWxlPVwid2lkdGg6MjUlO1wiPjI1JTwvZGl2PlxuPC9kaXY+PGJyPlxuPGRpdiBjbGFzcz1cImEtcHJvZ3Jlc3MgIHUteGxhcmdlXCI+XG5cdDxkaXYgY2xhc3M9XCJhLXByb2dyZXNzX19iYXJcIiBzdHlsZT1cIndpZHRoOjQ1JTtcIj40NSU8L2Rpdj5cbjwvZGl2Pjxicj5cbjxkaXYgY2xhc3M9XCJhLXByb2dyZXNzICB1LXN1cGVyXCI+XG5cdDxkaXYgY2xhc3M9XCJhLXByb2dyZXNzX19iYXJcIiBzdHlsZT1cIndpZHRoOjY1JTtcIj42NSU8L2Rpdj5cbjwvZGl2PlxuYGBgXG5cbioqKlxuXG4qL1xuLmEtcHJvZ3Jlc3Mge1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2M3YzhjYTtcbiAgY29sb3I6ICNGRkY7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgfVxuXG4uYS1wcm9ncmVzcy0tcm91bmRlZCB7XG4gIGJvcmRlci1yYWRpdXM6IDMwZW07IH1cblxuLmEtcHJvZ3Jlc3NfX2JhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3OTdiN2Y7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogbGVmdDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuXG4uYS1wcm9ncmVzc19fYmFyOmFmdGVyIHtcbiAgY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIGNvbnRlbnQ6IFwiLVwiOyB9XG5cbi5hLXByb2dyZXNzX19iYXItLWJyYW5kIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2E2MTkyZTsgfVxuXG4vKmRvY1xuLS0tXG50aXRsZTogU29jaWFsIFNoYXJlIEtpdFxubmFtZTogc3NrXG5jYXRlZ29yeTogQXRvbXNcbi0tLVxuKkxhc3QgVXBkYXRlZDogQXVndXN0IDIzLCAyMDE4KlxuXG5Tb2NpYWwgU2hhcmUgS2l0IGlzIGEgbGlicmFyeSBvZiBkZWNlbnQgYW5kIGdvb2QgbG9va2luZyBDU1MvSmF2YVNjcmlwdCBzb2NpYWwgc2hhcmluZyB0b29scyBsaWtlIHNvY2lhbCBuZXR3b3JrIGljb25zLCBzaGFyZSBidXR0b25zLCBzaGFyZSBjb3VudCwgZmxvYXRpbmcvc3RpY2t5IGJ1dHRvbiBiYXIgYW5kIHBvcHVwcy5cblxuIyMgVXNlICYgQ29kZSBFeGFtcGxlc1xuXG5JbiBvcmRlciBmb3IgdGhlIGJ1dHRvbnMgdG8gd29yaywgdGhlc2UgQ1NTIGFuZCBKUyBmaWxlcyBtdXN0IGJlIGluY2x1ZGVkIG9uIHRoZSBwYWdlLlxuXG5gYGBodG1sX2V4YW1wbGVcbjxsaW5rIGhyZWY9XCJodHRwczovL2NkbmpzLmNsb3VkZmxhcmUuY29tL2FqYXgvbGlicy9zb2NpYWwtc2hhcmUta2l0LzEuMC4xMy9jc3Mvc29jaWFsLXNoYXJlLWtpdC5jc3NcIiBtZWRpYT1cImFsbFwiIHJlbD1cInN0eWxlc2hlZXRcIiB0eXBlPVwidGV4dC9jc3NcIiAvPlxuPHNjcmlwdCB0eXBlPVwidGV4dC9qYXZhc2NyaXB0XCIgc3JjPVwiaHR0cHM6Ly9jZG5qcy5jbG91ZGZsYXJlLmNvbS9hamF4L2xpYnMvc29jaWFsLXNoYXJlLWtpdC8xLjAuMTMvanMvc29jaWFsLXNoYXJlLWtpdC5taW4uanNcIj48L3NjcmlwdD5cbjxzY3JpcHQgdHlwZT1cInRleHQvamF2YXNjcmlwdFwiPlxuU29jaWFsU2hhcmVLaXQuaW5pdCgpO1xuPC9zY3JpcHQ+XG5gYGBcblxuVGhlbiB0aGUgZm9sbG93aW5nIGNvZGUgY2FuIGJlIHVzZWQgdG8gaGF2ZSBzb2NpYWwgYnV0dG9ucy5cblxuYGBgaHRtbF9leGFtcGxlX3RhYmxlXG48ZGl2IGNsYXNzPVwic3NrLWdyb3VwIHNzay14cyBhLXNza1wiPlxuICAgIDxhIGhyZWY9XCJcIiBjbGFzcz1cInNzayBzc2stZmFjZWJvb2tcIj48L2E+XG4gICAgPGEgaHJlZj1cIlwiIGNsYXNzPVwic3NrIHNzay10d2l0dGVyXCI+PC9hPlxuICAgIDxhIGhyZWY9XCJcIiBjbGFzcz1cInNzayBzc2stZ29vZ2xlLXBsdXNcIj48L2E+XG4gICAgPGEgaHJlZj1cIlwiIGNsYXNzPVwic3NrIHNzay1waW50ZXJlc3RcIj48L2E+XG48L2Rpdj5cbmBgYFxuXG4jIyMgQWxpZ25tZW50XG5cbkJ1dHRvbiBhbGlnbm1lbnRzIGNhbiBiZSBjaGFuZ2VkIHdpdGggdGhlIGZvbGxvd2luZyBtb2RpZmllcnM6IGBhLXNzay0tY2VudGVyYCwgYGEtc3NrLS1sZWZ0YCwgYGEtc3NrLS1yaWdodGAuXG5cbmBgYGh0bWxfZXhhbXBsZV90YWJsZVxuPGRpdiBjbGFzcz1cInNzay1ncm91cCAgc3NrLXhzICBhLXNzayAgYS1zc2stLWNlbnRlclwiPlxuICAgIDxhIGhyZWY9XCJcIiBjbGFzcz1cInNzayBzc2stZmFjZWJvb2tcIj48L2E+XG4gICAgPGEgaHJlZj1cIlwiIGNsYXNzPVwic3NrIHNzay10d2l0dGVyXCI+PC9hPlxuPC9kaXY+XG5gYGBcblxuYGBgaHRtbF9leGFtcGxlX3RhYmxlXG48ZGl2IGNsYXNzPVwic3NrLWdyb3VwICBzc2steHMgIGEtc3NrICBhLXNzay0tcmlnaHRcIj5cbiAgICA8YSBocmVmPVwiXCIgY2xhc3M9XCJzc2sgc3NrLWZhY2Vib29rXCI+PC9hPlxuICAgIDxhIGhyZWY9XCJcIiBjbGFzcz1cInNzayBzc2stdHdpdHRlclwiPjwvYT5cbjwvZGl2PlxuYGBgXG5cbiMjIEV4dGVybmFsIFJlc291cmNlc1xuXG4qIEZvciBtb3JlIGluZm9ybWF0aW9uLCB2aXNpdCB0aGUgW1NvY2lhbCBTaGFyZSBLaXQgc2l0ZV0oaHR0cDovL3NvY2lhbHNoYXJla2l0LmNvbS8pLlxuXG4qKipcblxuKi9cbi5hLXNzayB7XG4gIGRpc3BsYXk6IGZsZXg7IH1cblxuLyoqXG4gKiBWZXJ0aWNhbFxuICovXG4uYS1zc2stLXZlcnRpY2FsIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuXG4vKipcbiAqIEFsaWduIEl0ZW1zXG4gKi9cbi5hLXNzay0tY2VudGVyIHtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cblxuLmEtc3NrLS1sZWZ0IHtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OyB9XG5cbi5hLXNzay0tcmlnaHQge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOyB9XG5cbi8qKlxuICogTGlua3NcbiAqL1xuLmEtc3NrIGEge1xuICBib3JkZXItYm90dG9tOiBub25lOyB9XG5cbi5hLXN0YXItcmF0aW5ncyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAuMmVtOyB9XG5cbi8qZG9jXG4tLS1cbnRpdGxlOiBUYWJsZXNcbm5hbWU6IHRhYmxlc1xuY2F0ZWdvcnk6IEF0b21zXG4tLS1cbipMYXN0IFVwZGF0ZWQ6IEF1Z3VzdCAyMywgMjAxOCpcblxuVGFibGVzIHNob3VsZCAqKm5ldmVyKiogYmUgdXNlZCBmb3IgbGF5b3V0LCBvbmx5IGZvciBkaXNwbGF5aW5nIHRhYnVsYXIgZGF0YS5cblxuIyMgQWNjZXNzaWJpbGl0eSBDb25zaWRlcmF0aW9uc1xuXG5Vc2UgdGhlIGA8Y2FwdGlvbj5gIHRhZyAobmVzdGVkIGFmdGVyIHRoZSBvcGVuaW5nIGA8dGFibGU+YCB0YWcsIGJ1dCBiZWZvcmUgYDx0Ym9keT5gKSB0byBhbm5vdW5jZSB0aGUgdGFibGUncyBwdXJwb3NlIHRvIHNjcmVlbiByZWFkZXIgdXNlcnMgc28gdGhleSBjYW4gbW9yZSBlYXNpbHkgZGVjaWRlIHdoZXRoZXIgdG8gc2tpcCB0aGUgZW50aXJlIHRhYmxlIG9yIG5vdC4gSW4gbW9zdCBjYXNlcywgaXQncyBhY2NlcHRhYmxlIHRvIHVzZSB0aGUgW3Zpc2liaWxpdHkgdXRpbGl0eSBjbGFzc2VzXVt2aXNpYmlsaXR5XSBgdS12aXN1YWxseWAgYW5kIGBoaWRkZW4gIHUtZm9jdXNhYmxlYCB0byBoaWRlIHRoZSBjYXB0aW9uIGZyb20gYWxsIHVzZXIgYWdlbnRzIGV4Y2VwdCBzY3JlZW4gcmVhZGVycy5cblxuIyMgVXNlXG5cblVzZSB0aGUgYDx0aGVhZD5gIHNlY3Rpb24gKHdoaWNoIHByZWNlZGVzIGA8dGJvZHk+YCkgdG8gZGVmaW5lIGVhY2ggY29sdW1ucyBoZWFkZXIgKHdoaWNoIHNob3VsZCBiZSBlbmNsb3NlZCBpbiBgPHRoPmAgdGFncywgbm90IGA8dGQ+YCkuXG5cbiMjIENvZGUgRXhhbXBsZXMgYW5kIFZhcmlhdGlvbnNcblxuYGBgaHRtbF9leGFtcGxlXG48dGFibGUgY2xhc3M9XCJhLXRhYmxlXCI+XG5cdDxjYXB0aW9uIGNsYXNzPVwiYS10YWJsZV9fY2FwdGlvblwiPkJhc2ljIHRhYmxlPC9jYXB0aW9uPlxuXHQ8dGhlYWQgY2xhc3M9XCJhLXRhYmxlX19oZWFkXCI+XG5cdFx0PHRyIGNsYXNzPVwiYS10YWJsZV9fcm93IGEtdGFibGVfX3Jvdy0taGVhZGluZ1wiPlxuXHRcdFx0PHRoIGNsYXNzPVwiYS10YWJsZV9fY2VsbFwiPkZpcnN0IG5hbWU8L3RoPlxuXHRcdFx0PHRoIGNsYXNzPVwiYS10YWJsZV9fY2VsbFwiPkxhc3QgbmFtZTwvdGg+XG5cdFx0XHQ8dGggY2xhc3M9XCJhLXRhYmxlX19jZWxsXCI+VXNlcm5hbWU8L3RoPlxuXHRcdDwvdHI+XG5cdDwvdGhlYWQ+XG5cdDx0Ym9keSBjbGFzcz1cImEtdGFibGVfX2JvZHlcIj5cblx0XHQ8dHIgY2xhc3M9XCJhLXRhYmxlX19yb3dcIj5cblx0XHRcdDx0ZCBjbGFzcz1cImEtdGFibGVfX2NlbGxcIj5KaW08L3RkPlxuXHRcdFx0PHRkIGNsYXNzPVwiYS10YWJsZV9fY2VsbFwiPktpcms8L3RkPlxuXHRcdFx0PHRkIGNsYXNzPVwiYS10YWJsZV9fY2VsbFwiPkBjYXB0YWluazwvdGQ+XG5cdFx0PC90cj5cblx0XHQ8dHIgY2xhc3M9XCJhLXRhYmxlX19yb3dcIj5cblx0XHRcdDx0ZCBjbGFzcz1cImEtdGFibGVfX2NlbGxcIj5Nci48L3RkPlxuXHRcdFx0PHRkIGNsYXNzPVwiYS10YWJsZV9fY2VsbFwiPlNwb2NrPC90ZD5cblx0XHRcdDx0ZCBjbGFzcz1cImEtdGFibGVfX2NlbGxcIj5Ac2NpZW5jZTEwMTwvdGQ+XG5cdFx0PC90cj5cblx0XHQ8dHIgY2xhc3M9XCJhLXRhYmxlX19yb3dcIj5cblx0XHRcdDx0ZCBjbGFzcz1cImEtdGFibGVfX2NlbGxcIj5OeW90YTwvdGQ+XG5cdFx0XHQ8dGQgY2xhc3M9XCJhLXRhYmxlX19jZWxsXCI+VWh1cmE8L3RkPlxuXHRcdFx0PHRkIGNsYXNzPVwiYS10YWJsZV9fY2VsbFwiPkBjb21tczwvdGQ+XG5cdFx0PC90cj5cblx0PC90Ym9keT5cbjwvdGFibGU+XG5gYGBcblxuIyMjIFN0cmlwZWRcblxuYGBgaHRtbF9leGFtcGxlXG48dGFibGUgY2xhc3M9XCJhLXRhYmxlIGEtdGFibGUtLXN0cmlwZWRcIj5cblx0PGNhcHRpb24gY2xhc3M9XCJhLXRhYmxlX19jYXB0aW9uXCI+U3RyaXBlZCByb3dzPC9jYXB0aW9uPlxuXHQ8dGhlYWQgY2xhc3M9XCJhLXRhYmxlX19oZWFkXCI+XG5cdFx0PHRyIGNsYXNzPVwiYS10YWJsZV9fcm93IGEtdGFibGVfX3Jvdy0taGVhZGluZ1wiPlxuXHRcdFx0PHRoIGNsYXNzPVwiYS10YWJsZV9fY2VsbFwiPkZpcnN0IG5hbWU8L3RoPlxuXHRcdFx0PHRoIGNsYXNzPVwiYS10YWJsZV9fY2VsbFwiPkxhc3QgbmFtZTwvdGg+XG5cdFx0XHQ8dGggY2xhc3M9XCJhLXRhYmxlX19jZWxsXCI+VXNlcm5hbWU8L3RoPlxuXHRcdDwvdHI+XG5cdDwvdGhlYWQ+XG5cdDx0Ym9keSBjbGFzcz1cImEtdGFibGVfX2JvZHlcIj5cblx0XHQ8dHIgY2xhc3M9XCJhLXRhYmxlX19yb3dcIj5cblx0XHRcdDx0ZCBjbGFzcz1cImEtdGFibGVfX2NlbGxcIj5KaW08L3RkPlxuXHRcdFx0PHRkIGNsYXNzPVwiYS10YWJsZV9fY2VsbFwiPktpcms8L3RkPlxuXHRcdFx0PHRkIGNsYXNzPVwiYS10YWJsZV9fY2VsbFwiPkBjYXB0YWluazwvdGQ+XG5cdFx0PC90cj5cblx0XHQ8dHIgY2xhc3M9XCJhLXRhYmxlX19yb3dcIj5cblx0XHRcdDx0ZCBjbGFzcz1cImEtdGFibGVfX2NlbGxcIj5Nci48L3RkPlxuXHRcdFx0PHRkIGNsYXNzPVwiYS10YWJsZV9fY2VsbFwiPlNwb2NrPC90ZD5cblx0XHRcdDx0ZCBjbGFzcz1cImEtdGFibGVfX2NlbGxcIj5Ac2NpZW5jZTEwMTwvdGQ+XG5cdFx0PC90cj5cblx0XHQ8dHIgY2xhc3M9XCJhLXRhYmxlX19yb3dcIj5cblx0XHRcdDx0ZCBjbGFzcz1cImEtdGFibGVfX2NlbGxcIj5OeW90YTwvdGQ+XG5cdFx0XHQ8dGQgY2xhc3M9XCJhLXRhYmxlX19jZWxsXCI+VWh1cmE8L3RkPlxuXHRcdFx0PHRkIGNsYXNzPVwiYS10YWJsZV9fY2VsbFwiPkBjb21tczwvdGQ+XG5cdFx0PC90cj5cblx0PC90Ym9keT5cbjwvdGFibGU+XG5gYGBcblxuIyMjIENvbmRlbnNlZFxuXG5gYGBodG1sX2V4YW1wbGVcbjx0YWJsZSBjbGFzcz1cImEtdGFibGUgYS10YWJsZS0tY29uZGVuc2VkXCI+XG5cdDxjYXB0aW9uIGNsYXNzPVwiYS10YWJsZV9fY2FwdGlvblwiPlNtYWxsIHRhYmxlIGFuZCB0ZXh0PC9jYXB0aW9uPlxuXHQ8dGhlYWQgY2xhc3M9XCJhLXRhYmxlX19oZWFkXCI+XG5cdFx0PHRyIGNsYXNzPVwiYS10YWJsZV9fcm93IGEtdGFibGVfX3Jvdy0taGVhZGluZ1wiPlxuXHRcdFx0PHRoIGNsYXNzPVwiYS10YWJsZV9fY2VsbFwiPkZpcnN0IG5hbWU8L3RoPlxuXHRcdFx0PHRoIGNsYXNzPVwiYS10YWJsZV9fY2VsbFwiPkxhc3QgbmFtZTwvdGg+XG5cdFx0XHQ8dGggY2xhc3M9XCJhLXRhYmxlX19jZWxsXCI+VXNlcm5hbWU8L3RoPlxuXHRcdDwvdHI+XG5cdDwvdGhlYWQ+XG5cdDx0Ym9keSBjbGFzcz1cImEtdGFibGVfX2JvZHlcIj5cblx0XHQ8dHIgY2xhc3M9XCJhLXRhYmxlX19yb3dcIj5cblx0XHRcdDx0ZCBjbGFzcz1cImEtdGFibGVfX2NlbGxcIj5KaW08L3RkPlxuXHRcdFx0PHRkIGNsYXNzPVwiYS10YWJsZV9fY2VsbFwiPktpcms8L3RkPlxuXHRcdFx0PHRkIGNsYXNzPVwiYS10YWJsZV9fY2VsbFwiPkBjYXB0YWluazwvdGQ+XG5cdFx0PC90cj5cblx0XHQ8dHIgY2xhc3M9XCJhLXRhYmxlX19yb3dcIj5cblx0XHRcdDx0ZCBjbGFzcz1cImEtdGFibGVfX2NlbGxcIj5Nci48L3RkPlxuXHRcdFx0PHRkIGNsYXNzPVwiYS10YWJsZV9fY2VsbFwiPlNwb2NrPC90ZD5cblx0XHRcdDx0ZCBjbGFzcz1cImEtdGFibGVfX2NlbGxcIj5Ac2NpZW5jZTEwMTwvdGQ+XG5cdFx0PC90cj5cblx0XHQ8dHIgY2xhc3M9XCJhLXRhYmxlX19yb3dcIj5cblx0XHRcdDx0ZCBjbGFzcz1cImEtdGFibGVfX2NlbGxcIj5OeW90YTwvdGQ+XG5cdFx0XHQ8dGQgY2xhc3M9XCJhLXRhYmxlX19jZWxsXCI+VWh1cmE8L3RkPlxuXHRcdFx0PHRkIGNsYXNzPVwiYS10YWJsZV9fY2VsbFwiPkBjb21tczwvdGQ+XG5cdFx0PC90cj5cblx0PC90Ym9keT5cbjwvdGFibGU+XG5gYGBcblxuIyMgRXh0ZXJuYWwgUmVzb3VyY2VzXG5cbiogW01ETiBFbnRyeSBmb3IgdGhlIFRhYmxlIEVsZW1lbnRdKGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0hUTUwvRWxlbWVudC90YWJsZSlcbiogW01ETiBFbnRyeSBmb3IgdGhlIFRhYmxlIEhlYWQgRWxlbWVudF0oaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvSFRNTC9FbGVtZW50L3RoZWFkKVxuKiBbTUROIEVudHJ5IGZvciB0aGUgVGFibGUgQm9keSBFbGVtZW50XShodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9IVE1ML0VsZW1lbnQvdGJvZHkpXG4qIFtNRE4gRW50cnkgZm9yIHRoZSBUYWJsZSBGb290IEVsZW1lbnRdKGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0hUTUwvRWxlbWVudC90Zm9vdClcbiogW01ETiBFbnRyeSBmb3IgdGhlIFRhYmxlIFJvdyBFbGVtZW50XShodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9IVE1ML0VsZW1lbnQvdHIpXG4qIFtNRE4gRW50cnkgZm9yIHRoZSBUYWJsZSBEYXRhIENlbGwgRWxlbWVudF0oaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvSFRNTC9FbGVtZW50L3RkKVxuKiBbTUROIEVudHJ5IGZvciB0aGUgVGFibGUgSGVhZGluZyBFbGVtZW50XShodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9IVE1ML0VsZW1lbnQvdGgpXG4qIFtNRE4gRW50cnkgZm9yIHRoZSBUYWJsZSBDYXB0aW9uIEVsZW1lbnRdKGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0hUTUwvRWxlbWVudC9jYXB0aW9uKVxuXG4qKipcblxuKi9cbnRhYmxlLFxuLmEtdGFibGUge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwIGF1dG8gMS41ZW07XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgYm9yZGVyLXNwYWNpbmc6IDA7IH1cblxuY2FwdGlvbixcbi5hLXRhYmxlX19jYXB0aW9uIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwLjVlbSAwO1xuICBjb2xvcjogIzc5N2I3ZjtcbiAgZm9udC1zaXplOiAwLjg3NWVtO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbnRoZWFkLFxudHIsXG50Ym9keSxcbi5hLXRhYmxlX19yb3csXG4uYS10YWJsZV9faGVhZCxcbi5hLXRhYmxlX19ib2R5IHtcbiAgbWF4LXdpZHRoOiAxMDAlOyB9XG5cbi5hLXRhYmxlLS1zdHJpcGVkIDpub3QoLmEtdGFibGVfX3Jvdy0taGVhZGluZykuYS10YWJsZV9fcm93Om50aC1vZi10eXBlKG9kZCkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjJGMkYyO1xuICBjb2xvcjogaW5pdGlhbDsgfVxuXG50ZCxcbi5hLXRhYmxlX19jZWxsIHtcbiAgcGFkZGluZzogMC41ZW07XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIG92ZXJmbG93OiBhdXRvOyB9XG5cbi5hLXRhYmxlX19jZWxsLS1taWRkbGUge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG5cbi5hLXRhYmxlX19jZWxsLS1ib3R0b20ge1xuICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tOyB9XG5cbnRoLFxuLmEtdGFibGVfX3Jvdy0taGVhZGluZyAuYS10YWJsZV9fY2VsbCB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjYWRhZmIxO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjJGMkYyO1xuICBjb2xvcjogaW5pdGlhbDtcbiAgZm9udC1zaXplOiAxZW07XG4gIGZvbnQtd2VpZ2h0OiA1MDA7IH1cblxuLmEtdGFibGUtLXN0cmlwZWQgLmEtdGFibGVfX3Jvdy0taGVhZGluZyAuYS10YWJsZV9fY2VsbCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkY7XG4gIGNvbG9yOiBpbml0aWFsOyB9XG5cbi5hLXRhYmxlLS1jbGlja2FibGUgOm5vdCguYS10YWJsZV9fcm93LS1oZWFkaW5nKS5hLXRhYmxlX19yb3c6aG92ZXIgLmEtdGFibGVfX2NlbGwsXG4uYS10YWJsZV9fcm93LS1jbGlja2FibGU6aG92ZXIgLmEtdGFibGVfX2NlbGwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBpbml0aWFsO1xuICBjb2xvcjogI2E2MTkyZTtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbi5hLXRhYmxlX19yb3ctLWRpc2FibGVkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogaW5pdGlhbDtcbiAgY29sb3I6ICM3OTdiN2Y7XG4gIGN1cnNvcjogZGVmYXVsdDsgfVxuXG4uYS10YWJsZS0tY2xpY2thYmxlIDpub3QoLmEtdGFibGVfX3Jvdy0taGVhZGluZykuYS10YWJsZV9fcm93LS1kaXNhYmxlZDpob3ZlciAuYS10YWJsZV9fY2VsbCxcbi5hLXRhYmxlX19yb3ctLWRpc2FibGVkOmhvdmVyIC5hLXRhYmxlX19jZWxsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogaW5pdGlhbDtcbiAgY29sb3I6ICM3OTdiN2Y7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cblxuLmEtdGFibGUtLWNvbmRlbnNlZCB7XG4gIGZvbnQtc2l6ZTogMC44NzVlbTsgfVxuICAuYS10YWJsZS0tY29uZGVuc2VkIC5hLXRhYmxlX19jZWxsIHtcbiAgICBwYWRkaW5nOiAwLjI1ZW07IH1cblxuLypkb2Ncbi0tLVxudGl0bGU6IFRvb2x0aXBzXG5uYW1lOiB0b29sdGlwc1xuY2F0ZWdvcnk6IEF0b21zXG4tLS1cbipMYXN0IFVwZGF0ZWQ6IEF1Z3VzdCAyMywgMjAxOCpcblxuPGZpZ3VyZSBjbGFzcz1cImEtZmlndXJlLS1kc19fYmFkIDEvMlwiPlxuXHQ8aW1nIHNyYz1cIi4uL2ltYWdlcy9wYXR0ZXJuLWxpYnJhcnkvYXRvbXMvYmFkLXRvb2wtdGlwLW1vYmlsZS5wbmdcIiBhbHQ9XCJXZSBuZWVkIHRvIHJldmlldyBob3cgdGhlc2UgYXJlIGRpc3BsYXllZCBvbiBtb2JpbGUhIVwiLz5cblx0PGZpZ2NhcHRpb24+PG1hcmsgY2xhc3M9XCJ1LWxhcmdlXCI+PHN0cm9uZz5XZSBuZWVkIHRvIHJldmlldyBob3cgdGhlc2UgYXJlIGRpc3BsYXllZCBvbiBtb2JpbGUhITwvc3Ryb25nPjwvbWFyaz48L2ZpZ2NhcHRpb24+XG48L2ZpZ3VyZT5cblxuUHJvdmlkZXMgc3VwcGxlbWVudGFyeSBpbmZvcm1hdGlvbiB3aXRob3V0IHJlbW92aW5nIHRoZSB1c2VyIGZyb20gdGhlIGZsb3cgb2YgdGhlIG1haW4gY29udGVudC5cblxuIyMgVXNlXG5cblRvb2x0aXBzIGFyZSBhY3RpdmF0ZWQgb24gaG92ZXIgaW4gZGVza3RvcCBicm93c2VycyBhbmQgb24gY2xpY2svdGFwIG9uIG1vYmlsZS5cblxuQSB0b29sdGlwJ3MgY29udGVudCBpcyBlbnRlcmVkIGluIHRoZSBgYXJpYS1sYWJlbGAgYXR0cmlidXRlIHdpdGhpbiB0aGUgYXNzb2NpYXRlZCBgPHNwYW4+YC5cblxuPGZpZ3VyZSBjbGFzcz1cImEtZmlndXJlLS1kc1wiPlxuXHQ8aW1nIHNyYz1cIi4uL2ltYWdlcy9wYXR0ZXJuLWxpYnJhcnkvYXRvbXMvdG9vbHRpcC5wbmdcIiBhbHQ9XCJFeGFtcGxlIG9mIHRvb2x0aXAgdXNlIGluIGEgZm9ybSwgb24gYSBkZXNrdG9wIGJyb3dzZXJcIi8+XG5cdDxmaWdjYXB0aW9uPkZpZyAxOiBFeGFtcGxlIG9mIHRvb2x0aXAgdXNlIGluIGEgZm9ybSwgb24gYSBkZXNrdG9wIGJyb3dzZXI8L2ZpZ2NhcHRpb24+XG48L2ZpZ3VyZT5cblxuIyMgQ29kZSBFeGFtcGxlc1xuXG4jIyMgSGludFxuXG5UaGUgaGludCBtb2RpZmllciBnaXZlcyB0ZXh0IGFuIGRvdHRlZCB1bmRlcmxpbmUgYW5kIHF1ZXN0aW9uIG1hcmsgY3Vyc29yIG9uIGhvdmVyLlxuXG5gYGBodG1sX2V4YW1wbGVfdGFibGVcbjxzcGFuIGNsYXNzPVwiYS10b29sdGlwICBhLXRvb2x0aXAtLXRvcCAgYS10b29sdGlwLS1oaW50XCIgYXJpYS1sYWJlbD1cIlRoaXMgaXMgYSB0b29sdGlwXCI+SG92ZXIgb3ZlciBtZS4uLjwvc3Bhbj5cbmBgYFxuXG5cbiMjIyBQb3NpdGlvblxuXG4jIyMjIFRvcFxuYGBgaHRtbF9leGFtcGxlX3RhYmxlXG48c3BhbiBjbGFzcz1cImEtdG9vbHRpcCAgYS10b29sdGlwLS10b3BcIiBhcmlhLWxhYmVsPVwiVGhpcyBpcyBhIHRvb2x0aXBcIj5Ib3ZlciBvdmVyIG1lLi4uPC9zcGFuPlxuYGBgXG5cbiMjIyMgUmlnaHRcbmBgYGh0bWxfZXhhbXBsZV90YWJsZVxuPHNwYW4gY2xhc3M9XCJhLXRvb2x0aXAgIGEtdG9vbHRpcC0tcmlnaHQgIGEtdG9vbHRpcC0taGludFwiIGFyaWEtbGFiZWw9XCJUaGlzIGlzIGEgdG9vbHRpcFwiPkhvdmVyIG92ZXIgbWUuLi48L3NwYW4+XG5gYGBcblxuIyMjIyBCb3R0b21cbmBgYGh0bWxfZXhhbXBsZV90YWJsZVxuPHNwYW4gY2xhc3M9XCJhLXRvb2x0aXAgIGEtdG9vbHRpcC0tYm90dG9tXCIgYXJpYS1sYWJlbD1cIlRoaXMgaXMgYSB0b29sdGlwXCI+SG92ZXIgb3ZlciBtZS4uLjwvc3Bhbj5cbmBgYFxuXG4jIyMjIExlZnRcbmBgYGh0bWxfZXhhbXBsZV90YWJsZVxuPHNwYW4gY2xhc3M9XCJhLXRvb2x0aXAgIGEtdG9vbHRpcC0tbGVmdFwiIGFyaWEtbGFiZWw9XCJUaGlzIGlzIGEgdG9vbHRpcFwiPkhvdmVyIG92ZXIgbWUuLi48L3NwYW4+XG5gYGBcblxuIyMjIFNpemVcblxuIyMjIyBTbWFsbFxuYGBgaHRtbF9leGFtcGxlX3RhYmxlXG48c3BhbiBjbGFzcz1cImEtdG9vbHRpcCAgYS10b29sdGlwLS10b3AgIGEtdG9vbHRpcC0tc21hbGxcIiBhcmlhLWxhYmVsPVwiSGkuXCI+SSdtIGEgc21hbGwgdG9vbHRpcDwvc3Bhbj5cbmBgYFxuXG4jIyMjIE1lZGl1bVxuYGBgaHRtbF9leGFtcGxlX3RhYmxlXG48c3BhbiBjbGFzcz1cImEtdG9vbHRpcCAgYS10b29sdGlwLS10b3AgIGEtdG9vbHRpcC0tbWVkaXVtXCIgYXJpYS1sYWJlbD1cIk5vdyB0aGF0J3MgYSBzdXBlciBiaWcgdGV4dCB3ZSBoYXZlIG92ZXIgaGVyZSByaWdodD8gTG9yZW0gaXBzdW0gZG9sb3Igc2l0IEknbSBkb25lLlwiPkknbSBhIG1lZGl1bSB0b29sdGlwPC9zcGFuPlxuYGBgXG5cbiMjIyMgTGFyZ2VcbmBgYGh0bWxfZXhhbXBsZV90YWJsZVxuPHNwYW4gY2xhc3M9XCJhLXRvb2x0aXAgIGEtdG9vbHRpcC0tdG9wICBhLXRvb2x0aXAtLWxhcmdlXCIgYXJpYS1sYWJlbD1cIldoYXQgYWJvdXQgc29tZXRoaW5nIHJlYWxseSBiaWc/IFRoaXMgbWF5IHN1cnBhc3MgeW91ciB3aW5kb3cgZGltZW5zaW9ucy4gSW1hZ2luZSB5b3UncmUgb24gdGhhdCBib3JpbmcgY2xhc3Mgd2l0aCB0aGF0IGJvcmluZyB0ZWFjaGVyIGFuZCB5b3UgZGlkbid0IHNsZXB0IHNvIHdlbGwgbGFzdCBuaWdodC4gU3VkZGVubHkgeW91J3JlIHNsZWVwaW5nIGluIGNsYXNzLiBDYW4geW91IGJlbGlldmUgaXQ/IVwiPkknbSBhIGxhcmdlIHRvb2x0aXA8L3NwYW4+XG5gYGBcblxuIyMjIyBYbGFyZ2VcbmBgYGh0bWxfZXhhbXBsZV90YWJsZVxuPHNwYW4gY2xhc3M9XCJhLXRvb2x0aXAgIGEtdG9vbHRpcC0tdG9wICBhLXRvb2x0aXAtLXhsYXJnZVwiIGFyaWEtbGFiZWw9XCJXaGF0IGFib3V0IHNvbWV0aGluZyByZWFsbHkgYmlnPyBUaGlzIG1heSBzdXJwYXNzIHlvdXIgd2luZG93IGRpbWVuc2lvbnMuIEltYWdpbmUgeW91J3JlIG9uIHRoYXQgYm9yaW5nIGNsYXNzIHdpdGggdGhhdCBib3JpbmcgdGVhY2hlciBhbmQgeW91IGRpZG4ndCBzbGVwdCBzbyB3ZWxsIGxhc3QgbmlnaHQuIFN1ZGRlbmx5IHlvdSdyZSBzbGVlcGluZyBpbiBjbGFzcy4gQ2FuIHlvdSBiZWxpZXZlIGl0PyFcIj5JJ20gYSB4bGFyZ2UgdG9vbHRpcDwvc3Bhbj5cbmBgYFxuXG4jIyMjIEZpdFxuYGBgaHRtbF9leGFtcGxlX3RhYmxlXG48c3BhbiBjbGFzcz1cImEtdG9vbHRpcCAgYS10b29sdGlwLS10b3AgIGEtdG9vbHRpcC0tZml0XCIgYXJpYS1sYWJlbD1cIldoYXQgYWJvdXQgc29tZXRoaW5nIHJlYWxseSBiaWc/IFRoaXMgbWF5IHN1cnBhc3MgeW91ciB3aW5kb3cgZGltZW5zaW9ucy4gSW1hZ2luZSB5b3UncmUgb24gdGhhdCBib3JpbmcgY2xhc3Mgd2l0aCB0aGF0IGJvcmluZyB0ZWFjaGVyIGFuZCB5b3UgZGlkbid0IHNsZXB0IHNvIHdlbGwgbGFzdCBuaWdodC4gU3VkZGVubHkgeW91J3JlIHNsZWVwaW5nIGluIGNsYXNzLiBDYW4geW91IGJlbGlldmUgaXQ/IVwiPlRoaXMgdG9vbHRpcCdzIHdpZHRoIHdpbGwgZml0IHRoZSBlbGVtZW50PC9zcGFuPlxuYGBgXG5cbioqKlxuXG4qL1xuLmEtdG9vbHRpcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IHZpc2libGU7IH1cbiAgLmEtdG9vbHRpcDpiZWZvcmUsIC5hLXRvb2x0aXA6YWZ0ZXIge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB6LWluZGV4OiAzMDA7IH1cbiAgLmEtdG9vbHRpcDpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3JkZXI6IDEwcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgY29udGVudDogXCJcIjsgfVxuICAuYS10b29sdGlwOmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcGFkZGluZzogLjI1ZW0gLjVlbTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjNDE0MDQyO1xuICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDE0MDQyO1xuICAgIGNvbG9yOiAjRkZGO1xuICAgIGZvbnQtc2l6ZTogbm9ybWFsO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjQ1O1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgY29udGVudDogYXR0cihhcmlhLWxhYmVsKTtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgZm9udC1zaXplOiBpbml0aWFsO1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIGZvbnQtd2VpZ2h0OiBpbml0aWFsO1xuICAgIGxldHRlci1zcGFjaW5nOiBpbml0aWFsOyB9XG4gIC5hLXRvb2x0aXA6aG92ZXI6YmVmb3JlLCAuYS10b29sdGlwOmhvdmVyOmFmdGVyIHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG5cbi5hLXRvb2x0aXAtLWhpbnQge1xuICBib3JkZXItYm90dG9tOiBkb3R0ZWQgMXB4ICM5Mzk1OTg7XG4gIGN1cnNvcjogaGVscDsgfVxuXG4uYS10b29sdGlwLS10b3A6YmVmb3JlIHtcbiAgYm90dG9tOiAxMDAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDApO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3A7XG4gIGJvcmRlci10b3AtY29sb3I6ICM0MTQwNDI7IH1cblxuLmEtdG9vbHRpcC0tdG9wOmFmdGVyIHtcbiAgYm90dG9tOiAxMDAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC0xNnB4KTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogdG9wOyB9XG5cbi5hLXRvb2x0aXAtLXJpZ2h0OmJlZm9yZSB7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiAxMDAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogdG9wO1xuICBib3JkZXItcmlnaHQtY29sb3I6ICM0MTQwNDI7IH1cblxuLmEtdG9vbHRpcC0tcmlnaHQ6YWZ0ZXIge1xuICB0b3A6IDUwJTtcbiAgbGVmdDogMTAwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMTZweCwgLTUwJSk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHRvcDsgfVxuXG4uYS10b29sdGlwLS1ib3R0b206YmVmb3JlIHtcbiAgdG9wOiAxMDAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDApO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3A7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6ICM0MTQwNDI7IH1cblxuLmEtdG9vbHRpcC0tYm90dG9tOmFmdGVyIHtcbiAgdG9wOiAxMDAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDFlbSk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHRvcDsgfVxuXG4uYS10b29sdGlwLS1sZWZ0OmJlZm9yZSB7XG4gIHRvcDogNTAlO1xuICByaWdodDogMTAwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHRvcDtcbiAgYm9yZGVyLWxlZnQtY29sb3I6ICM0MTQwNDI7IH1cblxuLmEtdG9vbHRpcC0tbGVmdDphZnRlciB7XG4gIHRvcDogNTAlO1xuICByaWdodDogMTAwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTE2cHgsIC01MCUpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3A7IH1cblxuLmEtdG9vbHRpcC0tc21hbGw6YWZ0ZXIge1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICB3aWR0aDogODBweDsgfVxuXG4uYS10b29sdGlwLS1tZWRpdW06YWZ0ZXIge1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICB3aWR0aDogMTUwcHg7IH1cblxuLmEtdG9vbHRpcC0tbGFyZ2U6YWZ0ZXIge1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICB3aWR0aDogMjYwcHg7IH1cblxuLmEtdG9vbHRpcC0teGxhcmdlOmFmdGVyIHtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgd2lkdGg6IDM4MHB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgLmEtdG9vbHRpcC0teGxhcmdlOmFmdGVyIHtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gICAgICB3aWR0aDogOTB2dzsgfSB9XG5cbi5hLXRvb2x0aXAtLWZpdDphZnRlciB7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi8qZG9jXG4tLS1cbnRpdGxlOiBUbyBUb3Bcbm5hbWU6IHRvdG9wXG5jYXRlZ29yeTogQXRvbXNcbi0tLVxuKkxhc3QgVXBkYXRlZDogSmFudWFyeSAzMSwgMjAxOCpcblxuVGhlIFwiQmFjayB0byB0b3BcIiBsaW5rIGFsbG93cyB1c2VycyB0byBzbW9vdGhseSBzY3JvbGwgYmFjayB0byB0aGUgdG9wIG9mIHRoZSBwYWdlLiBJdCdzIGEgbGl0dGxlIGRldGFpbCB3aGljaCBlbmhhbmNlcyBuYXZpZ2F0aW9uIGV4cGVyaWVuY2Ugb24gd2Vic2l0ZSB3aXRoIGxvbmcgcGFnZXMuXG5cbiovXG4uYS10b3RvcCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMTBweDtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBib3R0b206IDQwcHg7XG4gIHJpZ2h0OiAxMHB4O1xuICBib3gtc2hhZG93OiAwIDAgMTBweCByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuICAvKiBpbWFnZSByZXBsYWNlbWVudCBwcm9wZXJ0aWVzICovXG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhNjE5MmU7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAuM3MgMHMsIHZpc2liaWxpdHkgMHMgLjNzLCBiYWNrZ3JvdW5kLWNvbG9yIC4zcyAwcztcbiAgei1pbmRleDogNTAwO1xuICBjb2xvcjogd2hpdGU7XG4gIGJvcmRlcjogbm9uZTtcbiAgbGluZS1oZWlnaHQ6IDA7IH1cblxuLmEtdG90b3AuYS10b3RvcC0tc2hvdyxcbi5hLXRvdG9wLmEtdG90b3AtLWZhZGUtb3V0LFxuLmEtdG90b3A6aG92ZXIge1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4zcyAwcywgdmlzaWJpbGl0eSAwcyAwcywgYmFja2dyb3VuZC1jb2xvciAuM3MgMHM7IH1cblxuLmEtdG90b3AuYS10b3RvcC0tc2hvdyB7XG4gIC8qIHRoZSBidXR0b24gYmVjb21lcyB2aXNpYmxlICovXG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmEtdG90b3AuYS10b3RvcC0tZmFkZS1vdXQge1xuICAvKiBpZiB0aGUgdXNlciBrZWVwcyBzY3JvbGxpbmcgZG93biwgdGhlIGJ1dHRvbiBpcyBvdXQgb2YgZm9jdXMgYW5kIGJlY29tZXMgbGVzcyB2aXNpYmxlICovXG4gIG9wYWNpdHk6IC41OyB9XG5cbi5hLXRvdG9wOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2QyMjAzYTtcbiAgb3BhY2l0eTogMTtcbiAgY29sb3I6IHdoaXRlOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4cmVtKSB7XG4gIC5hLXRvdG9wIHtcbiAgICByaWdodDogMjBweDtcbiAgICBib3R0b206IDIwcHg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NHJlbSkge1xuICAuYS10b3RvcCB7XG4gICAgcGFkZGluZzogMjBweDtcbiAgICByaWdodDogMzBweDtcbiAgICBib3R0b206IDMwcHg7IH0gfVxuXG4vKmRvY1xuLS0tXG50aXRsZTogQWxpZ25tZW50XG5uYW1lOiBhbGlnbm1lbnRcbmNhdGVnb3J5OiBVdGlsaXRpZXNcbi0tLVxuXG5BbGlnbm1lbnQgdXRpbGl0aWVzIGFsbG93IGZvciBxdWljayByZXBvc2l0aW9uaW5nIG9mIGVsZW1lbnRzLlxuXG4jIyMgVGV4dCBBbGlnbm1lbnRcblxuYGBgaHRtbF9leGFtcGxlX3RhYmxlXG48cCBjbGFzcz1cInUtdGV4dC1hbGlnbi0tbGVmdFwiPkxlZnQ8L3A+XG5cbjxwIGNsYXNzPVwidS10ZXh0LWFsaWduLS1jZW50ZXJcIj5DZW50ZXI8L3A+XG5cbjxwIGNsYXNzPVwidS10ZXh0LWFsaWduLS1yaWdodFwiPlJpZ2h0PC9wPlxuXG48cCBjbGFzcz1cInUtdGV4dC1hbGlnbi0tanVzdGlmeVwiPkp1c3RpZnk8L3A+XG5gYGBcblxuSW4gYWRkaXRpb24sIGNsYXNzIHN1ZmZpeGVzIChgQHhzbWFsbGAsIGBAc21hbGxgLCBgQG1lZGl1bWAsIGBAbGFyZ2VgLCBgQHhsYXJnZWAsIGBAc3VwZXJgKSBjYW4gYmUgdXNlZCB0byBjaGFuZ2UgYWxpZ25tZW50IGJhc2VkIG9uIHZpZXdwb3J0IHdpZHRoLlxuXG5gYGBodG1sX2V4YW1wbGVcbjxwIGNsYXNzPVwidS10ZXh0LWFsaWduLS1sZWZ0QHNtYWxsICB1LXRleHQtYWxpZ24tLWNlbnRlckBtZWRpdW0gIHUtdGV4dC1hbGlnbi0tcmlnaHRAbGFyZ2VcIj5UaGlzIHNlbnRlbmNlIHdpbGwgY2hhbmdlIGFsaWdtZW50IGJhc2VkIG9uIHdpbmRvdyBzaXplLjwvcD5cbmBgYFxuXG4jIyMgRmxvYXRzXG5cbmB1LWZsb2F0LS1sZWZ0YCwgYHUtZmxvYXQtLWNlbnRlcmAsIGFuZCBgdS1mbG9hdC0tcmlnaHRgIGNsYXNzZXMgY2FuIGJlIHVzZWQgdG8gZmxvYXQgaXRlbXMuIEtlZXAgaW4gbWluZCB0aGVyZSBpcyBubyBzdWNoIHRoaW5nIGFzIGZsb2F0aW5nIHNvbWV0aGluZyB0byB0aGUgY2VudGVyLCB0aGF0IGNsYXNzIHNpbXBseSBzZXRzIHRoZSBsZWZ0IGFuZCByaWdodCBtYXJnaW4gdG8gYXV0by5cblxuYGBgaHRtbF9leGFtcGxlX3RhYmxlXG48aW1nIGNsYXNzPVwidS1mbG9hdC0tbGVmdFwiIHNyYz1cImh0dHBzOi8vcGxhY2Vob2xkLml0LzQweDQwXCIgYWx0PVwiXCIgLz5cblxuPGltZyBjbGFzcz1cInUtZmxvYXQtLXJpZ2h0XCIgc3JjPVwiaHR0cHM6Ly9wbGFjZWhvbGQuaXQvNDB4NDBcIiBhbHQ9XCJcIiAvPlxuXG48aW1nIGNsYXNzPVwidS1mbG9hdC0tY2VudGVyXCIgc3JjPVwiaHR0cHM6Ly9wbGFjZWhvbGQuaXQvNDB4NDBcIiBhbHQ9XCJcIiAvPlxuYGBgXG5cbkluIGFkZGl0aW9uLCBjbGFzcyBzdWZmaXhlcyAoYEB4c21hbGxgLCBgQHNtYWxsYCwgYEBtZWRpdW1gLCBgQGxhcmdlYCwgYEB4bGFyZ2VgLCBgQHN1cGVyYCkgY2FuIGJlIHVzZWQgdG8gY2hhbmdlIGZsb2F0cyBiYXNlZCBvbiB2aWV3cG9ydCB3aWR0aC5cblxuYGBgaHRtbF9leGFtcGxlX3RhYmxlXG48cD48aW1nIGNsYXNzPVwidS1mbG9hdC0tbGVmdEBzbWFsbCAgdS1mbG9hdC0tY2VudGVyQG1lZGl1bSAgdS1mbG9hdC0tcmlnaHRAbGFyZ2VcIiBzcmM9XCJodHRwczovL3BsYWNlaG9sZC5pdC80MHg0MFwiIGFsdD1cIlwiIC8+Q2hhbmdlIGJyb3dzZXIgc2l6ZSB0byBzZWUgd2hlcmUgdGhlIGltYWdlIGdvZXMuPC9wPlxuYGBgXG5cbiMjIyBDZW50ZXIgSW1hZ2VcblxuYGBgaHRtbF9leGFtcGxlX3RhYmxlXG48aW1nIGNsYXNzPVwidS1pbWctLWNlbnRlclwiIHNyYz1cImh0dHBzOi8vcGxhY2Vob2xkLml0LzQweDQwXCIgYWx0PVwiXCIgLz5cbmBgYFxuXG4jIyMgQ29udGVudCBCbG9ja3NcblxuTm90ZTogVGhlIG91dGVyIGVsZW1lbnQgbmVlZHMgc29tZSBoZWlnaHQgaWYgeW91IHdhbnQgaXQgdG8gYmUgY2VudGVyZWQgdmVydGljYWxseS5cblxuYGBgaHRtbF9leGFtcGxlX3RhYmxlXG48ZGl2IGNsYXNzPVwidS1jZW50ZXItYmxvY2tcIiBzdHlsZT1cImJvcmRlcjogMXB4IHNvbGlkIGJsYWNrOyBoZWlnaHQ6IDIwMHB4O1wiPlxuXHQ8ZGl2IGNsYXNzPVwidS1jZW50ZXItYmxvY2tfX2NvbnRlbnRcIj5cblx0XHRDZW50ZXJlZFxuXHQ8L2Rpdj5cbjwvZGl2PlxuXG48ZGl2IGNsYXNzPVwidS1jZW50ZXItYmxvY2tcIiBzdHlsZT1cImJvcmRlcjogMXB4IHNvbGlkIGJsYWNrOyBoZWlnaHQ6IDIwMHB4O1wiPlxuXHQ8ZGl2IGNsYXNzPVwidS1jZW50ZXItYmxvY2tfX2NvbnRlbnQgIHUtY2VudGVyLWJsb2NrX19jb250ZW50LS12ZXJ0aWNhbFwiPlxuXHRcdENlbnRlcmVkIFZlcnRpY2FsbHlcblx0PC9kaXY+XG48L2Rpdj5cblxuPGRpdiBjbGFzcz1cInUtY2VudGVyLWJsb2NrXCIgc3R5bGU9XCJib3JkZXI6IDFweCBzb2xpZCBibGFjazsgaGVpZ2h0OiAyMDBweDtcIj5cblx0PGRpdiBjbGFzcz1cInUtY2VudGVyLWJsb2NrX19jb250ZW50ICB1LWNlbnRlci1ibG9ja19fY29udGVudC0taG9yaXpvbnRhbFwiPlxuXHRcdENlbnRlcmVkIEhvcml6b250YWxseVxuXHQ8L2Rpdj5cbjwvZGl2PlxuYGBgXG5cbiovXG4udS10ZXh0LWFsaWduLS1sZWZ0IHtcbiAgdGV4dC1hbGlnbjogbGVmdDsgfVxuXG4udS10ZXh0LWFsaWduLS1jZW50ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLnUtdGV4dC1hbGlnbi0tcmlnaHQge1xuICB0ZXh0LWFsaWduOiByaWdodDsgfVxuXG4udS10ZXh0LWFsaWduLS1qdXN0aWZ5IHtcbiAgdGV4dC1hbGlnbjoganVzdGlmeTsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMjByZW0pIHtcbiAgLnUtdGV4dC1hbGlnbi0tbGVmdFxcQHhzbWFsbCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAudS10ZXh0LWFsaWduLS1jZW50ZXJcXEB4c21hbGwge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAudS10ZXh0LWFsaWduLS1yaWdodFxcQHhzbWFsbCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgLnUtdGV4dC1hbGlnbi0tanVzdGlmeVxcQHhzbWFsbCB7XG4gICAgdGV4dC1hbGlnbjoganVzdGlmeTsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAzMHJlbSkge1xuICAudS10ZXh0LWFsaWduLS1sZWZ0XFxAc21hbGwge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgLnUtdGV4dC1hbGlnbi0tY2VudGVyXFxAc21hbGwge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAudS10ZXh0LWFsaWduLS1yaWdodFxcQHNtYWxsIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAudS10ZXh0LWFsaWduLS1qdXN0aWZ5XFxAc21hbGwge1xuICAgIHRleHQtYWxpZ246IGp1c3RpZnk7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDhyZW0pIHtcbiAgLnUtdGV4dC1hbGlnbi0tbGVmdFxcQG1lZGl1bSB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAudS10ZXh0LWFsaWduLS1jZW50ZXJcXEBtZWRpdW0ge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAudS10ZXh0LWFsaWduLS1yaWdodFxcQG1lZGl1bSB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgLnUtdGV4dC1hbGlnbi0tanVzdGlmeVxcQG1lZGl1bSB7XG4gICAgdGV4dC1hbGlnbjoganVzdGlmeTsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA2NHJlbSkge1xuICAudS10ZXh0LWFsaWduLS1sZWZ0XFxAbGFyZ2Uge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgLnUtdGV4dC1hbGlnbi0tY2VudGVyXFxAbGFyZ2Uge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAudS10ZXh0LWFsaWduLS1yaWdodFxcQGxhcmdlIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAudS10ZXh0LWFsaWduLS1qdXN0aWZ5XFxAbGFyZ2Uge1xuICAgIHRleHQtYWxpZ246IGp1c3RpZnk7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzhyZW0pIHtcbiAgLnUtdGV4dC1hbGlnbi0tbGVmdFxcQHhsYXJnZSB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAudS10ZXh0LWFsaWduLS1jZW50ZXJcXEB4bGFyZ2Uge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAudS10ZXh0LWFsaWduLS1yaWdodFxcQHhsYXJnZSB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgLnUtdGV4dC1hbGlnbi0tanVzdGlmeVxcQHhsYXJnZSB7XG4gICAgdGV4dC1hbGlnbjoganVzdGlmeTsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjVyZW0pIHtcbiAgLnUtdGV4dC1hbGlnbi0tbGVmdFxcQHN1cGVyIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIC51LXRleHQtYWxpZ24tLWNlbnRlclxcQHN1cGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLnUtdGV4dC1hbGlnbi0tcmlnaHRcXEBzdXBlciB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgLnUtdGV4dC1hbGlnbi0tanVzdGlmeVxcQHN1cGVyIHtcbiAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDMwcmVtKSB7XG4gIC51LXB1bGwtbGVmdCxcbiAgLnUtcHVsbC1yaWdodCB7XG4gICAgbWF4LXdpZHRoOiA1MHZ3O1xuICAgIHdpZHRoOiAyMHJlbTsgfVxuICAudS1wdWxsLWxlZnQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1yaWdodDogMS41ZW07IH1cbiAgLnUtcHVsbC1yaWdodCB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIG1hcmdpbi1sZWZ0OiAxLjVlbTsgfSB9XG5cbi51LWZsb2F0LS1sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQ7IH1cblxuLnUtZmxvYXQtLWNlbnRlciB7XG4gIGZsb2F0OiBub25lO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG5cbi51LWZsb2F0LS1yaWdodCB7XG4gIGZsb2F0OiByaWdodDsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMjByZW0pIHtcbiAgLnUtZmxvYXQtLWxlZnRcXEB4c21hbGwge1xuICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC51LWZsb2F0LS1jZW50ZXJcXEB4c21hbGwge1xuICAgIGZsb2F0OiBub25lO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAudS1mbG9hdC0tcmlnaHRcXEB4c21hbGwge1xuICAgIGZsb2F0OiByaWdodDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAzMHJlbSkge1xuICAudS1mbG9hdC0tbGVmdFxcQHNtYWxsIHtcbiAgICBmbG9hdDogbGVmdDsgfVxuICAudS1mbG9hdC0tY2VudGVyXFxAc21hbGwge1xuICAgIGZsb2F0OiBub25lO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAudS1mbG9hdC0tcmlnaHRcXEBzbWFsbCB7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4cmVtKSB7XG4gIC51LWZsb2F0LS1sZWZ0XFxAbWVkaXVtIHtcbiAgICBmbG9hdDogbGVmdDsgfVxuICAudS1mbG9hdC0tY2VudGVyXFxAbWVkaXVtIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgLnUtZmxvYXQtLXJpZ2h0XFxAbWVkaXVtIHtcbiAgICBmbG9hdDogcmlnaHQ7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNjRyZW0pIHtcbiAgLnUtZmxvYXQtLWxlZnRcXEBsYXJnZSB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLnUtZmxvYXQtLWNlbnRlclxcQGxhcmdlIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgLnUtZmxvYXQtLXJpZ2h0XFxAbGFyZ2Uge1xuICAgIGZsb2F0OiByaWdodDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3OHJlbSkge1xuICAudS1mbG9hdC0tbGVmdFxcQHhsYXJnZSB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLnUtZmxvYXQtLWNlbnRlclxcQHhsYXJnZSB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gIC51LWZsb2F0LS1yaWdodFxcQHhsYXJnZSB7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyNXJlbSkge1xuICAudS1mbG9hdC0tbGVmdFxcQHN1cGVyIHtcbiAgICBmbG9hdDogbGVmdDsgfVxuICAudS1mbG9hdC0tY2VudGVyXFxAc3VwZXIge1xuICAgIGZsb2F0OiBub25lO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAudS1mbG9hdC0tcmlnaHRcXEBzdXBlciB7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9IH1cblxuLnUtaW1nLS1jZW50ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwIGF1dG8gMS41ZW0gYXV0bzsgfVxuXG4udS1jZW50ZXItYmxvY2sge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLnUtY2VudGVyLWJsb2NrLS1leHBhbmQge1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi51LWNlbnRlci1ibG9ja19fY29udGVudCxcbi51LWFic29sdXRlLWNlbnRlciB7XG4gIGxlZnQ6IDUwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7IH1cblxuLnUtY2VudGVyLWJsb2NrX19jb250ZW50LS12ZXJ0aWNhbCB7XG4gIGxlZnQ6IGF1dG87XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsgfVxuXG4udS1jZW50ZXItYmxvY2tfX2NvbnRlbnQtLWhvcml6b250YWwge1xuICB0b3A6IGF1dG87XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTsgfVxuXG4vKmRvY1xuLS0tXG50aXRsZTogQm9yZGVyc1xubmFtZTogYm9yZGVyc1xuY2F0ZWdvcnk6IFV0aWxpdGllc1xuLS0tXG5cbkFkZCBhIGJvcmRlciB0byBhbiBlbGVtZW50IG9uIGFueSBnaXZlbiBzaWRlLCBhbGwgc2lkZXMsIG9yIHJlbW92ZSBib3JkZXJzLlxuXG5gYGBodG1sX2V4YW1wbGVfdGFibGVcbjxwIGNsYXNzPVwidS1ib3JkZXItbm9uZVwiPnJlbW92ZSBhbGwgYm9yZGVyczwvcD5cblxuPHAgY2xhc3M9XCJ1LWJvcmRlci1hbGxcIj5ib3JkZXIgYWxsPC9wPlxuXG48cCBjbGFzcz1cInUtYm9yZGVyLXRvcFwiPmJvcmRlciB0b3A8L3A+XG5cbjxwIGNsYXNzPVwidS1ib3JkZXItcmlnaHRcIj5ib3JkZXIgcmlnaHQ8L3A+XG5cbjxwIGNsYXNzPVwidS1ib3JkZXItYm90dG9tXCI+Ym9yZGVyIGJvdHRvbTwvcD5cblxuPHAgY2xhc3M9XCJ1LWJvcmRlci1sZWZ0XCI+Ym9yZGVyIGxlZnQ8L3A+XG5gYGBcblxuIyMjIEJvcmRlciBDb2xvcnNcblxuYGBgaHRtbF9leGFtcGxlX3RhYmxlXG48cCBjbGFzcz1cInUtYm9yZGVyLWFsbCAgdS1ib3JkZXItLWdyZXlcIj5saWdodCBncmV5IGJvcmRlcnM8L3A+XG5cbjxwIGNsYXNzPVwidS1ib3JkZXItYWxsICB1LWJvcmRlci0tbGlnaHQtZ3JleVwiPmxpZ2h0IGdyZXkgYm9yZGVyczwvcD5cblxuPHAgY2xhc3M9XCJ1LWJvcmRlci1hbGwgIHUtYm9yZGVyLS1icmFuZFwiPmJyYW5kIGJvcmRlcnM8L3A+XG5gYGBcblxuIyMjIE1lZGlhIFF1ZXJpZXNcblxuQ2xhc3Mgc3VmZml4ZXMgKGBAeHNtYWxsYCwgYEBzbWFsbGAsIGBAbWVkaXVtYCwgYEBsYXJnZWAsIGBAeGxhcmdlYCwgYEBzdXBlcmApIGNhbiBiZSB1c2VkIHRvIGNoYW5nZSBib3JkZXJzIGJhc2VkIG9uIHZpZXdwb3J0IHdpZHRoLlxuXG5gYGBodG1sX2V4YW1wbGVfdGFibGVcbjxwIGNsYXNzPVwidS1ib3JkZXItdG9wICB1LWJvcmRlci1yaWdodEBzbWFsbCAgdS1ib3JkZXItYm90dG9tQG1lZGl1bSAgdS1ib3JkZXItbGVmdEBsYXJnZVwiPkJvcmRlcnMgd2lsbCBiZSBhZGRlZCB0byB0aGlzIHBhcmFncmFwaCBhcyB0aGUgdmlld3BvcnQgd2lkdGggaW5jcmVhc2VzLjwvcD5cbmBgYFxuXG4qL1xuLnUtYm9yZGVyLW5vbmUge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG4gIGJvcmRlci13aWR0aDogMDsgfVxuXG4udS1ib3JkZXItYWxsIHtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiAxcHg7IH1cblxuLnUtYm9yZGVyLXRvcCB7XG4gIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICBib3JkZXItdG9wLXdpZHRoOiAxcHg7IH1cblxuLnUtYm9yZGVyLXJpZ2h0IHtcbiAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAxcHg7IH1cblxuLnUtYm9yZGVyLWJvdHRvbSB7XG4gIGJvcmRlci1ib3R0b20tc3R5bGU6IHNvbGlkO1xuICBib3JkZXItYm90dG9tLXdpZHRoOiAxcHg7IH1cblxuLnUtYm9yZGVyLWxlZnQge1xuICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiAxcHg7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDIwcmVtKSB7XG4gIC51LWJvcmRlci1ub25lXFxAeHNtYWxsIHtcbiAgICBib3JkZXItc3R5bGU6IG5vbmU7XG4gICAgYm9yZGVyLXdpZHRoOiAwOyB9XG4gIC51LWJvcmRlci1hbGxcXEB4c21hbGwge1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXdpZHRoOiAxcHg7IH1cbiAgLnUtYm9yZGVyLXRvcFxcQHhzbWFsbCB7XG4gICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogMXB4OyB9XG4gIC51LWJvcmRlci1yaWdodFxcQHhzbWFsbCB7XG4gICAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDFweDsgfVxuICAudS1ib3JkZXItYm90dG9tXFxAeHNtYWxsIHtcbiAgICBib3JkZXItYm90dG9tLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAxcHg7IH1cbiAgLnUtYm9yZGVyLWxlZnRcXEB4c21hbGwge1xuICAgIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMXB4OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDMwcmVtKSB7XG4gIC51LWJvcmRlci1ub25lXFxAc21hbGwge1xuICAgIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgICBib3JkZXItd2lkdGg6IDA7IH1cbiAgLnUtYm9yZGVyLWFsbFxcQHNtYWxsIHtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci13aWR0aDogMXB4OyB9XG4gIC51LWJvcmRlci10b3BcXEBzbWFsbCB7XG4gICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogMXB4OyB9XG4gIC51LWJvcmRlci1yaWdodFxcQHNtYWxsIHtcbiAgICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1yaWdodC13aWR0aDogMXB4OyB9XG4gIC51LWJvcmRlci1ib3R0b21cXEBzbWFsbCB7XG4gICAgYm9yZGVyLWJvdHRvbS1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMXB4OyB9XG4gIC51LWJvcmRlci1sZWZ0XFxAc21hbGwge1xuICAgIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMXB4OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4cmVtKSB7XG4gIC51LWJvcmRlci1ub25lXFxAbWVkaXVtIHtcbiAgICBib3JkZXItc3R5bGU6IG5vbmU7XG4gICAgYm9yZGVyLXdpZHRoOiAwOyB9XG4gIC51LWJvcmRlci1hbGxcXEBtZWRpdW0ge1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXdpZHRoOiAxcHg7IH1cbiAgLnUtYm9yZGVyLXRvcFxcQG1lZGl1bSB7XG4gICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogMXB4OyB9XG4gIC51LWJvcmRlci1yaWdodFxcQG1lZGl1bSB7XG4gICAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDFweDsgfVxuICAudS1ib3JkZXItYm90dG9tXFxAbWVkaXVtIHtcbiAgICBib3JkZXItYm90dG9tLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAxcHg7IH1cbiAgLnUtYm9yZGVyLWxlZnRcXEBtZWRpdW0ge1xuICAgIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMXB4OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDY0cmVtKSB7XG4gIC51LWJvcmRlci1ub25lXFxAbGFyZ2Uge1xuICAgIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgICBib3JkZXItd2lkdGg6IDA7IH1cbiAgLnUtYm9yZGVyLWFsbFxcQGxhcmdlIHtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci13aWR0aDogMXB4OyB9XG4gIC51LWJvcmRlci10b3BcXEBsYXJnZSB7XG4gICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogMXB4OyB9XG4gIC51LWJvcmRlci1yaWdodFxcQGxhcmdlIHtcbiAgICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1yaWdodC13aWR0aDogMXB4OyB9XG4gIC51LWJvcmRlci1ib3R0b21cXEBsYXJnZSB7XG4gICAgYm9yZGVyLWJvdHRvbS1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMXB4OyB9XG4gIC51LWJvcmRlci1sZWZ0XFxAbGFyZ2Uge1xuICAgIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMXB4OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc4cmVtKSB7XG4gIC51LWJvcmRlci1ub25lXFxAeGxhcmdlIHtcbiAgICBib3JkZXItc3R5bGU6IG5vbmU7XG4gICAgYm9yZGVyLXdpZHRoOiAwOyB9XG4gIC51LWJvcmRlci1hbGxcXEB4bGFyZ2Uge1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXdpZHRoOiAxcHg7IH1cbiAgLnUtYm9yZGVyLXRvcFxcQHhsYXJnZSB7XG4gICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogMXB4OyB9XG4gIC51LWJvcmRlci1yaWdodFxcQHhsYXJnZSB7XG4gICAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDFweDsgfVxuICAudS1ib3JkZXItYm90dG9tXFxAeGxhcmdlIHtcbiAgICBib3JkZXItYm90dG9tLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAxcHg7IH1cbiAgLnUtYm9yZGVyLWxlZnRcXEB4bGFyZ2Uge1xuICAgIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMXB4OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyNXJlbSkge1xuICAudS1ib3JkZXItbm9uZVxcQHN1cGVyIHtcbiAgICBib3JkZXItc3R5bGU6IG5vbmU7XG4gICAgYm9yZGVyLXdpZHRoOiAwOyB9XG4gIC51LWJvcmRlci1hbGxcXEBzdXBlciB7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItd2lkdGg6IDFweDsgfVxuICAudS1ib3JkZXItdG9wXFxAc3VwZXIge1xuICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci10b3Atd2lkdGg6IDFweDsgfVxuICAudS1ib3JkZXItcmlnaHRcXEBzdXBlciB7XG4gICAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDFweDsgfVxuICAudS1ib3JkZXItYm90dG9tXFxAc3VwZXIge1xuICAgIGJvcmRlci1ib3R0b20tc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDFweDsgfVxuICAudS1ib3JkZXItbGVmdFxcQHN1cGVyIHtcbiAgICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDFweDsgfSB9XG5cbi51LWJvcmRlci0tZ3JleSB7XG4gIGJvcmRlci1jb2xvcjogIzkzOTU5OCAhaW1wb3J0YW50OyB9XG5cbi51LWJvcmRlci0tbGlnaHQtZ3JleSB7XG4gIGJvcmRlci1jb2xvcjogI0YyRjJGMiAhaW1wb3J0YW50OyB9XG5cbi51LWJvcmRlci0tYnJhbmQge1xuICBib3JkZXItY29sb3I6ICNhNjE5MmUgIWltcG9ydGFudDsgfVxuXG4udS1ib3JkZXItLXdoaXRlIHtcbiAgYm9yZGVyLWNvbG9yOiAjRkZGICFpbXBvcnRhbnQ7IH1cblxuLypkb2Ncbi0tLVxudGl0bGU6IENsZWFyZml4XG5uYW1lOiBjbGVhcmZpeFxuY2F0ZWdvcnk6IFV0aWxpdGllc1xuLS0tXG5cbkVhc2lseSBjbGVhciBmbG9hdHMgYnkgYWRkaW5nIGAudS1jbGVhcmZpeGAgdG8gdGhlIHBhcmVudCBlbGVtZW50LlxuXG5gYGBodG1sX2V4YW1wbGVfdGFibGVcbjxkaXYgY2xhc3M9XCJ1LWNsZWFyZml4XCIgc3R5bGU9XCJib3JkZXI6MXB4IHNvbGlkIGJsYWNrXCI+XG5cdDxwIGNsYXNzPVwidS1mbG9hdC0tbGVmdFwiPkNsZWFyZml4IHN0b3BzIHRoZSBvdXRlciBlbGVtZW50IGZyb20gY29sbGFwc2luZyBldmVuIHRob3VnaCB0aGlzIHBhcmFncmFwaCBpcyBmbG9hdGVkIHRvIHRoZSBsZWZ0PC9wPlxuPC9kaXY+XG5gYGBcblxuKi9cbi51LWNsZWFyZml4IHtcbiAgKnpvb206IDEgLnUtY2xlYXJmaXgsICV1LWNsZWFyZml4OyB9XG4gIC51LWNsZWFyZml4IDpiZWZvcmUsIC51LWNsZWFyZml4OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTsgfVxuICAudS1jbGVhcmZpeDphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBjbGVhcjogYm90aDsgfVxuXG4vKmRvY1xuLS0tXG50aXRsZTogQ29sb3JzXG5uYW1lOiBjb2xvcnNcbmNhdGVnb3J5OiBVdGlsaXRpZXNcbi0tLVxuXG5FYXNpbHkgY2hhbmdlIHRleHQgY29sb3Igb3IgYmFja2dyb3VuZCBjb2xvci5cblxuIyMjIFRleHQgQ29sb3JcblxuU2VlIGBzZXR0aW5ncy5nbG9iYWxgIGZvciBmdWxsIGxpc3Qgb2YgY29sb3JzIGF2YWlsYWJsZS5cblxuYGBgaHRtbF9leGFtcGxlX3RhYmxlXG48dWw+XG5cdDxsaSBjbGFzcz1cInUtY29sb3ItZ3JleS1saWdodFwiPnUtY29sb3ItZ3JleS1saWdodDwvbGk+XG5cdDxsaSBjbGFzcz1cInUtY29sb3ItYnJhbmRcIj51LWNvbG9yLWJyYW5kPC9saT5cblx0PGxpIGNsYXNzPVwidS1jb2xvci1ibGFja1wiPnUtY29sb3ItYmxhY2s8L2xpPlxuXHQ8bGkgY2xhc3M9XCJ1LWNvbG9yLWJlaWdlXCI+dS1jb2xvci1iZWlnZTwvbGk+XG5cdDxsaSBjbGFzcz1cInUtY29sb3ItZ3JlZW5cIj51LWNvbG9yLWdyZWVuPC9saT5cblx0PGxpIGNsYXNzPVwidS1jb2xvci1ibHVlLWxpZ2h0ZXJcIj51LWNvbG9yLWJsdWUtbGlnaHRlcjwvbGk+XG5cdDxsaSBjbGFzcz1cInUtY29sb3ItYmx1ZS1saWdodFwiPnUtY29sb3ItYmx1ZS1saWdodDwvbGk+XG5cdDxsaSBjbGFzcz1cInUtY29sb3ItYmx1ZVwiPnUtY29sb3ItYmx1ZTwvbGk+XG5cdDxsaSBjbGFzcz1cInUtY29sb3ItYmx1ZS1kYXJrXCI+dS1jb2xvci1ibHVlLWRhcms8L2xpPlxuXHQ8bGkgY2xhc3M9XCJ1LWNvbG9yLWJsdWUtZGFya2VyXCI+dS1jb2xvci1ibHVlLWRhcmtlcjwvbGk+XG48L3VsPlxuYGBgXG5cbiMjIyBCYWNrZ3JvdW5kIENvbG9yXG5cblNlZSBgc2V0dGluZ3MuZ2xvYmFsYCBmb3IgZnVsbCBsaXN0IG9mIGNvbG9ycyBhdmFpbGFibGUuXG5cbmBgYGh0bWxfZXhhbXBsZV90YWJsZVxuPHVsPlxuXHQ8bGkgY2xhc3M9XCJ1LWJnLWdyZXktbGlnaHQgIHUtY29sb3ItYmxhY2tcIj51LWJnLWdyZXktbGlnaHQ8L2xpPlxuXHQ8bGkgY2xhc3M9XCJ1LWJnLWJyYW5kICB1LWNvbG9yLXdoaXRlXCI+dS1iZy1icmFuZDwvbGk+XG5cdDxsaSBjbGFzcz1cInUtYmctYmxhY2sgIHUtY29sb3Itd2hpdGVcIj51LWJnLWJsYWNrPC9saT5cblx0PGxpIGNsYXNzPVwidS1iZy1iZWlnZSAgdS1jb2xvci1ibGFja1wiPnUtYmctYmVpZ2U8L2xpPlxuXHQ8bGkgY2xhc3M9XCJ1LWJnLW9yYW5nZSAgdS1jb2xvci13aGl0ZVwiPnUtYmctb3JhbmdlPC9saT5cblx0PGxpIGNsYXNzPVwidS1iZy1wdXJwbGUtbGlnaHRlciAgdS1jb2xvci13aGl0ZVwiPnUtYmctcHVycGxlLWxpZ2h0ZXI8L2xpPlxuXHQ8bGkgY2xhc3M9XCJ1LWJnLXB1cnBsZS1saWdodCAgdS1jb2xvci13aGl0ZVwiPnUtYmctcHVycGxlLWxpZ2h0PC9saT5cblx0PGxpIGNsYXNzPVwidS1iZy1wdXJwbGUgIHUtY29sb3Itd2hpdGVcIj51LWJnLXB1cnBsZTwvbGk+XG5cdDxsaSBjbGFzcz1cInUtYmctcHVycGxlLWRhcmsgIHUtY29sb3Itd2hpdGVcIj51LWJnLXB1cnBsZS1kYXJrPC9saT5cblx0PGxpIGNsYXNzPVwidS1iZy1wdXJwbGUtZGFya2VyICB1LWNvbG9yLXdoaXRlXCI+dS1iZy1wdXJwbGUtZGFya2VyPC9saT5cbjwvdWw+XG5gYGBcblxuIyMjIEZpbGxcblxuRmlsbCBjbGFzc2VzIGFyZSBvbmx5IHVzZWQgZm9yIFNWR3MuXG5cbmBgYGh0bWxfZXhhbXBsZV90YWJsZVxuPHN2ZyBjbGFzcz1cImEtaWNvbiAgdS1maWxsLWJyYW5kXCI+XG5cdDx1c2UgeGxpbms6aHJlZj1cIiNzZWFyY2gtaWNvblwiPjwvdXNlPlxuPC9zdmc+XG5cbjxzdmcgY2xhc3M9XCJhLWljb24gIHUtZmlsbC1ncmVlblwiPlxuXHQ8dXNlIHhsaW5rOmhyZWY9XCIjc2VhcmNoLWljb25cIj48L3VzZT5cbjwvc3ZnPlxuXG48c3ZnIGNsYXNzPVwiYS1pY29uICB1LWZpbGwtYmxhY2tcIj5cblx0PHVzZSB4bGluazpocmVmPVwiI3NlYXJjaC1pY29uXCI+PC91c2U+XG48L3N2Zz5cbmBgYFxuKi9cbi51LWNvbG9yLWN1cnJlbnRDb2xvciB7XG4gIGNvbG9yOiBjdXJyZW50Q29sb3I7IH1cblxuLnUtZmlsbC1jdXJyZW50Q29sb3Ige1xuICBmaWxsOiBjdXJyZW50Q29sb3I7IH1cblxuLnUtYmctbm9uZSB7XG4gIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4udS1jb2xvci1ibGFjayB7XG4gIGNvbG9yOiAjNDE0MDQyOyB9XG5cbi51LWJnLWJsYWNrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzQxNDA0MjsgfVxuXG4udS1maWxsLWJsYWNrIHtcbiAgZmlsbDogIzQxNDA0MjsgfVxuXG4udS1jb2xvci1ncmV5IHtcbiAgY29sb3I6ICM5Mzk1OTg7IH1cblxuLnUtYmctZ3JleSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM5Mzk1OTg7IH1cblxuLnUtZmlsbC1ncmV5IHtcbiAgZmlsbDogIzkzOTU5ODsgfVxuXG4udS1jb2xvci1saWdodC1ncmV5IHtcbiAgY29sb3I6ICNGMkYyRjI7IH1cblxuLnUtYmctbGlnaHQtZ3JleSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGMkYyRjI7IH1cblxuLnUtZmlsbC1saWdodC1ncmV5IHtcbiAgZmlsbDogI0YyRjJGMjsgfVxuXG4udS1jb2xvci13aGl0ZSB7XG4gIGNvbG9yOiAjRkZGOyB9XG5cbi51LWJnLXdoaXRlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRjsgfVxuXG4udS1maWxsLXdoaXRlIHtcbiAgZmlsbDogI0ZGRjsgfVxuXG4udS1jb2xvci1iZWlnZSB7XG4gIGNvbG9yOiAjRjJGMkVBOyB9XG5cbi51LWJnLWJlaWdlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0YyRjJFQTsgfVxuXG4udS1maWxsLWJlaWdlIHtcbiAgZmlsbDogI0YyRjJFQTsgfVxuXG4udS1jb2xvci1yZWQge1xuICBjb2xvcjogI0M4MTAyRTsgfVxuXG4udS1iZy1yZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjQzgxMDJFOyB9XG5cbi51LWZpbGwtcmVkIHtcbiAgZmlsbDogI0M4MTAyRTsgfVxuXG4udS1jb2xvci1waW5rIHtcbiAgY29sb3I6ICNFOTFFNjM7IH1cblxuLnUtYmctcGluayB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNFOTFFNjM7IH1cblxuLnUtZmlsbC1waW5rIHtcbiAgZmlsbDogI0U5MUU2MzsgfVxuXG4udS1jb2xvci1wdXJwbGUge1xuICBjb2xvcjogIzZDNTRBMzsgfVxuXG4udS1iZy1wdXJwbGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNkM1NEEzOyB9XG5cbi51LWZpbGwtcHVycGxlIHtcbiAgZmlsbDogIzZDNTRBMzsgfVxuXG4udS1jb2xvci1ibHVlIHtcbiAgY29sb3I6ICMyMTk2RjM7IH1cblxuLnUtYmctYmx1ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMTk2RjM7IH1cblxuLnUtZmlsbC1ibHVlIHtcbiAgZmlsbDogIzIxOTZGMzsgfVxuXG4udS1jb2xvci1ncmVlbiB7XG4gIGNvbG9yOiAjMDA4NzU1OyB9XG5cbi51LWJnLWdyZWVuIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwODc1NTsgfVxuXG4udS1maWxsLWdyZWVuIHtcbiAgZmlsbDogIzAwODc1NTsgfVxuXG4udS1jb2xvci1saWdodC1ncmVlbiB7XG4gIGNvbG9yOiAjNkNDMjRBOyB9XG5cbi51LWJnLWxpZ2h0LWdyZWVuIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzZDQzI0QTsgfVxuXG4udS1maWxsLWxpZ2h0LWdyZWVuIHtcbiAgZmlsbDogIzZDQzI0QTsgfVxuXG4udS1jb2xvci10ZWFsIHtcbiAgY29sb3I6ICM0Rjg2OEU7IH1cblxuLnUtYmctdGVhbCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0Rjg2OEU7IH1cblxuLnUtZmlsbC10ZWFsIHtcbiAgZmlsbDogIzRGODY4RTsgfVxuXG4udS1jb2xvci1jeWFuIHtcbiAgY29sb3I6ICM3RURERDM7IH1cblxuLnUtYmctY3lhbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3RURERDM7IH1cblxuLnUtZmlsbC1jeWFuIHtcbiAgZmlsbDogIzdFREREMzsgfVxuXG4udS1jb2xvci15ZWxsb3cge1xuICBjb2xvcjogI0ZGQjUwMDsgfVxuXG4udS1iZy15ZWxsb3cge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZCNTAwOyB9XG5cbi51LWZpbGwteWVsbG93IHtcbiAgZmlsbDogI0ZGQjUwMDsgfVxuXG4udS1jb2xvci1vcmFuZ2Uge1xuICBjb2xvcjogI0Y2OEEzMzsgfVxuXG4udS1iZy1vcmFuZ2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjY4QTMzOyB9XG5cbi51LWZpbGwtb3JhbmdlIHtcbiAgZmlsbDogI0Y2OEEzMzsgfVxuXG4udS1jb2xvci1icm93biB7XG4gIGNvbG9yOiAjNzk1NTQ4OyB9XG5cbi51LWJnLWJyb3duIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzc5NTU0ODsgfVxuXG4udS1maWxsLWJyb3duIHtcbiAgZmlsbDogIzc5NTU0ODsgfVxuXG4udS1jb2xvci1icmFuZCB7XG4gIGNvbG9yOiAjYTYxOTJlOyB9XG5cbi51LWJnLWJyYW5kIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2E2MTkyZTsgfVxuXG4udS1maWxsLWJyYW5kIHtcbiAgZmlsbDogI2E2MTkyZTsgfVxuXG4udS1jb2xvci1zZWNvbmRhcnkge1xuICBjb2xvcjogIzRGODY4RTsgfVxuXG4udS1iZy1zZWNvbmRhcnkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNEY4NjhFOyB9XG5cbi51LWZpbGwtc2Vjb25kYXJ5IHtcbiAgZmlsbDogIzRGODY4RTsgfVxuXG4udS1jb2xvci10ZXJ0aWFyeSB7XG4gIGNvbG9yOiAjN0VEREQzOyB9XG5cbi51LWJnLXRlcnRpYXJ5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzdFREREMzsgfVxuXG4udS1maWxsLXRlcnRpYXJ5IHtcbiAgZmlsbDogIzdFREREMzsgfVxuXG4udS1jb2xvci1pbmZvIHtcbiAgY29sb3I6ICMyMTk2RjM7IH1cblxuLnUtYmctaW5mbyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMTk2RjM7IH1cblxuLnUtZmlsbC1pbmZvIHtcbiAgZmlsbDogIzIxOTZGMzsgfVxuXG4udS1jb2xvci13YXJuaW5nIHtcbiAgY29sb3I6ICNGNjhBMzM7IH1cblxuLnUtYmctd2FybmluZyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGNjhBMzM7IH1cblxuLnUtZmlsbC13YXJuaW5nIHtcbiAgZmlsbDogI0Y2OEEzMzsgfVxuXG4udS1jb2xvci1zdWNjZXNzIHtcbiAgY29sb3I6ICMwMDg3NTU7IH1cblxuLnUtYmctc3VjY2VzcyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDg3NTU7IH1cblxuLnUtZmlsbC1zdWNjZXNzIHtcbiAgZmlsbDogIzAwODc1NTsgfVxuXG4udS1jb2xvci1lcnJvciB7XG4gIGNvbG9yOiAjQzgxMDJFOyB9XG5cbi51LWJnLWVycm9yIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0M4MTAyRTsgfVxuXG4udS1maWxsLWVycm9yIHtcbiAgZmlsbDogI0M4MTAyRTsgfVxuXG4udS1jb2xvci1kZWZhdWx0IHtcbiAgY29sb3I6ICM3OTdiN2Y7IH1cblxuLnUtYmctZGVmYXVsdCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3OTdiN2Y7IH1cblxuLnUtZmlsbC1kZWZhdWx0IHtcbiAgZmlsbDogIzc5N2I3ZjsgfVxuXG4udS1jb2xvci1kaXNhYmxlZCB7XG4gIGNvbG9yOiAjNzk3YjdmOyB9XG5cbi51LWJnLWRpc2FibGVkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzc5N2I3ZjsgfVxuXG4udS1maWxsLWRpc2FibGVkIHtcbiAgZmlsbDogIzc5N2I3ZjsgfVxuXG4udS1jb2xvci1xdWlldCB7XG4gIGNvbG9yOiAjNzk3YjdmOyB9XG5cbi51LWJnLXF1aWV0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzc5N2I3ZjsgfVxuXG4udS1maWxsLXF1aWV0IHtcbiAgZmlsbDogIzc5N2I3ZjsgfVxuXG4udS1jb2xvci1ncmV5LWRhcmsge1xuICBjb2xvcjogIzc5N2I3ZjsgfVxuXG4udS1iZy1ncmV5LWRhcmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzk3YjdmOyB9XG5cbi51LWZpbGwtZ3JleS1kYXJrIHtcbiAgZmlsbDogIzc5N2I3ZjsgfVxuXG4udS1jb2xvci1yZWQtZGFyayB7XG4gIGNvbG9yOiAjOTkwYzIzOyB9XG5cbi51LWJnLXJlZC1kYXJrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzk5MGMyMzsgfVxuXG4udS1maWxsLXJlZC1kYXJrIHtcbiAgZmlsbDogIzk5MGMyMzsgfVxuXG4udS1jb2xvci1waW5rLWRhcmsge1xuICBjb2xvcjogI2MxMTM0ZTsgfVxuXG4udS1iZy1waW5rLWRhcmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzExMzRlOyB9XG5cbi51LWZpbGwtcGluay1kYXJrIHtcbiAgZmlsbDogI2MxMTM0ZTsgfVxuXG4udS1jb2xvci1wdXJwbGUtZGFyayB7XG4gIGNvbG9yOiAjNTY0MzgxOyB9XG5cbi51LWJnLXB1cnBsZS1kYXJrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU2NDM4MTsgfVxuXG4udS1maWxsLXB1cnBsZS1kYXJrIHtcbiAgZmlsbDogIzU2NDM4MTsgfVxuXG4udS1jb2xvci1ibHVlLWRhcmsge1xuICBjb2xvcjogIzBjN2NkNTsgfVxuXG4udS1iZy1ibHVlLWRhcmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGM3Y2Q1OyB9XG5cbi51LWZpbGwtYmx1ZS1kYXJrIHtcbiAgZmlsbDogIzBjN2NkNTsgfVxuXG4udS1jb2xvci1ncmVlbi1kYXJrIHtcbiAgY29sb3I6ICMwMDU0MzU7IH1cblxuLnUtYmctZ3JlZW4tZGFyayB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDU0MzU7IH1cblxuLnUtZmlsbC1ncmVlbi1kYXJrIHtcbiAgZmlsbDogIzAwNTQzNTsgfVxuXG4udS1jb2xvci1jeWFuLWRhcmsge1xuICBjb2xvcjogIzU2ZDJjNTsgfVxuXG4udS1iZy1jeWFuLWRhcmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTZkMmM1OyB9XG5cbi51LWZpbGwtY3lhbi1kYXJrIHtcbiAgZmlsbDogIzU2ZDJjNTsgfVxuXG4udS1jb2xvci15ZWxsb3ctZGFyayB7XG4gIGNvbG9yOiAjY2M5MTAwOyB9XG5cbi51LWJnLXllbGxvdy1kYXJrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NjOTEwMDsgfVxuXG4udS1maWxsLXllbGxvdy1kYXJrIHtcbiAgZmlsbDogI2NjOTEwMDsgfVxuXG4udS1jb2xvci1vcmFuZ2UtZGFyayB7XG4gIGNvbG9yOiAjZWM2ZjBhOyB9XG5cbi51LWJnLW9yYW5nZS1kYXJrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VjNmYwYTsgfVxuXG4udS1maWxsLW9yYW5nZS1kYXJrIHtcbiAgZmlsbDogI2VjNmYwYTsgfVxuXG4udS1jb2xvci1icm93bi1kYXJrIHtcbiAgY29sb3I6ICM1OTNmMzU7IH1cblxuLnUtYmctYnJvd24tZGFyayB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1OTNmMzU7IH1cblxuLnUtZmlsbC1icm93bi1kYXJrIHtcbiAgZmlsbDogIzU5M2YzNTsgfVxuXG4udS1jb2xvci1ncmV5LWRhcmtlciB7XG4gIGNvbG9yOiAjNjA2MjY1OyB9XG5cbi51LWJnLWdyZXktZGFya2VyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzYwNjI2NTsgfVxuXG4udS1maWxsLWdyZXktZGFya2VyIHtcbiAgZmlsbDogIzYwNjI2NTsgfVxuXG4udS1jb2xvci1yZWQtZGFya2VyIHtcbiAgY29sb3I6ICM2YTA4MTg7IH1cblxuLnUtYmctcmVkLWRhcmtlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2YTA4MTg7IH1cblxuLnUtZmlsbC1yZWQtZGFya2VyIHtcbiAgZmlsbDogIzZhMDgxODsgfVxuXG4udS1jb2xvci1ncmV5LWxpZ2h0IHtcbiAgY29sb3I6ICNhZGFmYjE7IH1cblxuLnUtYmctZ3JleS1saWdodCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhZGFmYjE7IH1cblxuLnUtZmlsbC1ncmV5LWxpZ2h0IHtcbiAgZmlsbDogI2FkYWZiMTsgfVxuXG4udS1jb2xvci1yZWQtbGlnaHQge1xuICBjb2xvcjogI2VkMWU0MDsgfVxuXG4udS1iZy1yZWQtbGlnaHQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWQxZTQwOyB9XG5cbi51LWZpbGwtcmVkLWxpZ2h0IHtcbiAgZmlsbDogI2VkMWU0MDsgfVxuXG4udS1jb2xvci1waW5rLWxpZ2h0IHtcbiAgY29sb3I6ICNlZTRjODM7IH1cblxuLnUtYmctcGluay1saWdodCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZTRjODM7IH1cblxuLnUtZmlsbC1waW5rLWxpZ2h0IHtcbiAgZmlsbDogI2VlNGM4MzsgfVxuXG4udS1jb2xvci1wdXJwbGUtbGlnaHQge1xuICBjb2xvcjogIzg4NzNiNzsgfVxuXG4udS1iZy1wdXJwbGUtbGlnaHQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjODg3M2I3OyB9XG5cbi51LWZpbGwtcHVycGxlLWxpZ2h0IHtcbiAgZmlsbDogIzg4NzNiNzsgfVxuXG4udS1jb2xvci1ibHVlLWxpZ2h0IHtcbiAgY29sb3I6ICM1MWFkZjY7IH1cblxuLnUtYmctYmx1ZS1saWdodCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1MWFkZjY7IH1cblxuLnUtZmlsbC1ibHVlLWxpZ2h0IHtcbiAgZmlsbDogIzUxYWRmNjsgfVxuXG4udS1jb2xvci1ncmVlbi1saWdodCB7XG4gIGNvbG9yOiAjMDBiYTc1OyB9XG5cbi51LWJnLWdyZWVuLWxpZ2h0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwYmE3NTsgfVxuXG4udS1maWxsLWdyZWVuLWxpZ2h0IHtcbiAgZmlsbDogIzAwYmE3NTsgfVxuXG4udS1jb2xvci1jeWFuLWxpZ2h0IHtcbiAgY29sb3I6ICNhNmU4ZTE7IH1cblxuLnUtYmctY3lhbi1saWdodCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhNmU4ZTE7IH1cblxuLnUtZmlsbC1jeWFuLWxpZ2h0IHtcbiAgZmlsbDogI2E2ZThlMTsgfVxuXG4udS1jb2xvci15ZWxsb3ctbGlnaHQge1xuICBjb2xvcjogI2ZmYzQzMzsgfVxuXG4udS1iZy15ZWxsb3ctbGlnaHQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZjNDMzOyB9XG5cbi51LWZpbGwteWVsbG93LWxpZ2h0IHtcbiAgZmlsbDogI2ZmYzQzMzsgfVxuXG4udS1jb2xvci1vcmFuZ2UtbGlnaHQge1xuICBjb2xvcjogI2Y4YTY2NDsgfVxuXG4udS1iZy1vcmFuZ2UtbGlnaHQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhhNjY0OyB9XG5cbi51LWZpbGwtb3JhbmdlLWxpZ2h0IHtcbiAgZmlsbDogI2Y4YTY2NDsgfVxuXG4udS1jb2xvci1icm93bi1saWdodCB7XG4gIGNvbG9yOiAjOTk2YjViOyB9XG5cbi51LWJnLWJyb3duLWxpZ2h0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzk5NmI1YjsgfVxuXG4udS1maWxsLWJyb3duLWxpZ2h0IHtcbiAgZmlsbDogIzk5NmI1YjsgfVxuXG4udS1jb2xvci1ncmV5LWxpZ2h0ZXIge1xuICBjb2xvcjogI2M3YzhjYTsgfVxuXG4udS1iZy1ncmV5LWxpZ2h0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzdjOGNhOyB9XG5cbi51LWZpbGwtZ3JleS1saWdodGVyIHtcbiAgZmlsbDogI2M3YzhjYTsgfVxuXG4udS1jb2xvci1yZWQtbGlnaHRlciB7XG4gIGNvbG9yOiAjZjE0ZDY4OyB9XG5cbi51LWJnLXJlZC1saWdodGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YxNGQ2ODsgfVxuXG4udS1maWxsLXJlZC1saWdodGVyIHtcbiAgZmlsbDogI2YxNGQ2ODsgfVxuXG4udS1jb2xvci1waW5rLWxpZ2h0ZXIge1xuICBjb2xvcjogI2YyN2JhMzsgfVxuXG4udS1iZy1waW5rLWxpZ2h0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjI3YmEzOyB9XG5cbi51LWZpbGwtcGluay1saWdodGVyIHtcbiAgZmlsbDogI2YyN2JhMzsgfVxuXG4udS1jb2xvci1wdXJwbGUtbGlnaHRlciB7XG4gIGNvbG9yOiAjYTQ5NWM4OyB9XG5cbi51LWJnLXB1cnBsZS1saWdodGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2E0OTVjODsgfVxuXG4udS1maWxsLXB1cnBsZS1saWdodGVyIHtcbiAgZmlsbDogI2E0OTVjODsgfVxuXG4udS1jb2xvci1ibHVlLWxpZ2h0ZXIge1xuICBjb2xvcjogIzgyYzRmODsgfVxuXG4udS1iZy1ibHVlLWxpZ2h0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjODJjNGY4OyB9XG5cbi51LWZpbGwtYmx1ZS1saWdodGVyIHtcbiAgZmlsbDogIzgyYzRmODsgfVxuXG4udS1jb2xvci1ncmVlbi1saWdodGVyIHtcbiAgY29sb3I6ICMwMGVkOTU7IH1cblxuLnUtYmctZ3JlZW4tbGlnaHRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMGVkOTU7IH1cblxuLnUtZmlsbC1ncmVlbi1saWdodGVyIHtcbiAgZmlsbDogIzAwZWQ5NTsgfVxuXG4udS1jb2xvci1jeWFuLWxpZ2h0ZXIge1xuICBjb2xvcjogI2NmZjJlZjsgfVxuXG4udS1iZy1jeWFuLWxpZ2h0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2ZmMmVmOyB9XG5cbi51LWZpbGwtY3lhbi1saWdodGVyIHtcbiAgZmlsbDogI2NmZjJlZjsgfVxuXG4udS1jb2xvci15ZWxsb3ctbGlnaHRlciB7XG4gIGNvbG9yOiAjZmZkMzY2OyB9XG5cbi51LWJnLXllbGxvdy1saWdodGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZDM2NjsgfVxuXG4udS1maWxsLXllbGxvdy1saWdodGVyIHtcbiAgZmlsbDogI2ZmZDM2NjsgfVxuXG4udS1jb2xvci1vcmFuZ2UtbGlnaHRlciB7XG4gIGNvbG9yOiAjZmFjMjk1OyB9XG5cbi51LWJnLW9yYW5nZS1saWdodGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZhYzI5NTsgfVxuXG4udS1maWxsLW9yYW5nZS1saWdodGVyIHtcbiAgZmlsbDogI2ZhYzI5NTsgfVxuXG4udS1jb2xvci1icm93bi1saWdodGVyIHtcbiAgY29sb3I6ICNhZjg3Nzg7IH1cblxuLnUtYmctYnJvd24tbGlnaHRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhZjg3Nzg7IH1cblxuLnUtZmlsbC1icm93bi1saWdodGVyIHtcbiAgZmlsbDogI2FmODc3ODsgfVxuXG4udS1jb2xvci1waW5rLWRhcmtlciB7XG4gIGNvbG9yOiAjOTMwZTNiOyB9XG5cbi51LWJnLXBpbmstZGFya2VyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzkzMGUzYjsgfVxuXG4udS1maWxsLXBpbmstZGFya2VyIHtcbiAgZmlsbDogIzkzMGUzYjsgfVxuXG4udS1jb2xvci1wdXJwbGUtZGFya2VyIHtcbiAgY29sb3I6ICMzZjMxNjA7IH1cblxuLnUtYmctcHVycGxlLWRhcmtlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzZjMxNjA7IH1cblxuLnUtZmlsbC1wdXJwbGUtZGFya2VyIHtcbiAgZmlsbDogIzNmMzE2MDsgfVxuXG4udS1jb2xvci1ibHVlLWRhcmtlciB7XG4gIGNvbG9yOiAjMDk2MGE1OyB9XG5cbi51LWJnLWJsdWUtZGFya2VyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzA5NjBhNTsgfVxuXG4udS1maWxsLWJsdWUtZGFya2VyIHtcbiAgZmlsbDogIzA5NjBhNTsgfVxuXG4udS1jb2xvci1ncmVlbi1kYXJrZXIge1xuICBjb2xvcjogIzAwMjExNTsgfVxuXG4udS1iZy1ncmVlbi1kYXJrZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAyMTE1OyB9XG5cbi51LWZpbGwtZ3JlZW4tZGFya2VyIHtcbiAgZmlsbDogIzAwMjExNTsgfVxuXG4udS1jb2xvci1jeWFuLWRhcmtlciB7XG4gIGNvbG9yOiAjMzNjMmIzOyB9XG5cbi51LWJnLWN5YW4tZGFya2VyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMzYzJiMzsgfVxuXG4udS1maWxsLWN5YW4tZGFya2VyIHtcbiAgZmlsbDogIzMzYzJiMzsgfVxuXG4udS1jb2xvci15ZWxsb3ctZGFya2VyIHtcbiAgY29sb3I6ICM5OTZkMDA7IH1cblxuLnUtYmcteWVsbG93LWRhcmtlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM5OTZkMDA7IH1cblxuLnUtZmlsbC15ZWxsb3ctZGFya2VyIHtcbiAgZmlsbDogIzk5NmQwMDsgfVxuXG4udS1jb2xvci1vcmFuZ2UtZGFya2VyIHtcbiAgY29sb3I6ICNiYjU4MDg7IH1cblxuLnUtYmctb3JhbmdlLWRhcmtlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNiYjU4MDg7IH1cblxuLnUtZmlsbC1vcmFuZ2UtZGFya2VyIHtcbiAgZmlsbDogI2JiNTgwODsgfVxuXG4udS1jb2xvci1icm93bi1kYXJrZXIge1xuICBjb2xvcjogIzM5MjgyMjsgfVxuXG4udS1iZy1icm93bi1kYXJrZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzkyODIyOyB9XG5cbi51LWZpbGwtYnJvd24tZGFya2VyIHtcbiAgZmlsbDogIzM5MjgyMjsgfVxuXG4udS1jb2xvci1icmFuZC1kYXJrIHtcbiAgY29sb3I6ICM3YTEyMjI7IH1cblxuLnUtYmctYnJhbmQtZGFyayB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3YTEyMjI7IH1cblxuLnUtZmlsbC1icmFuZC1kYXJrIHtcbiAgZmlsbDogIzdhMTIyMjsgfVxuXG4udS1jb2xvci1icmFuZC1kYXJrZXIge1xuICBjb2xvcjogIzRkMGMxNTsgfVxuXG4udS1iZy1icmFuZC1kYXJrZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNGQwYzE1OyB9XG5cbi51LWZpbGwtYnJhbmQtZGFya2VyIHtcbiAgZmlsbDogIzRkMGMxNTsgfVxuXG4udS1jb2xvci1icmFuZC1saWdodCB7XG4gIGNvbG9yOiAjZDIyMDNhOyB9XG5cbi51LWJnLWJyYW5kLWxpZ2h0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2QyMjAzYTsgfVxuXG4udS1maWxsLWJyYW5kLWxpZ2h0IHtcbiAgZmlsbDogI2QyMjAzYTsgfVxuXG4udS1jb2xvci1icmFuZC1saWdodGVyIHtcbiAgY29sb3I6ICNlMzQyNWE7IH1cblxuLnUtYmctYnJhbmQtbGlnaHRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlMzQyNWE7IH1cblxuLnUtZmlsbC1icmFuZC1saWdodGVyIHtcbiAgZmlsbDogI2UzNDI1YTsgfVxuXG4udS1jb2xvci1zZWNvbmRhcnktZGFyayB7XG4gIGNvbG9yOiAjM2Q2NzZkOyB9XG5cbi51LWJnLXNlY29uZGFyeS1kYXJrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzNkNjc2ZDsgfVxuXG4udS1maWxsLXNlY29uZGFyeS1kYXJrIHtcbiAgZmlsbDogIzNkNjc2ZDsgfVxuXG4udS1jb2xvci1zZWNvbmRhcnktZGFya2VyIHtcbiAgY29sb3I6ICMyYjQ4NGM7IH1cblxuLnUtYmctc2Vjb25kYXJ5LWRhcmtlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyYjQ4NGM7IH1cblxuLnUtZmlsbC1zZWNvbmRhcnktZGFya2VyIHtcbiAgZmlsbDogIzJiNDg0YzsgfVxuXG4udS1jb2xvci1zZWNvbmRhcnktbGlnaHQge1xuICBjb2xvcjogIzY2YTFhYTsgfVxuXG4udS1iZy1zZWNvbmRhcnktbGlnaHQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjZhMWFhOyB9XG5cbi51LWZpbGwtc2Vjb25kYXJ5LWxpZ2h0IHtcbiAgZmlsbDogIzY2YTFhYTsgfVxuXG4udS1jb2xvci1zZWNvbmRhcnktbGlnaHRlciB7XG4gIGNvbG9yOiAjYjhkNGQ4OyB9XG5cbi51LWJnLXNlY29uZGFyeS1saWdodGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2I4ZDRkODsgfVxuXG4udS1maWxsLXNlY29uZGFyeS1saWdodGVyIHtcbiAgZmlsbDogI2I4ZDRkODsgfVxuXG4udS1jb2xvci1pbmZvLWRhcmsge1xuICBjb2xvcjogIzBjN2NkNTsgfVxuXG4udS1iZy1pbmZvLWRhcmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGM3Y2Q1OyB9XG5cbi51LWZpbGwtaW5mby1kYXJrIHtcbiAgZmlsbDogIzBjN2NkNTsgfVxuXG4udS1jb2xvci1pbmZvLWRhcmtlciB7XG4gIGNvbG9yOiAjMDk2MGE1OyB9XG5cbi51LWJnLWluZm8tZGFya2VyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzA5NjBhNTsgfVxuXG4udS1maWxsLWluZm8tZGFya2VyIHtcbiAgZmlsbDogIzA5NjBhNTsgfVxuXG4udS1jb2xvci1pbmZvLWxpZ2h0IHtcbiAgY29sb3I6ICM1MWFkZjY7IH1cblxuLnUtYmctaW5mby1saWdodCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1MWFkZjY7IH1cblxuLnUtZmlsbC1pbmZvLWxpZ2h0IHtcbiAgZmlsbDogIzUxYWRmNjsgfVxuXG4udS1jb2xvci1pbmZvLWxpZ2h0ZXIge1xuICBjb2xvcjogIzgyYzRmODsgfVxuXG4udS1iZy1pbmZvLWxpZ2h0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjODJjNGY4OyB9XG5cbi51LWZpbGwtaW5mby1saWdodGVyIHtcbiAgZmlsbDogIzgyYzRmODsgfVxuXG4udS1jb2xvci13YXJuaW5nLWRhcmsge1xuICBjb2xvcjogI2VjNmYwYTsgfVxuXG4udS1iZy13YXJuaW5nLWRhcmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWM2ZjBhOyB9XG5cbi51LWZpbGwtd2FybmluZy1kYXJrIHtcbiAgZmlsbDogI2VjNmYwYTsgfVxuXG4udS1jb2xvci13YXJuaW5nLWRhcmtlciB7XG4gIGNvbG9yOiAjYmI1ODA4OyB9XG5cbi51LWJnLXdhcm5pbmctZGFya2VyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2JiNTgwODsgfVxuXG4udS1maWxsLXdhcm5pbmctZGFya2VyIHtcbiAgZmlsbDogI2JiNTgwODsgfVxuXG4udS1jb2xvci13YXJuaW5nLWxpZ2h0IHtcbiAgY29sb3I6ICNmOGE2NjQ7IH1cblxuLnUtYmctd2FybmluZy1saWdodCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGE2NjQ7IH1cblxuLnUtZmlsbC13YXJuaW5nLWxpZ2h0IHtcbiAgZmlsbDogI2Y4YTY2NDsgfVxuXG4udS1jb2xvci13YXJuaW5nLWxpZ2h0ZXIge1xuICBjb2xvcjogI2ZhYzI5NTsgfVxuXG4udS1iZy13YXJuaW5nLWxpZ2h0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFjMjk1OyB9XG5cbi51LWZpbGwtd2FybmluZy1saWdodGVyIHtcbiAgZmlsbDogI2ZhYzI5NTsgfVxuXG4udS1jb2xvci1zdWNjZXNzLWRhcmsge1xuICBjb2xvcjogIzAwNTQzNTsgfVxuXG4udS1iZy1zdWNjZXNzLWRhcmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA1NDM1OyB9XG5cbi51LWZpbGwtc3VjY2Vzcy1kYXJrIHtcbiAgZmlsbDogIzAwNTQzNTsgfVxuXG4udS1jb2xvci1zdWNjZXNzLWRhcmtlciB7XG4gIGNvbG9yOiAjMDAyMTE1OyB9XG5cbi51LWJnLXN1Y2Nlc3MtZGFya2VyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMjExNTsgfVxuXG4udS1maWxsLXN1Y2Nlc3MtZGFya2VyIHtcbiAgZmlsbDogIzAwMjExNTsgfVxuXG4udS1jb2xvci1zdWNjZXNzLWxpZ2h0IHtcbiAgY29sb3I6ICMwMGJhNzU7IH1cblxuLnUtYmctc3VjY2Vzcy1saWdodCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMGJhNzU7IH1cblxuLnUtZmlsbC1zdWNjZXNzLWxpZ2h0IHtcbiAgZmlsbDogIzAwYmE3NTsgfVxuXG4udS1jb2xvci1zdWNjZXNzLWxpZ2h0ZXIge1xuICBjb2xvcjogIzAwZWQ5NTsgfVxuXG4udS1iZy1zdWNjZXNzLWxpZ2h0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBlZDk1OyB9XG5cbi51LWZpbGwtc3VjY2Vzcy1saWdodGVyIHtcbiAgZmlsbDogIzAwZWQ5NTsgfVxuXG4udS1jb2xvci1lcnJvci1kYXJrIHtcbiAgY29sb3I6ICM5OTBjMjM7IH1cblxuLnUtYmctZXJyb3ItZGFyayB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM5OTBjMjM7IH1cblxuLnUtZmlsbC1lcnJvci1kYXJrIHtcbiAgZmlsbDogIzk5MGMyMzsgfVxuXG4udS1jb2xvci1lcnJvci1kYXJrZXIge1xuICBjb2xvcjogIzZhMDgxODsgfVxuXG4udS1iZy1lcnJvci1kYXJrZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNmEwODE4OyB9XG5cbi51LWZpbGwtZXJyb3ItZGFya2VyIHtcbiAgZmlsbDogIzZhMDgxODsgfVxuXG4udS1jb2xvci1lcnJvci1saWdodCB7XG4gIGNvbG9yOiAjZWQxZTQwOyB9XG5cbi51LWJnLWVycm9yLWxpZ2h0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VkMWU0MDsgfVxuXG4udS1maWxsLWVycm9yLWxpZ2h0IHtcbiAgZmlsbDogI2VkMWU0MDsgfVxuXG4udS1jb2xvci1lcnJvci1saWdodGVyIHtcbiAgY29sb3I6ICNmMTRkNjg7IH1cblxuLnUtYmctZXJyb3ItbGlnaHRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMTRkNjg7IH1cblxuLnUtZmlsbC1lcnJvci1saWdodGVyIHtcbiAgZmlsbDogI2YxNGQ2ODsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMjByZW0pIHtcbiAgLnUtYmctbm9uZVxcQHhzbWFsbCB7XG4gICAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50OyB9XG4gIC51LWNvbG9yLWJsYWNrXFxAeHNtYWxsIHtcbiAgICBjb2xvcjogIzQxNDA0MjsgfVxuICAudS1iZy1ibGFja1xcQHhzbWFsbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzQxNDA0MjsgfVxuICAudS1maWxsLWJsYWNrXFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjNDE0MDQyOyB9XG4gIC51LWNvbG9yLWdyZXlcXEB4c21hbGwge1xuICAgIGNvbG9yOiAjOTM5NTk4OyB9XG4gIC51LWJnLWdyZXlcXEB4c21hbGwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM5Mzk1OTg7IH1cbiAgLnUtZmlsbC1ncmV5XFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjOTM5NTk4OyB9XG4gIC51LWNvbG9yLWxpZ2h0LWdyZXlcXEB4c21hbGwge1xuICAgIGNvbG9yOiAjRjJGMkYyOyB9XG4gIC51LWJnLWxpZ2h0LWdyZXlcXEB4c21hbGwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGMkYyRjI7IH1cbiAgLnUtZmlsbC1saWdodC1ncmV5XFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjRjJGMkYyOyB9XG4gIC51LWNvbG9yLXdoaXRlXFxAeHNtYWxsIHtcbiAgICBjb2xvcjogI0ZGRjsgfVxuICAudS1iZy13aGl0ZVxcQHhzbWFsbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRjsgfVxuICAudS1maWxsLXdoaXRlXFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjRkZGOyB9XG4gIC51LWNvbG9yLWJlaWdlXFxAeHNtYWxsIHtcbiAgICBjb2xvcjogI0YyRjJFQTsgfVxuICAudS1iZy1iZWlnZVxcQHhzbWFsbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0YyRjJFQTsgfVxuICAudS1maWxsLWJlaWdlXFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjRjJGMkVBOyB9XG4gIC51LWNvbG9yLXJlZFxcQHhzbWFsbCB7XG4gICAgY29sb3I6ICNDODEwMkU7IH1cbiAgLnUtYmctcmVkXFxAeHNtYWxsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjQzgxMDJFOyB9XG4gIC51LWZpbGwtcmVkXFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjQzgxMDJFOyB9XG4gIC51LWNvbG9yLXBpbmtcXEB4c21hbGwge1xuICAgIGNvbG9yOiAjRTkxRTYzOyB9XG4gIC51LWJnLXBpbmtcXEB4c21hbGwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNFOTFFNjM7IH1cbiAgLnUtZmlsbC1waW5rXFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjRTkxRTYzOyB9XG4gIC51LWNvbG9yLXB1cnBsZVxcQHhzbWFsbCB7XG4gICAgY29sb3I6ICM2QzU0QTM7IH1cbiAgLnUtYmctcHVycGxlXFxAeHNtYWxsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNkM1NEEzOyB9XG4gIC51LWZpbGwtcHVycGxlXFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjNkM1NEEzOyB9XG4gIC51LWNvbG9yLWJsdWVcXEB4c21hbGwge1xuICAgIGNvbG9yOiAjMjE5NkYzOyB9XG4gIC51LWJnLWJsdWVcXEB4c21hbGwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyMTk2RjM7IH1cbiAgLnUtZmlsbC1ibHVlXFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjMjE5NkYzOyB9XG4gIC51LWNvbG9yLWdyZWVuXFxAeHNtYWxsIHtcbiAgICBjb2xvcjogIzAwODc1NTsgfVxuICAudS1iZy1ncmVlblxcQHhzbWFsbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwODc1NTsgfVxuICAudS1maWxsLWdyZWVuXFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjMDA4NzU1OyB9XG4gIC51LWNvbG9yLWxpZ2h0LWdyZWVuXFxAeHNtYWxsIHtcbiAgICBjb2xvcjogIzZDQzI0QTsgfVxuICAudS1iZy1saWdodC1ncmVlblxcQHhzbWFsbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzZDQzI0QTsgfVxuICAudS1maWxsLWxpZ2h0LWdyZWVuXFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjNkNDMjRBOyB9XG4gIC51LWNvbG9yLXRlYWxcXEB4c21hbGwge1xuICAgIGNvbG9yOiAjNEY4NjhFOyB9XG4gIC51LWJnLXRlYWxcXEB4c21hbGwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM0Rjg2OEU7IH1cbiAgLnUtZmlsbC10ZWFsXFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjNEY4NjhFOyB9XG4gIC51LWNvbG9yLWN5YW5cXEB4c21hbGwge1xuICAgIGNvbG9yOiAjN0VEREQzOyB9XG4gIC51LWJnLWN5YW5cXEB4c21hbGwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM3RURERDM7IH1cbiAgLnUtZmlsbC1jeWFuXFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjN0VEREQzOyB9XG4gIC51LWNvbG9yLXllbGxvd1xcQHhzbWFsbCB7XG4gICAgY29sb3I6ICNGRkI1MDA7IH1cbiAgLnUtYmcteWVsbG93XFxAeHNtYWxsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZCNTAwOyB9XG4gIC51LWZpbGwteWVsbG93XFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjRkZCNTAwOyB9XG4gIC51LWNvbG9yLW9yYW5nZVxcQHhzbWFsbCB7XG4gICAgY29sb3I6ICNGNjhBMzM7IH1cbiAgLnUtYmctb3JhbmdlXFxAeHNtYWxsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjY4QTMzOyB9XG4gIC51LWZpbGwtb3JhbmdlXFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjRjY4QTMzOyB9XG4gIC51LWNvbG9yLWJyb3duXFxAeHNtYWxsIHtcbiAgICBjb2xvcjogIzc5NTU0ODsgfVxuICAudS1iZy1icm93blxcQHhzbWFsbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzc5NTU0ODsgfVxuICAudS1maWxsLWJyb3duXFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjNzk1NTQ4OyB9XG4gIC51LWNvbG9yLWJyYW5kXFxAeHNtYWxsIHtcbiAgICBjb2xvcjogI2E2MTkyZTsgfVxuICAudS1iZy1icmFuZFxcQHhzbWFsbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2E2MTkyZTsgfVxuICAudS1maWxsLWJyYW5kXFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjYTYxOTJlOyB9XG4gIC51LWNvbG9yLXNlY29uZGFyeVxcQHhzbWFsbCB7XG4gICAgY29sb3I6ICM0Rjg2OEU7IH1cbiAgLnUtYmctc2Vjb25kYXJ5XFxAeHNtYWxsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNEY4NjhFOyB9XG4gIC51LWZpbGwtc2Vjb25kYXJ5XFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjNEY4NjhFOyB9XG4gIC51LWNvbG9yLXRlcnRpYXJ5XFxAeHNtYWxsIHtcbiAgICBjb2xvcjogIzdFREREMzsgfVxuICAudS1iZy10ZXJ0aWFyeVxcQHhzbWFsbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzdFREREMzsgfVxuICAudS1maWxsLXRlcnRpYXJ5XFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjN0VEREQzOyB9XG4gIC51LWNvbG9yLWluZm9cXEB4c21hbGwge1xuICAgIGNvbG9yOiAjMjE5NkYzOyB9XG4gIC51LWJnLWluZm9cXEB4c21hbGwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyMTk2RjM7IH1cbiAgLnUtZmlsbC1pbmZvXFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjMjE5NkYzOyB9XG4gIC51LWNvbG9yLXdhcm5pbmdcXEB4c21hbGwge1xuICAgIGNvbG9yOiAjRjY4QTMzOyB9XG4gIC51LWJnLXdhcm5pbmdcXEB4c21hbGwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGNjhBMzM7IH1cbiAgLnUtZmlsbC13YXJuaW5nXFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjRjY4QTMzOyB9XG4gIC51LWNvbG9yLXN1Y2Nlc3NcXEB4c21hbGwge1xuICAgIGNvbG9yOiAjMDA4NzU1OyB9XG4gIC51LWJnLXN1Y2Nlc3NcXEB4c21hbGwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDg3NTU7IH1cbiAgLnUtZmlsbC1zdWNjZXNzXFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjMDA4NzU1OyB9XG4gIC51LWNvbG9yLWVycm9yXFxAeHNtYWxsIHtcbiAgICBjb2xvcjogI0M4MTAyRTsgfVxuICAudS1iZy1lcnJvclxcQHhzbWFsbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0M4MTAyRTsgfVxuICAudS1maWxsLWVycm9yXFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjQzgxMDJFOyB9XG4gIC51LWNvbG9yLWRlZmF1bHRcXEB4c21hbGwge1xuICAgIGNvbG9yOiAjNzk3YjdmOyB9XG4gIC51LWJnLWRlZmF1bHRcXEB4c21hbGwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM3OTdiN2Y7IH1cbiAgLnUtZmlsbC1kZWZhdWx0XFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjNzk3YjdmOyB9XG4gIC51LWNvbG9yLWRpc2FibGVkXFxAeHNtYWxsIHtcbiAgICBjb2xvcjogIzc5N2I3ZjsgfVxuICAudS1iZy1kaXNhYmxlZFxcQHhzbWFsbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzc5N2I3ZjsgfVxuICAudS1maWxsLWRpc2FibGVkXFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjNzk3YjdmOyB9XG4gIC51LWNvbG9yLXF1aWV0XFxAeHNtYWxsIHtcbiAgICBjb2xvcjogIzc5N2I3ZjsgfVxuICAudS1iZy1xdWlldFxcQHhzbWFsbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzc5N2I3ZjsgfVxuICAudS1maWxsLXF1aWV0XFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjNzk3YjdmOyB9XG4gIC51LWNvbG9yLWdyZXktZGFya1xcQHhzbWFsbCB7XG4gICAgY29sb3I6ICM3OTdiN2Y7IH1cbiAgLnUtYmctZ3JleS1kYXJrXFxAeHNtYWxsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzk3YjdmOyB9XG4gIC51LWZpbGwtZ3JleS1kYXJrXFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjNzk3YjdmOyB9XG4gIC51LWNvbG9yLXJlZC1kYXJrXFxAeHNtYWxsIHtcbiAgICBjb2xvcjogIzk5MGMyMzsgfVxuICAudS1iZy1yZWQtZGFya1xcQHhzbWFsbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzk5MGMyMzsgfVxuICAudS1maWxsLXJlZC1kYXJrXFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjOTkwYzIzOyB9XG4gIC51LWNvbG9yLXBpbmstZGFya1xcQHhzbWFsbCB7XG4gICAgY29sb3I6ICNjMTEzNGU7IH1cbiAgLnUtYmctcGluay1kYXJrXFxAeHNtYWxsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzExMzRlOyB9XG4gIC51LWZpbGwtcGluay1kYXJrXFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjYzExMzRlOyB9XG4gIC51LWNvbG9yLXB1cnBsZS1kYXJrXFxAeHNtYWxsIHtcbiAgICBjb2xvcjogIzU2NDM4MTsgfVxuICAudS1iZy1wdXJwbGUtZGFya1xcQHhzbWFsbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzU2NDM4MTsgfVxuICAudS1maWxsLXB1cnBsZS1kYXJrXFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjNTY0MzgxOyB9XG4gIC51LWNvbG9yLWJsdWUtZGFya1xcQHhzbWFsbCB7XG4gICAgY29sb3I6ICMwYzdjZDU7IH1cbiAgLnUtYmctYmx1ZS1kYXJrXFxAeHNtYWxsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGM3Y2Q1OyB9XG4gIC51LWZpbGwtYmx1ZS1kYXJrXFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjMGM3Y2Q1OyB9XG4gIC51LWNvbG9yLWdyZWVuLWRhcmtcXEB4c21hbGwge1xuICAgIGNvbG9yOiAjMDA1NDM1OyB9XG4gIC51LWJnLWdyZWVuLWRhcmtcXEB4c21hbGwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDU0MzU7IH1cbiAgLnUtZmlsbC1ncmVlbi1kYXJrXFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjMDA1NDM1OyB9XG4gIC51LWNvbG9yLWN5YW4tZGFya1xcQHhzbWFsbCB7XG4gICAgY29sb3I6ICM1NmQyYzU7IH1cbiAgLnUtYmctY3lhbi1kYXJrXFxAeHNtYWxsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTZkMmM1OyB9XG4gIC51LWZpbGwtY3lhbi1kYXJrXFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjNTZkMmM1OyB9XG4gIC51LWNvbG9yLXllbGxvdy1kYXJrXFxAeHNtYWxsIHtcbiAgICBjb2xvcjogI2NjOTEwMDsgfVxuICAudS1iZy15ZWxsb3ctZGFya1xcQHhzbWFsbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2NjOTEwMDsgfVxuICAudS1maWxsLXllbGxvdy1kYXJrXFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjY2M5MTAwOyB9XG4gIC51LWNvbG9yLW9yYW5nZS1kYXJrXFxAeHNtYWxsIHtcbiAgICBjb2xvcjogI2VjNmYwYTsgfVxuICAudS1iZy1vcmFuZ2UtZGFya1xcQHhzbWFsbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VjNmYwYTsgfVxuICAudS1maWxsLW9yYW5nZS1kYXJrXFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjZWM2ZjBhOyB9XG4gIC51LWNvbG9yLWJyb3duLWRhcmtcXEB4c21hbGwge1xuICAgIGNvbG9yOiAjNTkzZjM1OyB9XG4gIC51LWJnLWJyb3duLWRhcmtcXEB4c21hbGwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM1OTNmMzU7IH1cbiAgLnUtZmlsbC1icm93bi1kYXJrXFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjNTkzZjM1OyB9XG4gIC51LWNvbG9yLWdyZXktZGFya2VyXFxAeHNtYWxsIHtcbiAgICBjb2xvcjogIzYwNjI2NTsgfVxuICAudS1iZy1ncmV5LWRhcmtlclxcQHhzbWFsbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzYwNjI2NTsgfVxuICAudS1maWxsLWdyZXktZGFya2VyXFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjNjA2MjY1OyB9XG4gIC51LWNvbG9yLXJlZC1kYXJrZXJcXEB4c21hbGwge1xuICAgIGNvbG9yOiAjNmEwODE4OyB9XG4gIC51LWJnLXJlZC1kYXJrZXJcXEB4c21hbGwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM2YTA4MTg7IH1cbiAgLnUtZmlsbC1yZWQtZGFya2VyXFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjNmEwODE4OyB9XG4gIC51LWNvbG9yLWdyZXktbGlnaHRcXEB4c21hbGwge1xuICAgIGNvbG9yOiAjYWRhZmIxOyB9XG4gIC51LWJnLWdyZXktbGlnaHRcXEB4c21hbGwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNhZGFmYjE7IH1cbiAgLnUtZmlsbC1ncmV5LWxpZ2h0XFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjYWRhZmIxOyB9XG4gIC51LWNvbG9yLXJlZC1saWdodFxcQHhzbWFsbCB7XG4gICAgY29sb3I6ICNlZDFlNDA7IH1cbiAgLnUtYmctcmVkLWxpZ2h0XFxAeHNtYWxsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWQxZTQwOyB9XG4gIC51LWZpbGwtcmVkLWxpZ2h0XFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjZWQxZTQwOyB9XG4gIC51LWNvbG9yLXBpbmstbGlnaHRcXEB4c21hbGwge1xuICAgIGNvbG9yOiAjZWU0YzgzOyB9XG4gIC51LWJnLXBpbmstbGlnaHRcXEB4c21hbGwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlZTRjODM7IH1cbiAgLnUtZmlsbC1waW5rLWxpZ2h0XFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjZWU0YzgzOyB9XG4gIC51LWNvbG9yLXB1cnBsZS1saWdodFxcQHhzbWFsbCB7XG4gICAgY29sb3I6ICM4ODczYjc7IH1cbiAgLnUtYmctcHVycGxlLWxpZ2h0XFxAeHNtYWxsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjODg3M2I3OyB9XG4gIC51LWZpbGwtcHVycGxlLWxpZ2h0XFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjODg3M2I3OyB9XG4gIC51LWNvbG9yLWJsdWUtbGlnaHRcXEB4c21hbGwge1xuICAgIGNvbG9yOiAjNTFhZGY2OyB9XG4gIC51LWJnLWJsdWUtbGlnaHRcXEB4c21hbGwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM1MWFkZjY7IH1cbiAgLnUtZmlsbC1ibHVlLWxpZ2h0XFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjNTFhZGY2OyB9XG4gIC51LWNvbG9yLWdyZWVuLWxpZ2h0XFxAeHNtYWxsIHtcbiAgICBjb2xvcjogIzAwYmE3NTsgfVxuICAudS1iZy1ncmVlbi1saWdodFxcQHhzbWFsbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwYmE3NTsgfVxuICAudS1maWxsLWdyZWVuLWxpZ2h0XFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjMDBiYTc1OyB9XG4gIC51LWNvbG9yLWN5YW4tbGlnaHRcXEB4c21hbGwge1xuICAgIGNvbG9yOiAjYTZlOGUxOyB9XG4gIC51LWJnLWN5YW4tbGlnaHRcXEB4c21hbGwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNhNmU4ZTE7IH1cbiAgLnUtZmlsbC1jeWFuLWxpZ2h0XFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjYTZlOGUxOyB9XG4gIC51LWNvbG9yLXllbGxvdy1saWdodFxcQHhzbWFsbCB7XG4gICAgY29sb3I6ICNmZmM0MzM7IH1cbiAgLnUtYmcteWVsbG93LWxpZ2h0XFxAeHNtYWxsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZjNDMzOyB9XG4gIC51LWZpbGwteWVsbG93LWxpZ2h0XFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjZmZjNDMzOyB9XG4gIC51LWNvbG9yLW9yYW5nZS1saWdodFxcQHhzbWFsbCB7XG4gICAgY29sb3I6ICNmOGE2NjQ7IH1cbiAgLnUtYmctb3JhbmdlLWxpZ2h0XFxAeHNtYWxsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhhNjY0OyB9XG4gIC51LWZpbGwtb3JhbmdlLWxpZ2h0XFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjZjhhNjY0OyB9XG4gIC51LWNvbG9yLWJyb3duLWxpZ2h0XFxAeHNtYWxsIHtcbiAgICBjb2xvcjogIzk5NmI1YjsgfVxuICAudS1iZy1icm93bi1saWdodFxcQHhzbWFsbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzk5NmI1YjsgfVxuICAudS1maWxsLWJyb3duLWxpZ2h0XFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjOTk2YjViOyB9XG4gIC51LWNvbG9yLWdyZXktbGlnaHRlclxcQHhzbWFsbCB7XG4gICAgY29sb3I6ICNjN2M4Y2E7IH1cbiAgLnUtYmctZ3JleS1saWdodGVyXFxAeHNtYWxsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzdjOGNhOyB9XG4gIC51LWZpbGwtZ3JleS1saWdodGVyXFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjYzdjOGNhOyB9XG4gIC51LWNvbG9yLXJlZC1saWdodGVyXFxAeHNtYWxsIHtcbiAgICBjb2xvcjogI2YxNGQ2ODsgfVxuICAudS1iZy1yZWQtbGlnaHRlclxcQHhzbWFsbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YxNGQ2ODsgfVxuICAudS1maWxsLXJlZC1saWdodGVyXFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjZjE0ZDY4OyB9XG4gIC51LWNvbG9yLXBpbmstbGlnaHRlclxcQHhzbWFsbCB7XG4gICAgY29sb3I6ICNmMjdiYTM7IH1cbiAgLnUtYmctcGluay1saWdodGVyXFxAeHNtYWxsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjI3YmEzOyB9XG4gIC51LWZpbGwtcGluay1saWdodGVyXFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjZjI3YmEzOyB9XG4gIC51LWNvbG9yLXB1cnBsZS1saWdodGVyXFxAeHNtYWxsIHtcbiAgICBjb2xvcjogI2E0OTVjODsgfVxuICAudS1iZy1wdXJwbGUtbGlnaHRlclxcQHhzbWFsbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2E0OTVjODsgfVxuICAudS1maWxsLXB1cnBsZS1saWdodGVyXFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjYTQ5NWM4OyB9XG4gIC51LWNvbG9yLWJsdWUtbGlnaHRlclxcQHhzbWFsbCB7XG4gICAgY29sb3I6ICM4MmM0Zjg7IH1cbiAgLnUtYmctYmx1ZS1saWdodGVyXFxAeHNtYWxsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjODJjNGY4OyB9XG4gIC51LWZpbGwtYmx1ZS1saWdodGVyXFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjODJjNGY4OyB9XG4gIC51LWNvbG9yLWdyZWVuLWxpZ2h0ZXJcXEB4c21hbGwge1xuICAgIGNvbG9yOiAjMDBlZDk1OyB9XG4gIC51LWJnLWdyZWVuLWxpZ2h0ZXJcXEB4c21hbGwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMGVkOTU7IH1cbiAgLnUtZmlsbC1ncmVlbi1saWdodGVyXFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjMDBlZDk1OyB9XG4gIC51LWNvbG9yLWN5YW4tbGlnaHRlclxcQHhzbWFsbCB7XG4gICAgY29sb3I6ICNjZmYyZWY7IH1cbiAgLnUtYmctY3lhbi1saWdodGVyXFxAeHNtYWxsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2ZmMmVmOyB9XG4gIC51LWZpbGwtY3lhbi1saWdodGVyXFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjY2ZmMmVmOyB9XG4gIC51LWNvbG9yLXllbGxvdy1saWdodGVyXFxAeHNtYWxsIHtcbiAgICBjb2xvcjogI2ZmZDM2NjsgfVxuICAudS1iZy15ZWxsb3ctbGlnaHRlclxcQHhzbWFsbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZDM2NjsgfVxuICAudS1maWxsLXllbGxvdy1saWdodGVyXFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjZmZkMzY2OyB9XG4gIC51LWNvbG9yLW9yYW5nZS1saWdodGVyXFxAeHNtYWxsIHtcbiAgICBjb2xvcjogI2ZhYzI5NTsgfVxuICAudS1iZy1vcmFuZ2UtbGlnaHRlclxcQHhzbWFsbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZhYzI5NTsgfVxuICAudS1maWxsLW9yYW5nZS1saWdodGVyXFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjZmFjMjk1OyB9XG4gIC51LWNvbG9yLWJyb3duLWxpZ2h0ZXJcXEB4c21hbGwge1xuICAgIGNvbG9yOiAjYWY4Nzc4OyB9XG4gIC51LWJnLWJyb3duLWxpZ2h0ZXJcXEB4c21hbGwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNhZjg3Nzg7IH1cbiAgLnUtZmlsbC1icm93bi1saWdodGVyXFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjYWY4Nzc4OyB9XG4gIC51LWNvbG9yLXBpbmstZGFya2VyXFxAeHNtYWxsIHtcbiAgICBjb2xvcjogIzkzMGUzYjsgfVxuICAudS1iZy1waW5rLWRhcmtlclxcQHhzbWFsbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzkzMGUzYjsgfVxuICAudS1maWxsLXBpbmstZGFya2VyXFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjOTMwZTNiOyB9XG4gIC51LWNvbG9yLXB1cnBsZS1kYXJrZXJcXEB4c21hbGwge1xuICAgIGNvbG9yOiAjM2YzMTYwOyB9XG4gIC51LWJnLXB1cnBsZS1kYXJrZXJcXEB4c21hbGwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzZjMxNjA7IH1cbiAgLnUtZmlsbC1wdXJwbGUtZGFya2VyXFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjM2YzMTYwOyB9XG4gIC51LWNvbG9yLWJsdWUtZGFya2VyXFxAeHNtYWxsIHtcbiAgICBjb2xvcjogIzA5NjBhNTsgfVxuICAudS1iZy1ibHVlLWRhcmtlclxcQHhzbWFsbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzA5NjBhNTsgfVxuICAudS1maWxsLWJsdWUtZGFya2VyXFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjMDk2MGE1OyB9XG4gIC51LWNvbG9yLWdyZWVuLWRhcmtlclxcQHhzbWFsbCB7XG4gICAgY29sb3I6ICMwMDIxMTU7IH1cbiAgLnUtYmctZ3JlZW4tZGFya2VyXFxAeHNtYWxsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAyMTE1OyB9XG4gIC51LWZpbGwtZ3JlZW4tZGFya2VyXFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjMDAyMTE1OyB9XG4gIC51LWNvbG9yLWN5YW4tZGFya2VyXFxAeHNtYWxsIHtcbiAgICBjb2xvcjogIzMzYzJiMzsgfVxuICAudS1iZy1jeWFuLWRhcmtlclxcQHhzbWFsbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzMzYzJiMzsgfVxuICAudS1maWxsLWN5YW4tZGFya2VyXFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjMzNjMmIzOyB9XG4gIC51LWNvbG9yLXllbGxvdy1kYXJrZXJcXEB4c21hbGwge1xuICAgIGNvbG9yOiAjOTk2ZDAwOyB9XG4gIC51LWJnLXllbGxvdy1kYXJrZXJcXEB4c21hbGwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM5OTZkMDA7IH1cbiAgLnUtZmlsbC15ZWxsb3ctZGFya2VyXFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjOTk2ZDAwOyB9XG4gIC51LWNvbG9yLW9yYW5nZS1kYXJrZXJcXEB4c21hbGwge1xuICAgIGNvbG9yOiAjYmI1ODA4OyB9XG4gIC51LWJnLW9yYW5nZS1kYXJrZXJcXEB4c21hbGwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNiYjU4MDg7IH1cbiAgLnUtZmlsbC1vcmFuZ2UtZGFya2VyXFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjYmI1ODA4OyB9XG4gIC51LWNvbG9yLWJyb3duLWRhcmtlclxcQHhzbWFsbCB7XG4gICAgY29sb3I6ICMzOTI4MjI7IH1cbiAgLnUtYmctYnJvd24tZGFya2VyXFxAeHNtYWxsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzkyODIyOyB9XG4gIC51LWZpbGwtYnJvd24tZGFya2VyXFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjMzkyODIyOyB9XG4gIC51LWNvbG9yLWJyYW5kLWRhcmtcXEB4c21hbGwge1xuICAgIGNvbG9yOiAjN2ExMjIyOyB9XG4gIC51LWJnLWJyYW5kLWRhcmtcXEB4c21hbGwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM3YTEyMjI7IH1cbiAgLnUtZmlsbC1icmFuZC1kYXJrXFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjN2ExMjIyOyB9XG4gIC51LWNvbG9yLWJyYW5kLWRhcmtlclxcQHhzbWFsbCB7XG4gICAgY29sb3I6ICM0ZDBjMTU7IH1cbiAgLnUtYmctYnJhbmQtZGFya2VyXFxAeHNtYWxsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNGQwYzE1OyB9XG4gIC51LWZpbGwtYnJhbmQtZGFya2VyXFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjNGQwYzE1OyB9XG4gIC51LWNvbG9yLWJyYW5kLWxpZ2h0XFxAeHNtYWxsIHtcbiAgICBjb2xvcjogI2QyMjAzYTsgfVxuICAudS1iZy1icmFuZC1saWdodFxcQHhzbWFsbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2QyMjAzYTsgfVxuICAudS1maWxsLWJyYW5kLWxpZ2h0XFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjZDIyMDNhOyB9XG4gIC51LWNvbG9yLWJyYW5kLWxpZ2h0ZXJcXEB4c21hbGwge1xuICAgIGNvbG9yOiAjZTM0MjVhOyB9XG4gIC51LWJnLWJyYW5kLWxpZ2h0ZXJcXEB4c21hbGwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlMzQyNWE7IH1cbiAgLnUtZmlsbC1icmFuZC1saWdodGVyXFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjZTM0MjVhOyB9XG4gIC51LWNvbG9yLXNlY29uZGFyeS1kYXJrXFxAeHNtYWxsIHtcbiAgICBjb2xvcjogIzNkNjc2ZDsgfVxuICAudS1iZy1zZWNvbmRhcnktZGFya1xcQHhzbWFsbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzNkNjc2ZDsgfVxuICAudS1maWxsLXNlY29uZGFyeS1kYXJrXFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjM2Q2NzZkOyB9XG4gIC51LWNvbG9yLXNlY29uZGFyeS1kYXJrZXJcXEB4c21hbGwge1xuICAgIGNvbG9yOiAjMmI0ODRjOyB9XG4gIC51LWJnLXNlY29uZGFyeS1kYXJrZXJcXEB4c21hbGwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyYjQ4NGM7IH1cbiAgLnUtZmlsbC1zZWNvbmRhcnktZGFya2VyXFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjMmI0ODRjOyB9XG4gIC51LWNvbG9yLXNlY29uZGFyeS1saWdodFxcQHhzbWFsbCB7XG4gICAgY29sb3I6ICM2NmExYWE7IH1cbiAgLnUtYmctc2Vjb25kYXJ5LWxpZ2h0XFxAeHNtYWxsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjZhMWFhOyB9XG4gIC51LWZpbGwtc2Vjb25kYXJ5LWxpZ2h0XFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjNjZhMWFhOyB9XG4gIC51LWNvbG9yLXNlY29uZGFyeS1saWdodGVyXFxAeHNtYWxsIHtcbiAgICBjb2xvcjogI2I4ZDRkODsgfVxuICAudS1iZy1zZWNvbmRhcnktbGlnaHRlclxcQHhzbWFsbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2I4ZDRkODsgfVxuICAudS1maWxsLXNlY29uZGFyeS1saWdodGVyXFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjYjhkNGQ4OyB9XG4gIC51LWNvbG9yLWluZm8tZGFya1xcQHhzbWFsbCB7XG4gICAgY29sb3I6ICMwYzdjZDU7IH1cbiAgLnUtYmctaW5mby1kYXJrXFxAeHNtYWxsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGM3Y2Q1OyB9XG4gIC51LWZpbGwtaW5mby1kYXJrXFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjMGM3Y2Q1OyB9XG4gIC51LWNvbG9yLWluZm8tZGFya2VyXFxAeHNtYWxsIHtcbiAgICBjb2xvcjogIzA5NjBhNTsgfVxuICAudS1iZy1pbmZvLWRhcmtlclxcQHhzbWFsbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzA5NjBhNTsgfVxuICAudS1maWxsLWluZm8tZGFya2VyXFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjMDk2MGE1OyB9XG4gIC51LWNvbG9yLWluZm8tbGlnaHRcXEB4c21hbGwge1xuICAgIGNvbG9yOiAjNTFhZGY2OyB9XG4gIC51LWJnLWluZm8tbGlnaHRcXEB4c21hbGwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM1MWFkZjY7IH1cbiAgLnUtZmlsbC1pbmZvLWxpZ2h0XFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjNTFhZGY2OyB9XG4gIC51LWNvbG9yLWluZm8tbGlnaHRlclxcQHhzbWFsbCB7XG4gICAgY29sb3I6ICM4MmM0Zjg7IH1cbiAgLnUtYmctaW5mby1saWdodGVyXFxAeHNtYWxsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjODJjNGY4OyB9XG4gIC51LWZpbGwtaW5mby1saWdodGVyXFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjODJjNGY4OyB9XG4gIC51LWNvbG9yLXdhcm5pbmctZGFya1xcQHhzbWFsbCB7XG4gICAgY29sb3I6ICNlYzZmMGE7IH1cbiAgLnUtYmctd2FybmluZy1kYXJrXFxAeHNtYWxsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWM2ZjBhOyB9XG4gIC51LWZpbGwtd2FybmluZy1kYXJrXFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjZWM2ZjBhOyB9XG4gIC51LWNvbG9yLXdhcm5pbmctZGFya2VyXFxAeHNtYWxsIHtcbiAgICBjb2xvcjogI2JiNTgwODsgfVxuICAudS1iZy13YXJuaW5nLWRhcmtlclxcQHhzbWFsbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2JiNTgwODsgfVxuICAudS1maWxsLXdhcm5pbmctZGFya2VyXFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjYmI1ODA4OyB9XG4gIC51LWNvbG9yLXdhcm5pbmctbGlnaHRcXEB4c21hbGwge1xuICAgIGNvbG9yOiAjZjhhNjY0OyB9XG4gIC51LWJnLXdhcm5pbmctbGlnaHRcXEB4c21hbGwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmOGE2NjQ7IH1cbiAgLnUtZmlsbC13YXJuaW5nLWxpZ2h0XFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjZjhhNjY0OyB9XG4gIC51LWNvbG9yLXdhcm5pbmctbGlnaHRlclxcQHhzbWFsbCB7XG4gICAgY29sb3I6ICNmYWMyOTU7IH1cbiAgLnUtYmctd2FybmluZy1saWdodGVyXFxAeHNtYWxsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFjMjk1OyB9XG4gIC51LWZpbGwtd2FybmluZy1saWdodGVyXFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjZmFjMjk1OyB9XG4gIC51LWNvbG9yLXN1Y2Nlc3MtZGFya1xcQHhzbWFsbCB7XG4gICAgY29sb3I6ICMwMDU0MzU7IH1cbiAgLnUtYmctc3VjY2Vzcy1kYXJrXFxAeHNtYWxsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA1NDM1OyB9XG4gIC51LWZpbGwtc3VjY2Vzcy1kYXJrXFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjMDA1NDM1OyB9XG4gIC51LWNvbG9yLXN1Y2Nlc3MtZGFya2VyXFxAeHNtYWxsIHtcbiAgICBjb2xvcjogIzAwMjExNTsgfVxuICAudS1iZy1zdWNjZXNzLWRhcmtlclxcQHhzbWFsbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMjExNTsgfVxuICAudS1maWxsLXN1Y2Nlc3MtZGFya2VyXFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjMDAyMTE1OyB9XG4gIC51LWNvbG9yLXN1Y2Nlc3MtbGlnaHRcXEB4c21hbGwge1xuICAgIGNvbG9yOiAjMDBiYTc1OyB9XG4gIC51LWJnLXN1Y2Nlc3MtbGlnaHRcXEB4c21hbGwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMGJhNzU7IH1cbiAgLnUtZmlsbC1zdWNjZXNzLWxpZ2h0XFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjMDBiYTc1OyB9XG4gIC51LWNvbG9yLXN1Y2Nlc3MtbGlnaHRlclxcQHhzbWFsbCB7XG4gICAgY29sb3I6ICMwMGVkOTU7IH1cbiAgLnUtYmctc3VjY2Vzcy1saWdodGVyXFxAeHNtYWxsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBlZDk1OyB9XG4gIC51LWZpbGwtc3VjY2Vzcy1saWdodGVyXFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjMDBlZDk1OyB9XG4gIC51LWNvbG9yLWVycm9yLWRhcmtcXEB4c21hbGwge1xuICAgIGNvbG9yOiAjOTkwYzIzOyB9XG4gIC51LWJnLWVycm9yLWRhcmtcXEB4c21hbGwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM5OTBjMjM7IH1cbiAgLnUtZmlsbC1lcnJvci1kYXJrXFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjOTkwYzIzOyB9XG4gIC51LWNvbG9yLWVycm9yLWRhcmtlclxcQHhzbWFsbCB7XG4gICAgY29sb3I6ICM2YTA4MTg7IH1cbiAgLnUtYmctZXJyb3ItZGFya2VyXFxAeHNtYWxsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNmEwODE4OyB9XG4gIC51LWZpbGwtZXJyb3ItZGFya2VyXFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjNmEwODE4OyB9XG4gIC51LWNvbG9yLWVycm9yLWxpZ2h0XFxAeHNtYWxsIHtcbiAgICBjb2xvcjogI2VkMWU0MDsgfVxuICAudS1iZy1lcnJvci1saWdodFxcQHhzbWFsbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VkMWU0MDsgfVxuICAudS1maWxsLWVycm9yLWxpZ2h0XFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjZWQxZTQwOyB9XG4gIC51LWNvbG9yLWVycm9yLWxpZ2h0ZXJcXEB4c21hbGwge1xuICAgIGNvbG9yOiAjZjE0ZDY4OyB9XG4gIC51LWJnLWVycm9yLWxpZ2h0ZXJcXEB4c21hbGwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmMTRkNjg7IH1cbiAgLnUtZmlsbC1lcnJvci1saWdodGVyXFxAeHNtYWxsIHtcbiAgICBmaWxsOiAjZjE0ZDY4OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDMwcmVtKSB7XG4gIC51LWJnLW5vbmVcXEBzbWFsbCB7XG4gICAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50OyB9XG4gIC51LWNvbG9yLWJsYWNrXFxAc21hbGwge1xuICAgIGNvbG9yOiAjNDE0MDQyOyB9XG4gIC51LWJnLWJsYWNrXFxAc21hbGwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM0MTQwNDI7IH1cbiAgLnUtZmlsbC1ibGFja1xcQHNtYWxsIHtcbiAgICBmaWxsOiAjNDE0MDQyOyB9XG4gIC51LWNvbG9yLWdyZXlcXEBzbWFsbCB7XG4gICAgY29sb3I6ICM5Mzk1OTg7IH1cbiAgLnUtYmctZ3JleVxcQHNtYWxsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOTM5NTk4OyB9XG4gIC51LWZpbGwtZ3JleVxcQHNtYWxsIHtcbiAgICBmaWxsOiAjOTM5NTk4OyB9XG4gIC51LWNvbG9yLWxpZ2h0LWdyZXlcXEBzbWFsbCB7XG4gICAgY29sb3I6ICNGMkYyRjI7IH1cbiAgLnUtYmctbGlnaHQtZ3JleVxcQHNtYWxsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjJGMkYyOyB9XG4gIC51LWZpbGwtbGlnaHQtZ3JleVxcQHNtYWxsIHtcbiAgICBmaWxsOiAjRjJGMkYyOyB9XG4gIC51LWNvbG9yLXdoaXRlXFxAc21hbGwge1xuICAgIGNvbG9yOiAjRkZGOyB9XG4gIC51LWJnLXdoaXRlXFxAc21hbGwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGRkY7IH1cbiAgLnUtZmlsbC13aGl0ZVxcQHNtYWxsIHtcbiAgICBmaWxsOiAjRkZGOyB9XG4gIC51LWNvbG9yLWJlaWdlXFxAc21hbGwge1xuICAgIGNvbG9yOiAjRjJGMkVBOyB9XG4gIC51LWJnLWJlaWdlXFxAc21hbGwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGMkYyRUE7IH1cbiAgLnUtZmlsbC1iZWlnZVxcQHNtYWxsIHtcbiAgICBmaWxsOiAjRjJGMkVBOyB9XG4gIC51LWNvbG9yLXJlZFxcQHNtYWxsIHtcbiAgICBjb2xvcjogI0M4MTAyRTsgfVxuICAudS1iZy1yZWRcXEBzbWFsbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0M4MTAyRTsgfVxuICAudS1maWxsLXJlZFxcQHNtYWxsIHtcbiAgICBmaWxsOiAjQzgxMDJFOyB9XG4gIC51LWNvbG9yLXBpbmtcXEBzbWFsbCB7XG4gICAgY29sb3I6ICNFOTFFNjM7IH1cbiAgLnUtYmctcGlua1xcQHNtYWxsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRTkxRTYzOyB9XG4gIC51LWZpbGwtcGlua1xcQHNtYWxsIHtcbiAgICBmaWxsOiAjRTkxRTYzOyB9XG4gIC51LWNvbG9yLXB1cnBsZVxcQHNtYWxsIHtcbiAgICBjb2xvcjogIzZDNTRBMzsgfVxuICAudS1iZy1wdXJwbGVcXEBzbWFsbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzZDNTRBMzsgfVxuICAudS1maWxsLXB1cnBsZVxcQHNtYWxsIHtcbiAgICBmaWxsOiAjNkM1NEEzOyB9XG4gIC51LWNvbG9yLWJsdWVcXEBzbWFsbCB7XG4gICAgY29sb3I6ICMyMTk2RjM7IH1cbiAgLnUtYmctYmx1ZVxcQHNtYWxsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjE5NkYzOyB9XG4gIC51LWZpbGwtYmx1ZVxcQHNtYWxsIHtcbiAgICBmaWxsOiAjMjE5NkYzOyB9XG4gIC51LWNvbG9yLWdyZWVuXFxAc21hbGwge1xuICAgIGNvbG9yOiAjMDA4NzU1OyB9XG4gIC51LWJnLWdyZWVuXFxAc21hbGwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDg3NTU7IH1cbiAgLnUtZmlsbC1ncmVlblxcQHNtYWxsIHtcbiAgICBmaWxsOiAjMDA4NzU1OyB9XG4gIC51LWNvbG9yLWxpZ2h0LWdyZWVuXFxAc21hbGwge1xuICAgIGNvbG9yOiAjNkNDMjRBOyB9XG4gIC51LWJnLWxpZ2h0LWdyZWVuXFxAc21hbGwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM2Q0MyNEE7IH1cbiAgLnUtZmlsbC1saWdodC1ncmVlblxcQHNtYWxsIHtcbiAgICBmaWxsOiAjNkNDMjRBOyB9XG4gIC51LWNvbG9yLXRlYWxcXEBzbWFsbCB7XG4gICAgY29sb3I6ICM0Rjg2OEU7IH1cbiAgLnUtYmctdGVhbFxcQHNtYWxsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNEY4NjhFOyB9XG4gIC51LWZpbGwtdGVhbFxcQHNtYWxsIHtcbiAgICBmaWxsOiAjNEY4NjhFOyB9XG4gIC51LWNvbG9yLWN5YW5cXEBzbWFsbCB7XG4gICAgY29sb3I6ICM3RURERDM7IH1cbiAgLnUtYmctY3lhblxcQHNtYWxsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjN0VEREQzOyB9XG4gIC51LWZpbGwtY3lhblxcQHNtYWxsIHtcbiAgICBmaWxsOiAjN0VEREQzOyB9XG4gIC51LWNvbG9yLXllbGxvd1xcQHNtYWxsIHtcbiAgICBjb2xvcjogI0ZGQjUwMDsgfVxuICAudS1iZy15ZWxsb3dcXEBzbWFsbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGQjUwMDsgfVxuICAudS1maWxsLXllbGxvd1xcQHNtYWxsIHtcbiAgICBmaWxsOiAjRkZCNTAwOyB9XG4gIC51LWNvbG9yLW9yYW5nZVxcQHNtYWxsIHtcbiAgICBjb2xvcjogI0Y2OEEzMzsgfVxuICAudS1iZy1vcmFuZ2VcXEBzbWFsbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0Y2OEEzMzsgfVxuICAudS1maWxsLW9yYW5nZVxcQHNtYWxsIHtcbiAgICBmaWxsOiAjRjY4QTMzOyB9XG4gIC51LWNvbG9yLWJyb3duXFxAc21hbGwge1xuICAgIGNvbG9yOiAjNzk1NTQ4OyB9XG4gIC51LWJnLWJyb3duXFxAc21hbGwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM3OTU1NDg7IH1cbiAgLnUtZmlsbC1icm93blxcQHNtYWxsIHtcbiAgICBmaWxsOiAjNzk1NTQ4OyB9XG4gIC51LWNvbG9yLWJyYW5kXFxAc21hbGwge1xuICAgIGNvbG9yOiAjYTYxOTJlOyB9XG4gIC51LWJnLWJyYW5kXFxAc21hbGwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNhNjE5MmU7IH1cbiAgLnUtZmlsbC1icmFuZFxcQHNtYWxsIHtcbiAgICBmaWxsOiAjYTYxOTJlOyB9XG4gIC51LWNvbG9yLXNlY29uZGFyeVxcQHNtYWxsIHtcbiAgICBjb2xvcjogIzRGODY4RTsgfVxuICAudS1iZy1zZWNvbmRhcnlcXEBzbWFsbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzRGODY4RTsgfVxuICAudS1maWxsLXNlY29uZGFyeVxcQHNtYWxsIHtcbiAgICBmaWxsOiAjNEY4NjhFOyB9XG4gIC51LWNvbG9yLXRlcnRpYXJ5XFxAc21hbGwge1xuICAgIGNvbG9yOiAjN0VEREQzOyB9XG4gIC51LWJnLXRlcnRpYXJ5XFxAc21hbGwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM3RURERDM7IH1cbiAgLnUtZmlsbC10ZXJ0aWFyeVxcQHNtYWxsIHtcbiAgICBmaWxsOiAjN0VEREQzOyB9XG4gIC51LWNvbG9yLWluZm9cXEBzbWFsbCB7XG4gICAgY29sb3I6ICMyMTk2RjM7IH1cbiAgLnUtYmctaW5mb1xcQHNtYWxsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjE5NkYzOyB9XG4gIC51LWZpbGwtaW5mb1xcQHNtYWxsIHtcbiAgICBmaWxsOiAjMjE5NkYzOyB9XG4gIC51LWNvbG9yLXdhcm5pbmdcXEBzbWFsbCB7XG4gICAgY29sb3I6ICNGNjhBMzM7IH1cbiAgLnUtYmctd2FybmluZ1xcQHNtYWxsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjY4QTMzOyB9XG4gIC51LWZpbGwtd2FybmluZ1xcQHNtYWxsIHtcbiAgICBmaWxsOiAjRjY4QTMzOyB9XG4gIC51LWNvbG9yLXN1Y2Nlc3NcXEBzbWFsbCB7XG4gICAgY29sb3I6ICMwMDg3NTU7IH1cbiAgLnUtYmctc3VjY2Vzc1xcQHNtYWxsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA4NzU1OyB9XG4gIC51LWZpbGwtc3VjY2Vzc1xcQHNtYWxsIHtcbiAgICBmaWxsOiAjMDA4NzU1OyB9XG4gIC51LWNvbG9yLWVycm9yXFxAc21hbGwge1xuICAgIGNvbG9yOiAjQzgxMDJFOyB9XG4gIC51LWJnLWVycm9yXFxAc21hbGwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNDODEwMkU7IH1cbiAgLnUtZmlsbC1lcnJvclxcQHNtYWxsIHtcbiAgICBmaWxsOiAjQzgxMDJFOyB9XG4gIC51LWNvbG9yLWRlZmF1bHRcXEBzbWFsbCB7XG4gICAgY29sb3I6ICM3OTdiN2Y7IH1cbiAgLnUtYmctZGVmYXVsdFxcQHNtYWxsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzk3YjdmOyB9XG4gIC51LWZpbGwtZGVmYXVsdFxcQHNtYWxsIHtcbiAgICBmaWxsOiAjNzk3YjdmOyB9XG4gIC51LWNvbG9yLWRpc2FibGVkXFxAc21hbGwge1xuICAgIGNvbG9yOiAjNzk3YjdmOyB9XG4gIC51LWJnLWRpc2FibGVkXFxAc21hbGwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM3OTdiN2Y7IH1cbiAgLnUtZmlsbC1kaXNhYmxlZFxcQHNtYWxsIHtcbiAgICBmaWxsOiAjNzk3YjdmOyB9XG4gIC51LWNvbG9yLXF1aWV0XFxAc21hbGwge1xuICAgIGNvbG9yOiAjNzk3YjdmOyB9XG4gIC51LWJnLXF1aWV0XFxAc21hbGwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM3OTdiN2Y7IH1cbiAgLnUtZmlsbC1xdWlldFxcQHNtYWxsIHtcbiAgICBmaWxsOiAjNzk3YjdmOyB9XG4gIC51LWNvbG9yLWdyZXktZGFya1xcQHNtYWxsIHtcbiAgICBjb2xvcjogIzc5N2I3ZjsgfVxuICAudS1iZy1ncmV5LWRhcmtcXEBzbWFsbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzc5N2I3ZjsgfVxuICAudS1maWxsLWdyZXktZGFya1xcQHNtYWxsIHtcbiAgICBmaWxsOiAjNzk3YjdmOyB9XG4gIC51LWNvbG9yLXJlZC1kYXJrXFxAc21hbGwge1xuICAgIGNvbG9yOiAjOTkwYzIzOyB9XG4gIC51LWJnLXJlZC1kYXJrXFxAc21hbGwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM5OTBjMjM7IH1cbiAgLnUtZmlsbC1yZWQtZGFya1xcQHNtYWxsIHtcbiAgICBmaWxsOiAjOTkwYzIzOyB9XG4gIC51LWNvbG9yLXBpbmstZGFya1xcQHNtYWxsIHtcbiAgICBjb2xvcjogI2MxMTM0ZTsgfVxuICAudS1iZy1waW5rLWRhcmtcXEBzbWFsbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2MxMTM0ZTsgfVxuICAudS1maWxsLXBpbmstZGFya1xcQHNtYWxsIHtcbiAgICBmaWxsOiAjYzExMzRlOyB9XG4gIC51LWNvbG9yLXB1cnBsZS1kYXJrXFxAc21hbGwge1xuICAgIGNvbG9yOiAjNTY0MzgxOyB9XG4gIC51LWJnLXB1cnBsZS1kYXJrXFxAc21hbGwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM1NjQzODE7IH1cbiAgLnUtZmlsbC1wdXJwbGUtZGFya1xcQHNtYWxsIHtcbiAgICBmaWxsOiAjNTY0MzgxOyB9XG4gIC51LWNvbG9yLWJsdWUtZGFya1xcQHNtYWxsIHtcbiAgICBjb2xvcjogIzBjN2NkNTsgfVxuICAudS1iZy1ibHVlLWRhcmtcXEBzbWFsbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzBjN2NkNTsgfVxuICAudS1maWxsLWJsdWUtZGFya1xcQHNtYWxsIHtcbiAgICBmaWxsOiAjMGM3Y2Q1OyB9XG4gIC51LWNvbG9yLWdyZWVuLWRhcmtcXEBzbWFsbCB7XG4gICAgY29sb3I6ICMwMDU0MzU7IH1cbiAgLnUtYmctZ3JlZW4tZGFya1xcQHNtYWxsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA1NDM1OyB9XG4gIC51LWZpbGwtZ3JlZW4tZGFya1xcQHNtYWxsIHtcbiAgICBmaWxsOiAjMDA1NDM1OyB9XG4gIC51LWNvbG9yLWN5YW4tZGFya1xcQHNtYWxsIHtcbiAgICBjb2xvcjogIzU2ZDJjNTsgfVxuICAudS1iZy1jeWFuLWRhcmtcXEBzbWFsbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzU2ZDJjNTsgfVxuICAudS1maWxsLWN5YW4tZGFya1xcQHNtYWxsIHtcbiAgICBmaWxsOiAjNTZkMmM1OyB9XG4gIC51LWNvbG9yLXllbGxvdy1kYXJrXFxAc21hbGwge1xuICAgIGNvbG9yOiAjY2M5MTAwOyB9XG4gIC51LWJnLXllbGxvdy1kYXJrXFxAc21hbGwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjYzkxMDA7IH1cbiAgLnUtZmlsbC15ZWxsb3ctZGFya1xcQHNtYWxsIHtcbiAgICBmaWxsOiAjY2M5MTAwOyB9XG4gIC51LWNvbG9yLW9yYW5nZS1kYXJrXFxAc21hbGwge1xuICAgIGNvbG9yOiAjZWM2ZjBhOyB9XG4gIC51LWJnLW9yYW5nZS1kYXJrXFxAc21hbGwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlYzZmMGE7IH1cbiAgLnUtZmlsbC1vcmFuZ2UtZGFya1xcQHNtYWxsIHtcbiAgICBmaWxsOiAjZWM2ZjBhOyB9XG4gIC51LWNvbG9yLWJyb3duLWRhcmtcXEBzbWFsbCB7XG4gICAgY29sb3I6ICM1OTNmMzU7IH1cbiAgLnUtYmctYnJvd24tZGFya1xcQHNtYWxsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTkzZjM1OyB9XG4gIC51LWZpbGwtYnJvd24tZGFya1xcQHNtYWxsIHtcbiAgICBmaWxsOiAjNTkzZjM1OyB9XG4gIC51LWNvbG9yLWdyZXktZGFya2VyXFxAc21hbGwge1xuICAgIGNvbG9yOiAjNjA2MjY1OyB9XG4gIC51LWJnLWdyZXktZGFya2VyXFxAc21hbGwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM2MDYyNjU7IH1cbiAgLnUtZmlsbC1ncmV5LWRhcmtlclxcQHNtYWxsIHtcbiAgICBmaWxsOiAjNjA2MjY1OyB9XG4gIC51LWNvbG9yLXJlZC1kYXJrZXJcXEBzbWFsbCB7XG4gICAgY29sb3I6ICM2YTA4MTg7IH1cbiAgLnUtYmctcmVkLWRhcmtlclxcQHNtYWxsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNmEwODE4OyB9XG4gIC51LWZpbGwtcmVkLWRhcmtlclxcQHNtYWxsIHtcbiAgICBmaWxsOiAjNmEwODE4OyB9XG4gIC51LWNvbG9yLWdyZXktbGlnaHRcXEBzbWFsbCB7XG4gICAgY29sb3I6ICNhZGFmYjE7IH1cbiAgLnUtYmctZ3JleS1saWdodFxcQHNtYWxsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYWRhZmIxOyB9XG4gIC51LWZpbGwtZ3JleS1saWdodFxcQHNtYWxsIHtcbiAgICBmaWxsOiAjYWRhZmIxOyB9XG4gIC51LWNvbG9yLXJlZC1saWdodFxcQHNtYWxsIHtcbiAgICBjb2xvcjogI2VkMWU0MDsgfVxuICAudS1iZy1yZWQtbGlnaHRcXEBzbWFsbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VkMWU0MDsgfVxuICAudS1maWxsLXJlZC1saWdodFxcQHNtYWxsIHtcbiAgICBmaWxsOiAjZWQxZTQwOyB9XG4gIC51LWNvbG9yLXBpbmstbGlnaHRcXEBzbWFsbCB7XG4gICAgY29sb3I6ICNlZTRjODM7IH1cbiAgLnUtYmctcGluay1saWdodFxcQHNtYWxsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWU0YzgzOyB9XG4gIC51LWZpbGwtcGluay1saWdodFxcQHNtYWxsIHtcbiAgICBmaWxsOiAjZWU0YzgzOyB9XG4gIC51LWNvbG9yLXB1cnBsZS1saWdodFxcQHNtYWxsIHtcbiAgICBjb2xvcjogIzg4NzNiNzsgfVxuICAudS1iZy1wdXJwbGUtbGlnaHRcXEBzbWFsbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzg4NzNiNzsgfVxuICAudS1maWxsLXB1cnBsZS1saWdodFxcQHNtYWxsIHtcbiAgICBmaWxsOiAjODg3M2I3OyB9XG4gIC51LWNvbG9yLWJsdWUtbGlnaHRcXEBzbWFsbCB7XG4gICAgY29sb3I6ICM1MWFkZjY7IH1cbiAgLnUtYmctYmx1ZS1saWdodFxcQHNtYWxsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTFhZGY2OyB9XG4gIC51LWZpbGwtYmx1ZS1saWdodFxcQHNtYWxsIHtcbiAgICBmaWxsOiAjNTFhZGY2OyB9XG4gIC51LWNvbG9yLWdyZWVuLWxpZ2h0XFxAc21hbGwge1xuICAgIGNvbG9yOiAjMDBiYTc1OyB9XG4gIC51LWJnLWdyZWVuLWxpZ2h0XFxAc21hbGwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMGJhNzU7IH1cbiAgLnUtZmlsbC1ncmVlbi1saWdodFxcQHNtYWxsIHtcbiAgICBmaWxsOiAjMDBiYTc1OyB9XG4gIC51LWNvbG9yLWN5YW4tbGlnaHRcXEBzbWFsbCB7XG4gICAgY29sb3I6ICNhNmU4ZTE7IH1cbiAgLnUtYmctY3lhbi1saWdodFxcQHNtYWxsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTZlOGUxOyB9XG4gIC51LWZpbGwtY3lhbi1saWdodFxcQHNtYWxsIHtcbiAgICBmaWxsOiAjYTZlOGUxOyB9XG4gIC51LWNvbG9yLXllbGxvdy1saWdodFxcQHNtYWxsIHtcbiAgICBjb2xvcjogI2ZmYzQzMzsgfVxuICAudS1iZy15ZWxsb3ctbGlnaHRcXEBzbWFsbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYzQzMzsgfVxuICAudS1maWxsLXllbGxvdy1saWdodFxcQHNtYWxsIHtcbiAgICBmaWxsOiAjZmZjNDMzOyB9XG4gIC51LWNvbG9yLW9yYW5nZS1saWdodFxcQHNtYWxsIHtcbiAgICBjb2xvcjogI2Y4YTY2NDsgfVxuICAudS1iZy1vcmFuZ2UtbGlnaHRcXEBzbWFsbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4YTY2NDsgfVxuICAudS1maWxsLW9yYW5nZS1saWdodFxcQHNtYWxsIHtcbiAgICBmaWxsOiAjZjhhNjY0OyB9XG4gIC51LWNvbG9yLWJyb3duLWxpZ2h0XFxAc21hbGwge1xuICAgIGNvbG9yOiAjOTk2YjViOyB9XG4gIC51LWJnLWJyb3duLWxpZ2h0XFxAc21hbGwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM5OTZiNWI7IH1cbiAgLnUtZmlsbC1icm93bi1saWdodFxcQHNtYWxsIHtcbiAgICBmaWxsOiAjOTk2YjViOyB9XG4gIC51LWNvbG9yLWdyZXktbGlnaHRlclxcQHNtYWxsIHtcbiAgICBjb2xvcjogI2M3YzhjYTsgfVxuICAudS1iZy1ncmV5LWxpZ2h0ZXJcXEBzbWFsbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2M3YzhjYTsgfVxuICAudS1maWxsLWdyZXktbGlnaHRlclxcQHNtYWxsIHtcbiAgICBmaWxsOiAjYzdjOGNhOyB9XG4gIC51LWNvbG9yLXJlZC1saWdodGVyXFxAc21hbGwge1xuICAgIGNvbG9yOiAjZjE0ZDY4OyB9XG4gIC51LWJnLXJlZC1saWdodGVyXFxAc21hbGwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmMTRkNjg7IH1cbiAgLnUtZmlsbC1yZWQtbGlnaHRlclxcQHNtYWxsIHtcbiAgICBmaWxsOiAjZjE0ZDY4OyB9XG4gIC51LWNvbG9yLXBpbmstbGlnaHRlclxcQHNtYWxsIHtcbiAgICBjb2xvcjogI2YyN2JhMzsgfVxuICAudS1iZy1waW5rLWxpZ2h0ZXJcXEBzbWFsbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YyN2JhMzsgfVxuICAudS1maWxsLXBpbmstbGlnaHRlclxcQHNtYWxsIHtcbiAgICBmaWxsOiAjZjI3YmEzOyB9XG4gIC51LWNvbG9yLXB1cnBsZS1saWdodGVyXFxAc21hbGwge1xuICAgIGNvbG9yOiAjYTQ5NWM4OyB9XG4gIC51LWJnLXB1cnBsZS1saWdodGVyXFxAc21hbGwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNhNDk1Yzg7IH1cbiAgLnUtZmlsbC1wdXJwbGUtbGlnaHRlclxcQHNtYWxsIHtcbiAgICBmaWxsOiAjYTQ5NWM4OyB9XG4gIC51LWNvbG9yLWJsdWUtbGlnaHRlclxcQHNtYWxsIHtcbiAgICBjb2xvcjogIzgyYzRmODsgfVxuICAudS1iZy1ibHVlLWxpZ2h0ZXJcXEBzbWFsbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzgyYzRmODsgfVxuICAudS1maWxsLWJsdWUtbGlnaHRlclxcQHNtYWxsIHtcbiAgICBmaWxsOiAjODJjNGY4OyB9XG4gIC51LWNvbG9yLWdyZWVuLWxpZ2h0ZXJcXEBzbWFsbCB7XG4gICAgY29sb3I6ICMwMGVkOTU7IH1cbiAgLnUtYmctZ3JlZW4tbGlnaHRlclxcQHNtYWxsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBlZDk1OyB9XG4gIC51LWZpbGwtZ3JlZW4tbGlnaHRlclxcQHNtYWxsIHtcbiAgICBmaWxsOiAjMDBlZDk1OyB9XG4gIC51LWNvbG9yLWN5YW4tbGlnaHRlclxcQHNtYWxsIHtcbiAgICBjb2xvcjogI2NmZjJlZjsgfVxuICAudS1iZy1jeWFuLWxpZ2h0ZXJcXEBzbWFsbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2NmZjJlZjsgfVxuICAudS1maWxsLWN5YW4tbGlnaHRlclxcQHNtYWxsIHtcbiAgICBmaWxsOiAjY2ZmMmVmOyB9XG4gIC51LWNvbG9yLXllbGxvdy1saWdodGVyXFxAc21hbGwge1xuICAgIGNvbG9yOiAjZmZkMzY2OyB9XG4gIC51LWJnLXllbGxvdy1saWdodGVyXFxAc21hbGwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmQzNjY7IH1cbiAgLnUtZmlsbC15ZWxsb3ctbGlnaHRlclxcQHNtYWxsIHtcbiAgICBmaWxsOiAjZmZkMzY2OyB9XG4gIC51LWNvbG9yLW9yYW5nZS1saWdodGVyXFxAc21hbGwge1xuICAgIGNvbG9yOiAjZmFjMjk1OyB9XG4gIC51LWJnLW9yYW5nZS1saWdodGVyXFxAc21hbGwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmYWMyOTU7IH1cbiAgLnUtZmlsbC1vcmFuZ2UtbGlnaHRlclxcQHNtYWxsIHtcbiAgICBmaWxsOiAjZmFjMjk1OyB9XG4gIC51LWNvbG9yLWJyb3duLWxpZ2h0ZXJcXEBzbWFsbCB7XG4gICAgY29sb3I6ICNhZjg3Nzg7IH1cbiAgLnUtYmctYnJvd24tbGlnaHRlclxcQHNtYWxsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYWY4Nzc4OyB9XG4gIC51LWZpbGwtYnJvd24tbGlnaHRlclxcQHNtYWxsIHtcbiAgICBmaWxsOiAjYWY4Nzc4OyB9XG4gIC51LWNvbG9yLXBpbmstZGFya2VyXFxAc21hbGwge1xuICAgIGNvbG9yOiAjOTMwZTNiOyB9XG4gIC51LWJnLXBpbmstZGFya2VyXFxAc21hbGwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM5MzBlM2I7IH1cbiAgLnUtZmlsbC1waW5rLWRhcmtlclxcQHNtYWxsIHtcbiAgICBmaWxsOiAjOTMwZTNiOyB9XG4gIC51LWNvbG9yLXB1cnBsZS1kYXJrZXJcXEBzbWFsbCB7XG4gICAgY29sb3I6ICMzZjMxNjA7IH1cbiAgLnUtYmctcHVycGxlLWRhcmtlclxcQHNtYWxsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2YzMTYwOyB9XG4gIC51LWZpbGwtcHVycGxlLWRhcmtlclxcQHNtYWxsIHtcbiAgICBmaWxsOiAjM2YzMTYwOyB9XG4gIC51LWNvbG9yLWJsdWUtZGFya2VyXFxAc21hbGwge1xuICAgIGNvbG9yOiAjMDk2MGE1OyB9XG4gIC51LWJnLWJsdWUtZGFya2VyXFxAc21hbGwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwOTYwYTU7IH1cbiAgLnUtZmlsbC1ibHVlLWRhcmtlclxcQHNtYWxsIHtcbiAgICBmaWxsOiAjMDk2MGE1OyB9XG4gIC51LWNvbG9yLWdyZWVuLWRhcmtlclxcQHNtYWxsIHtcbiAgICBjb2xvcjogIzAwMjExNTsgfVxuICAudS1iZy1ncmVlbi1kYXJrZXJcXEBzbWFsbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMjExNTsgfVxuICAudS1maWxsLWdyZWVuLWRhcmtlclxcQHNtYWxsIHtcbiAgICBmaWxsOiAjMDAyMTE1OyB9XG4gIC51LWNvbG9yLWN5YW4tZGFya2VyXFxAc21hbGwge1xuICAgIGNvbG9yOiAjMzNjMmIzOyB9XG4gIC51LWJnLWN5YW4tZGFya2VyXFxAc21hbGwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzM2MyYjM7IH1cbiAgLnUtZmlsbC1jeWFuLWRhcmtlclxcQHNtYWxsIHtcbiAgICBmaWxsOiAjMzNjMmIzOyB9XG4gIC51LWNvbG9yLXllbGxvdy1kYXJrZXJcXEBzbWFsbCB7XG4gICAgY29sb3I6ICM5OTZkMDA7IH1cbiAgLnUtYmcteWVsbG93LWRhcmtlclxcQHNtYWxsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOTk2ZDAwOyB9XG4gIC51LWZpbGwteWVsbG93LWRhcmtlclxcQHNtYWxsIHtcbiAgICBmaWxsOiAjOTk2ZDAwOyB9XG4gIC51LWNvbG9yLW9yYW5nZS1kYXJrZXJcXEBzbWFsbCB7XG4gICAgY29sb3I6ICNiYjU4MDg7IH1cbiAgLnUtYmctb3JhbmdlLWRhcmtlclxcQHNtYWxsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmI1ODA4OyB9XG4gIC51LWZpbGwtb3JhbmdlLWRhcmtlclxcQHNtYWxsIHtcbiAgICBmaWxsOiAjYmI1ODA4OyB9XG4gIC51LWNvbG9yLWJyb3duLWRhcmtlclxcQHNtYWxsIHtcbiAgICBjb2xvcjogIzM5MjgyMjsgfVxuICAudS1iZy1icm93bi1kYXJrZXJcXEBzbWFsbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzM5MjgyMjsgfVxuICAudS1maWxsLWJyb3duLWRhcmtlclxcQHNtYWxsIHtcbiAgICBmaWxsOiAjMzkyODIyOyB9XG4gIC51LWNvbG9yLWJyYW5kLWRhcmtcXEBzbWFsbCB7XG4gICAgY29sb3I6ICM3YTEyMjI7IH1cbiAgLnUtYmctYnJhbmQtZGFya1xcQHNtYWxsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjN2ExMjIyOyB9XG4gIC51LWZpbGwtYnJhbmQtZGFya1xcQHNtYWxsIHtcbiAgICBmaWxsOiAjN2ExMjIyOyB9XG4gIC51LWNvbG9yLWJyYW5kLWRhcmtlclxcQHNtYWxsIHtcbiAgICBjb2xvcjogIzRkMGMxNTsgfVxuICAudS1iZy1icmFuZC1kYXJrZXJcXEBzbWFsbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzRkMGMxNTsgfVxuICAudS1maWxsLWJyYW5kLWRhcmtlclxcQHNtYWxsIHtcbiAgICBmaWxsOiAjNGQwYzE1OyB9XG4gIC51LWNvbG9yLWJyYW5kLWxpZ2h0XFxAc21hbGwge1xuICAgIGNvbG9yOiAjZDIyMDNhOyB9XG4gIC51LWJnLWJyYW5kLWxpZ2h0XFxAc21hbGwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNkMjIwM2E7IH1cbiAgLnUtZmlsbC1icmFuZC1saWdodFxcQHNtYWxsIHtcbiAgICBmaWxsOiAjZDIyMDNhOyB9XG4gIC51LWNvbG9yLWJyYW5kLWxpZ2h0ZXJcXEBzbWFsbCB7XG4gICAgY29sb3I6ICNlMzQyNWE7IH1cbiAgLnUtYmctYnJhbmQtbGlnaHRlclxcQHNtYWxsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTM0MjVhOyB9XG4gIC51LWZpbGwtYnJhbmQtbGlnaHRlclxcQHNtYWxsIHtcbiAgICBmaWxsOiAjZTM0MjVhOyB9XG4gIC51LWNvbG9yLXNlY29uZGFyeS1kYXJrXFxAc21hbGwge1xuICAgIGNvbG9yOiAjM2Q2NzZkOyB9XG4gIC51LWJnLXNlY29uZGFyeS1kYXJrXFxAc21hbGwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzZDY3NmQ7IH1cbiAgLnUtZmlsbC1zZWNvbmRhcnktZGFya1xcQHNtYWxsIHtcbiAgICBmaWxsOiAjM2Q2NzZkOyB9XG4gIC51LWNvbG9yLXNlY29uZGFyeS1kYXJrZXJcXEBzbWFsbCB7XG4gICAgY29sb3I6ICMyYjQ4NGM7IH1cbiAgLnUtYmctc2Vjb25kYXJ5LWRhcmtlclxcQHNtYWxsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmI0ODRjOyB9XG4gIC51LWZpbGwtc2Vjb25kYXJ5LWRhcmtlclxcQHNtYWxsIHtcbiAgICBmaWxsOiAjMmI0ODRjOyB9XG4gIC51LWNvbG9yLXNlY29uZGFyeS1saWdodFxcQHNtYWxsIHtcbiAgICBjb2xvcjogIzY2YTFhYTsgfVxuICAudS1iZy1zZWNvbmRhcnktbGlnaHRcXEBzbWFsbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzY2YTFhYTsgfVxuICAudS1maWxsLXNlY29uZGFyeS1saWdodFxcQHNtYWxsIHtcbiAgICBmaWxsOiAjNjZhMWFhOyB9XG4gIC51LWNvbG9yLXNlY29uZGFyeS1saWdodGVyXFxAc21hbGwge1xuICAgIGNvbG9yOiAjYjhkNGQ4OyB9XG4gIC51LWJnLXNlY29uZGFyeS1saWdodGVyXFxAc21hbGwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNiOGQ0ZDg7IH1cbiAgLnUtZmlsbC1zZWNvbmRhcnktbGlnaHRlclxcQHNtYWxsIHtcbiAgICBmaWxsOiAjYjhkNGQ4OyB9XG4gIC51LWNvbG9yLWluZm8tZGFya1xcQHNtYWxsIHtcbiAgICBjb2xvcjogIzBjN2NkNTsgfVxuICAudS1iZy1pbmZvLWRhcmtcXEBzbWFsbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzBjN2NkNTsgfVxuICAudS1maWxsLWluZm8tZGFya1xcQHNtYWxsIHtcbiAgICBmaWxsOiAjMGM3Y2Q1OyB9XG4gIC51LWNvbG9yLWluZm8tZGFya2VyXFxAc21hbGwge1xuICAgIGNvbG9yOiAjMDk2MGE1OyB9XG4gIC51LWJnLWluZm8tZGFya2VyXFxAc21hbGwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwOTYwYTU7IH1cbiAgLnUtZmlsbC1pbmZvLWRhcmtlclxcQHNtYWxsIHtcbiAgICBmaWxsOiAjMDk2MGE1OyB9XG4gIC51LWNvbG9yLWluZm8tbGlnaHRcXEBzbWFsbCB7XG4gICAgY29sb3I6ICM1MWFkZjY7IH1cbiAgLnUtYmctaW5mby1saWdodFxcQHNtYWxsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTFhZGY2OyB9XG4gIC51LWZpbGwtaW5mby1saWdodFxcQHNtYWxsIHtcbiAgICBmaWxsOiAjNTFhZGY2OyB9XG4gIC51LWNvbG9yLWluZm8tbGlnaHRlclxcQHNtYWxsIHtcbiAgICBjb2xvcjogIzgyYzRmODsgfVxuICAudS1iZy1pbmZvLWxpZ2h0ZXJcXEBzbWFsbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzgyYzRmODsgfVxuICAudS1maWxsLWluZm8tbGlnaHRlclxcQHNtYWxsIHtcbiAgICBmaWxsOiAjODJjNGY4OyB9XG4gIC51LWNvbG9yLXdhcm5pbmctZGFya1xcQHNtYWxsIHtcbiAgICBjb2xvcjogI2VjNmYwYTsgfVxuICAudS1iZy13YXJuaW5nLWRhcmtcXEBzbWFsbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VjNmYwYTsgfVxuICAudS1maWxsLXdhcm5pbmctZGFya1xcQHNtYWxsIHtcbiAgICBmaWxsOiAjZWM2ZjBhOyB9XG4gIC51LWNvbG9yLXdhcm5pbmctZGFya2VyXFxAc21hbGwge1xuICAgIGNvbG9yOiAjYmI1ODA4OyB9XG4gIC51LWJnLXdhcm5pbmctZGFya2VyXFxAc21hbGwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNiYjU4MDg7IH1cbiAgLnUtZmlsbC13YXJuaW5nLWRhcmtlclxcQHNtYWxsIHtcbiAgICBmaWxsOiAjYmI1ODA4OyB9XG4gIC51LWNvbG9yLXdhcm5pbmctbGlnaHRcXEBzbWFsbCB7XG4gICAgY29sb3I6ICNmOGE2NjQ7IH1cbiAgLnUtYmctd2FybmluZy1saWdodFxcQHNtYWxsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhhNjY0OyB9XG4gIC51LWZpbGwtd2FybmluZy1saWdodFxcQHNtYWxsIHtcbiAgICBmaWxsOiAjZjhhNjY0OyB9XG4gIC51LWNvbG9yLXdhcm5pbmctbGlnaHRlclxcQHNtYWxsIHtcbiAgICBjb2xvcjogI2ZhYzI5NTsgfVxuICAudS1iZy13YXJuaW5nLWxpZ2h0ZXJcXEBzbWFsbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZhYzI5NTsgfVxuICAudS1maWxsLXdhcm5pbmctbGlnaHRlclxcQHNtYWxsIHtcbiAgICBmaWxsOiAjZmFjMjk1OyB9XG4gIC51LWNvbG9yLXN1Y2Nlc3MtZGFya1xcQHNtYWxsIHtcbiAgICBjb2xvcjogIzAwNTQzNTsgfVxuICAudS1iZy1zdWNjZXNzLWRhcmtcXEBzbWFsbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwNTQzNTsgfVxuICAudS1maWxsLXN1Y2Nlc3MtZGFya1xcQHNtYWxsIHtcbiAgICBmaWxsOiAjMDA1NDM1OyB9XG4gIC51LWNvbG9yLXN1Y2Nlc3MtZGFya2VyXFxAc21hbGwge1xuICAgIGNvbG9yOiAjMDAyMTE1OyB9XG4gIC51LWJnLXN1Y2Nlc3MtZGFya2VyXFxAc21hbGwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDIxMTU7IH1cbiAgLnUtZmlsbC1zdWNjZXNzLWRhcmtlclxcQHNtYWxsIHtcbiAgICBmaWxsOiAjMDAyMTE1OyB9XG4gIC51LWNvbG9yLXN1Y2Nlc3MtbGlnaHRcXEBzbWFsbCB7XG4gICAgY29sb3I6ICMwMGJhNzU7IH1cbiAgLnUtYmctc3VjY2Vzcy1saWdodFxcQHNtYWxsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBiYTc1OyB9XG4gIC51LWZpbGwtc3VjY2Vzcy1saWdodFxcQHNtYWxsIHtcbiAgICBmaWxsOiAjMDBiYTc1OyB9XG4gIC51LWNvbG9yLXN1Y2Nlc3MtbGlnaHRlclxcQHNtYWxsIHtcbiAgICBjb2xvcjogIzAwZWQ5NTsgfVxuICAudS1iZy1zdWNjZXNzLWxpZ2h0ZXJcXEBzbWFsbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwZWQ5NTsgfVxuICAudS1maWxsLXN1Y2Nlc3MtbGlnaHRlclxcQHNtYWxsIHtcbiAgICBmaWxsOiAjMDBlZDk1OyB9XG4gIC51LWNvbG9yLWVycm9yLWRhcmtcXEBzbWFsbCB7XG4gICAgY29sb3I6ICM5OTBjMjM7IH1cbiAgLnUtYmctZXJyb3ItZGFya1xcQHNtYWxsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOTkwYzIzOyB9XG4gIC51LWZpbGwtZXJyb3ItZGFya1xcQHNtYWxsIHtcbiAgICBmaWxsOiAjOTkwYzIzOyB9XG4gIC51LWNvbG9yLWVycm9yLWRhcmtlclxcQHNtYWxsIHtcbiAgICBjb2xvcjogIzZhMDgxODsgfVxuICAudS1iZy1lcnJvci1kYXJrZXJcXEBzbWFsbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzZhMDgxODsgfVxuICAudS1maWxsLWVycm9yLWRhcmtlclxcQHNtYWxsIHtcbiAgICBmaWxsOiAjNmEwODE4OyB9XG4gIC51LWNvbG9yLWVycm9yLWxpZ2h0XFxAc21hbGwge1xuICAgIGNvbG9yOiAjZWQxZTQwOyB9XG4gIC51LWJnLWVycm9yLWxpZ2h0XFxAc21hbGwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlZDFlNDA7IH1cbiAgLnUtZmlsbC1lcnJvci1saWdodFxcQHNtYWxsIHtcbiAgICBmaWxsOiAjZWQxZTQwOyB9XG4gIC51LWNvbG9yLWVycm9yLWxpZ2h0ZXJcXEBzbWFsbCB7XG4gICAgY29sb3I6ICNmMTRkNjg7IH1cbiAgLnUtYmctZXJyb3ItbGlnaHRlclxcQHNtYWxsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjE0ZDY4OyB9XG4gIC51LWZpbGwtZXJyb3ItbGlnaHRlclxcQHNtYWxsIHtcbiAgICBmaWxsOiAjZjE0ZDY4OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4cmVtKSB7XG4gIC51LWJnLW5vbmVcXEBtZWRpdW0ge1xuICAgIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDsgfVxuICAudS1jb2xvci1ibGFja1xcQG1lZGl1bSB7XG4gICAgY29sb3I6ICM0MTQwNDI7IH1cbiAgLnUtYmctYmxhY2tcXEBtZWRpdW0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM0MTQwNDI7IH1cbiAgLnUtZmlsbC1ibGFja1xcQG1lZGl1bSB7XG4gICAgZmlsbDogIzQxNDA0MjsgfVxuICAudS1jb2xvci1ncmV5XFxAbWVkaXVtIHtcbiAgICBjb2xvcjogIzkzOTU5ODsgfVxuICAudS1iZy1ncmV5XFxAbWVkaXVtIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOTM5NTk4OyB9XG4gIC51LWZpbGwtZ3JleVxcQG1lZGl1bSB7XG4gICAgZmlsbDogIzkzOTU5ODsgfVxuICAudS1jb2xvci1saWdodC1ncmV5XFxAbWVkaXVtIHtcbiAgICBjb2xvcjogI0YyRjJGMjsgfVxuICAudS1iZy1saWdodC1ncmV5XFxAbWVkaXVtIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjJGMkYyOyB9XG4gIC51LWZpbGwtbGlnaHQtZ3JleVxcQG1lZGl1bSB7XG4gICAgZmlsbDogI0YyRjJGMjsgfVxuICAudS1jb2xvci13aGl0ZVxcQG1lZGl1bSB7XG4gICAgY29sb3I6ICNGRkY7IH1cbiAgLnUtYmctd2hpdGVcXEBtZWRpdW0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGRkY7IH1cbiAgLnUtZmlsbC13aGl0ZVxcQG1lZGl1bSB7XG4gICAgZmlsbDogI0ZGRjsgfVxuICAudS1jb2xvci1iZWlnZVxcQG1lZGl1bSB7XG4gICAgY29sb3I6ICNGMkYyRUE7IH1cbiAgLnUtYmctYmVpZ2VcXEBtZWRpdW0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGMkYyRUE7IH1cbiAgLnUtZmlsbC1iZWlnZVxcQG1lZGl1bSB7XG4gICAgZmlsbDogI0YyRjJFQTsgfVxuICAudS1jb2xvci1yZWRcXEBtZWRpdW0ge1xuICAgIGNvbG9yOiAjQzgxMDJFOyB9XG4gIC51LWJnLXJlZFxcQG1lZGl1bSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0M4MTAyRTsgfVxuICAudS1maWxsLXJlZFxcQG1lZGl1bSB7XG4gICAgZmlsbDogI0M4MTAyRTsgfVxuICAudS1jb2xvci1waW5rXFxAbWVkaXVtIHtcbiAgICBjb2xvcjogI0U5MUU2MzsgfVxuICAudS1iZy1waW5rXFxAbWVkaXVtIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRTkxRTYzOyB9XG4gIC51LWZpbGwtcGlua1xcQG1lZGl1bSB7XG4gICAgZmlsbDogI0U5MUU2MzsgfVxuICAudS1jb2xvci1wdXJwbGVcXEBtZWRpdW0ge1xuICAgIGNvbG9yOiAjNkM1NEEzOyB9XG4gIC51LWJnLXB1cnBsZVxcQG1lZGl1bSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzZDNTRBMzsgfVxuICAudS1maWxsLXB1cnBsZVxcQG1lZGl1bSB7XG4gICAgZmlsbDogIzZDNTRBMzsgfVxuICAudS1jb2xvci1ibHVlXFxAbWVkaXVtIHtcbiAgICBjb2xvcjogIzIxOTZGMzsgfVxuICAudS1iZy1ibHVlXFxAbWVkaXVtIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjE5NkYzOyB9XG4gIC51LWZpbGwtYmx1ZVxcQG1lZGl1bSB7XG4gICAgZmlsbDogIzIxOTZGMzsgfVxuICAudS1jb2xvci1ncmVlblxcQG1lZGl1bSB7XG4gICAgY29sb3I6ICMwMDg3NTU7IH1cbiAgLnUtYmctZ3JlZW5cXEBtZWRpdW0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDg3NTU7IH1cbiAgLnUtZmlsbC1ncmVlblxcQG1lZGl1bSB7XG4gICAgZmlsbDogIzAwODc1NTsgfVxuICAudS1jb2xvci1saWdodC1ncmVlblxcQG1lZGl1bSB7XG4gICAgY29sb3I6ICM2Q0MyNEE7IH1cbiAgLnUtYmctbGlnaHQtZ3JlZW5cXEBtZWRpdW0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM2Q0MyNEE7IH1cbiAgLnUtZmlsbC1saWdodC1ncmVlblxcQG1lZGl1bSB7XG4gICAgZmlsbDogIzZDQzI0QTsgfVxuICAudS1jb2xvci10ZWFsXFxAbWVkaXVtIHtcbiAgICBjb2xvcjogIzRGODY4RTsgfVxuICAudS1iZy10ZWFsXFxAbWVkaXVtIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNEY4NjhFOyB9XG4gIC51LWZpbGwtdGVhbFxcQG1lZGl1bSB7XG4gICAgZmlsbDogIzRGODY4RTsgfVxuICAudS1jb2xvci1jeWFuXFxAbWVkaXVtIHtcbiAgICBjb2xvcjogIzdFREREMzsgfVxuICAudS1iZy1jeWFuXFxAbWVkaXVtIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjN0VEREQzOyB9XG4gIC51LWZpbGwtY3lhblxcQG1lZGl1bSB7XG4gICAgZmlsbDogIzdFREREMzsgfVxuICAudS1jb2xvci15ZWxsb3dcXEBtZWRpdW0ge1xuICAgIGNvbG9yOiAjRkZCNTAwOyB9XG4gIC51LWJnLXllbGxvd1xcQG1lZGl1bSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGQjUwMDsgfVxuICAudS1maWxsLXllbGxvd1xcQG1lZGl1bSB7XG4gICAgZmlsbDogI0ZGQjUwMDsgfVxuICAudS1jb2xvci1vcmFuZ2VcXEBtZWRpdW0ge1xuICAgIGNvbG9yOiAjRjY4QTMzOyB9XG4gIC51LWJnLW9yYW5nZVxcQG1lZGl1bSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0Y2OEEzMzsgfVxuICAudS1maWxsLW9yYW5nZVxcQG1lZGl1bSB7XG4gICAgZmlsbDogI0Y2OEEzMzsgfVxuICAudS1jb2xvci1icm93blxcQG1lZGl1bSB7XG4gICAgY29sb3I6ICM3OTU1NDg7IH1cbiAgLnUtYmctYnJvd25cXEBtZWRpdW0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM3OTU1NDg7IH1cbiAgLnUtZmlsbC1icm93blxcQG1lZGl1bSB7XG4gICAgZmlsbDogIzc5NTU0ODsgfVxuICAudS1jb2xvci1icmFuZFxcQG1lZGl1bSB7XG4gICAgY29sb3I6ICNhNjE5MmU7IH1cbiAgLnUtYmctYnJhbmRcXEBtZWRpdW0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNhNjE5MmU7IH1cbiAgLnUtZmlsbC1icmFuZFxcQG1lZGl1bSB7XG4gICAgZmlsbDogI2E2MTkyZTsgfVxuICAudS1jb2xvci1zZWNvbmRhcnlcXEBtZWRpdW0ge1xuICAgIGNvbG9yOiAjNEY4NjhFOyB9XG4gIC51LWJnLXNlY29uZGFyeVxcQG1lZGl1bSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzRGODY4RTsgfVxuICAudS1maWxsLXNlY29uZGFyeVxcQG1lZGl1bSB7XG4gICAgZmlsbDogIzRGODY4RTsgfVxuICAudS1jb2xvci10ZXJ0aWFyeVxcQG1lZGl1bSB7XG4gICAgY29sb3I6ICM3RURERDM7IH1cbiAgLnUtYmctdGVydGlhcnlcXEBtZWRpdW0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM3RURERDM7IH1cbiAgLnUtZmlsbC10ZXJ0aWFyeVxcQG1lZGl1bSB7XG4gICAgZmlsbDogIzdFREREMzsgfVxuICAudS1jb2xvci1pbmZvXFxAbWVkaXVtIHtcbiAgICBjb2xvcjogIzIxOTZGMzsgfVxuICAudS1iZy1pbmZvXFxAbWVkaXVtIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjE5NkYzOyB9XG4gIC51LWZpbGwtaW5mb1xcQG1lZGl1bSB7XG4gICAgZmlsbDogIzIxOTZGMzsgfVxuICAudS1jb2xvci13YXJuaW5nXFxAbWVkaXVtIHtcbiAgICBjb2xvcjogI0Y2OEEzMzsgfVxuICAudS1iZy13YXJuaW5nXFxAbWVkaXVtIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjY4QTMzOyB9XG4gIC51LWZpbGwtd2FybmluZ1xcQG1lZGl1bSB7XG4gICAgZmlsbDogI0Y2OEEzMzsgfVxuICAudS1jb2xvci1zdWNjZXNzXFxAbWVkaXVtIHtcbiAgICBjb2xvcjogIzAwODc1NTsgfVxuICAudS1iZy1zdWNjZXNzXFxAbWVkaXVtIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA4NzU1OyB9XG4gIC51LWZpbGwtc3VjY2Vzc1xcQG1lZGl1bSB7XG4gICAgZmlsbDogIzAwODc1NTsgfVxuICAudS1jb2xvci1lcnJvclxcQG1lZGl1bSB7XG4gICAgY29sb3I6ICNDODEwMkU7IH1cbiAgLnUtYmctZXJyb3JcXEBtZWRpdW0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNDODEwMkU7IH1cbiAgLnUtZmlsbC1lcnJvclxcQG1lZGl1bSB7XG4gICAgZmlsbDogI0M4MTAyRTsgfVxuICAudS1jb2xvci1kZWZhdWx0XFxAbWVkaXVtIHtcbiAgICBjb2xvcjogIzc5N2I3ZjsgfVxuICAudS1iZy1kZWZhdWx0XFxAbWVkaXVtIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzk3YjdmOyB9XG4gIC51LWZpbGwtZGVmYXVsdFxcQG1lZGl1bSB7XG4gICAgZmlsbDogIzc5N2I3ZjsgfVxuICAudS1jb2xvci1kaXNhYmxlZFxcQG1lZGl1bSB7XG4gICAgY29sb3I6ICM3OTdiN2Y7IH1cbiAgLnUtYmctZGlzYWJsZWRcXEBtZWRpdW0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM3OTdiN2Y7IH1cbiAgLnUtZmlsbC1kaXNhYmxlZFxcQG1lZGl1bSB7XG4gICAgZmlsbDogIzc5N2I3ZjsgfVxuICAudS1jb2xvci1xdWlldFxcQG1lZGl1bSB7XG4gICAgY29sb3I6ICM3OTdiN2Y7IH1cbiAgLnUtYmctcXVpZXRcXEBtZWRpdW0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM3OTdiN2Y7IH1cbiAgLnUtZmlsbC1xdWlldFxcQG1lZGl1bSB7XG4gICAgZmlsbDogIzc5N2I3ZjsgfVxuICAudS1jb2xvci1ncmV5LWRhcmtcXEBtZWRpdW0ge1xuICAgIGNvbG9yOiAjNzk3YjdmOyB9XG4gIC51LWJnLWdyZXktZGFya1xcQG1lZGl1bSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzc5N2I3ZjsgfVxuICAudS1maWxsLWdyZXktZGFya1xcQG1lZGl1bSB7XG4gICAgZmlsbDogIzc5N2I3ZjsgfVxuICAudS1jb2xvci1yZWQtZGFya1xcQG1lZGl1bSB7XG4gICAgY29sb3I6ICM5OTBjMjM7IH1cbiAgLnUtYmctcmVkLWRhcmtcXEBtZWRpdW0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM5OTBjMjM7IH1cbiAgLnUtZmlsbC1yZWQtZGFya1xcQG1lZGl1bSB7XG4gICAgZmlsbDogIzk5MGMyMzsgfVxuICAudS1jb2xvci1waW5rLWRhcmtcXEBtZWRpdW0ge1xuICAgIGNvbG9yOiAjYzExMzRlOyB9XG4gIC51LWJnLXBpbmstZGFya1xcQG1lZGl1bSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2MxMTM0ZTsgfVxuICAudS1maWxsLXBpbmstZGFya1xcQG1lZGl1bSB7XG4gICAgZmlsbDogI2MxMTM0ZTsgfVxuICAudS1jb2xvci1wdXJwbGUtZGFya1xcQG1lZGl1bSB7XG4gICAgY29sb3I6ICM1NjQzODE7IH1cbiAgLnUtYmctcHVycGxlLWRhcmtcXEBtZWRpdW0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM1NjQzODE7IH1cbiAgLnUtZmlsbC1wdXJwbGUtZGFya1xcQG1lZGl1bSB7XG4gICAgZmlsbDogIzU2NDM4MTsgfVxuICAudS1jb2xvci1ibHVlLWRhcmtcXEBtZWRpdW0ge1xuICAgIGNvbG9yOiAjMGM3Y2Q1OyB9XG4gIC51LWJnLWJsdWUtZGFya1xcQG1lZGl1bSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzBjN2NkNTsgfVxuICAudS1maWxsLWJsdWUtZGFya1xcQG1lZGl1bSB7XG4gICAgZmlsbDogIzBjN2NkNTsgfVxuICAudS1jb2xvci1ncmVlbi1kYXJrXFxAbWVkaXVtIHtcbiAgICBjb2xvcjogIzAwNTQzNTsgfVxuICAudS1iZy1ncmVlbi1kYXJrXFxAbWVkaXVtIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA1NDM1OyB9XG4gIC51LWZpbGwtZ3JlZW4tZGFya1xcQG1lZGl1bSB7XG4gICAgZmlsbDogIzAwNTQzNTsgfVxuICAudS1jb2xvci1jeWFuLWRhcmtcXEBtZWRpdW0ge1xuICAgIGNvbG9yOiAjNTZkMmM1OyB9XG4gIC51LWJnLWN5YW4tZGFya1xcQG1lZGl1bSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzU2ZDJjNTsgfVxuICAudS1maWxsLWN5YW4tZGFya1xcQG1lZGl1bSB7XG4gICAgZmlsbDogIzU2ZDJjNTsgfVxuICAudS1jb2xvci15ZWxsb3ctZGFya1xcQG1lZGl1bSB7XG4gICAgY29sb3I6ICNjYzkxMDA7IH1cbiAgLnUtYmcteWVsbG93LWRhcmtcXEBtZWRpdW0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjYzkxMDA7IH1cbiAgLnUtZmlsbC15ZWxsb3ctZGFya1xcQG1lZGl1bSB7XG4gICAgZmlsbDogI2NjOTEwMDsgfVxuICAudS1jb2xvci1vcmFuZ2UtZGFya1xcQG1lZGl1bSB7XG4gICAgY29sb3I6ICNlYzZmMGE7IH1cbiAgLnUtYmctb3JhbmdlLWRhcmtcXEBtZWRpdW0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlYzZmMGE7IH1cbiAgLnUtZmlsbC1vcmFuZ2UtZGFya1xcQG1lZGl1bSB7XG4gICAgZmlsbDogI2VjNmYwYTsgfVxuICAudS1jb2xvci1icm93bi1kYXJrXFxAbWVkaXVtIHtcbiAgICBjb2xvcjogIzU5M2YzNTsgfVxuICAudS1iZy1icm93bi1kYXJrXFxAbWVkaXVtIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTkzZjM1OyB9XG4gIC51LWZpbGwtYnJvd24tZGFya1xcQG1lZGl1bSB7XG4gICAgZmlsbDogIzU5M2YzNTsgfVxuICAudS1jb2xvci1ncmV5LWRhcmtlclxcQG1lZGl1bSB7XG4gICAgY29sb3I6ICM2MDYyNjU7IH1cbiAgLnUtYmctZ3JleS1kYXJrZXJcXEBtZWRpdW0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM2MDYyNjU7IH1cbiAgLnUtZmlsbC1ncmV5LWRhcmtlclxcQG1lZGl1bSB7XG4gICAgZmlsbDogIzYwNjI2NTsgfVxuICAudS1jb2xvci1yZWQtZGFya2VyXFxAbWVkaXVtIHtcbiAgICBjb2xvcjogIzZhMDgxODsgfVxuICAudS1iZy1yZWQtZGFya2VyXFxAbWVkaXVtIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNmEwODE4OyB9XG4gIC51LWZpbGwtcmVkLWRhcmtlclxcQG1lZGl1bSB7XG4gICAgZmlsbDogIzZhMDgxODsgfVxuICAudS1jb2xvci1ncmV5LWxpZ2h0XFxAbWVkaXVtIHtcbiAgICBjb2xvcjogI2FkYWZiMTsgfVxuICAudS1iZy1ncmV5LWxpZ2h0XFxAbWVkaXVtIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYWRhZmIxOyB9XG4gIC51LWZpbGwtZ3JleS1saWdodFxcQG1lZGl1bSB7XG4gICAgZmlsbDogI2FkYWZiMTsgfVxuICAudS1jb2xvci1yZWQtbGlnaHRcXEBtZWRpdW0ge1xuICAgIGNvbG9yOiAjZWQxZTQwOyB9XG4gIC51LWJnLXJlZC1saWdodFxcQG1lZGl1bSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VkMWU0MDsgfVxuICAudS1maWxsLXJlZC1saWdodFxcQG1lZGl1bSB7XG4gICAgZmlsbDogI2VkMWU0MDsgfVxuICAudS1jb2xvci1waW5rLWxpZ2h0XFxAbWVkaXVtIHtcbiAgICBjb2xvcjogI2VlNGM4MzsgfVxuICAudS1iZy1waW5rLWxpZ2h0XFxAbWVkaXVtIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWU0YzgzOyB9XG4gIC51LWZpbGwtcGluay1saWdodFxcQG1lZGl1bSB7XG4gICAgZmlsbDogI2VlNGM4MzsgfVxuICAudS1jb2xvci1wdXJwbGUtbGlnaHRcXEBtZWRpdW0ge1xuICAgIGNvbG9yOiAjODg3M2I3OyB9XG4gIC51LWJnLXB1cnBsZS1saWdodFxcQG1lZGl1bSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzg4NzNiNzsgfVxuICAudS1maWxsLXB1cnBsZS1saWdodFxcQG1lZGl1bSB7XG4gICAgZmlsbDogIzg4NzNiNzsgfVxuICAudS1jb2xvci1ibHVlLWxpZ2h0XFxAbWVkaXVtIHtcbiAgICBjb2xvcjogIzUxYWRmNjsgfVxuICAudS1iZy1ibHVlLWxpZ2h0XFxAbWVkaXVtIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTFhZGY2OyB9XG4gIC51LWZpbGwtYmx1ZS1saWdodFxcQG1lZGl1bSB7XG4gICAgZmlsbDogIzUxYWRmNjsgfVxuICAudS1jb2xvci1ncmVlbi1saWdodFxcQG1lZGl1bSB7XG4gICAgY29sb3I6ICMwMGJhNzU7IH1cbiAgLnUtYmctZ3JlZW4tbGlnaHRcXEBtZWRpdW0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMGJhNzU7IH1cbiAgLnUtZmlsbC1ncmVlbi1saWdodFxcQG1lZGl1bSB7XG4gICAgZmlsbDogIzAwYmE3NTsgfVxuICAudS1jb2xvci1jeWFuLWxpZ2h0XFxAbWVkaXVtIHtcbiAgICBjb2xvcjogI2E2ZThlMTsgfVxuICAudS1iZy1jeWFuLWxpZ2h0XFxAbWVkaXVtIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTZlOGUxOyB9XG4gIC51LWZpbGwtY3lhbi1saWdodFxcQG1lZGl1bSB7XG4gICAgZmlsbDogI2E2ZThlMTsgfVxuICAudS1jb2xvci15ZWxsb3ctbGlnaHRcXEBtZWRpdW0ge1xuICAgIGNvbG9yOiAjZmZjNDMzOyB9XG4gIC51LWJnLXllbGxvdy1saWdodFxcQG1lZGl1bSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYzQzMzsgfVxuICAudS1maWxsLXllbGxvdy1saWdodFxcQG1lZGl1bSB7XG4gICAgZmlsbDogI2ZmYzQzMzsgfVxuICAudS1jb2xvci1vcmFuZ2UtbGlnaHRcXEBtZWRpdW0ge1xuICAgIGNvbG9yOiAjZjhhNjY0OyB9XG4gIC51LWJnLW9yYW5nZS1saWdodFxcQG1lZGl1bSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4YTY2NDsgfVxuICAudS1maWxsLW9yYW5nZS1saWdodFxcQG1lZGl1bSB7XG4gICAgZmlsbDogI2Y4YTY2NDsgfVxuICAudS1jb2xvci1icm93bi1saWdodFxcQG1lZGl1bSB7XG4gICAgY29sb3I6ICM5OTZiNWI7IH1cbiAgLnUtYmctYnJvd24tbGlnaHRcXEBtZWRpdW0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM5OTZiNWI7IH1cbiAgLnUtZmlsbC1icm93bi1saWdodFxcQG1lZGl1bSB7XG4gICAgZmlsbDogIzk5NmI1YjsgfVxuICAudS1jb2xvci1ncmV5LWxpZ2h0ZXJcXEBtZWRpdW0ge1xuICAgIGNvbG9yOiAjYzdjOGNhOyB9XG4gIC51LWJnLWdyZXktbGlnaHRlclxcQG1lZGl1bSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2M3YzhjYTsgfVxuICAudS1maWxsLWdyZXktbGlnaHRlclxcQG1lZGl1bSB7XG4gICAgZmlsbDogI2M3YzhjYTsgfVxuICAudS1jb2xvci1yZWQtbGlnaHRlclxcQG1lZGl1bSB7XG4gICAgY29sb3I6ICNmMTRkNjg7IH1cbiAgLnUtYmctcmVkLWxpZ2h0ZXJcXEBtZWRpdW0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmMTRkNjg7IH1cbiAgLnUtZmlsbC1yZWQtbGlnaHRlclxcQG1lZGl1bSB7XG4gICAgZmlsbDogI2YxNGQ2ODsgfVxuICAudS1jb2xvci1waW5rLWxpZ2h0ZXJcXEBtZWRpdW0ge1xuICAgIGNvbG9yOiAjZjI3YmEzOyB9XG4gIC51LWJnLXBpbmstbGlnaHRlclxcQG1lZGl1bSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YyN2JhMzsgfVxuICAudS1maWxsLXBpbmstbGlnaHRlclxcQG1lZGl1bSB7XG4gICAgZmlsbDogI2YyN2JhMzsgfVxuICAudS1jb2xvci1wdXJwbGUtbGlnaHRlclxcQG1lZGl1bSB7XG4gICAgY29sb3I6ICNhNDk1Yzg7IH1cbiAgLnUtYmctcHVycGxlLWxpZ2h0ZXJcXEBtZWRpdW0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNhNDk1Yzg7IH1cbiAgLnUtZmlsbC1wdXJwbGUtbGlnaHRlclxcQG1lZGl1bSB7XG4gICAgZmlsbDogI2E0OTVjODsgfVxuICAudS1jb2xvci1ibHVlLWxpZ2h0ZXJcXEBtZWRpdW0ge1xuICAgIGNvbG9yOiAjODJjNGY4OyB9XG4gIC51LWJnLWJsdWUtbGlnaHRlclxcQG1lZGl1bSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzgyYzRmODsgfVxuICAudS1maWxsLWJsdWUtbGlnaHRlclxcQG1lZGl1bSB7XG4gICAgZmlsbDogIzgyYzRmODsgfVxuICAudS1jb2xvci1ncmVlbi1saWdodGVyXFxAbWVkaXVtIHtcbiAgICBjb2xvcjogIzAwZWQ5NTsgfVxuICAudS1iZy1ncmVlbi1saWdodGVyXFxAbWVkaXVtIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBlZDk1OyB9XG4gIC51LWZpbGwtZ3JlZW4tbGlnaHRlclxcQG1lZGl1bSB7XG4gICAgZmlsbDogIzAwZWQ5NTsgfVxuICAudS1jb2xvci1jeWFuLWxpZ2h0ZXJcXEBtZWRpdW0ge1xuICAgIGNvbG9yOiAjY2ZmMmVmOyB9XG4gIC51LWJnLWN5YW4tbGlnaHRlclxcQG1lZGl1bSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2NmZjJlZjsgfVxuICAudS1maWxsLWN5YW4tbGlnaHRlclxcQG1lZGl1bSB7XG4gICAgZmlsbDogI2NmZjJlZjsgfVxuICAudS1jb2xvci15ZWxsb3ctbGlnaHRlclxcQG1lZGl1bSB7XG4gICAgY29sb3I6ICNmZmQzNjY7IH1cbiAgLnUtYmcteWVsbG93LWxpZ2h0ZXJcXEBtZWRpdW0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmQzNjY7IH1cbiAgLnUtZmlsbC15ZWxsb3ctbGlnaHRlclxcQG1lZGl1bSB7XG4gICAgZmlsbDogI2ZmZDM2NjsgfVxuICAudS1jb2xvci1vcmFuZ2UtbGlnaHRlclxcQG1lZGl1bSB7XG4gICAgY29sb3I6ICNmYWMyOTU7IH1cbiAgLnUtYmctb3JhbmdlLWxpZ2h0ZXJcXEBtZWRpdW0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmYWMyOTU7IH1cbiAgLnUtZmlsbC1vcmFuZ2UtbGlnaHRlclxcQG1lZGl1bSB7XG4gICAgZmlsbDogI2ZhYzI5NTsgfVxuICAudS1jb2xvci1icm93bi1saWdodGVyXFxAbWVkaXVtIHtcbiAgICBjb2xvcjogI2FmODc3ODsgfVxuICAudS1iZy1icm93bi1saWdodGVyXFxAbWVkaXVtIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYWY4Nzc4OyB9XG4gIC51LWZpbGwtYnJvd24tbGlnaHRlclxcQG1lZGl1bSB7XG4gICAgZmlsbDogI2FmODc3ODsgfVxuICAudS1jb2xvci1waW5rLWRhcmtlclxcQG1lZGl1bSB7XG4gICAgY29sb3I6ICM5MzBlM2I7IH1cbiAgLnUtYmctcGluay1kYXJrZXJcXEBtZWRpdW0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM5MzBlM2I7IH1cbiAgLnUtZmlsbC1waW5rLWRhcmtlclxcQG1lZGl1bSB7XG4gICAgZmlsbDogIzkzMGUzYjsgfVxuICAudS1jb2xvci1wdXJwbGUtZGFya2VyXFxAbWVkaXVtIHtcbiAgICBjb2xvcjogIzNmMzE2MDsgfVxuICAudS1iZy1wdXJwbGUtZGFya2VyXFxAbWVkaXVtIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2YzMTYwOyB9XG4gIC51LWZpbGwtcHVycGxlLWRhcmtlclxcQG1lZGl1bSB7XG4gICAgZmlsbDogIzNmMzE2MDsgfVxuICAudS1jb2xvci1ibHVlLWRhcmtlclxcQG1lZGl1bSB7XG4gICAgY29sb3I6ICMwOTYwYTU7IH1cbiAgLnUtYmctYmx1ZS1kYXJrZXJcXEBtZWRpdW0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwOTYwYTU7IH1cbiAgLnUtZmlsbC1ibHVlLWRhcmtlclxcQG1lZGl1bSB7XG4gICAgZmlsbDogIzA5NjBhNTsgfVxuICAudS1jb2xvci1ncmVlbi1kYXJrZXJcXEBtZWRpdW0ge1xuICAgIGNvbG9yOiAjMDAyMTE1OyB9XG4gIC51LWJnLWdyZWVuLWRhcmtlclxcQG1lZGl1bSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMjExNTsgfVxuICAudS1maWxsLWdyZWVuLWRhcmtlclxcQG1lZGl1bSB7XG4gICAgZmlsbDogIzAwMjExNTsgfVxuICAudS1jb2xvci1jeWFuLWRhcmtlclxcQG1lZGl1bSB7XG4gICAgY29sb3I6ICMzM2MyYjM7IH1cbiAgLnUtYmctY3lhbi1kYXJrZXJcXEBtZWRpdW0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzM2MyYjM7IH1cbiAgLnUtZmlsbC1jeWFuLWRhcmtlclxcQG1lZGl1bSB7XG4gICAgZmlsbDogIzMzYzJiMzsgfVxuICAudS1jb2xvci15ZWxsb3ctZGFya2VyXFxAbWVkaXVtIHtcbiAgICBjb2xvcjogIzk5NmQwMDsgfVxuICAudS1iZy15ZWxsb3ctZGFya2VyXFxAbWVkaXVtIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOTk2ZDAwOyB9XG4gIC51LWZpbGwteWVsbG93LWRhcmtlclxcQG1lZGl1bSB7XG4gICAgZmlsbDogIzk5NmQwMDsgfVxuICAudS1jb2xvci1vcmFuZ2UtZGFya2VyXFxAbWVkaXVtIHtcbiAgICBjb2xvcjogI2JiNTgwODsgfVxuICAudS1iZy1vcmFuZ2UtZGFya2VyXFxAbWVkaXVtIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmI1ODA4OyB9XG4gIC51LWZpbGwtb3JhbmdlLWRhcmtlclxcQG1lZGl1bSB7XG4gICAgZmlsbDogI2JiNTgwODsgfVxuICAudS1jb2xvci1icm93bi1kYXJrZXJcXEBtZWRpdW0ge1xuICAgIGNvbG9yOiAjMzkyODIyOyB9XG4gIC51LWJnLWJyb3duLWRhcmtlclxcQG1lZGl1bSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzM5MjgyMjsgfVxuICAudS1maWxsLWJyb3duLWRhcmtlclxcQG1lZGl1bSB7XG4gICAgZmlsbDogIzM5MjgyMjsgfVxuICAudS1jb2xvci1icmFuZC1kYXJrXFxAbWVkaXVtIHtcbiAgICBjb2xvcjogIzdhMTIyMjsgfVxuICAudS1iZy1icmFuZC1kYXJrXFxAbWVkaXVtIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjN2ExMjIyOyB9XG4gIC51LWZpbGwtYnJhbmQtZGFya1xcQG1lZGl1bSB7XG4gICAgZmlsbDogIzdhMTIyMjsgfVxuICAudS1jb2xvci1icmFuZC1kYXJrZXJcXEBtZWRpdW0ge1xuICAgIGNvbG9yOiAjNGQwYzE1OyB9XG4gIC51LWJnLWJyYW5kLWRhcmtlclxcQG1lZGl1bSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzRkMGMxNTsgfVxuICAudS1maWxsLWJyYW5kLWRhcmtlclxcQG1lZGl1bSB7XG4gICAgZmlsbDogIzRkMGMxNTsgfVxuICAudS1jb2xvci1icmFuZC1saWdodFxcQG1lZGl1bSB7XG4gICAgY29sb3I6ICNkMjIwM2E7IH1cbiAgLnUtYmctYnJhbmQtbGlnaHRcXEBtZWRpdW0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNkMjIwM2E7IH1cbiAgLnUtZmlsbC1icmFuZC1saWdodFxcQG1lZGl1bSB7XG4gICAgZmlsbDogI2QyMjAzYTsgfVxuICAudS1jb2xvci1icmFuZC1saWdodGVyXFxAbWVkaXVtIHtcbiAgICBjb2xvcjogI2UzNDI1YTsgfVxuICAudS1iZy1icmFuZC1saWdodGVyXFxAbWVkaXVtIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTM0MjVhOyB9XG4gIC51LWZpbGwtYnJhbmQtbGlnaHRlclxcQG1lZGl1bSB7XG4gICAgZmlsbDogI2UzNDI1YTsgfVxuICAudS1jb2xvci1zZWNvbmRhcnktZGFya1xcQG1lZGl1bSB7XG4gICAgY29sb3I6ICMzZDY3NmQ7IH1cbiAgLnUtYmctc2Vjb25kYXJ5LWRhcmtcXEBtZWRpdW0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzZDY3NmQ7IH1cbiAgLnUtZmlsbC1zZWNvbmRhcnktZGFya1xcQG1lZGl1bSB7XG4gICAgZmlsbDogIzNkNjc2ZDsgfVxuICAudS1jb2xvci1zZWNvbmRhcnktZGFya2VyXFxAbWVkaXVtIHtcbiAgICBjb2xvcjogIzJiNDg0YzsgfVxuICAudS1iZy1zZWNvbmRhcnktZGFya2VyXFxAbWVkaXVtIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmI0ODRjOyB9XG4gIC51LWZpbGwtc2Vjb25kYXJ5LWRhcmtlclxcQG1lZGl1bSB7XG4gICAgZmlsbDogIzJiNDg0YzsgfVxuICAudS1jb2xvci1zZWNvbmRhcnktbGlnaHRcXEBtZWRpdW0ge1xuICAgIGNvbG9yOiAjNjZhMWFhOyB9XG4gIC51LWJnLXNlY29uZGFyeS1saWdodFxcQG1lZGl1bSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzY2YTFhYTsgfVxuICAudS1maWxsLXNlY29uZGFyeS1saWdodFxcQG1lZGl1bSB7XG4gICAgZmlsbDogIzY2YTFhYTsgfVxuICAudS1jb2xvci1zZWNvbmRhcnktbGlnaHRlclxcQG1lZGl1bSB7XG4gICAgY29sb3I6ICNiOGQ0ZDg7IH1cbiAgLnUtYmctc2Vjb25kYXJ5LWxpZ2h0ZXJcXEBtZWRpdW0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNiOGQ0ZDg7IH1cbiAgLnUtZmlsbC1zZWNvbmRhcnktbGlnaHRlclxcQG1lZGl1bSB7XG4gICAgZmlsbDogI2I4ZDRkODsgfVxuICAudS1jb2xvci1pbmZvLWRhcmtcXEBtZWRpdW0ge1xuICAgIGNvbG9yOiAjMGM3Y2Q1OyB9XG4gIC51LWJnLWluZm8tZGFya1xcQG1lZGl1bSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzBjN2NkNTsgfVxuICAudS1maWxsLWluZm8tZGFya1xcQG1lZGl1bSB7XG4gICAgZmlsbDogIzBjN2NkNTsgfVxuICAudS1jb2xvci1pbmZvLWRhcmtlclxcQG1lZGl1bSB7XG4gICAgY29sb3I6ICMwOTYwYTU7IH1cbiAgLnUtYmctaW5mby1kYXJrZXJcXEBtZWRpdW0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwOTYwYTU7IH1cbiAgLnUtZmlsbC1pbmZvLWRhcmtlclxcQG1lZGl1bSB7XG4gICAgZmlsbDogIzA5NjBhNTsgfVxuICAudS1jb2xvci1pbmZvLWxpZ2h0XFxAbWVkaXVtIHtcbiAgICBjb2xvcjogIzUxYWRmNjsgfVxuICAudS1iZy1pbmZvLWxpZ2h0XFxAbWVkaXVtIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTFhZGY2OyB9XG4gIC51LWZpbGwtaW5mby1saWdodFxcQG1lZGl1bSB7XG4gICAgZmlsbDogIzUxYWRmNjsgfVxuICAudS1jb2xvci1pbmZvLWxpZ2h0ZXJcXEBtZWRpdW0ge1xuICAgIGNvbG9yOiAjODJjNGY4OyB9XG4gIC51LWJnLWluZm8tbGlnaHRlclxcQG1lZGl1bSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzgyYzRmODsgfVxuICAudS1maWxsLWluZm8tbGlnaHRlclxcQG1lZGl1bSB7XG4gICAgZmlsbDogIzgyYzRmODsgfVxuICAudS1jb2xvci13YXJuaW5nLWRhcmtcXEBtZWRpdW0ge1xuICAgIGNvbG9yOiAjZWM2ZjBhOyB9XG4gIC51LWJnLXdhcm5pbmctZGFya1xcQG1lZGl1bSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VjNmYwYTsgfVxuICAudS1maWxsLXdhcm5pbmctZGFya1xcQG1lZGl1bSB7XG4gICAgZmlsbDogI2VjNmYwYTsgfVxuICAudS1jb2xvci13YXJuaW5nLWRhcmtlclxcQG1lZGl1bSB7XG4gICAgY29sb3I6ICNiYjU4MDg7IH1cbiAgLnUtYmctd2FybmluZy1kYXJrZXJcXEBtZWRpdW0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNiYjU4MDg7IH1cbiAgLnUtZmlsbC13YXJuaW5nLWRhcmtlclxcQG1lZGl1bSB7XG4gICAgZmlsbDogI2JiNTgwODsgfVxuICAudS1jb2xvci13YXJuaW5nLWxpZ2h0XFxAbWVkaXVtIHtcbiAgICBjb2xvcjogI2Y4YTY2NDsgfVxuICAudS1iZy13YXJuaW5nLWxpZ2h0XFxAbWVkaXVtIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhhNjY0OyB9XG4gIC51LWZpbGwtd2FybmluZy1saWdodFxcQG1lZGl1bSB7XG4gICAgZmlsbDogI2Y4YTY2NDsgfVxuICAudS1jb2xvci13YXJuaW5nLWxpZ2h0ZXJcXEBtZWRpdW0ge1xuICAgIGNvbG9yOiAjZmFjMjk1OyB9XG4gIC51LWJnLXdhcm5pbmctbGlnaHRlclxcQG1lZGl1bSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZhYzI5NTsgfVxuICAudS1maWxsLXdhcm5pbmctbGlnaHRlclxcQG1lZGl1bSB7XG4gICAgZmlsbDogI2ZhYzI5NTsgfVxuICAudS1jb2xvci1zdWNjZXNzLWRhcmtcXEBtZWRpdW0ge1xuICAgIGNvbG9yOiAjMDA1NDM1OyB9XG4gIC51LWJnLXN1Y2Nlc3MtZGFya1xcQG1lZGl1bSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwNTQzNTsgfVxuICAudS1maWxsLXN1Y2Nlc3MtZGFya1xcQG1lZGl1bSB7XG4gICAgZmlsbDogIzAwNTQzNTsgfVxuICAudS1jb2xvci1zdWNjZXNzLWRhcmtlclxcQG1lZGl1bSB7XG4gICAgY29sb3I6ICMwMDIxMTU7IH1cbiAgLnUtYmctc3VjY2Vzcy1kYXJrZXJcXEBtZWRpdW0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDIxMTU7IH1cbiAgLnUtZmlsbC1zdWNjZXNzLWRhcmtlclxcQG1lZGl1bSB7XG4gICAgZmlsbDogIzAwMjExNTsgfVxuICAudS1jb2xvci1zdWNjZXNzLWxpZ2h0XFxAbWVkaXVtIHtcbiAgICBjb2xvcjogIzAwYmE3NTsgfVxuICAudS1iZy1zdWNjZXNzLWxpZ2h0XFxAbWVkaXVtIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBiYTc1OyB9XG4gIC51LWZpbGwtc3VjY2Vzcy1saWdodFxcQG1lZGl1bSB7XG4gICAgZmlsbDogIzAwYmE3NTsgfVxuICAudS1jb2xvci1zdWNjZXNzLWxpZ2h0ZXJcXEBtZWRpdW0ge1xuICAgIGNvbG9yOiAjMDBlZDk1OyB9XG4gIC51LWJnLXN1Y2Nlc3MtbGlnaHRlclxcQG1lZGl1bSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwZWQ5NTsgfVxuICAudS1maWxsLXN1Y2Nlc3MtbGlnaHRlclxcQG1lZGl1bSB7XG4gICAgZmlsbDogIzAwZWQ5NTsgfVxuICAudS1jb2xvci1lcnJvci1kYXJrXFxAbWVkaXVtIHtcbiAgICBjb2xvcjogIzk5MGMyMzsgfVxuICAudS1iZy1lcnJvci1kYXJrXFxAbWVkaXVtIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOTkwYzIzOyB9XG4gIC51LWZpbGwtZXJyb3ItZGFya1xcQG1lZGl1bSB7XG4gICAgZmlsbDogIzk5MGMyMzsgfVxuICAudS1jb2xvci1lcnJvci1kYXJrZXJcXEBtZWRpdW0ge1xuICAgIGNvbG9yOiAjNmEwODE4OyB9XG4gIC51LWJnLWVycm9yLWRhcmtlclxcQG1lZGl1bSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzZhMDgxODsgfVxuICAudS1maWxsLWVycm9yLWRhcmtlclxcQG1lZGl1bSB7XG4gICAgZmlsbDogIzZhMDgxODsgfVxuICAudS1jb2xvci1lcnJvci1saWdodFxcQG1lZGl1bSB7XG4gICAgY29sb3I6ICNlZDFlNDA7IH1cbiAgLnUtYmctZXJyb3ItbGlnaHRcXEBtZWRpdW0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlZDFlNDA7IH1cbiAgLnUtZmlsbC1lcnJvci1saWdodFxcQG1lZGl1bSB7XG4gICAgZmlsbDogI2VkMWU0MDsgfVxuICAudS1jb2xvci1lcnJvci1saWdodGVyXFxAbWVkaXVtIHtcbiAgICBjb2xvcjogI2YxNGQ2ODsgfVxuICAudS1iZy1lcnJvci1saWdodGVyXFxAbWVkaXVtIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjE0ZDY4OyB9XG4gIC51LWZpbGwtZXJyb3ItbGlnaHRlclxcQG1lZGl1bSB7XG4gICAgZmlsbDogI2YxNGQ2ODsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA2NHJlbSkge1xuICAudS1iZy1ub25lXFxAbGFyZ2Uge1xuICAgIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDsgfVxuICAudS1jb2xvci1ibGFja1xcQGxhcmdlIHtcbiAgICBjb2xvcjogIzQxNDA0MjsgfVxuICAudS1iZy1ibGFja1xcQGxhcmdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDE0MDQyOyB9XG4gIC51LWZpbGwtYmxhY2tcXEBsYXJnZSB7XG4gICAgZmlsbDogIzQxNDA0MjsgfVxuICAudS1jb2xvci1ncmV5XFxAbGFyZ2Uge1xuICAgIGNvbG9yOiAjOTM5NTk4OyB9XG4gIC51LWJnLWdyZXlcXEBsYXJnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzkzOTU5ODsgfVxuICAudS1maWxsLWdyZXlcXEBsYXJnZSB7XG4gICAgZmlsbDogIzkzOTU5ODsgfVxuICAudS1jb2xvci1saWdodC1ncmV5XFxAbGFyZ2Uge1xuICAgIGNvbG9yOiAjRjJGMkYyOyB9XG4gIC51LWJnLWxpZ2h0LWdyZXlcXEBsYXJnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0YyRjJGMjsgfVxuICAudS1maWxsLWxpZ2h0LWdyZXlcXEBsYXJnZSB7XG4gICAgZmlsbDogI0YyRjJGMjsgfVxuICAudS1jb2xvci13aGl0ZVxcQGxhcmdlIHtcbiAgICBjb2xvcjogI0ZGRjsgfVxuICAudS1iZy13aGl0ZVxcQGxhcmdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGOyB9XG4gIC51LWZpbGwtd2hpdGVcXEBsYXJnZSB7XG4gICAgZmlsbDogI0ZGRjsgfVxuICAudS1jb2xvci1iZWlnZVxcQGxhcmdlIHtcbiAgICBjb2xvcjogI0YyRjJFQTsgfVxuICAudS1iZy1iZWlnZVxcQGxhcmdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjJGMkVBOyB9XG4gIC51LWZpbGwtYmVpZ2VcXEBsYXJnZSB7XG4gICAgZmlsbDogI0YyRjJFQTsgfVxuICAudS1jb2xvci1yZWRcXEBsYXJnZSB7XG4gICAgY29sb3I6ICNDODEwMkU7IH1cbiAgLnUtYmctcmVkXFxAbGFyZ2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNDODEwMkU7IH1cbiAgLnUtZmlsbC1yZWRcXEBsYXJnZSB7XG4gICAgZmlsbDogI0M4MTAyRTsgfVxuICAudS1jb2xvci1waW5rXFxAbGFyZ2Uge1xuICAgIGNvbG9yOiAjRTkxRTYzOyB9XG4gIC51LWJnLXBpbmtcXEBsYXJnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0U5MUU2MzsgfVxuICAudS1maWxsLXBpbmtcXEBsYXJnZSB7XG4gICAgZmlsbDogI0U5MUU2MzsgfVxuICAudS1jb2xvci1wdXJwbGVcXEBsYXJnZSB7XG4gICAgY29sb3I6ICM2QzU0QTM7IH1cbiAgLnUtYmctcHVycGxlXFxAbGFyZ2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM2QzU0QTM7IH1cbiAgLnUtZmlsbC1wdXJwbGVcXEBsYXJnZSB7XG4gICAgZmlsbDogIzZDNTRBMzsgfVxuICAudS1jb2xvci1ibHVlXFxAbGFyZ2Uge1xuICAgIGNvbG9yOiAjMjE5NkYzOyB9XG4gIC51LWJnLWJsdWVcXEBsYXJnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzIxOTZGMzsgfVxuICAudS1maWxsLWJsdWVcXEBsYXJnZSB7XG4gICAgZmlsbDogIzIxOTZGMzsgfVxuICAudS1jb2xvci1ncmVlblxcQGxhcmdlIHtcbiAgICBjb2xvcjogIzAwODc1NTsgfVxuICAudS1iZy1ncmVlblxcQGxhcmdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA4NzU1OyB9XG4gIC51LWZpbGwtZ3JlZW5cXEBsYXJnZSB7XG4gICAgZmlsbDogIzAwODc1NTsgfVxuICAudS1jb2xvci1saWdodC1ncmVlblxcQGxhcmdlIHtcbiAgICBjb2xvcjogIzZDQzI0QTsgfVxuICAudS1iZy1saWdodC1ncmVlblxcQGxhcmdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNkNDMjRBOyB9XG4gIC51LWZpbGwtbGlnaHQtZ3JlZW5cXEBsYXJnZSB7XG4gICAgZmlsbDogIzZDQzI0QTsgfVxuICAudS1jb2xvci10ZWFsXFxAbGFyZ2Uge1xuICAgIGNvbG9yOiAjNEY4NjhFOyB9XG4gIC51LWJnLXRlYWxcXEBsYXJnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzRGODY4RTsgfVxuICAudS1maWxsLXRlYWxcXEBsYXJnZSB7XG4gICAgZmlsbDogIzRGODY4RTsgfVxuICAudS1jb2xvci1jeWFuXFxAbGFyZ2Uge1xuICAgIGNvbG9yOiAjN0VEREQzOyB9XG4gIC51LWJnLWN5YW5cXEBsYXJnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzdFREREMzsgfVxuICAudS1maWxsLWN5YW5cXEBsYXJnZSB7XG4gICAgZmlsbDogIzdFREREMzsgfVxuICAudS1jb2xvci15ZWxsb3dcXEBsYXJnZSB7XG4gICAgY29sb3I6ICNGRkI1MDA7IH1cbiAgLnUtYmcteWVsbG93XFxAbGFyZ2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGRkI1MDA7IH1cbiAgLnUtZmlsbC15ZWxsb3dcXEBsYXJnZSB7XG4gICAgZmlsbDogI0ZGQjUwMDsgfVxuICAudS1jb2xvci1vcmFuZ2VcXEBsYXJnZSB7XG4gICAgY29sb3I6ICNGNjhBMzM7IH1cbiAgLnUtYmctb3JhbmdlXFxAbGFyZ2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGNjhBMzM7IH1cbiAgLnUtZmlsbC1vcmFuZ2VcXEBsYXJnZSB7XG4gICAgZmlsbDogI0Y2OEEzMzsgfVxuICAudS1jb2xvci1icm93blxcQGxhcmdlIHtcbiAgICBjb2xvcjogIzc5NTU0ODsgfVxuICAudS1iZy1icm93blxcQGxhcmdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzk1NTQ4OyB9XG4gIC51LWZpbGwtYnJvd25cXEBsYXJnZSB7XG4gICAgZmlsbDogIzc5NTU0ODsgfVxuICAudS1jb2xvci1icmFuZFxcQGxhcmdlIHtcbiAgICBjb2xvcjogI2E2MTkyZTsgfVxuICAudS1iZy1icmFuZFxcQGxhcmdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTYxOTJlOyB9XG4gIC51LWZpbGwtYnJhbmRcXEBsYXJnZSB7XG4gICAgZmlsbDogI2E2MTkyZTsgfVxuICAudS1jb2xvci1zZWNvbmRhcnlcXEBsYXJnZSB7XG4gICAgY29sb3I6ICM0Rjg2OEU7IH1cbiAgLnUtYmctc2Vjb25kYXJ5XFxAbGFyZ2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM0Rjg2OEU7IH1cbiAgLnUtZmlsbC1zZWNvbmRhcnlcXEBsYXJnZSB7XG4gICAgZmlsbDogIzRGODY4RTsgfVxuICAudS1jb2xvci10ZXJ0aWFyeVxcQGxhcmdlIHtcbiAgICBjb2xvcjogIzdFREREMzsgfVxuICAudS1iZy10ZXJ0aWFyeVxcQGxhcmdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjN0VEREQzOyB9XG4gIC51LWZpbGwtdGVydGlhcnlcXEBsYXJnZSB7XG4gICAgZmlsbDogIzdFREREMzsgfVxuICAudS1jb2xvci1pbmZvXFxAbGFyZ2Uge1xuICAgIGNvbG9yOiAjMjE5NkYzOyB9XG4gIC51LWJnLWluZm9cXEBsYXJnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzIxOTZGMzsgfVxuICAudS1maWxsLWluZm9cXEBsYXJnZSB7XG4gICAgZmlsbDogIzIxOTZGMzsgfVxuICAudS1jb2xvci13YXJuaW5nXFxAbGFyZ2Uge1xuICAgIGNvbG9yOiAjRjY4QTMzOyB9XG4gIC51LWJnLXdhcm5pbmdcXEBsYXJnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0Y2OEEzMzsgfVxuICAudS1maWxsLXdhcm5pbmdcXEBsYXJnZSB7XG4gICAgZmlsbDogI0Y2OEEzMzsgfVxuICAudS1jb2xvci1zdWNjZXNzXFxAbGFyZ2Uge1xuICAgIGNvbG9yOiAjMDA4NzU1OyB9XG4gIC51LWJnLXN1Y2Nlc3NcXEBsYXJnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwODc1NTsgfVxuICAudS1maWxsLXN1Y2Nlc3NcXEBsYXJnZSB7XG4gICAgZmlsbDogIzAwODc1NTsgfVxuICAudS1jb2xvci1lcnJvclxcQGxhcmdlIHtcbiAgICBjb2xvcjogI0M4MTAyRTsgfVxuICAudS1iZy1lcnJvclxcQGxhcmdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjQzgxMDJFOyB9XG4gIC51LWZpbGwtZXJyb3JcXEBsYXJnZSB7XG4gICAgZmlsbDogI0M4MTAyRTsgfVxuICAudS1jb2xvci1kZWZhdWx0XFxAbGFyZ2Uge1xuICAgIGNvbG9yOiAjNzk3YjdmOyB9XG4gIC51LWJnLWRlZmF1bHRcXEBsYXJnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzc5N2I3ZjsgfVxuICAudS1maWxsLWRlZmF1bHRcXEBsYXJnZSB7XG4gICAgZmlsbDogIzc5N2I3ZjsgfVxuICAudS1jb2xvci1kaXNhYmxlZFxcQGxhcmdlIHtcbiAgICBjb2xvcjogIzc5N2I3ZjsgfVxuICAudS1iZy1kaXNhYmxlZFxcQGxhcmdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzk3YjdmOyB9XG4gIC51LWZpbGwtZGlzYWJsZWRcXEBsYXJnZSB7XG4gICAgZmlsbDogIzc5N2I3ZjsgfVxuICAudS1jb2xvci1xdWlldFxcQGxhcmdlIHtcbiAgICBjb2xvcjogIzc5N2I3ZjsgfVxuICAudS1iZy1xdWlldFxcQGxhcmdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzk3YjdmOyB9XG4gIC51LWZpbGwtcXVpZXRcXEBsYXJnZSB7XG4gICAgZmlsbDogIzc5N2I3ZjsgfVxuICAudS1jb2xvci1ncmV5LWRhcmtcXEBsYXJnZSB7XG4gICAgY29sb3I6ICM3OTdiN2Y7IH1cbiAgLnUtYmctZ3JleS1kYXJrXFxAbGFyZ2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM3OTdiN2Y7IH1cbiAgLnUtZmlsbC1ncmV5LWRhcmtcXEBsYXJnZSB7XG4gICAgZmlsbDogIzc5N2I3ZjsgfVxuICAudS1jb2xvci1yZWQtZGFya1xcQGxhcmdlIHtcbiAgICBjb2xvcjogIzk5MGMyMzsgfVxuICAudS1iZy1yZWQtZGFya1xcQGxhcmdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOTkwYzIzOyB9XG4gIC51LWZpbGwtcmVkLWRhcmtcXEBsYXJnZSB7XG4gICAgZmlsbDogIzk5MGMyMzsgfVxuICAudS1jb2xvci1waW5rLWRhcmtcXEBsYXJnZSB7XG4gICAgY29sb3I6ICNjMTEzNGU7IH1cbiAgLnUtYmctcGluay1kYXJrXFxAbGFyZ2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjMTEzNGU7IH1cbiAgLnUtZmlsbC1waW5rLWRhcmtcXEBsYXJnZSB7XG4gICAgZmlsbDogI2MxMTM0ZTsgfVxuICAudS1jb2xvci1wdXJwbGUtZGFya1xcQGxhcmdlIHtcbiAgICBjb2xvcjogIzU2NDM4MTsgfVxuICAudS1iZy1wdXJwbGUtZGFya1xcQGxhcmdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTY0MzgxOyB9XG4gIC51LWZpbGwtcHVycGxlLWRhcmtcXEBsYXJnZSB7XG4gICAgZmlsbDogIzU2NDM4MTsgfVxuICAudS1jb2xvci1ibHVlLWRhcmtcXEBsYXJnZSB7XG4gICAgY29sb3I6ICMwYzdjZDU7IH1cbiAgLnUtYmctYmx1ZS1kYXJrXFxAbGFyZ2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwYzdjZDU7IH1cbiAgLnUtZmlsbC1ibHVlLWRhcmtcXEBsYXJnZSB7XG4gICAgZmlsbDogIzBjN2NkNTsgfVxuICAudS1jb2xvci1ncmVlbi1kYXJrXFxAbGFyZ2Uge1xuICAgIGNvbG9yOiAjMDA1NDM1OyB9XG4gIC51LWJnLWdyZWVuLWRhcmtcXEBsYXJnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwNTQzNTsgfVxuICAudS1maWxsLWdyZWVuLWRhcmtcXEBsYXJnZSB7XG4gICAgZmlsbDogIzAwNTQzNTsgfVxuICAudS1jb2xvci1jeWFuLWRhcmtcXEBsYXJnZSB7XG4gICAgY29sb3I6ICM1NmQyYzU7IH1cbiAgLnUtYmctY3lhbi1kYXJrXFxAbGFyZ2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM1NmQyYzU7IH1cbiAgLnUtZmlsbC1jeWFuLWRhcmtcXEBsYXJnZSB7XG4gICAgZmlsbDogIzU2ZDJjNTsgfVxuICAudS1jb2xvci15ZWxsb3ctZGFya1xcQGxhcmdlIHtcbiAgICBjb2xvcjogI2NjOTEwMDsgfVxuICAudS1iZy15ZWxsb3ctZGFya1xcQGxhcmdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2M5MTAwOyB9XG4gIC51LWZpbGwteWVsbG93LWRhcmtcXEBsYXJnZSB7XG4gICAgZmlsbDogI2NjOTEwMDsgfVxuICAudS1jb2xvci1vcmFuZ2UtZGFya1xcQGxhcmdlIHtcbiAgICBjb2xvcjogI2VjNmYwYTsgfVxuICAudS1iZy1vcmFuZ2UtZGFya1xcQGxhcmdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWM2ZjBhOyB9XG4gIC51LWZpbGwtb3JhbmdlLWRhcmtcXEBsYXJnZSB7XG4gICAgZmlsbDogI2VjNmYwYTsgfVxuICAudS1jb2xvci1icm93bi1kYXJrXFxAbGFyZ2Uge1xuICAgIGNvbG9yOiAjNTkzZjM1OyB9XG4gIC51LWJnLWJyb3duLWRhcmtcXEBsYXJnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzU5M2YzNTsgfVxuICAudS1maWxsLWJyb3duLWRhcmtcXEBsYXJnZSB7XG4gICAgZmlsbDogIzU5M2YzNTsgfVxuICAudS1jb2xvci1ncmV5LWRhcmtlclxcQGxhcmdlIHtcbiAgICBjb2xvcjogIzYwNjI2NTsgfVxuICAudS1iZy1ncmV5LWRhcmtlclxcQGxhcmdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjA2MjY1OyB9XG4gIC51LWZpbGwtZ3JleS1kYXJrZXJcXEBsYXJnZSB7XG4gICAgZmlsbDogIzYwNjI2NTsgfVxuICAudS1jb2xvci1yZWQtZGFya2VyXFxAbGFyZ2Uge1xuICAgIGNvbG9yOiAjNmEwODE4OyB9XG4gIC51LWJnLXJlZC1kYXJrZXJcXEBsYXJnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzZhMDgxODsgfVxuICAudS1maWxsLXJlZC1kYXJrZXJcXEBsYXJnZSB7XG4gICAgZmlsbDogIzZhMDgxODsgfVxuICAudS1jb2xvci1ncmV5LWxpZ2h0XFxAbGFyZ2Uge1xuICAgIGNvbG9yOiAjYWRhZmIxOyB9XG4gIC51LWJnLWdyZXktbGlnaHRcXEBsYXJnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2FkYWZiMTsgfVxuICAudS1maWxsLWdyZXktbGlnaHRcXEBsYXJnZSB7XG4gICAgZmlsbDogI2FkYWZiMTsgfVxuICAudS1jb2xvci1yZWQtbGlnaHRcXEBsYXJnZSB7XG4gICAgY29sb3I6ICNlZDFlNDA7IH1cbiAgLnUtYmctcmVkLWxpZ2h0XFxAbGFyZ2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlZDFlNDA7IH1cbiAgLnUtZmlsbC1yZWQtbGlnaHRcXEBsYXJnZSB7XG4gICAgZmlsbDogI2VkMWU0MDsgfVxuICAudS1jb2xvci1waW5rLWxpZ2h0XFxAbGFyZ2Uge1xuICAgIGNvbG9yOiAjZWU0YzgzOyB9XG4gIC51LWJnLXBpbmstbGlnaHRcXEBsYXJnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VlNGM4MzsgfVxuICAudS1maWxsLXBpbmstbGlnaHRcXEBsYXJnZSB7XG4gICAgZmlsbDogI2VlNGM4MzsgfVxuICAudS1jb2xvci1wdXJwbGUtbGlnaHRcXEBsYXJnZSB7XG4gICAgY29sb3I6ICM4ODczYjc7IH1cbiAgLnUtYmctcHVycGxlLWxpZ2h0XFxAbGFyZ2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM4ODczYjc7IH1cbiAgLnUtZmlsbC1wdXJwbGUtbGlnaHRcXEBsYXJnZSB7XG4gICAgZmlsbDogIzg4NzNiNzsgfVxuICAudS1jb2xvci1ibHVlLWxpZ2h0XFxAbGFyZ2Uge1xuICAgIGNvbG9yOiAjNTFhZGY2OyB9XG4gIC51LWJnLWJsdWUtbGlnaHRcXEBsYXJnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzUxYWRmNjsgfVxuICAudS1maWxsLWJsdWUtbGlnaHRcXEBsYXJnZSB7XG4gICAgZmlsbDogIzUxYWRmNjsgfVxuICAudS1jb2xvci1ncmVlbi1saWdodFxcQGxhcmdlIHtcbiAgICBjb2xvcjogIzAwYmE3NTsgfVxuICAudS1iZy1ncmVlbi1saWdodFxcQGxhcmdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBiYTc1OyB9XG4gIC51LWZpbGwtZ3JlZW4tbGlnaHRcXEBsYXJnZSB7XG4gICAgZmlsbDogIzAwYmE3NTsgfVxuICAudS1jb2xvci1jeWFuLWxpZ2h0XFxAbGFyZ2Uge1xuICAgIGNvbG9yOiAjYTZlOGUxOyB9XG4gIC51LWJnLWN5YW4tbGlnaHRcXEBsYXJnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2E2ZThlMTsgfVxuICAudS1maWxsLWN5YW4tbGlnaHRcXEBsYXJnZSB7XG4gICAgZmlsbDogI2E2ZThlMTsgfVxuICAudS1jb2xvci15ZWxsb3ctbGlnaHRcXEBsYXJnZSB7XG4gICAgY29sb3I6ICNmZmM0MzM7IH1cbiAgLnUtYmcteWVsbG93LWxpZ2h0XFxAbGFyZ2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmM0MzM7IH1cbiAgLnUtZmlsbC15ZWxsb3ctbGlnaHRcXEBsYXJnZSB7XG4gICAgZmlsbDogI2ZmYzQzMzsgfVxuICAudS1jb2xvci1vcmFuZ2UtbGlnaHRcXEBsYXJnZSB7XG4gICAgY29sb3I6ICNmOGE2NjQ7IH1cbiAgLnUtYmctb3JhbmdlLWxpZ2h0XFxAbGFyZ2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmOGE2NjQ7IH1cbiAgLnUtZmlsbC1vcmFuZ2UtbGlnaHRcXEBsYXJnZSB7XG4gICAgZmlsbDogI2Y4YTY2NDsgfVxuICAudS1jb2xvci1icm93bi1saWdodFxcQGxhcmdlIHtcbiAgICBjb2xvcjogIzk5NmI1YjsgfVxuICAudS1iZy1icm93bi1saWdodFxcQGxhcmdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOTk2YjViOyB9XG4gIC51LWZpbGwtYnJvd24tbGlnaHRcXEBsYXJnZSB7XG4gICAgZmlsbDogIzk5NmI1YjsgfVxuICAudS1jb2xvci1ncmV5LWxpZ2h0ZXJcXEBsYXJnZSB7XG4gICAgY29sb3I6ICNjN2M4Y2E7IH1cbiAgLnUtYmctZ3JleS1saWdodGVyXFxAbGFyZ2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjN2M4Y2E7IH1cbiAgLnUtZmlsbC1ncmV5LWxpZ2h0ZXJcXEBsYXJnZSB7XG4gICAgZmlsbDogI2M3YzhjYTsgfVxuICAudS1jb2xvci1yZWQtbGlnaHRlclxcQGxhcmdlIHtcbiAgICBjb2xvcjogI2YxNGQ2ODsgfVxuICAudS1iZy1yZWQtbGlnaHRlclxcQGxhcmdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjE0ZDY4OyB9XG4gIC51LWZpbGwtcmVkLWxpZ2h0ZXJcXEBsYXJnZSB7XG4gICAgZmlsbDogI2YxNGQ2ODsgfVxuICAudS1jb2xvci1waW5rLWxpZ2h0ZXJcXEBsYXJnZSB7XG4gICAgY29sb3I6ICNmMjdiYTM7IH1cbiAgLnUtYmctcGluay1saWdodGVyXFxAbGFyZ2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmMjdiYTM7IH1cbiAgLnUtZmlsbC1waW5rLWxpZ2h0ZXJcXEBsYXJnZSB7XG4gICAgZmlsbDogI2YyN2JhMzsgfVxuICAudS1jb2xvci1wdXJwbGUtbGlnaHRlclxcQGxhcmdlIHtcbiAgICBjb2xvcjogI2E0OTVjODsgfVxuICAudS1iZy1wdXJwbGUtbGlnaHRlclxcQGxhcmdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTQ5NWM4OyB9XG4gIC51LWZpbGwtcHVycGxlLWxpZ2h0ZXJcXEBsYXJnZSB7XG4gICAgZmlsbDogI2E0OTVjODsgfVxuICAudS1jb2xvci1ibHVlLWxpZ2h0ZXJcXEBsYXJnZSB7XG4gICAgY29sb3I6ICM4MmM0Zjg7IH1cbiAgLnUtYmctYmx1ZS1saWdodGVyXFxAbGFyZ2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM4MmM0Zjg7IH1cbiAgLnUtZmlsbC1ibHVlLWxpZ2h0ZXJcXEBsYXJnZSB7XG4gICAgZmlsbDogIzgyYzRmODsgfVxuICAudS1jb2xvci1ncmVlbi1saWdodGVyXFxAbGFyZ2Uge1xuICAgIGNvbG9yOiAjMDBlZDk1OyB9XG4gIC51LWJnLWdyZWVuLWxpZ2h0ZXJcXEBsYXJnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwZWQ5NTsgfVxuICAudS1maWxsLWdyZWVuLWxpZ2h0ZXJcXEBsYXJnZSB7XG4gICAgZmlsbDogIzAwZWQ5NTsgfVxuICAudS1jb2xvci1jeWFuLWxpZ2h0ZXJcXEBsYXJnZSB7XG4gICAgY29sb3I6ICNjZmYyZWY7IH1cbiAgLnUtYmctY3lhbi1saWdodGVyXFxAbGFyZ2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjZmYyZWY7IH1cbiAgLnUtZmlsbC1jeWFuLWxpZ2h0ZXJcXEBsYXJnZSB7XG4gICAgZmlsbDogI2NmZjJlZjsgfVxuICAudS1jb2xvci15ZWxsb3ctbGlnaHRlclxcQGxhcmdlIHtcbiAgICBjb2xvcjogI2ZmZDM2NjsgfVxuICAudS1iZy15ZWxsb3ctbGlnaHRlclxcQGxhcmdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZkMzY2OyB9XG4gIC51LWZpbGwteWVsbG93LWxpZ2h0ZXJcXEBsYXJnZSB7XG4gICAgZmlsbDogI2ZmZDM2NjsgfVxuICAudS1jb2xvci1vcmFuZ2UtbGlnaHRlclxcQGxhcmdlIHtcbiAgICBjb2xvcjogI2ZhYzI5NTsgfVxuICAudS1iZy1vcmFuZ2UtbGlnaHRlclxcQGxhcmdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFjMjk1OyB9XG4gIC51LWZpbGwtb3JhbmdlLWxpZ2h0ZXJcXEBsYXJnZSB7XG4gICAgZmlsbDogI2ZhYzI5NTsgfVxuICAudS1jb2xvci1icm93bi1saWdodGVyXFxAbGFyZ2Uge1xuICAgIGNvbG9yOiAjYWY4Nzc4OyB9XG4gIC51LWJnLWJyb3duLWxpZ2h0ZXJcXEBsYXJnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2FmODc3ODsgfVxuICAudS1maWxsLWJyb3duLWxpZ2h0ZXJcXEBsYXJnZSB7XG4gICAgZmlsbDogI2FmODc3ODsgfVxuICAudS1jb2xvci1waW5rLWRhcmtlclxcQGxhcmdlIHtcbiAgICBjb2xvcjogIzkzMGUzYjsgfVxuICAudS1iZy1waW5rLWRhcmtlclxcQGxhcmdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOTMwZTNiOyB9XG4gIC51LWZpbGwtcGluay1kYXJrZXJcXEBsYXJnZSB7XG4gICAgZmlsbDogIzkzMGUzYjsgfVxuICAudS1jb2xvci1wdXJwbGUtZGFya2VyXFxAbGFyZ2Uge1xuICAgIGNvbG9yOiAjM2YzMTYwOyB9XG4gIC51LWJnLXB1cnBsZS1kYXJrZXJcXEBsYXJnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzNmMzE2MDsgfVxuICAudS1maWxsLXB1cnBsZS1kYXJrZXJcXEBsYXJnZSB7XG4gICAgZmlsbDogIzNmMzE2MDsgfVxuICAudS1jb2xvci1ibHVlLWRhcmtlclxcQGxhcmdlIHtcbiAgICBjb2xvcjogIzA5NjBhNTsgfVxuICAudS1iZy1ibHVlLWRhcmtlclxcQGxhcmdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDk2MGE1OyB9XG4gIC51LWZpbGwtYmx1ZS1kYXJrZXJcXEBsYXJnZSB7XG4gICAgZmlsbDogIzA5NjBhNTsgfVxuICAudS1jb2xvci1ncmVlbi1kYXJrZXJcXEBsYXJnZSB7XG4gICAgY29sb3I6ICMwMDIxMTU7IH1cbiAgLnUtYmctZ3JlZW4tZGFya2VyXFxAbGFyZ2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDIxMTU7IH1cbiAgLnUtZmlsbC1ncmVlbi1kYXJrZXJcXEBsYXJnZSB7XG4gICAgZmlsbDogIzAwMjExNTsgfVxuICAudS1jb2xvci1jeWFuLWRhcmtlclxcQGxhcmdlIHtcbiAgICBjb2xvcjogIzMzYzJiMzsgfVxuICAudS1iZy1jeWFuLWRhcmtlclxcQGxhcmdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzNjMmIzOyB9XG4gIC51LWZpbGwtY3lhbi1kYXJrZXJcXEBsYXJnZSB7XG4gICAgZmlsbDogIzMzYzJiMzsgfVxuICAudS1jb2xvci15ZWxsb3ctZGFya2VyXFxAbGFyZ2Uge1xuICAgIGNvbG9yOiAjOTk2ZDAwOyB9XG4gIC51LWJnLXllbGxvdy1kYXJrZXJcXEBsYXJnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzk5NmQwMDsgfVxuICAudS1maWxsLXllbGxvdy1kYXJrZXJcXEBsYXJnZSB7XG4gICAgZmlsbDogIzk5NmQwMDsgfVxuICAudS1jb2xvci1vcmFuZ2UtZGFya2VyXFxAbGFyZ2Uge1xuICAgIGNvbG9yOiAjYmI1ODA4OyB9XG4gIC51LWJnLW9yYW5nZS1kYXJrZXJcXEBsYXJnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2JiNTgwODsgfVxuICAudS1maWxsLW9yYW5nZS1kYXJrZXJcXEBsYXJnZSB7XG4gICAgZmlsbDogI2JiNTgwODsgfVxuICAudS1jb2xvci1icm93bi1kYXJrZXJcXEBsYXJnZSB7XG4gICAgY29sb3I6ICMzOTI4MjI7IH1cbiAgLnUtYmctYnJvd24tZGFya2VyXFxAbGFyZ2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzOTI4MjI7IH1cbiAgLnUtZmlsbC1icm93bi1kYXJrZXJcXEBsYXJnZSB7XG4gICAgZmlsbDogIzM5MjgyMjsgfVxuICAudS1jb2xvci1icmFuZC1kYXJrXFxAbGFyZ2Uge1xuICAgIGNvbG9yOiAjN2ExMjIyOyB9XG4gIC51LWJnLWJyYW5kLWRhcmtcXEBsYXJnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzdhMTIyMjsgfVxuICAudS1maWxsLWJyYW5kLWRhcmtcXEBsYXJnZSB7XG4gICAgZmlsbDogIzdhMTIyMjsgfVxuICAudS1jb2xvci1icmFuZC1kYXJrZXJcXEBsYXJnZSB7XG4gICAgY29sb3I6ICM0ZDBjMTU7IH1cbiAgLnUtYmctYnJhbmQtZGFya2VyXFxAbGFyZ2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM0ZDBjMTU7IH1cbiAgLnUtZmlsbC1icmFuZC1kYXJrZXJcXEBsYXJnZSB7XG4gICAgZmlsbDogIzRkMGMxNTsgfVxuICAudS1jb2xvci1icmFuZC1saWdodFxcQGxhcmdlIHtcbiAgICBjb2xvcjogI2QyMjAzYTsgfVxuICAudS1iZy1icmFuZC1saWdodFxcQGxhcmdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDIyMDNhOyB9XG4gIC51LWZpbGwtYnJhbmQtbGlnaHRcXEBsYXJnZSB7XG4gICAgZmlsbDogI2QyMjAzYTsgfVxuICAudS1jb2xvci1icmFuZC1saWdodGVyXFxAbGFyZ2Uge1xuICAgIGNvbG9yOiAjZTM0MjVhOyB9XG4gIC51LWJnLWJyYW5kLWxpZ2h0ZXJcXEBsYXJnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2UzNDI1YTsgfVxuICAudS1maWxsLWJyYW5kLWxpZ2h0ZXJcXEBsYXJnZSB7XG4gICAgZmlsbDogI2UzNDI1YTsgfVxuICAudS1jb2xvci1zZWNvbmRhcnktZGFya1xcQGxhcmdlIHtcbiAgICBjb2xvcjogIzNkNjc2ZDsgfVxuICAudS1iZy1zZWNvbmRhcnktZGFya1xcQGxhcmdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2Q2NzZkOyB9XG4gIC51LWZpbGwtc2Vjb25kYXJ5LWRhcmtcXEBsYXJnZSB7XG4gICAgZmlsbDogIzNkNjc2ZDsgfVxuICAudS1jb2xvci1zZWNvbmRhcnktZGFya2VyXFxAbGFyZ2Uge1xuICAgIGNvbG9yOiAjMmI0ODRjOyB9XG4gIC51LWJnLXNlY29uZGFyeS1kYXJrZXJcXEBsYXJnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzJiNDg0YzsgfVxuICAudS1maWxsLXNlY29uZGFyeS1kYXJrZXJcXEBsYXJnZSB7XG4gICAgZmlsbDogIzJiNDg0YzsgfVxuICAudS1jb2xvci1zZWNvbmRhcnktbGlnaHRcXEBsYXJnZSB7XG4gICAgY29sb3I6ICM2NmExYWE7IH1cbiAgLnUtYmctc2Vjb25kYXJ5LWxpZ2h0XFxAbGFyZ2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM2NmExYWE7IH1cbiAgLnUtZmlsbC1zZWNvbmRhcnktbGlnaHRcXEBsYXJnZSB7XG4gICAgZmlsbDogIzY2YTFhYTsgfVxuICAudS1jb2xvci1zZWNvbmRhcnktbGlnaHRlclxcQGxhcmdlIHtcbiAgICBjb2xvcjogI2I4ZDRkODsgfVxuICAudS1iZy1zZWNvbmRhcnktbGlnaHRlclxcQGxhcmdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjhkNGQ4OyB9XG4gIC51LWZpbGwtc2Vjb25kYXJ5LWxpZ2h0ZXJcXEBsYXJnZSB7XG4gICAgZmlsbDogI2I4ZDRkODsgfVxuICAudS1jb2xvci1pbmZvLWRhcmtcXEBsYXJnZSB7XG4gICAgY29sb3I6ICMwYzdjZDU7IH1cbiAgLnUtYmctaW5mby1kYXJrXFxAbGFyZ2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwYzdjZDU7IH1cbiAgLnUtZmlsbC1pbmZvLWRhcmtcXEBsYXJnZSB7XG4gICAgZmlsbDogIzBjN2NkNTsgfVxuICAudS1jb2xvci1pbmZvLWRhcmtlclxcQGxhcmdlIHtcbiAgICBjb2xvcjogIzA5NjBhNTsgfVxuICAudS1iZy1pbmZvLWRhcmtlclxcQGxhcmdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDk2MGE1OyB9XG4gIC51LWZpbGwtaW5mby1kYXJrZXJcXEBsYXJnZSB7XG4gICAgZmlsbDogIzA5NjBhNTsgfVxuICAudS1jb2xvci1pbmZvLWxpZ2h0XFxAbGFyZ2Uge1xuICAgIGNvbG9yOiAjNTFhZGY2OyB9XG4gIC51LWJnLWluZm8tbGlnaHRcXEBsYXJnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzUxYWRmNjsgfVxuICAudS1maWxsLWluZm8tbGlnaHRcXEBsYXJnZSB7XG4gICAgZmlsbDogIzUxYWRmNjsgfVxuICAudS1jb2xvci1pbmZvLWxpZ2h0ZXJcXEBsYXJnZSB7XG4gICAgY29sb3I6ICM4MmM0Zjg7IH1cbiAgLnUtYmctaW5mby1saWdodGVyXFxAbGFyZ2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM4MmM0Zjg7IH1cbiAgLnUtZmlsbC1pbmZvLWxpZ2h0ZXJcXEBsYXJnZSB7XG4gICAgZmlsbDogIzgyYzRmODsgfVxuICAudS1jb2xvci13YXJuaW5nLWRhcmtcXEBsYXJnZSB7XG4gICAgY29sb3I6ICNlYzZmMGE7IH1cbiAgLnUtYmctd2FybmluZy1kYXJrXFxAbGFyZ2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlYzZmMGE7IH1cbiAgLnUtZmlsbC13YXJuaW5nLWRhcmtcXEBsYXJnZSB7XG4gICAgZmlsbDogI2VjNmYwYTsgfVxuICAudS1jb2xvci13YXJuaW5nLWRhcmtlclxcQGxhcmdlIHtcbiAgICBjb2xvcjogI2JiNTgwODsgfVxuICAudS1iZy13YXJuaW5nLWRhcmtlclxcQGxhcmdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmI1ODA4OyB9XG4gIC51LWZpbGwtd2FybmluZy1kYXJrZXJcXEBsYXJnZSB7XG4gICAgZmlsbDogI2JiNTgwODsgfVxuICAudS1jb2xvci13YXJuaW5nLWxpZ2h0XFxAbGFyZ2Uge1xuICAgIGNvbG9yOiAjZjhhNjY0OyB9XG4gIC51LWJnLXdhcm5pbmctbGlnaHRcXEBsYXJnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4YTY2NDsgfVxuICAudS1maWxsLXdhcm5pbmctbGlnaHRcXEBsYXJnZSB7XG4gICAgZmlsbDogI2Y4YTY2NDsgfVxuICAudS1jb2xvci13YXJuaW5nLWxpZ2h0ZXJcXEBsYXJnZSB7XG4gICAgY29sb3I6ICNmYWMyOTU7IH1cbiAgLnUtYmctd2FybmluZy1saWdodGVyXFxAbGFyZ2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmYWMyOTU7IH1cbiAgLnUtZmlsbC13YXJuaW5nLWxpZ2h0ZXJcXEBsYXJnZSB7XG4gICAgZmlsbDogI2ZhYzI5NTsgfVxuICAudS1jb2xvci1zdWNjZXNzLWRhcmtcXEBsYXJnZSB7XG4gICAgY29sb3I6ICMwMDU0MzU7IH1cbiAgLnUtYmctc3VjY2Vzcy1kYXJrXFxAbGFyZ2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDU0MzU7IH1cbiAgLnUtZmlsbC1zdWNjZXNzLWRhcmtcXEBsYXJnZSB7XG4gICAgZmlsbDogIzAwNTQzNTsgfVxuICAudS1jb2xvci1zdWNjZXNzLWRhcmtlclxcQGxhcmdlIHtcbiAgICBjb2xvcjogIzAwMjExNTsgfVxuICAudS1iZy1zdWNjZXNzLWRhcmtlclxcQGxhcmdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAyMTE1OyB9XG4gIC51LWZpbGwtc3VjY2Vzcy1kYXJrZXJcXEBsYXJnZSB7XG4gICAgZmlsbDogIzAwMjExNTsgfVxuICAudS1jb2xvci1zdWNjZXNzLWxpZ2h0XFxAbGFyZ2Uge1xuICAgIGNvbG9yOiAjMDBiYTc1OyB9XG4gIC51LWJnLXN1Y2Nlc3MtbGlnaHRcXEBsYXJnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwYmE3NTsgfVxuICAudS1maWxsLXN1Y2Nlc3MtbGlnaHRcXEBsYXJnZSB7XG4gICAgZmlsbDogIzAwYmE3NTsgfVxuICAudS1jb2xvci1zdWNjZXNzLWxpZ2h0ZXJcXEBsYXJnZSB7XG4gICAgY29sb3I6ICMwMGVkOTU7IH1cbiAgLnUtYmctc3VjY2Vzcy1saWdodGVyXFxAbGFyZ2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMGVkOTU7IH1cbiAgLnUtZmlsbC1zdWNjZXNzLWxpZ2h0ZXJcXEBsYXJnZSB7XG4gICAgZmlsbDogIzAwZWQ5NTsgfVxuICAudS1jb2xvci1lcnJvci1kYXJrXFxAbGFyZ2Uge1xuICAgIGNvbG9yOiAjOTkwYzIzOyB9XG4gIC51LWJnLWVycm9yLWRhcmtcXEBsYXJnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzk5MGMyMzsgfVxuICAudS1maWxsLWVycm9yLWRhcmtcXEBsYXJnZSB7XG4gICAgZmlsbDogIzk5MGMyMzsgfVxuICAudS1jb2xvci1lcnJvci1kYXJrZXJcXEBsYXJnZSB7XG4gICAgY29sb3I6ICM2YTA4MTg7IH1cbiAgLnUtYmctZXJyb3ItZGFya2VyXFxAbGFyZ2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM2YTA4MTg7IH1cbiAgLnUtZmlsbC1lcnJvci1kYXJrZXJcXEBsYXJnZSB7XG4gICAgZmlsbDogIzZhMDgxODsgfVxuICAudS1jb2xvci1lcnJvci1saWdodFxcQGxhcmdlIHtcbiAgICBjb2xvcjogI2VkMWU0MDsgfVxuICAudS1iZy1lcnJvci1saWdodFxcQGxhcmdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWQxZTQwOyB9XG4gIC51LWZpbGwtZXJyb3ItbGlnaHRcXEBsYXJnZSB7XG4gICAgZmlsbDogI2VkMWU0MDsgfVxuICAudS1jb2xvci1lcnJvci1saWdodGVyXFxAbGFyZ2Uge1xuICAgIGNvbG9yOiAjZjE0ZDY4OyB9XG4gIC51LWJnLWVycm9yLWxpZ2h0ZXJcXEBsYXJnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YxNGQ2ODsgfVxuICAudS1maWxsLWVycm9yLWxpZ2h0ZXJcXEBsYXJnZSB7XG4gICAgZmlsbDogI2YxNGQ2ODsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3OHJlbSkge1xuICAudS1iZy1ub25lXFxAeGxhcmdlIHtcbiAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7IH1cbiAgLnUtY29sb3ItYmxhY2tcXEB4bGFyZ2Uge1xuICAgIGNvbG9yOiAjNDE0MDQyOyB9XG4gIC51LWJnLWJsYWNrXFxAeGxhcmdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDE0MDQyOyB9XG4gIC51LWZpbGwtYmxhY2tcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICM0MTQwNDI7IH1cbiAgLnUtY29sb3ItZ3JleVxcQHhsYXJnZSB7XG4gICAgY29sb3I6ICM5Mzk1OTg7IH1cbiAgLnUtYmctZ3JleVxcQHhsYXJnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzkzOTU5ODsgfVxuICAudS1maWxsLWdyZXlcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICM5Mzk1OTg7IH1cbiAgLnUtY29sb3ItbGlnaHQtZ3JleVxcQHhsYXJnZSB7XG4gICAgY29sb3I6ICNGMkYyRjI7IH1cbiAgLnUtYmctbGlnaHQtZ3JleVxcQHhsYXJnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0YyRjJGMjsgfVxuICAudS1maWxsLWxpZ2h0LWdyZXlcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICNGMkYyRjI7IH1cbiAgLnUtY29sb3Itd2hpdGVcXEB4bGFyZ2Uge1xuICAgIGNvbG9yOiAjRkZGOyB9XG4gIC51LWJnLXdoaXRlXFxAeGxhcmdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGOyB9XG4gIC51LWZpbGwtd2hpdGVcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICNGRkY7IH1cbiAgLnUtY29sb3ItYmVpZ2VcXEB4bGFyZ2Uge1xuICAgIGNvbG9yOiAjRjJGMkVBOyB9XG4gIC51LWJnLWJlaWdlXFxAeGxhcmdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjJGMkVBOyB9XG4gIC51LWZpbGwtYmVpZ2VcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICNGMkYyRUE7IH1cbiAgLnUtY29sb3ItcmVkXFxAeGxhcmdlIHtcbiAgICBjb2xvcjogI0M4MTAyRTsgfVxuICAudS1iZy1yZWRcXEB4bGFyZ2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNDODEwMkU7IH1cbiAgLnUtZmlsbC1yZWRcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICNDODEwMkU7IH1cbiAgLnUtY29sb3ItcGlua1xcQHhsYXJnZSB7XG4gICAgY29sb3I6ICNFOTFFNjM7IH1cbiAgLnUtYmctcGlua1xcQHhsYXJnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0U5MUU2MzsgfVxuICAudS1maWxsLXBpbmtcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICNFOTFFNjM7IH1cbiAgLnUtY29sb3ItcHVycGxlXFxAeGxhcmdlIHtcbiAgICBjb2xvcjogIzZDNTRBMzsgfVxuICAudS1iZy1wdXJwbGVcXEB4bGFyZ2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM2QzU0QTM7IH1cbiAgLnUtZmlsbC1wdXJwbGVcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICM2QzU0QTM7IH1cbiAgLnUtY29sb3ItYmx1ZVxcQHhsYXJnZSB7XG4gICAgY29sb3I6ICMyMTk2RjM7IH1cbiAgLnUtYmctYmx1ZVxcQHhsYXJnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzIxOTZGMzsgfVxuICAudS1maWxsLWJsdWVcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICMyMTk2RjM7IH1cbiAgLnUtY29sb3ItZ3JlZW5cXEB4bGFyZ2Uge1xuICAgIGNvbG9yOiAjMDA4NzU1OyB9XG4gIC51LWJnLWdyZWVuXFxAeGxhcmdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA4NzU1OyB9XG4gIC51LWZpbGwtZ3JlZW5cXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICMwMDg3NTU7IH1cbiAgLnUtY29sb3ItbGlnaHQtZ3JlZW5cXEB4bGFyZ2Uge1xuICAgIGNvbG9yOiAjNkNDMjRBOyB9XG4gIC51LWJnLWxpZ2h0LWdyZWVuXFxAeGxhcmdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNkNDMjRBOyB9XG4gIC51LWZpbGwtbGlnaHQtZ3JlZW5cXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICM2Q0MyNEE7IH1cbiAgLnUtY29sb3ItdGVhbFxcQHhsYXJnZSB7XG4gICAgY29sb3I6ICM0Rjg2OEU7IH1cbiAgLnUtYmctdGVhbFxcQHhsYXJnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzRGODY4RTsgfVxuICAudS1maWxsLXRlYWxcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICM0Rjg2OEU7IH1cbiAgLnUtY29sb3ItY3lhblxcQHhsYXJnZSB7XG4gICAgY29sb3I6ICM3RURERDM7IH1cbiAgLnUtYmctY3lhblxcQHhsYXJnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzdFREREMzsgfVxuICAudS1maWxsLWN5YW5cXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICM3RURERDM7IH1cbiAgLnUtY29sb3IteWVsbG93XFxAeGxhcmdlIHtcbiAgICBjb2xvcjogI0ZGQjUwMDsgfVxuICAudS1iZy15ZWxsb3dcXEB4bGFyZ2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGRkI1MDA7IH1cbiAgLnUtZmlsbC15ZWxsb3dcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICNGRkI1MDA7IH1cbiAgLnUtY29sb3Itb3JhbmdlXFxAeGxhcmdlIHtcbiAgICBjb2xvcjogI0Y2OEEzMzsgfVxuICAudS1iZy1vcmFuZ2VcXEB4bGFyZ2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGNjhBMzM7IH1cbiAgLnUtZmlsbC1vcmFuZ2VcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICNGNjhBMzM7IH1cbiAgLnUtY29sb3ItYnJvd25cXEB4bGFyZ2Uge1xuICAgIGNvbG9yOiAjNzk1NTQ4OyB9XG4gIC51LWJnLWJyb3duXFxAeGxhcmdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzk1NTQ4OyB9XG4gIC51LWZpbGwtYnJvd25cXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICM3OTU1NDg7IH1cbiAgLnUtY29sb3ItYnJhbmRcXEB4bGFyZ2Uge1xuICAgIGNvbG9yOiAjYTYxOTJlOyB9XG4gIC51LWJnLWJyYW5kXFxAeGxhcmdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTYxOTJlOyB9XG4gIC51LWZpbGwtYnJhbmRcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICNhNjE5MmU7IH1cbiAgLnUtY29sb3Itc2Vjb25kYXJ5XFxAeGxhcmdlIHtcbiAgICBjb2xvcjogIzRGODY4RTsgfVxuICAudS1iZy1zZWNvbmRhcnlcXEB4bGFyZ2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM0Rjg2OEU7IH1cbiAgLnUtZmlsbC1zZWNvbmRhcnlcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICM0Rjg2OEU7IH1cbiAgLnUtY29sb3ItdGVydGlhcnlcXEB4bGFyZ2Uge1xuICAgIGNvbG9yOiAjN0VEREQzOyB9XG4gIC51LWJnLXRlcnRpYXJ5XFxAeGxhcmdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjN0VEREQzOyB9XG4gIC51LWZpbGwtdGVydGlhcnlcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICM3RURERDM7IH1cbiAgLnUtY29sb3ItaW5mb1xcQHhsYXJnZSB7XG4gICAgY29sb3I6ICMyMTk2RjM7IH1cbiAgLnUtYmctaW5mb1xcQHhsYXJnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzIxOTZGMzsgfVxuICAudS1maWxsLWluZm9cXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICMyMTk2RjM7IH1cbiAgLnUtY29sb3Itd2FybmluZ1xcQHhsYXJnZSB7XG4gICAgY29sb3I6ICNGNjhBMzM7IH1cbiAgLnUtYmctd2FybmluZ1xcQHhsYXJnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0Y2OEEzMzsgfVxuICAudS1maWxsLXdhcm5pbmdcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICNGNjhBMzM7IH1cbiAgLnUtY29sb3Itc3VjY2Vzc1xcQHhsYXJnZSB7XG4gICAgY29sb3I6ICMwMDg3NTU7IH1cbiAgLnUtYmctc3VjY2Vzc1xcQHhsYXJnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwODc1NTsgfVxuICAudS1maWxsLXN1Y2Nlc3NcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICMwMDg3NTU7IH1cbiAgLnUtY29sb3ItZXJyb3JcXEB4bGFyZ2Uge1xuICAgIGNvbG9yOiAjQzgxMDJFOyB9XG4gIC51LWJnLWVycm9yXFxAeGxhcmdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjQzgxMDJFOyB9XG4gIC51LWZpbGwtZXJyb3JcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICNDODEwMkU7IH1cbiAgLnUtY29sb3ItZGVmYXVsdFxcQHhsYXJnZSB7XG4gICAgY29sb3I6ICM3OTdiN2Y7IH1cbiAgLnUtYmctZGVmYXVsdFxcQHhsYXJnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzc5N2I3ZjsgfVxuICAudS1maWxsLWRlZmF1bHRcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICM3OTdiN2Y7IH1cbiAgLnUtY29sb3ItZGlzYWJsZWRcXEB4bGFyZ2Uge1xuICAgIGNvbG9yOiAjNzk3YjdmOyB9XG4gIC51LWJnLWRpc2FibGVkXFxAeGxhcmdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzk3YjdmOyB9XG4gIC51LWZpbGwtZGlzYWJsZWRcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICM3OTdiN2Y7IH1cbiAgLnUtY29sb3ItcXVpZXRcXEB4bGFyZ2Uge1xuICAgIGNvbG9yOiAjNzk3YjdmOyB9XG4gIC51LWJnLXF1aWV0XFxAeGxhcmdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzk3YjdmOyB9XG4gIC51LWZpbGwtcXVpZXRcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICM3OTdiN2Y7IH1cbiAgLnUtY29sb3ItZ3JleS1kYXJrXFxAeGxhcmdlIHtcbiAgICBjb2xvcjogIzc5N2I3ZjsgfVxuICAudS1iZy1ncmV5LWRhcmtcXEB4bGFyZ2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM3OTdiN2Y7IH1cbiAgLnUtZmlsbC1ncmV5LWRhcmtcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICM3OTdiN2Y7IH1cbiAgLnUtY29sb3ItcmVkLWRhcmtcXEB4bGFyZ2Uge1xuICAgIGNvbG9yOiAjOTkwYzIzOyB9XG4gIC51LWJnLXJlZC1kYXJrXFxAeGxhcmdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOTkwYzIzOyB9XG4gIC51LWZpbGwtcmVkLWRhcmtcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICM5OTBjMjM7IH1cbiAgLnUtY29sb3ItcGluay1kYXJrXFxAeGxhcmdlIHtcbiAgICBjb2xvcjogI2MxMTM0ZTsgfVxuICAudS1iZy1waW5rLWRhcmtcXEB4bGFyZ2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjMTEzNGU7IH1cbiAgLnUtZmlsbC1waW5rLWRhcmtcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICNjMTEzNGU7IH1cbiAgLnUtY29sb3ItcHVycGxlLWRhcmtcXEB4bGFyZ2Uge1xuICAgIGNvbG9yOiAjNTY0MzgxOyB9XG4gIC51LWJnLXB1cnBsZS1kYXJrXFxAeGxhcmdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTY0MzgxOyB9XG4gIC51LWZpbGwtcHVycGxlLWRhcmtcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICM1NjQzODE7IH1cbiAgLnUtY29sb3ItYmx1ZS1kYXJrXFxAeGxhcmdlIHtcbiAgICBjb2xvcjogIzBjN2NkNTsgfVxuICAudS1iZy1ibHVlLWRhcmtcXEB4bGFyZ2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwYzdjZDU7IH1cbiAgLnUtZmlsbC1ibHVlLWRhcmtcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICMwYzdjZDU7IH1cbiAgLnUtY29sb3ItZ3JlZW4tZGFya1xcQHhsYXJnZSB7XG4gICAgY29sb3I6ICMwMDU0MzU7IH1cbiAgLnUtYmctZ3JlZW4tZGFya1xcQHhsYXJnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwNTQzNTsgfVxuICAudS1maWxsLWdyZWVuLWRhcmtcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICMwMDU0MzU7IH1cbiAgLnUtY29sb3ItY3lhbi1kYXJrXFxAeGxhcmdlIHtcbiAgICBjb2xvcjogIzU2ZDJjNTsgfVxuICAudS1iZy1jeWFuLWRhcmtcXEB4bGFyZ2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM1NmQyYzU7IH1cbiAgLnUtZmlsbC1jeWFuLWRhcmtcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICM1NmQyYzU7IH1cbiAgLnUtY29sb3IteWVsbG93LWRhcmtcXEB4bGFyZ2Uge1xuICAgIGNvbG9yOiAjY2M5MTAwOyB9XG4gIC51LWJnLXllbGxvdy1kYXJrXFxAeGxhcmdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2M5MTAwOyB9XG4gIC51LWZpbGwteWVsbG93LWRhcmtcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICNjYzkxMDA7IH1cbiAgLnUtY29sb3Itb3JhbmdlLWRhcmtcXEB4bGFyZ2Uge1xuICAgIGNvbG9yOiAjZWM2ZjBhOyB9XG4gIC51LWJnLW9yYW5nZS1kYXJrXFxAeGxhcmdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWM2ZjBhOyB9XG4gIC51LWZpbGwtb3JhbmdlLWRhcmtcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICNlYzZmMGE7IH1cbiAgLnUtY29sb3ItYnJvd24tZGFya1xcQHhsYXJnZSB7XG4gICAgY29sb3I6ICM1OTNmMzU7IH1cbiAgLnUtYmctYnJvd24tZGFya1xcQHhsYXJnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzU5M2YzNTsgfVxuICAudS1maWxsLWJyb3duLWRhcmtcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICM1OTNmMzU7IH1cbiAgLnUtY29sb3ItZ3JleS1kYXJrZXJcXEB4bGFyZ2Uge1xuICAgIGNvbG9yOiAjNjA2MjY1OyB9XG4gIC51LWJnLWdyZXktZGFya2VyXFxAeGxhcmdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjA2MjY1OyB9XG4gIC51LWZpbGwtZ3JleS1kYXJrZXJcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICM2MDYyNjU7IH1cbiAgLnUtY29sb3ItcmVkLWRhcmtlclxcQHhsYXJnZSB7XG4gICAgY29sb3I6ICM2YTA4MTg7IH1cbiAgLnUtYmctcmVkLWRhcmtlclxcQHhsYXJnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzZhMDgxODsgfVxuICAudS1maWxsLXJlZC1kYXJrZXJcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICM2YTA4MTg7IH1cbiAgLnUtY29sb3ItZ3JleS1saWdodFxcQHhsYXJnZSB7XG4gICAgY29sb3I6ICNhZGFmYjE7IH1cbiAgLnUtYmctZ3JleS1saWdodFxcQHhsYXJnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2FkYWZiMTsgfVxuICAudS1maWxsLWdyZXktbGlnaHRcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICNhZGFmYjE7IH1cbiAgLnUtY29sb3ItcmVkLWxpZ2h0XFxAeGxhcmdlIHtcbiAgICBjb2xvcjogI2VkMWU0MDsgfVxuICAudS1iZy1yZWQtbGlnaHRcXEB4bGFyZ2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlZDFlNDA7IH1cbiAgLnUtZmlsbC1yZWQtbGlnaHRcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICNlZDFlNDA7IH1cbiAgLnUtY29sb3ItcGluay1saWdodFxcQHhsYXJnZSB7XG4gICAgY29sb3I6ICNlZTRjODM7IH1cbiAgLnUtYmctcGluay1saWdodFxcQHhsYXJnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VlNGM4MzsgfVxuICAudS1maWxsLXBpbmstbGlnaHRcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICNlZTRjODM7IH1cbiAgLnUtY29sb3ItcHVycGxlLWxpZ2h0XFxAeGxhcmdlIHtcbiAgICBjb2xvcjogIzg4NzNiNzsgfVxuICAudS1iZy1wdXJwbGUtbGlnaHRcXEB4bGFyZ2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM4ODczYjc7IH1cbiAgLnUtZmlsbC1wdXJwbGUtbGlnaHRcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICM4ODczYjc7IH1cbiAgLnUtY29sb3ItYmx1ZS1saWdodFxcQHhsYXJnZSB7XG4gICAgY29sb3I6ICM1MWFkZjY7IH1cbiAgLnUtYmctYmx1ZS1saWdodFxcQHhsYXJnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzUxYWRmNjsgfVxuICAudS1maWxsLWJsdWUtbGlnaHRcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICM1MWFkZjY7IH1cbiAgLnUtY29sb3ItZ3JlZW4tbGlnaHRcXEB4bGFyZ2Uge1xuICAgIGNvbG9yOiAjMDBiYTc1OyB9XG4gIC51LWJnLWdyZWVuLWxpZ2h0XFxAeGxhcmdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBiYTc1OyB9XG4gIC51LWZpbGwtZ3JlZW4tbGlnaHRcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICMwMGJhNzU7IH1cbiAgLnUtY29sb3ItY3lhbi1saWdodFxcQHhsYXJnZSB7XG4gICAgY29sb3I6ICNhNmU4ZTE7IH1cbiAgLnUtYmctY3lhbi1saWdodFxcQHhsYXJnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2E2ZThlMTsgfVxuICAudS1maWxsLWN5YW4tbGlnaHRcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICNhNmU4ZTE7IH1cbiAgLnUtY29sb3IteWVsbG93LWxpZ2h0XFxAeGxhcmdlIHtcbiAgICBjb2xvcjogI2ZmYzQzMzsgfVxuICAudS1iZy15ZWxsb3ctbGlnaHRcXEB4bGFyZ2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmM0MzM7IH1cbiAgLnUtZmlsbC15ZWxsb3ctbGlnaHRcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICNmZmM0MzM7IH1cbiAgLnUtY29sb3Itb3JhbmdlLWxpZ2h0XFxAeGxhcmdlIHtcbiAgICBjb2xvcjogI2Y4YTY2NDsgfVxuICAudS1iZy1vcmFuZ2UtbGlnaHRcXEB4bGFyZ2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmOGE2NjQ7IH1cbiAgLnUtZmlsbC1vcmFuZ2UtbGlnaHRcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICNmOGE2NjQ7IH1cbiAgLnUtY29sb3ItYnJvd24tbGlnaHRcXEB4bGFyZ2Uge1xuICAgIGNvbG9yOiAjOTk2YjViOyB9XG4gIC51LWJnLWJyb3duLWxpZ2h0XFxAeGxhcmdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOTk2YjViOyB9XG4gIC51LWZpbGwtYnJvd24tbGlnaHRcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICM5OTZiNWI7IH1cbiAgLnUtY29sb3ItZ3JleS1saWdodGVyXFxAeGxhcmdlIHtcbiAgICBjb2xvcjogI2M3YzhjYTsgfVxuICAudS1iZy1ncmV5LWxpZ2h0ZXJcXEB4bGFyZ2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjN2M4Y2E7IH1cbiAgLnUtZmlsbC1ncmV5LWxpZ2h0ZXJcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICNjN2M4Y2E7IH1cbiAgLnUtY29sb3ItcmVkLWxpZ2h0ZXJcXEB4bGFyZ2Uge1xuICAgIGNvbG9yOiAjZjE0ZDY4OyB9XG4gIC51LWJnLXJlZC1saWdodGVyXFxAeGxhcmdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjE0ZDY4OyB9XG4gIC51LWZpbGwtcmVkLWxpZ2h0ZXJcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICNmMTRkNjg7IH1cbiAgLnUtY29sb3ItcGluay1saWdodGVyXFxAeGxhcmdlIHtcbiAgICBjb2xvcjogI2YyN2JhMzsgfVxuICAudS1iZy1waW5rLWxpZ2h0ZXJcXEB4bGFyZ2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmMjdiYTM7IH1cbiAgLnUtZmlsbC1waW5rLWxpZ2h0ZXJcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICNmMjdiYTM7IH1cbiAgLnUtY29sb3ItcHVycGxlLWxpZ2h0ZXJcXEB4bGFyZ2Uge1xuICAgIGNvbG9yOiAjYTQ5NWM4OyB9XG4gIC51LWJnLXB1cnBsZS1saWdodGVyXFxAeGxhcmdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTQ5NWM4OyB9XG4gIC51LWZpbGwtcHVycGxlLWxpZ2h0ZXJcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICNhNDk1Yzg7IH1cbiAgLnUtY29sb3ItYmx1ZS1saWdodGVyXFxAeGxhcmdlIHtcbiAgICBjb2xvcjogIzgyYzRmODsgfVxuICAudS1iZy1ibHVlLWxpZ2h0ZXJcXEB4bGFyZ2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM4MmM0Zjg7IH1cbiAgLnUtZmlsbC1ibHVlLWxpZ2h0ZXJcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICM4MmM0Zjg7IH1cbiAgLnUtY29sb3ItZ3JlZW4tbGlnaHRlclxcQHhsYXJnZSB7XG4gICAgY29sb3I6ICMwMGVkOTU7IH1cbiAgLnUtYmctZ3JlZW4tbGlnaHRlclxcQHhsYXJnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwZWQ5NTsgfVxuICAudS1maWxsLWdyZWVuLWxpZ2h0ZXJcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICMwMGVkOTU7IH1cbiAgLnUtY29sb3ItY3lhbi1saWdodGVyXFxAeGxhcmdlIHtcbiAgICBjb2xvcjogI2NmZjJlZjsgfVxuICAudS1iZy1jeWFuLWxpZ2h0ZXJcXEB4bGFyZ2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjZmYyZWY7IH1cbiAgLnUtZmlsbC1jeWFuLWxpZ2h0ZXJcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICNjZmYyZWY7IH1cbiAgLnUtY29sb3IteWVsbG93LWxpZ2h0ZXJcXEB4bGFyZ2Uge1xuICAgIGNvbG9yOiAjZmZkMzY2OyB9XG4gIC51LWJnLXllbGxvdy1saWdodGVyXFxAeGxhcmdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZkMzY2OyB9XG4gIC51LWZpbGwteWVsbG93LWxpZ2h0ZXJcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICNmZmQzNjY7IH1cbiAgLnUtY29sb3Itb3JhbmdlLWxpZ2h0ZXJcXEB4bGFyZ2Uge1xuICAgIGNvbG9yOiAjZmFjMjk1OyB9XG4gIC51LWJnLW9yYW5nZS1saWdodGVyXFxAeGxhcmdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFjMjk1OyB9XG4gIC51LWZpbGwtb3JhbmdlLWxpZ2h0ZXJcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICNmYWMyOTU7IH1cbiAgLnUtY29sb3ItYnJvd24tbGlnaHRlclxcQHhsYXJnZSB7XG4gICAgY29sb3I6ICNhZjg3Nzg7IH1cbiAgLnUtYmctYnJvd24tbGlnaHRlclxcQHhsYXJnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2FmODc3ODsgfVxuICAudS1maWxsLWJyb3duLWxpZ2h0ZXJcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICNhZjg3Nzg7IH1cbiAgLnUtY29sb3ItcGluay1kYXJrZXJcXEB4bGFyZ2Uge1xuICAgIGNvbG9yOiAjOTMwZTNiOyB9XG4gIC51LWJnLXBpbmstZGFya2VyXFxAeGxhcmdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOTMwZTNiOyB9XG4gIC51LWZpbGwtcGluay1kYXJrZXJcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICM5MzBlM2I7IH1cbiAgLnUtY29sb3ItcHVycGxlLWRhcmtlclxcQHhsYXJnZSB7XG4gICAgY29sb3I6ICMzZjMxNjA7IH1cbiAgLnUtYmctcHVycGxlLWRhcmtlclxcQHhsYXJnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzNmMzE2MDsgfVxuICAudS1maWxsLXB1cnBsZS1kYXJrZXJcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICMzZjMxNjA7IH1cbiAgLnUtY29sb3ItYmx1ZS1kYXJrZXJcXEB4bGFyZ2Uge1xuICAgIGNvbG9yOiAjMDk2MGE1OyB9XG4gIC51LWJnLWJsdWUtZGFya2VyXFxAeGxhcmdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDk2MGE1OyB9XG4gIC51LWZpbGwtYmx1ZS1kYXJrZXJcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICMwOTYwYTU7IH1cbiAgLnUtY29sb3ItZ3JlZW4tZGFya2VyXFxAeGxhcmdlIHtcbiAgICBjb2xvcjogIzAwMjExNTsgfVxuICAudS1iZy1ncmVlbi1kYXJrZXJcXEB4bGFyZ2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDIxMTU7IH1cbiAgLnUtZmlsbC1ncmVlbi1kYXJrZXJcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICMwMDIxMTU7IH1cbiAgLnUtY29sb3ItY3lhbi1kYXJrZXJcXEB4bGFyZ2Uge1xuICAgIGNvbG9yOiAjMzNjMmIzOyB9XG4gIC51LWJnLWN5YW4tZGFya2VyXFxAeGxhcmdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzNjMmIzOyB9XG4gIC51LWZpbGwtY3lhbi1kYXJrZXJcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICMzM2MyYjM7IH1cbiAgLnUtY29sb3IteWVsbG93LWRhcmtlclxcQHhsYXJnZSB7XG4gICAgY29sb3I6ICM5OTZkMDA7IH1cbiAgLnUtYmcteWVsbG93LWRhcmtlclxcQHhsYXJnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzk5NmQwMDsgfVxuICAudS1maWxsLXllbGxvdy1kYXJrZXJcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICM5OTZkMDA7IH1cbiAgLnUtY29sb3Itb3JhbmdlLWRhcmtlclxcQHhsYXJnZSB7XG4gICAgY29sb3I6ICNiYjU4MDg7IH1cbiAgLnUtYmctb3JhbmdlLWRhcmtlclxcQHhsYXJnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2JiNTgwODsgfVxuICAudS1maWxsLW9yYW5nZS1kYXJrZXJcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICNiYjU4MDg7IH1cbiAgLnUtY29sb3ItYnJvd24tZGFya2VyXFxAeGxhcmdlIHtcbiAgICBjb2xvcjogIzM5MjgyMjsgfVxuICAudS1iZy1icm93bi1kYXJrZXJcXEB4bGFyZ2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzOTI4MjI7IH1cbiAgLnUtZmlsbC1icm93bi1kYXJrZXJcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICMzOTI4MjI7IH1cbiAgLnUtY29sb3ItYnJhbmQtZGFya1xcQHhsYXJnZSB7XG4gICAgY29sb3I6ICM3YTEyMjI7IH1cbiAgLnUtYmctYnJhbmQtZGFya1xcQHhsYXJnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzdhMTIyMjsgfVxuICAudS1maWxsLWJyYW5kLWRhcmtcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICM3YTEyMjI7IH1cbiAgLnUtY29sb3ItYnJhbmQtZGFya2VyXFxAeGxhcmdlIHtcbiAgICBjb2xvcjogIzRkMGMxNTsgfVxuICAudS1iZy1icmFuZC1kYXJrZXJcXEB4bGFyZ2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM0ZDBjMTU7IH1cbiAgLnUtZmlsbC1icmFuZC1kYXJrZXJcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICM0ZDBjMTU7IH1cbiAgLnUtY29sb3ItYnJhbmQtbGlnaHRcXEB4bGFyZ2Uge1xuICAgIGNvbG9yOiAjZDIyMDNhOyB9XG4gIC51LWJnLWJyYW5kLWxpZ2h0XFxAeGxhcmdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDIyMDNhOyB9XG4gIC51LWZpbGwtYnJhbmQtbGlnaHRcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICNkMjIwM2E7IH1cbiAgLnUtY29sb3ItYnJhbmQtbGlnaHRlclxcQHhsYXJnZSB7XG4gICAgY29sb3I6ICNlMzQyNWE7IH1cbiAgLnUtYmctYnJhbmQtbGlnaHRlclxcQHhsYXJnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2UzNDI1YTsgfVxuICAudS1maWxsLWJyYW5kLWxpZ2h0ZXJcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICNlMzQyNWE7IH1cbiAgLnUtY29sb3Itc2Vjb25kYXJ5LWRhcmtcXEB4bGFyZ2Uge1xuICAgIGNvbG9yOiAjM2Q2NzZkOyB9XG4gIC51LWJnLXNlY29uZGFyeS1kYXJrXFxAeGxhcmdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2Q2NzZkOyB9XG4gIC51LWZpbGwtc2Vjb25kYXJ5LWRhcmtcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICMzZDY3NmQ7IH1cbiAgLnUtY29sb3Itc2Vjb25kYXJ5LWRhcmtlclxcQHhsYXJnZSB7XG4gICAgY29sb3I6ICMyYjQ4NGM7IH1cbiAgLnUtYmctc2Vjb25kYXJ5LWRhcmtlclxcQHhsYXJnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzJiNDg0YzsgfVxuICAudS1maWxsLXNlY29uZGFyeS1kYXJrZXJcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICMyYjQ4NGM7IH1cbiAgLnUtY29sb3Itc2Vjb25kYXJ5LWxpZ2h0XFxAeGxhcmdlIHtcbiAgICBjb2xvcjogIzY2YTFhYTsgfVxuICAudS1iZy1zZWNvbmRhcnktbGlnaHRcXEB4bGFyZ2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM2NmExYWE7IH1cbiAgLnUtZmlsbC1zZWNvbmRhcnktbGlnaHRcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICM2NmExYWE7IH1cbiAgLnUtY29sb3Itc2Vjb25kYXJ5LWxpZ2h0ZXJcXEB4bGFyZ2Uge1xuICAgIGNvbG9yOiAjYjhkNGQ4OyB9XG4gIC51LWJnLXNlY29uZGFyeS1saWdodGVyXFxAeGxhcmdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjhkNGQ4OyB9XG4gIC51LWZpbGwtc2Vjb25kYXJ5LWxpZ2h0ZXJcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICNiOGQ0ZDg7IH1cbiAgLnUtY29sb3ItaW5mby1kYXJrXFxAeGxhcmdlIHtcbiAgICBjb2xvcjogIzBjN2NkNTsgfVxuICAudS1iZy1pbmZvLWRhcmtcXEB4bGFyZ2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwYzdjZDU7IH1cbiAgLnUtZmlsbC1pbmZvLWRhcmtcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICMwYzdjZDU7IH1cbiAgLnUtY29sb3ItaW5mby1kYXJrZXJcXEB4bGFyZ2Uge1xuICAgIGNvbG9yOiAjMDk2MGE1OyB9XG4gIC51LWJnLWluZm8tZGFya2VyXFxAeGxhcmdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDk2MGE1OyB9XG4gIC51LWZpbGwtaW5mby1kYXJrZXJcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICMwOTYwYTU7IH1cbiAgLnUtY29sb3ItaW5mby1saWdodFxcQHhsYXJnZSB7XG4gICAgY29sb3I6ICM1MWFkZjY7IH1cbiAgLnUtYmctaW5mby1saWdodFxcQHhsYXJnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzUxYWRmNjsgfVxuICAudS1maWxsLWluZm8tbGlnaHRcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICM1MWFkZjY7IH1cbiAgLnUtY29sb3ItaW5mby1saWdodGVyXFxAeGxhcmdlIHtcbiAgICBjb2xvcjogIzgyYzRmODsgfVxuICAudS1iZy1pbmZvLWxpZ2h0ZXJcXEB4bGFyZ2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM4MmM0Zjg7IH1cbiAgLnUtZmlsbC1pbmZvLWxpZ2h0ZXJcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICM4MmM0Zjg7IH1cbiAgLnUtY29sb3Itd2FybmluZy1kYXJrXFxAeGxhcmdlIHtcbiAgICBjb2xvcjogI2VjNmYwYTsgfVxuICAudS1iZy13YXJuaW5nLWRhcmtcXEB4bGFyZ2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlYzZmMGE7IH1cbiAgLnUtZmlsbC13YXJuaW5nLWRhcmtcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICNlYzZmMGE7IH1cbiAgLnUtY29sb3Itd2FybmluZy1kYXJrZXJcXEB4bGFyZ2Uge1xuICAgIGNvbG9yOiAjYmI1ODA4OyB9XG4gIC51LWJnLXdhcm5pbmctZGFya2VyXFxAeGxhcmdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmI1ODA4OyB9XG4gIC51LWZpbGwtd2FybmluZy1kYXJrZXJcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICNiYjU4MDg7IH1cbiAgLnUtY29sb3Itd2FybmluZy1saWdodFxcQHhsYXJnZSB7XG4gICAgY29sb3I6ICNmOGE2NjQ7IH1cbiAgLnUtYmctd2FybmluZy1saWdodFxcQHhsYXJnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4YTY2NDsgfVxuICAudS1maWxsLXdhcm5pbmctbGlnaHRcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICNmOGE2NjQ7IH1cbiAgLnUtY29sb3Itd2FybmluZy1saWdodGVyXFxAeGxhcmdlIHtcbiAgICBjb2xvcjogI2ZhYzI5NTsgfVxuICAudS1iZy13YXJuaW5nLWxpZ2h0ZXJcXEB4bGFyZ2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmYWMyOTU7IH1cbiAgLnUtZmlsbC13YXJuaW5nLWxpZ2h0ZXJcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICNmYWMyOTU7IH1cbiAgLnUtY29sb3Itc3VjY2Vzcy1kYXJrXFxAeGxhcmdlIHtcbiAgICBjb2xvcjogIzAwNTQzNTsgfVxuICAudS1iZy1zdWNjZXNzLWRhcmtcXEB4bGFyZ2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDU0MzU7IH1cbiAgLnUtZmlsbC1zdWNjZXNzLWRhcmtcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICMwMDU0MzU7IH1cbiAgLnUtY29sb3Itc3VjY2Vzcy1kYXJrZXJcXEB4bGFyZ2Uge1xuICAgIGNvbG9yOiAjMDAyMTE1OyB9XG4gIC51LWJnLXN1Y2Nlc3MtZGFya2VyXFxAeGxhcmdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAyMTE1OyB9XG4gIC51LWZpbGwtc3VjY2Vzcy1kYXJrZXJcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICMwMDIxMTU7IH1cbiAgLnUtY29sb3Itc3VjY2Vzcy1saWdodFxcQHhsYXJnZSB7XG4gICAgY29sb3I6ICMwMGJhNzU7IH1cbiAgLnUtYmctc3VjY2Vzcy1saWdodFxcQHhsYXJnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwYmE3NTsgfVxuICAudS1maWxsLXN1Y2Nlc3MtbGlnaHRcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICMwMGJhNzU7IH1cbiAgLnUtY29sb3Itc3VjY2Vzcy1saWdodGVyXFxAeGxhcmdlIHtcbiAgICBjb2xvcjogIzAwZWQ5NTsgfVxuICAudS1iZy1zdWNjZXNzLWxpZ2h0ZXJcXEB4bGFyZ2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMGVkOTU7IH1cbiAgLnUtZmlsbC1zdWNjZXNzLWxpZ2h0ZXJcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICMwMGVkOTU7IH1cbiAgLnUtY29sb3ItZXJyb3ItZGFya1xcQHhsYXJnZSB7XG4gICAgY29sb3I6ICM5OTBjMjM7IH1cbiAgLnUtYmctZXJyb3ItZGFya1xcQHhsYXJnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzk5MGMyMzsgfVxuICAudS1maWxsLWVycm9yLWRhcmtcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICM5OTBjMjM7IH1cbiAgLnUtY29sb3ItZXJyb3ItZGFya2VyXFxAeGxhcmdlIHtcbiAgICBjb2xvcjogIzZhMDgxODsgfVxuICAudS1iZy1lcnJvci1kYXJrZXJcXEB4bGFyZ2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM2YTA4MTg7IH1cbiAgLnUtZmlsbC1lcnJvci1kYXJrZXJcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICM2YTA4MTg7IH1cbiAgLnUtY29sb3ItZXJyb3ItbGlnaHRcXEB4bGFyZ2Uge1xuICAgIGNvbG9yOiAjZWQxZTQwOyB9XG4gIC51LWJnLWVycm9yLWxpZ2h0XFxAeGxhcmdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWQxZTQwOyB9XG4gIC51LWZpbGwtZXJyb3ItbGlnaHRcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICNlZDFlNDA7IH1cbiAgLnUtY29sb3ItZXJyb3ItbGlnaHRlclxcQHhsYXJnZSB7XG4gICAgY29sb3I6ICNmMTRkNjg7IH1cbiAgLnUtYmctZXJyb3ItbGlnaHRlclxcQHhsYXJnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YxNGQ2ODsgfVxuICAudS1maWxsLWVycm9yLWxpZ2h0ZXJcXEB4bGFyZ2Uge1xuICAgIGZpbGw6ICNmMTRkNjg7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTI1cmVtKSB7XG4gIC51LWJnLW5vbmVcXEBzdXBlciB7XG4gICAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50OyB9XG4gIC51LWNvbG9yLWJsYWNrXFxAc3VwZXIge1xuICAgIGNvbG9yOiAjNDE0MDQyOyB9XG4gIC51LWJnLWJsYWNrXFxAc3VwZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM0MTQwNDI7IH1cbiAgLnUtZmlsbC1ibGFja1xcQHN1cGVyIHtcbiAgICBmaWxsOiAjNDE0MDQyOyB9XG4gIC51LWNvbG9yLWdyZXlcXEBzdXBlciB7XG4gICAgY29sb3I6ICM5Mzk1OTg7IH1cbiAgLnUtYmctZ3JleVxcQHN1cGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOTM5NTk4OyB9XG4gIC51LWZpbGwtZ3JleVxcQHN1cGVyIHtcbiAgICBmaWxsOiAjOTM5NTk4OyB9XG4gIC51LWNvbG9yLWxpZ2h0LWdyZXlcXEBzdXBlciB7XG4gICAgY29sb3I6ICNGMkYyRjI7IH1cbiAgLnUtYmctbGlnaHQtZ3JleVxcQHN1cGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjJGMkYyOyB9XG4gIC51LWZpbGwtbGlnaHQtZ3JleVxcQHN1cGVyIHtcbiAgICBmaWxsOiAjRjJGMkYyOyB9XG4gIC51LWNvbG9yLXdoaXRlXFxAc3VwZXIge1xuICAgIGNvbG9yOiAjRkZGOyB9XG4gIC51LWJnLXdoaXRlXFxAc3VwZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGRkY7IH1cbiAgLnUtZmlsbC13aGl0ZVxcQHN1cGVyIHtcbiAgICBmaWxsOiAjRkZGOyB9XG4gIC51LWNvbG9yLWJlaWdlXFxAc3VwZXIge1xuICAgIGNvbG9yOiAjRjJGMkVBOyB9XG4gIC51LWJnLWJlaWdlXFxAc3VwZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGMkYyRUE7IH1cbiAgLnUtZmlsbC1iZWlnZVxcQHN1cGVyIHtcbiAgICBmaWxsOiAjRjJGMkVBOyB9XG4gIC51LWNvbG9yLXJlZFxcQHN1cGVyIHtcbiAgICBjb2xvcjogI0M4MTAyRTsgfVxuICAudS1iZy1yZWRcXEBzdXBlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0M4MTAyRTsgfVxuICAudS1maWxsLXJlZFxcQHN1cGVyIHtcbiAgICBmaWxsOiAjQzgxMDJFOyB9XG4gIC51LWNvbG9yLXBpbmtcXEBzdXBlciB7XG4gICAgY29sb3I6ICNFOTFFNjM7IH1cbiAgLnUtYmctcGlua1xcQHN1cGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRTkxRTYzOyB9XG4gIC51LWZpbGwtcGlua1xcQHN1cGVyIHtcbiAgICBmaWxsOiAjRTkxRTYzOyB9XG4gIC51LWNvbG9yLXB1cnBsZVxcQHN1cGVyIHtcbiAgICBjb2xvcjogIzZDNTRBMzsgfVxuICAudS1iZy1wdXJwbGVcXEBzdXBlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzZDNTRBMzsgfVxuICAudS1maWxsLXB1cnBsZVxcQHN1cGVyIHtcbiAgICBmaWxsOiAjNkM1NEEzOyB9XG4gIC51LWNvbG9yLWJsdWVcXEBzdXBlciB7XG4gICAgY29sb3I6ICMyMTk2RjM7IH1cbiAgLnUtYmctYmx1ZVxcQHN1cGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjE5NkYzOyB9XG4gIC51LWZpbGwtYmx1ZVxcQHN1cGVyIHtcbiAgICBmaWxsOiAjMjE5NkYzOyB9XG4gIC51LWNvbG9yLWdyZWVuXFxAc3VwZXIge1xuICAgIGNvbG9yOiAjMDA4NzU1OyB9XG4gIC51LWJnLWdyZWVuXFxAc3VwZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDg3NTU7IH1cbiAgLnUtZmlsbC1ncmVlblxcQHN1cGVyIHtcbiAgICBmaWxsOiAjMDA4NzU1OyB9XG4gIC51LWNvbG9yLWxpZ2h0LWdyZWVuXFxAc3VwZXIge1xuICAgIGNvbG9yOiAjNkNDMjRBOyB9XG4gIC51LWJnLWxpZ2h0LWdyZWVuXFxAc3VwZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM2Q0MyNEE7IH1cbiAgLnUtZmlsbC1saWdodC1ncmVlblxcQHN1cGVyIHtcbiAgICBmaWxsOiAjNkNDMjRBOyB9XG4gIC51LWNvbG9yLXRlYWxcXEBzdXBlciB7XG4gICAgY29sb3I6ICM0Rjg2OEU7IH1cbiAgLnUtYmctdGVhbFxcQHN1cGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNEY4NjhFOyB9XG4gIC51LWZpbGwtdGVhbFxcQHN1cGVyIHtcbiAgICBmaWxsOiAjNEY4NjhFOyB9XG4gIC51LWNvbG9yLWN5YW5cXEBzdXBlciB7XG4gICAgY29sb3I6ICM3RURERDM7IH1cbiAgLnUtYmctY3lhblxcQHN1cGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjN0VEREQzOyB9XG4gIC51LWZpbGwtY3lhblxcQHN1cGVyIHtcbiAgICBmaWxsOiAjN0VEREQzOyB9XG4gIC51LWNvbG9yLXllbGxvd1xcQHN1cGVyIHtcbiAgICBjb2xvcjogI0ZGQjUwMDsgfVxuICAudS1iZy15ZWxsb3dcXEBzdXBlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGQjUwMDsgfVxuICAudS1maWxsLXllbGxvd1xcQHN1cGVyIHtcbiAgICBmaWxsOiAjRkZCNTAwOyB9XG4gIC51LWNvbG9yLW9yYW5nZVxcQHN1cGVyIHtcbiAgICBjb2xvcjogI0Y2OEEzMzsgfVxuICAudS1iZy1vcmFuZ2VcXEBzdXBlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0Y2OEEzMzsgfVxuICAudS1maWxsLW9yYW5nZVxcQHN1cGVyIHtcbiAgICBmaWxsOiAjRjY4QTMzOyB9XG4gIC51LWNvbG9yLWJyb3duXFxAc3VwZXIge1xuICAgIGNvbG9yOiAjNzk1NTQ4OyB9XG4gIC51LWJnLWJyb3duXFxAc3VwZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM3OTU1NDg7IH1cbiAgLnUtZmlsbC1icm93blxcQHN1cGVyIHtcbiAgICBmaWxsOiAjNzk1NTQ4OyB9XG4gIC51LWNvbG9yLWJyYW5kXFxAc3VwZXIge1xuICAgIGNvbG9yOiAjYTYxOTJlOyB9XG4gIC51LWJnLWJyYW5kXFxAc3VwZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNhNjE5MmU7IH1cbiAgLnUtZmlsbC1icmFuZFxcQHN1cGVyIHtcbiAgICBmaWxsOiAjYTYxOTJlOyB9XG4gIC51LWNvbG9yLXNlY29uZGFyeVxcQHN1cGVyIHtcbiAgICBjb2xvcjogIzRGODY4RTsgfVxuICAudS1iZy1zZWNvbmRhcnlcXEBzdXBlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzRGODY4RTsgfVxuICAudS1maWxsLXNlY29uZGFyeVxcQHN1cGVyIHtcbiAgICBmaWxsOiAjNEY4NjhFOyB9XG4gIC51LWNvbG9yLXRlcnRpYXJ5XFxAc3VwZXIge1xuICAgIGNvbG9yOiAjN0VEREQzOyB9XG4gIC51LWJnLXRlcnRpYXJ5XFxAc3VwZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM3RURERDM7IH1cbiAgLnUtZmlsbC10ZXJ0aWFyeVxcQHN1cGVyIHtcbiAgICBmaWxsOiAjN0VEREQzOyB9XG4gIC51LWNvbG9yLWluZm9cXEBzdXBlciB7XG4gICAgY29sb3I6ICMyMTk2RjM7IH1cbiAgLnUtYmctaW5mb1xcQHN1cGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjE5NkYzOyB9XG4gIC51LWZpbGwtaW5mb1xcQHN1cGVyIHtcbiAgICBmaWxsOiAjMjE5NkYzOyB9XG4gIC51LWNvbG9yLXdhcm5pbmdcXEBzdXBlciB7XG4gICAgY29sb3I6ICNGNjhBMzM7IH1cbiAgLnUtYmctd2FybmluZ1xcQHN1cGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjY4QTMzOyB9XG4gIC51LWZpbGwtd2FybmluZ1xcQHN1cGVyIHtcbiAgICBmaWxsOiAjRjY4QTMzOyB9XG4gIC51LWNvbG9yLXN1Y2Nlc3NcXEBzdXBlciB7XG4gICAgY29sb3I6ICMwMDg3NTU7IH1cbiAgLnUtYmctc3VjY2Vzc1xcQHN1cGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA4NzU1OyB9XG4gIC51LWZpbGwtc3VjY2Vzc1xcQHN1cGVyIHtcbiAgICBmaWxsOiAjMDA4NzU1OyB9XG4gIC51LWNvbG9yLWVycm9yXFxAc3VwZXIge1xuICAgIGNvbG9yOiAjQzgxMDJFOyB9XG4gIC51LWJnLWVycm9yXFxAc3VwZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNDODEwMkU7IH1cbiAgLnUtZmlsbC1lcnJvclxcQHN1cGVyIHtcbiAgICBmaWxsOiAjQzgxMDJFOyB9XG4gIC51LWNvbG9yLWRlZmF1bHRcXEBzdXBlciB7XG4gICAgY29sb3I6ICM3OTdiN2Y7IH1cbiAgLnUtYmctZGVmYXVsdFxcQHN1cGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzk3YjdmOyB9XG4gIC51LWZpbGwtZGVmYXVsdFxcQHN1cGVyIHtcbiAgICBmaWxsOiAjNzk3YjdmOyB9XG4gIC51LWNvbG9yLWRpc2FibGVkXFxAc3VwZXIge1xuICAgIGNvbG9yOiAjNzk3YjdmOyB9XG4gIC51LWJnLWRpc2FibGVkXFxAc3VwZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM3OTdiN2Y7IH1cbiAgLnUtZmlsbC1kaXNhYmxlZFxcQHN1cGVyIHtcbiAgICBmaWxsOiAjNzk3YjdmOyB9XG4gIC51LWNvbG9yLXF1aWV0XFxAc3VwZXIge1xuICAgIGNvbG9yOiAjNzk3YjdmOyB9XG4gIC51LWJnLXF1aWV0XFxAc3VwZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM3OTdiN2Y7IH1cbiAgLnUtZmlsbC1xdWlldFxcQHN1cGVyIHtcbiAgICBmaWxsOiAjNzk3YjdmOyB9XG4gIC51LWNvbG9yLWdyZXktZGFya1xcQHN1cGVyIHtcbiAgICBjb2xvcjogIzc5N2I3ZjsgfVxuICAudS1iZy1ncmV5LWRhcmtcXEBzdXBlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzc5N2I3ZjsgfVxuICAudS1maWxsLWdyZXktZGFya1xcQHN1cGVyIHtcbiAgICBmaWxsOiAjNzk3YjdmOyB9XG4gIC51LWNvbG9yLXJlZC1kYXJrXFxAc3VwZXIge1xuICAgIGNvbG9yOiAjOTkwYzIzOyB9XG4gIC51LWJnLXJlZC1kYXJrXFxAc3VwZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM5OTBjMjM7IH1cbiAgLnUtZmlsbC1yZWQtZGFya1xcQHN1cGVyIHtcbiAgICBmaWxsOiAjOTkwYzIzOyB9XG4gIC51LWNvbG9yLXBpbmstZGFya1xcQHN1cGVyIHtcbiAgICBjb2xvcjogI2MxMTM0ZTsgfVxuICAudS1iZy1waW5rLWRhcmtcXEBzdXBlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2MxMTM0ZTsgfVxuICAudS1maWxsLXBpbmstZGFya1xcQHN1cGVyIHtcbiAgICBmaWxsOiAjYzExMzRlOyB9XG4gIC51LWNvbG9yLXB1cnBsZS1kYXJrXFxAc3VwZXIge1xuICAgIGNvbG9yOiAjNTY0MzgxOyB9XG4gIC51LWJnLXB1cnBsZS1kYXJrXFxAc3VwZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM1NjQzODE7IH1cbiAgLnUtZmlsbC1wdXJwbGUtZGFya1xcQHN1cGVyIHtcbiAgICBmaWxsOiAjNTY0MzgxOyB9XG4gIC51LWNvbG9yLWJsdWUtZGFya1xcQHN1cGVyIHtcbiAgICBjb2xvcjogIzBjN2NkNTsgfVxuICAudS1iZy1ibHVlLWRhcmtcXEBzdXBlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzBjN2NkNTsgfVxuICAudS1maWxsLWJsdWUtZGFya1xcQHN1cGVyIHtcbiAgICBmaWxsOiAjMGM3Y2Q1OyB9XG4gIC51LWNvbG9yLWdyZWVuLWRhcmtcXEBzdXBlciB7XG4gICAgY29sb3I6ICMwMDU0MzU7IH1cbiAgLnUtYmctZ3JlZW4tZGFya1xcQHN1cGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA1NDM1OyB9XG4gIC51LWZpbGwtZ3JlZW4tZGFya1xcQHN1cGVyIHtcbiAgICBmaWxsOiAjMDA1NDM1OyB9XG4gIC51LWNvbG9yLWN5YW4tZGFya1xcQHN1cGVyIHtcbiAgICBjb2xvcjogIzU2ZDJjNTsgfVxuICAudS1iZy1jeWFuLWRhcmtcXEBzdXBlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzU2ZDJjNTsgfVxuICAudS1maWxsLWN5YW4tZGFya1xcQHN1cGVyIHtcbiAgICBmaWxsOiAjNTZkMmM1OyB9XG4gIC51LWNvbG9yLXllbGxvdy1kYXJrXFxAc3VwZXIge1xuICAgIGNvbG9yOiAjY2M5MTAwOyB9XG4gIC51LWJnLXllbGxvdy1kYXJrXFxAc3VwZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjYzkxMDA7IH1cbiAgLnUtZmlsbC15ZWxsb3ctZGFya1xcQHN1cGVyIHtcbiAgICBmaWxsOiAjY2M5MTAwOyB9XG4gIC51LWNvbG9yLW9yYW5nZS1kYXJrXFxAc3VwZXIge1xuICAgIGNvbG9yOiAjZWM2ZjBhOyB9XG4gIC51LWJnLW9yYW5nZS1kYXJrXFxAc3VwZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlYzZmMGE7IH1cbiAgLnUtZmlsbC1vcmFuZ2UtZGFya1xcQHN1cGVyIHtcbiAgICBmaWxsOiAjZWM2ZjBhOyB9XG4gIC51LWNvbG9yLWJyb3duLWRhcmtcXEBzdXBlciB7XG4gICAgY29sb3I6ICM1OTNmMzU7IH1cbiAgLnUtYmctYnJvd24tZGFya1xcQHN1cGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTkzZjM1OyB9XG4gIC51LWZpbGwtYnJvd24tZGFya1xcQHN1cGVyIHtcbiAgICBmaWxsOiAjNTkzZjM1OyB9XG4gIC51LWNvbG9yLWdyZXktZGFya2VyXFxAc3VwZXIge1xuICAgIGNvbG9yOiAjNjA2MjY1OyB9XG4gIC51LWJnLWdyZXktZGFya2VyXFxAc3VwZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM2MDYyNjU7IH1cbiAgLnUtZmlsbC1ncmV5LWRhcmtlclxcQHN1cGVyIHtcbiAgICBmaWxsOiAjNjA2MjY1OyB9XG4gIC51LWNvbG9yLXJlZC1kYXJrZXJcXEBzdXBlciB7XG4gICAgY29sb3I6ICM2YTA4MTg7IH1cbiAgLnUtYmctcmVkLWRhcmtlclxcQHN1cGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNmEwODE4OyB9XG4gIC51LWZpbGwtcmVkLWRhcmtlclxcQHN1cGVyIHtcbiAgICBmaWxsOiAjNmEwODE4OyB9XG4gIC51LWNvbG9yLWdyZXktbGlnaHRcXEBzdXBlciB7XG4gICAgY29sb3I6ICNhZGFmYjE7IH1cbiAgLnUtYmctZ3JleS1saWdodFxcQHN1cGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYWRhZmIxOyB9XG4gIC51LWZpbGwtZ3JleS1saWdodFxcQHN1cGVyIHtcbiAgICBmaWxsOiAjYWRhZmIxOyB9XG4gIC51LWNvbG9yLXJlZC1saWdodFxcQHN1cGVyIHtcbiAgICBjb2xvcjogI2VkMWU0MDsgfVxuICAudS1iZy1yZWQtbGlnaHRcXEBzdXBlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VkMWU0MDsgfVxuICAudS1maWxsLXJlZC1saWdodFxcQHN1cGVyIHtcbiAgICBmaWxsOiAjZWQxZTQwOyB9XG4gIC51LWNvbG9yLXBpbmstbGlnaHRcXEBzdXBlciB7XG4gICAgY29sb3I6ICNlZTRjODM7IH1cbiAgLnUtYmctcGluay1saWdodFxcQHN1cGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWU0YzgzOyB9XG4gIC51LWZpbGwtcGluay1saWdodFxcQHN1cGVyIHtcbiAgICBmaWxsOiAjZWU0YzgzOyB9XG4gIC51LWNvbG9yLXB1cnBsZS1saWdodFxcQHN1cGVyIHtcbiAgICBjb2xvcjogIzg4NzNiNzsgfVxuICAudS1iZy1wdXJwbGUtbGlnaHRcXEBzdXBlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzg4NzNiNzsgfVxuICAudS1maWxsLXB1cnBsZS1saWdodFxcQHN1cGVyIHtcbiAgICBmaWxsOiAjODg3M2I3OyB9XG4gIC51LWNvbG9yLWJsdWUtbGlnaHRcXEBzdXBlciB7XG4gICAgY29sb3I6ICM1MWFkZjY7IH1cbiAgLnUtYmctYmx1ZS1saWdodFxcQHN1cGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTFhZGY2OyB9XG4gIC51LWZpbGwtYmx1ZS1saWdodFxcQHN1cGVyIHtcbiAgICBmaWxsOiAjNTFhZGY2OyB9XG4gIC51LWNvbG9yLWdyZWVuLWxpZ2h0XFxAc3VwZXIge1xuICAgIGNvbG9yOiAjMDBiYTc1OyB9XG4gIC51LWJnLWdyZWVuLWxpZ2h0XFxAc3VwZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMGJhNzU7IH1cbiAgLnUtZmlsbC1ncmVlbi1saWdodFxcQHN1cGVyIHtcbiAgICBmaWxsOiAjMDBiYTc1OyB9XG4gIC51LWNvbG9yLWN5YW4tbGlnaHRcXEBzdXBlciB7XG4gICAgY29sb3I6ICNhNmU4ZTE7IH1cbiAgLnUtYmctY3lhbi1saWdodFxcQHN1cGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTZlOGUxOyB9XG4gIC51LWZpbGwtY3lhbi1saWdodFxcQHN1cGVyIHtcbiAgICBmaWxsOiAjYTZlOGUxOyB9XG4gIC51LWNvbG9yLXllbGxvdy1saWdodFxcQHN1cGVyIHtcbiAgICBjb2xvcjogI2ZmYzQzMzsgfVxuICAudS1iZy15ZWxsb3ctbGlnaHRcXEBzdXBlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYzQzMzsgfVxuICAudS1maWxsLXllbGxvdy1saWdodFxcQHN1cGVyIHtcbiAgICBmaWxsOiAjZmZjNDMzOyB9XG4gIC51LWNvbG9yLW9yYW5nZS1saWdodFxcQHN1cGVyIHtcbiAgICBjb2xvcjogI2Y4YTY2NDsgfVxuICAudS1iZy1vcmFuZ2UtbGlnaHRcXEBzdXBlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4YTY2NDsgfVxuICAudS1maWxsLW9yYW5nZS1saWdodFxcQHN1cGVyIHtcbiAgICBmaWxsOiAjZjhhNjY0OyB9XG4gIC51LWNvbG9yLWJyb3duLWxpZ2h0XFxAc3VwZXIge1xuICAgIGNvbG9yOiAjOTk2YjViOyB9XG4gIC51LWJnLWJyb3duLWxpZ2h0XFxAc3VwZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM5OTZiNWI7IH1cbiAgLnUtZmlsbC1icm93bi1saWdodFxcQHN1cGVyIHtcbiAgICBmaWxsOiAjOTk2YjViOyB9XG4gIC51LWNvbG9yLWdyZXktbGlnaHRlclxcQHN1cGVyIHtcbiAgICBjb2xvcjogI2M3YzhjYTsgfVxuICAudS1iZy1ncmV5LWxpZ2h0ZXJcXEBzdXBlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2M3YzhjYTsgfVxuICAudS1maWxsLWdyZXktbGlnaHRlclxcQHN1cGVyIHtcbiAgICBmaWxsOiAjYzdjOGNhOyB9XG4gIC51LWNvbG9yLXJlZC1saWdodGVyXFxAc3VwZXIge1xuICAgIGNvbG9yOiAjZjE0ZDY4OyB9XG4gIC51LWJnLXJlZC1saWdodGVyXFxAc3VwZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmMTRkNjg7IH1cbiAgLnUtZmlsbC1yZWQtbGlnaHRlclxcQHN1cGVyIHtcbiAgICBmaWxsOiAjZjE0ZDY4OyB9XG4gIC51LWNvbG9yLXBpbmstbGlnaHRlclxcQHN1cGVyIHtcbiAgICBjb2xvcjogI2YyN2JhMzsgfVxuICAudS1iZy1waW5rLWxpZ2h0ZXJcXEBzdXBlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YyN2JhMzsgfVxuICAudS1maWxsLXBpbmstbGlnaHRlclxcQHN1cGVyIHtcbiAgICBmaWxsOiAjZjI3YmEzOyB9XG4gIC51LWNvbG9yLXB1cnBsZS1saWdodGVyXFxAc3VwZXIge1xuICAgIGNvbG9yOiAjYTQ5NWM4OyB9XG4gIC51LWJnLXB1cnBsZS1saWdodGVyXFxAc3VwZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNhNDk1Yzg7IH1cbiAgLnUtZmlsbC1wdXJwbGUtbGlnaHRlclxcQHN1cGVyIHtcbiAgICBmaWxsOiAjYTQ5NWM4OyB9XG4gIC51LWNvbG9yLWJsdWUtbGlnaHRlclxcQHN1cGVyIHtcbiAgICBjb2xvcjogIzgyYzRmODsgfVxuICAudS1iZy1ibHVlLWxpZ2h0ZXJcXEBzdXBlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzgyYzRmODsgfVxuICAudS1maWxsLWJsdWUtbGlnaHRlclxcQHN1cGVyIHtcbiAgICBmaWxsOiAjODJjNGY4OyB9XG4gIC51LWNvbG9yLWdyZWVuLWxpZ2h0ZXJcXEBzdXBlciB7XG4gICAgY29sb3I6ICMwMGVkOTU7IH1cbiAgLnUtYmctZ3JlZW4tbGlnaHRlclxcQHN1cGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBlZDk1OyB9XG4gIC51LWZpbGwtZ3JlZW4tbGlnaHRlclxcQHN1cGVyIHtcbiAgICBmaWxsOiAjMDBlZDk1OyB9XG4gIC51LWNvbG9yLWN5YW4tbGlnaHRlclxcQHN1cGVyIHtcbiAgICBjb2xvcjogI2NmZjJlZjsgfVxuICAudS1iZy1jeWFuLWxpZ2h0ZXJcXEBzdXBlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2NmZjJlZjsgfVxuICAudS1maWxsLWN5YW4tbGlnaHRlclxcQHN1cGVyIHtcbiAgICBmaWxsOiAjY2ZmMmVmOyB9XG4gIC51LWNvbG9yLXllbGxvdy1saWdodGVyXFxAc3VwZXIge1xuICAgIGNvbG9yOiAjZmZkMzY2OyB9XG4gIC51LWJnLXllbGxvdy1saWdodGVyXFxAc3VwZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmQzNjY7IH1cbiAgLnUtZmlsbC15ZWxsb3ctbGlnaHRlclxcQHN1cGVyIHtcbiAgICBmaWxsOiAjZmZkMzY2OyB9XG4gIC51LWNvbG9yLW9yYW5nZS1saWdodGVyXFxAc3VwZXIge1xuICAgIGNvbG9yOiAjZmFjMjk1OyB9XG4gIC51LWJnLW9yYW5nZS1saWdodGVyXFxAc3VwZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmYWMyOTU7IH1cbiAgLnUtZmlsbC1vcmFuZ2UtbGlnaHRlclxcQHN1cGVyIHtcbiAgICBmaWxsOiAjZmFjMjk1OyB9XG4gIC51LWNvbG9yLWJyb3duLWxpZ2h0ZXJcXEBzdXBlciB7XG4gICAgY29sb3I6ICNhZjg3Nzg7IH1cbiAgLnUtYmctYnJvd24tbGlnaHRlclxcQHN1cGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYWY4Nzc4OyB9XG4gIC51LWZpbGwtYnJvd24tbGlnaHRlclxcQHN1cGVyIHtcbiAgICBmaWxsOiAjYWY4Nzc4OyB9XG4gIC51LWNvbG9yLXBpbmstZGFya2VyXFxAc3VwZXIge1xuICAgIGNvbG9yOiAjOTMwZTNiOyB9XG4gIC51LWJnLXBpbmstZGFya2VyXFxAc3VwZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM5MzBlM2I7IH1cbiAgLnUtZmlsbC1waW5rLWRhcmtlclxcQHN1cGVyIHtcbiAgICBmaWxsOiAjOTMwZTNiOyB9XG4gIC51LWNvbG9yLXB1cnBsZS1kYXJrZXJcXEBzdXBlciB7XG4gICAgY29sb3I6ICMzZjMxNjA7IH1cbiAgLnUtYmctcHVycGxlLWRhcmtlclxcQHN1cGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2YzMTYwOyB9XG4gIC51LWZpbGwtcHVycGxlLWRhcmtlclxcQHN1cGVyIHtcbiAgICBmaWxsOiAjM2YzMTYwOyB9XG4gIC51LWNvbG9yLWJsdWUtZGFya2VyXFxAc3VwZXIge1xuICAgIGNvbG9yOiAjMDk2MGE1OyB9XG4gIC51LWJnLWJsdWUtZGFya2VyXFxAc3VwZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwOTYwYTU7IH1cbiAgLnUtZmlsbC1ibHVlLWRhcmtlclxcQHN1cGVyIHtcbiAgICBmaWxsOiAjMDk2MGE1OyB9XG4gIC51LWNvbG9yLWdyZWVuLWRhcmtlclxcQHN1cGVyIHtcbiAgICBjb2xvcjogIzAwMjExNTsgfVxuICAudS1iZy1ncmVlbi1kYXJrZXJcXEBzdXBlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMjExNTsgfVxuICAudS1maWxsLWdyZWVuLWRhcmtlclxcQHN1cGVyIHtcbiAgICBmaWxsOiAjMDAyMTE1OyB9XG4gIC51LWNvbG9yLWN5YW4tZGFya2VyXFxAc3VwZXIge1xuICAgIGNvbG9yOiAjMzNjMmIzOyB9XG4gIC51LWJnLWN5YW4tZGFya2VyXFxAc3VwZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzM2MyYjM7IH1cbiAgLnUtZmlsbC1jeWFuLWRhcmtlclxcQHN1cGVyIHtcbiAgICBmaWxsOiAjMzNjMmIzOyB9XG4gIC51LWNvbG9yLXllbGxvdy1kYXJrZXJcXEBzdXBlciB7XG4gICAgY29sb3I6ICM5OTZkMDA7IH1cbiAgLnUtYmcteWVsbG93LWRhcmtlclxcQHN1cGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOTk2ZDAwOyB9XG4gIC51LWZpbGwteWVsbG93LWRhcmtlclxcQHN1cGVyIHtcbiAgICBmaWxsOiAjOTk2ZDAwOyB9XG4gIC51LWNvbG9yLW9yYW5nZS1kYXJrZXJcXEBzdXBlciB7XG4gICAgY29sb3I6ICNiYjU4MDg7IH1cbiAgLnUtYmctb3JhbmdlLWRhcmtlclxcQHN1cGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmI1ODA4OyB9XG4gIC51LWZpbGwtb3JhbmdlLWRhcmtlclxcQHN1cGVyIHtcbiAgICBmaWxsOiAjYmI1ODA4OyB9XG4gIC51LWNvbG9yLWJyb3duLWRhcmtlclxcQHN1cGVyIHtcbiAgICBjb2xvcjogIzM5MjgyMjsgfVxuICAudS1iZy1icm93bi1kYXJrZXJcXEBzdXBlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzM5MjgyMjsgfVxuICAudS1maWxsLWJyb3duLWRhcmtlclxcQHN1cGVyIHtcbiAgICBmaWxsOiAjMzkyODIyOyB9XG4gIC51LWNvbG9yLWJyYW5kLWRhcmtcXEBzdXBlciB7XG4gICAgY29sb3I6ICM3YTEyMjI7IH1cbiAgLnUtYmctYnJhbmQtZGFya1xcQHN1cGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjN2ExMjIyOyB9XG4gIC51LWZpbGwtYnJhbmQtZGFya1xcQHN1cGVyIHtcbiAgICBmaWxsOiAjN2ExMjIyOyB9XG4gIC51LWNvbG9yLWJyYW5kLWRhcmtlclxcQHN1cGVyIHtcbiAgICBjb2xvcjogIzRkMGMxNTsgfVxuICAudS1iZy1icmFuZC1kYXJrZXJcXEBzdXBlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzRkMGMxNTsgfVxuICAudS1maWxsLWJyYW5kLWRhcmtlclxcQHN1cGVyIHtcbiAgICBmaWxsOiAjNGQwYzE1OyB9XG4gIC51LWNvbG9yLWJyYW5kLWxpZ2h0XFxAc3VwZXIge1xuICAgIGNvbG9yOiAjZDIyMDNhOyB9XG4gIC51LWJnLWJyYW5kLWxpZ2h0XFxAc3VwZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNkMjIwM2E7IH1cbiAgLnUtZmlsbC1icmFuZC1saWdodFxcQHN1cGVyIHtcbiAgICBmaWxsOiAjZDIyMDNhOyB9XG4gIC51LWNvbG9yLWJyYW5kLWxpZ2h0ZXJcXEBzdXBlciB7XG4gICAgY29sb3I6ICNlMzQyNWE7IH1cbiAgLnUtYmctYnJhbmQtbGlnaHRlclxcQHN1cGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTM0MjVhOyB9XG4gIC51LWZpbGwtYnJhbmQtbGlnaHRlclxcQHN1cGVyIHtcbiAgICBmaWxsOiAjZTM0MjVhOyB9XG4gIC51LWNvbG9yLXNlY29uZGFyeS1kYXJrXFxAc3VwZXIge1xuICAgIGNvbG9yOiAjM2Q2NzZkOyB9XG4gIC51LWJnLXNlY29uZGFyeS1kYXJrXFxAc3VwZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzZDY3NmQ7IH1cbiAgLnUtZmlsbC1zZWNvbmRhcnktZGFya1xcQHN1cGVyIHtcbiAgICBmaWxsOiAjM2Q2NzZkOyB9XG4gIC51LWNvbG9yLXNlY29uZGFyeS1kYXJrZXJcXEBzdXBlciB7XG4gICAgY29sb3I6ICMyYjQ4NGM7IH1cbiAgLnUtYmctc2Vjb25kYXJ5LWRhcmtlclxcQHN1cGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmI0ODRjOyB9XG4gIC51LWZpbGwtc2Vjb25kYXJ5LWRhcmtlclxcQHN1cGVyIHtcbiAgICBmaWxsOiAjMmI0ODRjOyB9XG4gIC51LWNvbG9yLXNlY29uZGFyeS1saWdodFxcQHN1cGVyIHtcbiAgICBjb2xvcjogIzY2YTFhYTsgfVxuICAudS1iZy1zZWNvbmRhcnktbGlnaHRcXEBzdXBlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzY2YTFhYTsgfVxuICAudS1maWxsLXNlY29uZGFyeS1saWdodFxcQHN1cGVyIHtcbiAgICBmaWxsOiAjNjZhMWFhOyB9XG4gIC51LWNvbG9yLXNlY29uZGFyeS1saWdodGVyXFxAc3VwZXIge1xuICAgIGNvbG9yOiAjYjhkNGQ4OyB9XG4gIC51LWJnLXNlY29uZGFyeS1saWdodGVyXFxAc3VwZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNiOGQ0ZDg7IH1cbiAgLnUtZmlsbC1zZWNvbmRhcnktbGlnaHRlclxcQHN1cGVyIHtcbiAgICBmaWxsOiAjYjhkNGQ4OyB9XG4gIC51LWNvbG9yLWluZm8tZGFya1xcQHN1cGVyIHtcbiAgICBjb2xvcjogIzBjN2NkNTsgfVxuICAudS1iZy1pbmZvLWRhcmtcXEBzdXBlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzBjN2NkNTsgfVxuICAudS1maWxsLWluZm8tZGFya1xcQHN1cGVyIHtcbiAgICBmaWxsOiAjMGM3Y2Q1OyB9XG4gIC51LWNvbG9yLWluZm8tZGFya2VyXFxAc3VwZXIge1xuICAgIGNvbG9yOiAjMDk2MGE1OyB9XG4gIC51LWJnLWluZm8tZGFya2VyXFxAc3VwZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwOTYwYTU7IH1cbiAgLnUtZmlsbC1pbmZvLWRhcmtlclxcQHN1cGVyIHtcbiAgICBmaWxsOiAjMDk2MGE1OyB9XG4gIC51LWNvbG9yLWluZm8tbGlnaHRcXEBzdXBlciB7XG4gICAgY29sb3I6ICM1MWFkZjY7IH1cbiAgLnUtYmctaW5mby1saWdodFxcQHN1cGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTFhZGY2OyB9XG4gIC51LWZpbGwtaW5mby1saWdodFxcQHN1cGVyIHtcbiAgICBmaWxsOiAjNTFhZGY2OyB9XG4gIC51LWNvbG9yLWluZm8tbGlnaHRlclxcQHN1cGVyIHtcbiAgICBjb2xvcjogIzgyYzRmODsgfVxuICAudS1iZy1pbmZvLWxpZ2h0ZXJcXEBzdXBlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzgyYzRmODsgfVxuICAudS1maWxsLWluZm8tbGlnaHRlclxcQHN1cGVyIHtcbiAgICBmaWxsOiAjODJjNGY4OyB9XG4gIC51LWNvbG9yLXdhcm5pbmctZGFya1xcQHN1cGVyIHtcbiAgICBjb2xvcjogI2VjNmYwYTsgfVxuICAudS1iZy13YXJuaW5nLWRhcmtcXEBzdXBlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VjNmYwYTsgfVxuICAudS1maWxsLXdhcm5pbmctZGFya1xcQHN1cGVyIHtcbiAgICBmaWxsOiAjZWM2ZjBhOyB9XG4gIC51LWNvbG9yLXdhcm5pbmctZGFya2VyXFxAc3VwZXIge1xuICAgIGNvbG9yOiAjYmI1ODA4OyB9XG4gIC51LWJnLXdhcm5pbmctZGFya2VyXFxAc3VwZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNiYjU4MDg7IH1cbiAgLnUtZmlsbC13YXJuaW5nLWRhcmtlclxcQHN1cGVyIHtcbiAgICBmaWxsOiAjYmI1ODA4OyB9XG4gIC51LWNvbG9yLXdhcm5pbmctbGlnaHRcXEBzdXBlciB7XG4gICAgY29sb3I6ICNmOGE2NjQ7IH1cbiAgLnUtYmctd2FybmluZy1saWdodFxcQHN1cGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhhNjY0OyB9XG4gIC51LWZpbGwtd2FybmluZy1saWdodFxcQHN1cGVyIHtcbiAgICBmaWxsOiAjZjhhNjY0OyB9XG4gIC51LWNvbG9yLXdhcm5pbmctbGlnaHRlclxcQHN1cGVyIHtcbiAgICBjb2xvcjogI2ZhYzI5NTsgfVxuICAudS1iZy13YXJuaW5nLWxpZ2h0ZXJcXEBzdXBlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZhYzI5NTsgfVxuICAudS1maWxsLXdhcm5pbmctbGlnaHRlclxcQHN1cGVyIHtcbiAgICBmaWxsOiAjZmFjMjk1OyB9XG4gIC51LWNvbG9yLXN1Y2Nlc3MtZGFya1xcQHN1cGVyIHtcbiAgICBjb2xvcjogIzAwNTQzNTsgfVxuICAudS1iZy1zdWNjZXNzLWRhcmtcXEBzdXBlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwNTQzNTsgfVxuICAudS1maWxsLXN1Y2Nlc3MtZGFya1xcQHN1cGVyIHtcbiAgICBmaWxsOiAjMDA1NDM1OyB9XG4gIC51LWNvbG9yLXN1Y2Nlc3MtZGFya2VyXFxAc3VwZXIge1xuICAgIGNvbG9yOiAjMDAyMTE1OyB9XG4gIC51LWJnLXN1Y2Nlc3MtZGFya2VyXFxAc3VwZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDIxMTU7IH1cbiAgLnUtZmlsbC1zdWNjZXNzLWRhcmtlclxcQHN1cGVyIHtcbiAgICBmaWxsOiAjMDAyMTE1OyB9XG4gIC51LWNvbG9yLXN1Y2Nlc3MtbGlnaHRcXEBzdXBlciB7XG4gICAgY29sb3I6ICMwMGJhNzU7IH1cbiAgLnUtYmctc3VjY2Vzcy1saWdodFxcQHN1cGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBiYTc1OyB9XG4gIC51LWZpbGwtc3VjY2Vzcy1saWdodFxcQHN1cGVyIHtcbiAgICBmaWxsOiAjMDBiYTc1OyB9XG4gIC51LWNvbG9yLXN1Y2Nlc3MtbGlnaHRlclxcQHN1cGVyIHtcbiAgICBjb2xvcjogIzAwZWQ5NTsgfVxuICAudS1iZy1zdWNjZXNzLWxpZ2h0ZXJcXEBzdXBlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwZWQ5NTsgfVxuICAudS1maWxsLXN1Y2Nlc3MtbGlnaHRlclxcQHN1cGVyIHtcbiAgICBmaWxsOiAjMDBlZDk1OyB9XG4gIC51LWNvbG9yLWVycm9yLWRhcmtcXEBzdXBlciB7XG4gICAgY29sb3I6ICM5OTBjMjM7IH1cbiAgLnUtYmctZXJyb3ItZGFya1xcQHN1cGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOTkwYzIzOyB9XG4gIC51LWZpbGwtZXJyb3ItZGFya1xcQHN1cGVyIHtcbiAgICBmaWxsOiAjOTkwYzIzOyB9XG4gIC51LWNvbG9yLWVycm9yLWRhcmtlclxcQHN1cGVyIHtcbiAgICBjb2xvcjogIzZhMDgxODsgfVxuICAudS1iZy1lcnJvci1kYXJrZXJcXEBzdXBlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzZhMDgxODsgfVxuICAudS1maWxsLWVycm9yLWRhcmtlclxcQHN1cGVyIHtcbiAgICBmaWxsOiAjNmEwODE4OyB9XG4gIC51LWNvbG9yLWVycm9yLWxpZ2h0XFxAc3VwZXIge1xuICAgIGNvbG9yOiAjZWQxZTQwOyB9XG4gIC51LWJnLWVycm9yLWxpZ2h0XFxAc3VwZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlZDFlNDA7IH1cbiAgLnUtZmlsbC1lcnJvci1saWdodFxcQHN1cGVyIHtcbiAgICBmaWxsOiAjZWQxZTQwOyB9XG4gIC51LWNvbG9yLWVycm9yLWxpZ2h0ZXJcXEBzdXBlciB7XG4gICAgY29sb3I6ICNmMTRkNjg7IH1cbiAgLnUtYmctZXJyb3ItbGlnaHRlclxcQHN1cGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjE0ZDY4OyB9XG4gIC51LWZpbGwtZXJyb3ItbGlnaHRlclxcQHN1cGVyIHtcbiAgICBmaWxsOiAjZjE0ZDY4OyB9IH1cblxuLypkb2Ncbi0tLVxudGl0bGU6IENvbHVtbnNcbm5hbWU6IGNvbHVtbnNcbmNhdGVnb3J5OiBVdGlsaXRpZXNcbi0tLVxuXG5Db2x1bW5zIHV0aWxpdGllcyBjYW4gZWFzaWx5IHNwbGl0IHRleHQgaW50byBtdWx0aXBsZSBjb2x1bW5zLiBUaGlzIGlzIHBhcnRpY3VsYXJseSB1c2VmdWwgZm9yIGxvbmcgbGlzdHMuIENsYXNzZXMgaW5jbHVkZSBgdS0xY29sYCwgYHUtMmNvbGAsIGB1LTNjb2xgLCBhbmQgYHUtNGNvbGAuXG5cbmBgYGh0bWxfZXhhbXBsZV90YWJsZVxuPHVsIGNsYXNzPVwidS0yY29sXCI+XG5cdDxsaT5MaXN0IEl0ZW08L2xpPlxuXHQ8bGk+TGlzdCBJdGVtPC9saT5cblx0PGxpPkxpc3QgSXRlbTwvbGk+XG5cdDxsaT5MaXN0IEl0ZW08L2xpPlxuXHQ8bGk+TGlzdCBJdGVtPC9saT5cblx0PGxpPkxpc3QgSXRlbTwvbGk+XG5cdDxsaT5MaXN0IEl0ZW08L2xpPlxuXHQ8bGk+TGlzdCBJdGVtPC9saT5cblx0PGxpPkxpc3QgSXRlbTwvbGk+XG48L3VsPlxuYGBgXG5cbiMjIyBNZWRpYSBRdWVyaWVzXG5cbkNsYXNzIHN1ZmZpeGVzIChgQHhzbWFsbGAsIGBAc21hbGxgLCBgQG1lZGl1bWAsIGBAbGFyZ2VgLCBgQHhsYXJnZWAsIGBAc3VwZXJgKSBjYW4gYmUgdXNlZCB0byBjaGFuZ2UgY29sdW1uIGNvdW50cyBiYXNlZCBvbiB2aWV3cG9ydCB3aWR0aC5cblxuYGBgaHRtbF9leGFtcGxlX3RhYmxlXG48dWwgY2xhc3M9XCJ1LTFjb2wgIHUtMmNvbEBzbWFsbCAgdS0zY29sQG1lZGl1bSAgdS00Y29sQGxhcmdlXCI+XG5cdDxsaT5MaXN0IEl0ZW08L2xpPlxuXHQ8bGk+TGlzdCBJdGVtPC9saT5cblx0PGxpPkxpc3QgSXRlbTwvbGk+XG5cdDxsaT5MaXN0IEl0ZW08L2xpPlxuXHQ8bGk+TGlzdCBJdGVtPC9saT5cblx0PGxpPkxpc3QgSXRlbTwvbGk+XG5cdDxsaT5MaXN0IEl0ZW08L2xpPlxuXHQ8bGk+TGlzdCBJdGVtPC9saT5cblx0PGxpPkxpc3QgSXRlbTwvbGk+XG48L3VsPlxuYGBgXG5cbiovXG4udS0xY29sIHtcbiAgY29sdW1uLWNvdW50OiAxO1xuICBjb2x1bW4tZ2FwOiAyZW07IH1cblxuLnUtMmNvbCB7XG4gIGNvbHVtbi1jb3VudDogMjtcbiAgY29sdW1uLWdhcDogMmVtOyB9XG5cbi51LTNjb2wge1xuICBjb2x1bW4tY291bnQ6IDM7XG4gIGNvbHVtbi1nYXA6IDJlbTsgfVxuXG4udS00Y29sIHtcbiAgY29sdW1uLWNvdW50OiA0O1xuICBjb2x1bW4tZ2FwOiAyZW07IH1cblxuLnUtMWNvbCA+ICosXG4udS0yY29sID4gKixcbi51LTNjb2wgPiAqLFxuLnUtNGNvbCA+ICoge1xuICBicmVhay1pbnNpZGU6IGF2b2lkO1xuICBtYXJnaW4tbGVmdDogLjI1ZW07IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDIwcmVtKSB7XG4gIC51LTFjb2xcXEB4c21hbGwge1xuICAgIGNvbHVtbi1jb3VudDogMTtcbiAgICBjb2x1bW4tZ2FwOiAyZW07IH1cbiAgLnUtMmNvbFxcQHhzbWFsbCB7XG4gICAgY29sdW1uLWNvdW50OiAyO1xuICAgIGNvbHVtbi1nYXA6IDJlbTsgfVxuICAudS0zY29sXFxAeHNtYWxsIHtcbiAgICBjb2x1bW4tY291bnQ6IDM7XG4gICAgY29sdW1uLWdhcDogMmVtOyB9XG4gIC51LTRjb2xcXEB4c21hbGwge1xuICAgIGNvbHVtbi1jb3VudDogNDtcbiAgICBjb2x1bW4tZ2FwOiAyZW07IH1cbiAgLnUtMWNvbFxcQHhzbWFsbCA+ICosXG4gIC51LTJjb2xcXEB4c21hbGwgPiAqLFxuICAudS0zY29sXFxAeHNtYWxsID4gKixcbiAgLnUtNGNvbFxcQHhzbWFsbCA+ICoge1xuICAgIGJyZWFrLWluc2lkZTogYXZvaWQ7XG4gICAgbWFyZ2luLWxlZnQ6IC4yNWVtOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDMwcmVtKSB7XG4gIC51LTFjb2xcXEBzbWFsbCB7XG4gICAgY29sdW1uLWNvdW50OiAxO1xuICAgIGNvbHVtbi1nYXA6IDJlbTsgfVxuICAudS0yY29sXFxAc21hbGwge1xuICAgIGNvbHVtbi1jb3VudDogMjtcbiAgICBjb2x1bW4tZ2FwOiAyZW07IH1cbiAgLnUtM2NvbFxcQHNtYWxsIHtcbiAgICBjb2x1bW4tY291bnQ6IDM7XG4gICAgY29sdW1uLWdhcDogMmVtOyB9XG4gIC51LTRjb2xcXEBzbWFsbCB7XG4gICAgY29sdW1uLWNvdW50OiA0O1xuICAgIGNvbHVtbi1nYXA6IDJlbTsgfVxuICAudS0xY29sXFxAc21hbGwgPiAqLFxuICAudS0yY29sXFxAc21hbGwgPiAqLFxuICAudS0zY29sXFxAc21hbGwgPiAqLFxuICAudS00Y29sXFxAc21hbGwgPiAqIHtcbiAgICBicmVhay1pbnNpZGU6IGF2b2lkO1xuICAgIG1hcmdpbi1sZWZ0OiAuMjVlbTsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0OHJlbSkge1xuICAudS0xY29sXFxAbWVkaXVtIHtcbiAgICBjb2x1bW4tY291bnQ6IDE7XG4gICAgY29sdW1uLWdhcDogMmVtOyB9XG4gIC51LTJjb2xcXEBtZWRpdW0ge1xuICAgIGNvbHVtbi1jb3VudDogMjtcbiAgICBjb2x1bW4tZ2FwOiAyZW07IH1cbiAgLnUtM2NvbFxcQG1lZGl1bSB7XG4gICAgY29sdW1uLWNvdW50OiAzO1xuICAgIGNvbHVtbi1nYXA6IDJlbTsgfVxuICAudS00Y29sXFxAbWVkaXVtIHtcbiAgICBjb2x1bW4tY291bnQ6IDQ7XG4gICAgY29sdW1uLWdhcDogMmVtOyB9XG4gIC51LTFjb2xcXEBtZWRpdW0gPiAqLFxuICAudS0yY29sXFxAbWVkaXVtID4gKixcbiAgLnUtM2NvbFxcQG1lZGl1bSA+ICosXG4gIC51LTRjb2xcXEBtZWRpdW0gPiAqIHtcbiAgICBicmVhay1pbnNpZGU6IGF2b2lkO1xuICAgIG1hcmdpbi1sZWZ0OiAuMjVlbTsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA2NHJlbSkge1xuICAudS0xY29sXFxAbGFyZ2Uge1xuICAgIGNvbHVtbi1jb3VudDogMTtcbiAgICBjb2x1bW4tZ2FwOiAyZW07IH1cbiAgLnUtMmNvbFxcQGxhcmdlIHtcbiAgICBjb2x1bW4tY291bnQ6IDI7XG4gICAgY29sdW1uLWdhcDogMmVtOyB9XG4gIC51LTNjb2xcXEBsYXJnZSB7XG4gICAgY29sdW1uLWNvdW50OiAzO1xuICAgIGNvbHVtbi1nYXA6IDJlbTsgfVxuICAudS00Y29sXFxAbGFyZ2Uge1xuICAgIGNvbHVtbi1jb3VudDogNDtcbiAgICBjb2x1bW4tZ2FwOiAyZW07IH1cbiAgLnUtMWNvbFxcQGxhcmdlID4gKixcbiAgLnUtMmNvbFxcQGxhcmdlID4gKixcbiAgLnUtM2NvbFxcQGxhcmdlID4gKixcbiAgLnUtNGNvbFxcQGxhcmdlID4gKiB7XG4gICAgYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgICBtYXJnaW4tbGVmdDogLjI1ZW07IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzhyZW0pIHtcbiAgLnUtMWNvbFxcQHhsYXJnZSB7XG4gICAgY29sdW1uLWNvdW50OiAxO1xuICAgIGNvbHVtbi1nYXA6IDJlbTsgfVxuICAudS0yY29sXFxAeGxhcmdlIHtcbiAgICBjb2x1bW4tY291bnQ6IDI7XG4gICAgY29sdW1uLWdhcDogMmVtOyB9XG4gIC51LTNjb2xcXEB4bGFyZ2Uge1xuICAgIGNvbHVtbi1jb3VudDogMztcbiAgICBjb2x1bW4tZ2FwOiAyZW07IH1cbiAgLnUtNGNvbFxcQHhsYXJnZSB7XG4gICAgY29sdW1uLWNvdW50OiA0O1xuICAgIGNvbHVtbi1nYXA6IDJlbTsgfVxuICAudS0xY29sXFxAeGxhcmdlID4gKixcbiAgLnUtMmNvbFxcQHhsYXJnZSA+ICosXG4gIC51LTNjb2xcXEB4bGFyZ2UgPiAqLFxuICAudS00Y29sXFxAeGxhcmdlID4gKiB7XG4gICAgYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgICBtYXJnaW4tbGVmdDogLjI1ZW07IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTI1cmVtKSB7XG4gIC51LTFjb2xcXEBzdXBlciB7XG4gICAgY29sdW1uLWNvdW50OiAxO1xuICAgIGNvbHVtbi1nYXA6IDJlbTsgfVxuICAudS0yY29sXFxAc3VwZXIge1xuICAgIGNvbHVtbi1jb3VudDogMjtcbiAgICBjb2x1bW4tZ2FwOiAyZW07IH1cbiAgLnUtM2NvbFxcQHN1cGVyIHtcbiAgICBjb2x1bW4tY291bnQ6IDM7XG4gICAgY29sdW1uLWdhcDogMmVtOyB9XG4gIC51LTRjb2xcXEBzdXBlciB7XG4gICAgY29sdW1uLWNvdW50OiA0O1xuICAgIGNvbHVtbi1nYXA6IDJlbTsgfVxuICAudS0xY29sXFxAc3VwZXIgPiAqLFxuICAudS0yY29sXFxAc3VwZXIgPiAqLFxuICAudS0zY29sXFxAc3VwZXIgPiAqLFxuICAudS00Y29sXFxAc3VwZXIgPiAqIHtcbiAgICBicmVhay1pbnNpZGU6IGF2b2lkO1xuICAgIG1hcmdpbi1sZWZ0OiAuMjVlbTsgfSB9XG5cbi8qZG9jXG4tLS1cbnRpdGxlOiBEaXNwbGF5XG5uYW1lOiBkaXNwbGF5XG5jYXRlZ29yeTogVXRpbGl0aWVzXG4tLS1cblxuRGlzcGxheSBjbGFzc2VzIGFyZSBiYXNpYyBvdmVycmlkZXMgZm9yIHRoZSBDU1MgYGRpc3BsYXlgIHByb3BlcnR5LiBUaGVzZSBzaG91bGQgYmUgdXNlZCBzcGFyaW5nbHkuXG5cbk5vdGU6IFRoZXNlIGV4YW1wbGVzIGRvbid0IHNob3cgbXVjaC5cblxuYGBgaHRtbF9leGFtcGxlX3RhYmxlXG48cCBjbGFzcz1cInUtYmxvY2tcIj51LWJsb2NrPC9wPlxuXG48cCBjbGFzcz1cInUtaW5saW5lXCI+dS1pbmxpbmU8L3A+XG5cbjxwIGNsYXNzPVwidS1pbmxpbmUtYmxvY2tcIj51LWlubGluZS1ibG9jazwvcD5cblxuPHAgY2xhc3M9XCJ1LWZsZXhcIj51LWZsZXg8L3A+XG5gYGBcblxuKi9cbi51LWJnLW5vbmUge1xuICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7IH1cblxuLnUtYmxvY2sge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4udS1pbmxpbmUge1xuICBkaXNwbGF5OiBpbmxpbmU7IH1cblxuLnUtaW5saW5lLWJsb2NrIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbi51LWZsZXgge1xuICBkaXNwbGF5OiBmbGV4OyB9XG5cbi51LWlubGluZS1mbGV4IHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDIwcmVtKSB7XG4gIC51LWJnLW5vbmVcXEB4c21hbGwge1xuICAgIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDsgfVxuICAudS1ibG9ja1xcQHhzbWFsbCB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLnUtaW5saW5lXFxAeHNtYWxsIHtcbiAgICBkaXNwbGF5OiBpbmxpbmU7IH1cbiAgLnUtaW5saW5lLWJsb2NrXFxAeHNtYWxsIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgLnUtZmxleFxcQHhzbWFsbCB7XG4gICAgZGlzcGxheTogZmxleDsgfVxuICAudS1pbmxpbmUtZmxleFxcQHhzbWFsbCB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMzByZW0pIHtcbiAgLnUtYmctbm9uZVxcQHNtYWxsIHtcbiAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7IH1cbiAgLnUtYmxvY2tcXEBzbWFsbCB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLnUtaW5saW5lXFxAc21hbGwge1xuICAgIGRpc3BsYXk6IGlubGluZTsgfVxuICAudS1pbmxpbmUtYmxvY2tcXEBzbWFsbCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gIC51LWZsZXhcXEBzbWFsbCB7XG4gICAgZGlzcGxheTogZmxleDsgfVxuICAudS1pbmxpbmUtZmxleFxcQHNtYWxsIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0OHJlbSkge1xuICAudS1iZy1ub25lXFxAbWVkaXVtIHtcbiAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7IH1cbiAgLnUtYmxvY2tcXEBtZWRpdW0ge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC51LWlubGluZVxcQG1lZGl1bSB7XG4gICAgZGlzcGxheTogaW5saW5lOyB9XG4gIC51LWlubGluZS1ibG9ja1xcQG1lZGl1bSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gIC51LWZsZXhcXEBtZWRpdW0ge1xuICAgIGRpc3BsYXk6IGZsZXg7IH1cbiAgLnUtaW5saW5lLWZsZXhcXEBtZWRpdW0ge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDY0cmVtKSB7XG4gIC51LWJnLW5vbmVcXEBsYXJnZSB7XG4gICAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50OyB9XG4gIC51LWJsb2NrXFxAbGFyZ2Uge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC51LWlubGluZVxcQGxhcmdlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmU7IH1cbiAgLnUtaW5saW5lLWJsb2NrXFxAbGFyZ2Uge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAudS1mbGV4XFxAbGFyZ2Uge1xuICAgIGRpc3BsYXk6IGZsZXg7IH1cbiAgLnUtaW5saW5lLWZsZXhcXEBsYXJnZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzhyZW0pIHtcbiAgLnUtYmctbm9uZVxcQHhsYXJnZSB7XG4gICAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50OyB9XG4gIC51LWJsb2NrXFxAeGxhcmdlIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAudS1pbmxpbmVcXEB4bGFyZ2Uge1xuICAgIGRpc3BsYXk6IGlubGluZTsgfVxuICAudS1pbmxpbmUtYmxvY2tcXEB4bGFyZ2Uge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAudS1mbGV4XFxAeGxhcmdlIHtcbiAgICBkaXNwbGF5OiBmbGV4OyB9XG4gIC51LWlubGluZS1mbGV4XFxAeGxhcmdlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjVyZW0pIHtcbiAgLnUtYmctbm9uZVxcQHN1cGVyIHtcbiAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7IH1cbiAgLnUtYmxvY2tcXEBzdXBlciB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLnUtaW5saW5lXFxAc3VwZXIge1xuICAgIGRpc3BsYXk6IGlubGluZTsgfVxuICAudS1pbmxpbmUtYmxvY2tcXEBzdXBlciB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gIC51LWZsZXhcXEBzdXBlciB7XG4gICAgZGlzcGxheTogZmxleDsgfVxuICAudS1pbmxpbmUtZmxleFxcQHN1cGVyIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDsgfSB9XG5cbi8qZG9jXG4tLS1cbnRpdGxlOiBFbGV2YXRpb25cbm5hbWU6IGVsZXZhdGlvblxuY2F0ZWdvcnk6IFV0aWxpdGllc1xuLS0tXG5cbkVsZXZhdGlvbiB1dGlsaXRpZXMgYWRkIGRyb3Agc2hhZG93cyB0byBlbGVtZW50cy5cblxuYGBgaHRtbF9leGFtcGxlX3RhYmxlXG48aW5wdXQgY2xhc3M9XCJhLWZpZWxkICB1LWhpZ2hcIiAvPlxuXG48aW5wdXQgY2xhc3M9XCJhLWZpZWxkICB1LWhpZ2hlclwiIC8+XG5cbjxpbnB1dCBjbGFzcz1cImEtZmllbGQgIHUtaGlnaGVzdFwiIC8+XG5cbjxpbnB1dCBjbGFzcz1cImEtZmllbGQgIHUtbG93XCIgLz5cblxuPGlucHV0IGNsYXNzPVwiYS1maWVsZCAgdS1sb3dlclwiIC8+XG5cbjxpbnB1dCBjbGFzcz1cImEtZmllbGQgIHUtbG93ZXN0XCIgLz5cbmBgYFxuXG4qL1xuLyoudS1oaWdoLFxuLnUtaGlnaGVyLFxuLnUtaGlnaGVzdCB7XG5cdGJvcmRlcjogMDtcbn0qL1xuLnUtaGlnaCB7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDNweCAwIHJnYmEoMCwgMCwgMCwgMC4yKTsgfVxuXG4udS1oaWdoZXIge1xuICBib3gtc2hhZG93OiAwIDJweCA2cHggMCByZ2JhKDAsIDAsIDAsIDAuMik7IH1cblxuLnUtaGlnaGVzdCB7XG4gIGJveC1zaGFkb3c6IDAgM3B4IDlweCAwIHJnYmEoMCwgMCwgMCwgMC4yKTsgfVxuXG4udS1uby1zaGFkb3cge1xuICBib3gtc2hhZG93OiBub25lOyB9XG5cbi51LWxvdyB7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAxcHggcmdiYSg2NSwgNjQsIDY2LCAwLjYpLCBpbnNldCAwIDJweCA0cHggLTJweCByZ2JhKDY1LCA2NCwgNjYsIDAuMik7IH1cblxuLnUtbG93ZXIge1xuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMXB4IHJnYmEoNjUsIDY0LCA2NiwgMC42KSwgaW5zZXQgMCA0cHggOHB4IC00cHggcmdiYSg2NSwgNjQsIDY2LCAwLjIpOyB9XG5cbi51LWxvd2VzdCB7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAxcHggcmdiYSg2NSwgNjQsIDY2LCAwLjYpLCBpbnNldCAwIDZweCAxMnB4IC02cHggcmdiYSg2NSwgNjQsIDY2LCAwLjIpOyB9XG5cbi8qZG9jXG4tLS1cbnRpdGxlOiBGbGV4Ym94XG5uYW1lOiBmbGV4Ym94XG5jYXRlZ29yeTogVXRpbGl0aWVzXG4tLS1cblxuQW4gYXNzb3J0bWVudCBvZiB1dGlsaXR5IGNsYXNzZXMuXG5cbi0gdS1mbGV4LWF1dG9cbi0gdS1mbGV4LW5vbmVcbi0gdS1mbGV4LWNvbHVtblxuLSB1LWZsZXgtcm93XG4tIHUtZmxleC13cmFwXG4tIHUtZmxleC1ncm93XG4tIHUtZmxleC1zaHJpbmtcbi0gdS1pdGVtcy1zdGFydFxuLSB1LWl0ZW1zLWVuZFxuLSB1LWl0ZW1zLWNlbnRlclxuLSB1LWl0ZW1zLWJhc2VsaW5lXG4tIHUtaXRlbXMtc3RyZXRjaFxuLSB1LXNlbGYtc3RhcnRcbi0gdS1zZWxmLWVuZFxuLSB1LXNlbGYtY2VudGVyXG4tIHUtc2VsZi1iYXNlbGluZVxuLSB1LXNlbGYtc3RyZXRjaFxuLSB1LWp1c3RpZnktc3RhcnRcbi0gdS1qdXN0aWZ5LWVuZFxuLSB1LWp1c3RpZnktY2VudGVyXG4tIHUtanVzdGlmeS1iZXR3ZWVuXG4tIHUtanVzdGlmeS1hcm91bmRcbi0gdS1jb250ZW50LXN0YXJ0XG4tIHUtY29udGVudC1lbmRcbi0gdS1jb250ZW50LWNlbnRlclxuLSB1LWNvbnRlbnQtYmV0d2VlblxuLSB1LWNvbnRlbnQtYXJvdW5kXG4tIHUtY29udGVudC1zdHJldGNoXG5cbiovXG4vKiAxLiBGaXggZm9yIENocm9tZSA0NCBidWcuXG5cdCAqIGh0dHBzOi8vY29kZS5nb29nbGUuY29tL3AvY2hyb21pdW0vaXNzdWVzL2RldGFpbD9pZD01MDY4OTMgKi9cbi51LWZsZXgtYXV0byB7XG4gIGZsZXg6IDEgMSBhdXRvO1xuICBtaW4td2lkdGg6IDA7XG4gIC8qIDEgKi9cbiAgbWluLWhlaWdodDogMDtcbiAgLyogMSAqLyB9XG5cbi51LWZsZXgtbm9uZSB7XG4gIGZsZXg6IG5vbmU7IH1cblxuLnUtZmxleC1jb2x1bW4ge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG5cbi51LWZsZXgtcm93IHtcbiAgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuXG4udS1mbGV4LXdyYXAge1xuICBmbGV4LXdyYXA6IHdyYXA7IH1cblxuLnUtZmxleC1ncm93IHtcbiAgZmxleC1ncm93OiAxOyB9XG5cbi51LWZsZXgtc2hyaW5rIHtcbiAgZmxleC1zaHJpbms6IDE7IH1cblxuLnUtaXRlbXMtc3RhcnQge1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDsgfVxuXG4udS1pdGVtcy1lbmQge1xuICBhbGlnbi1pdGVtczogZmxleC1lbmQ7IH1cblxuLnUtaXRlbXMtY2VudGVyIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuXG4udS1pdGVtcy1iYXNlbGluZSB7XG4gIGFsaWduLWl0ZW1zOiBiYXNlbGluZTsgfVxuXG4udS1pdGVtcy1zdHJldGNoIHtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7IH1cblxuLnUtc2VsZi1zdGFydCB7XG4gIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7IH1cblxuLnUtc2VsZi1lbmQge1xuICBhbGlnbi1zZWxmOiBmbGV4LWVuZDsgfVxuXG4udS1zZWxmLWNlbnRlciB7XG4gIGFsaWduLXNlbGY6IGNlbnRlcjsgfVxuXG4udS1zZWxmLWJhc2VsaW5lIHtcbiAgYWxpZ24tc2VsZjogYmFzZWxpbmU7IH1cblxuLnUtc2VsZi1zdHJldGNoIHtcbiAgYWxpZ24tc2VsZjogc3RyZXRjaDsgfVxuXG4udS1qdXN0aWZ5LXN0YXJ0IHtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OyB9XG5cbi51LWp1c3RpZnktZW5kIHtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgfVxuXG4udS1qdXN0aWZ5LWNlbnRlciB7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG5cbi51LWp1c3RpZnktYmV0d2VlbiB7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuXG4udS1qdXN0aWZ5LWFyb3VuZCB7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kOyB9XG5cbi51LWNvbnRlbnQtc3RhcnQge1xuICBhbGlnbi1jb250ZW50OiBmbGV4LXN0YXJ0OyB9XG5cbi51LWNvbnRlbnQtZW5kIHtcbiAgYWxpZ24tY29udGVudDogZmxleC1lbmQ7IH1cblxuLnUtY29udGVudC1jZW50ZXIge1xuICBhbGlnbi1jb250ZW50OiBjZW50ZXI7IH1cblxuLnUtY29udGVudC1iZXR3ZWVuIHtcbiAgYWxpZ24tY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuXG4udS1jb250ZW50LWFyb3VuZCB7XG4gIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDsgfVxuXG4udS1jb250ZW50LXN0cmV0Y2gge1xuICBhbGlnbi1jb250ZW50OiBzdHJldGNoOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAyMHJlbSkge1xuICAvKiAxLiBGaXggZm9yIENocm9tZSA0NCBidWcuXG5cdCAqIGh0dHBzOi8vY29kZS5nb29nbGUuY29tL3AvY2hyb21pdW0vaXNzdWVzL2RldGFpbD9pZD01MDY4OTMgKi9cbiAgLnUtZmxleC1hdXRvXFxAeHNtYWxsIHtcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgICBtaW4td2lkdGg6IDA7XG4gICAgLyogMSAqL1xuICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgLyogMSAqLyB9XG4gIC51LWZsZXgtbm9uZVxcQHhzbWFsbCB7XG4gICAgZmxleDogbm9uZTsgfVxuICAudS1mbGV4LWNvbHVtblxcQHhzbWFsbCB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAudS1mbGV4LXJvd1xcQHhzbWFsbCB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuICAudS1mbGV4LXdyYXBcXEB4c21hbGwge1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAudS1mbGV4LWdyb3dcXEB4c21hbGwge1xuICAgIGZsZXgtZ3JvdzogMTsgfVxuICAudS1mbGV4LXNocmlua1xcQHhzbWFsbCB7XG4gICAgZmxleC1zaHJpbms6IDE7IH1cbiAgLnUtaXRlbXMtc3RhcnRcXEB4c21hbGwge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyB9XG4gIC51LWl0ZW1zLWVuZFxcQHhzbWFsbCB7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kOyB9XG4gIC51LWl0ZW1zLWNlbnRlclxcQHhzbWFsbCB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAudS1pdGVtcy1iYXNlbGluZVxcQHhzbWFsbCB7XG4gICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lOyB9XG4gIC51LWl0ZW1zLXN0cmV0Y2hcXEB4c21hbGwge1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoOyB9XG4gIC51LXNlbGYtc3RhcnRcXEB4c21hbGwge1xuICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7IH1cbiAgLnUtc2VsZi1lbmRcXEB4c21hbGwge1xuICAgIGFsaWduLXNlbGY6IGZsZXgtZW5kOyB9XG4gIC51LXNlbGYtY2VudGVyXFxAeHNtYWxsIHtcbiAgICBhbGlnbi1zZWxmOiBjZW50ZXI7IH1cbiAgLnUtc2VsZi1iYXNlbGluZVxcQHhzbWFsbCB7XG4gICAgYWxpZ24tc2VsZjogYmFzZWxpbmU7IH1cbiAgLnUtc2VsZi1zdHJldGNoXFxAeHNtYWxsIHtcbiAgICBhbGlnbi1zZWxmOiBzdHJldGNoOyB9XG4gIC51LWp1c3RpZnktc3RhcnRcXEB4c21hbGwge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxuICAudS1qdXN0aWZ5LWVuZFxcQHhzbWFsbCB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgfVxuICAudS1qdXN0aWZ5LWNlbnRlclxcQHhzbWFsbCB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgLnUtanVzdGlmeS1iZXR3ZWVuXFxAeHNtYWxsIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cbiAgLnUtanVzdGlmeS1hcm91bmRcXEB4c21hbGwge1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kOyB9XG4gIC51LWNvbnRlbnQtc3RhcnRcXEB4c21hbGwge1xuICAgIGFsaWduLWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cbiAgLnUtY29udGVudC1lbmRcXEB4c21hbGwge1xuICAgIGFsaWduLWNvbnRlbnQ6IGZsZXgtZW5kOyB9XG4gIC51LWNvbnRlbnQtY2VudGVyXFxAeHNtYWxsIHtcbiAgICBhbGlnbi1jb250ZW50OiBjZW50ZXI7IH1cbiAgLnUtY29udGVudC1iZXR3ZWVuXFxAeHNtYWxsIHtcbiAgICBhbGlnbi1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG4gIC51LWNvbnRlbnQtYXJvdW5kXFxAeHNtYWxsIHtcbiAgICBhbGlnbi1jb250ZW50OiBzcGFjZS1hcm91bmQ7IH1cbiAgLnUtY29udGVudC1zdHJldGNoXFxAeHNtYWxsIHtcbiAgICBhbGlnbi1jb250ZW50OiBzdHJldGNoOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDMwcmVtKSB7XG4gIC8qIDEuIEZpeCBmb3IgQ2hyb21lIDQ0IGJ1Zy5cblx0ICogaHR0cHM6Ly9jb2RlLmdvb2dsZS5jb20vcC9jaHJvbWl1bS9pc3N1ZXMvZGV0YWlsP2lkPTUwNjg5MyAqL1xuICAudS1mbGV4LWF1dG9cXEBzbWFsbCB7XG4gICAgZmxleDogMSAxIGF1dG87XG4gICAgbWluLXdpZHRoOiAwO1xuICAgIC8qIDEgKi9cbiAgICBtaW4taGVpZ2h0OiAwO1xuICAgIC8qIDEgKi8gfVxuICAudS1mbGV4LW5vbmVcXEBzbWFsbCB7XG4gICAgZmxleDogbm9uZTsgfVxuICAudS1mbGV4LWNvbHVtblxcQHNtYWxsIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gIC51LWZsZXgtcm93XFxAc21hbGwge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7IH1cbiAgLnUtZmxleC13cmFwXFxAc21hbGwge1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAudS1mbGV4LWdyb3dcXEBzbWFsbCB7XG4gICAgZmxleC1ncm93OiAxOyB9XG4gIC51LWZsZXgtc2hyaW5rXFxAc21hbGwge1xuICAgIGZsZXgtc2hyaW5rOiAxOyB9XG4gIC51LWl0ZW1zLXN0YXJ0XFxAc21hbGwge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyB9XG4gIC51LWl0ZW1zLWVuZFxcQHNtYWxsIHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7IH1cbiAgLnUtaXRlbXMtY2VudGVyXFxAc21hbGwge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgLnUtaXRlbXMtYmFzZWxpbmVcXEBzbWFsbCB7XG4gICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lOyB9XG4gIC51LWl0ZW1zLXN0cmV0Y2hcXEBzbWFsbCB7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7IH1cbiAgLnUtc2VsZi1zdGFydFxcQHNtYWxsIHtcbiAgICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0OyB9XG4gIC51LXNlbGYtZW5kXFxAc21hbGwge1xuICAgIGFsaWduLXNlbGY6IGZsZXgtZW5kOyB9XG4gIC51LXNlbGYtY2VudGVyXFxAc21hbGwge1xuICAgIGFsaWduLXNlbGY6IGNlbnRlcjsgfVxuICAudS1zZWxmLWJhc2VsaW5lXFxAc21hbGwge1xuICAgIGFsaWduLXNlbGY6IGJhc2VsaW5lOyB9XG4gIC51LXNlbGYtc3RyZXRjaFxcQHNtYWxsIHtcbiAgICBhbGlnbi1zZWxmOiBzdHJldGNoOyB9XG4gIC51LWp1c3RpZnktc3RhcnRcXEBzbWFsbCB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OyB9XG4gIC51LWp1c3RpZnktZW5kXFxAc21hbGwge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7IH1cbiAgLnUtanVzdGlmeS1jZW50ZXJcXEBzbWFsbCB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgLnUtanVzdGlmeS1iZXR3ZWVuXFxAc21hbGwge1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuICAudS1qdXN0aWZ5LWFyb3VuZFxcQHNtYWxsIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDsgfVxuICAudS1jb250ZW50LXN0YXJ0XFxAc21hbGwge1xuICAgIGFsaWduLWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cbiAgLnUtY29udGVudC1lbmRcXEBzbWFsbCB7XG4gICAgYWxpZ24tY29udGVudDogZmxleC1lbmQ7IH1cbiAgLnUtY29udGVudC1jZW50ZXJcXEBzbWFsbCB7XG4gICAgYWxpZ24tY29udGVudDogY2VudGVyOyB9XG4gIC51LWNvbnRlbnQtYmV0d2VlblxcQHNtYWxsIHtcbiAgICBhbGlnbi1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG4gIC51LWNvbnRlbnQtYXJvdW5kXFxAc21hbGwge1xuICAgIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDsgfVxuICAudS1jb250ZW50LXN0cmV0Y2hcXEBzbWFsbCB7XG4gICAgYWxpZ24tY29udGVudDogc3RyZXRjaDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0OHJlbSkge1xuICAvKiAxLiBGaXggZm9yIENocm9tZSA0NCBidWcuXG5cdCAqIGh0dHBzOi8vY29kZS5nb29nbGUuY29tL3AvY2hyb21pdW0vaXNzdWVzL2RldGFpbD9pZD01MDY4OTMgKi9cbiAgLnUtZmxleC1hdXRvXFxAbWVkaXVtIHtcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgICBtaW4td2lkdGg6IDA7XG4gICAgLyogMSAqL1xuICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgLyogMSAqLyB9XG4gIC51LWZsZXgtbm9uZVxcQG1lZGl1bSB7XG4gICAgZmxleDogbm9uZTsgfVxuICAudS1mbGV4LWNvbHVtblxcQG1lZGl1bSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAudS1mbGV4LXJvd1xcQG1lZGl1bSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuICAudS1mbGV4LXdyYXBcXEBtZWRpdW0ge1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAudS1mbGV4LWdyb3dcXEBtZWRpdW0ge1xuICAgIGZsZXgtZ3JvdzogMTsgfVxuICAudS1mbGV4LXNocmlua1xcQG1lZGl1bSB7XG4gICAgZmxleC1zaHJpbms6IDE7IH1cbiAgLnUtaXRlbXMtc3RhcnRcXEBtZWRpdW0ge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyB9XG4gIC51LWl0ZW1zLWVuZFxcQG1lZGl1bSB7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kOyB9XG4gIC51LWl0ZW1zLWNlbnRlclxcQG1lZGl1bSB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAudS1pdGVtcy1iYXNlbGluZVxcQG1lZGl1bSB7XG4gICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lOyB9XG4gIC51LWl0ZW1zLXN0cmV0Y2hcXEBtZWRpdW0ge1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoOyB9XG4gIC51LXNlbGYtc3RhcnRcXEBtZWRpdW0ge1xuICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7IH1cbiAgLnUtc2VsZi1lbmRcXEBtZWRpdW0ge1xuICAgIGFsaWduLXNlbGY6IGZsZXgtZW5kOyB9XG4gIC51LXNlbGYtY2VudGVyXFxAbWVkaXVtIHtcbiAgICBhbGlnbi1zZWxmOiBjZW50ZXI7IH1cbiAgLnUtc2VsZi1iYXNlbGluZVxcQG1lZGl1bSB7XG4gICAgYWxpZ24tc2VsZjogYmFzZWxpbmU7IH1cbiAgLnUtc2VsZi1zdHJldGNoXFxAbWVkaXVtIHtcbiAgICBhbGlnbi1zZWxmOiBzdHJldGNoOyB9XG4gIC51LWp1c3RpZnktc3RhcnRcXEBtZWRpdW0ge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxuICAudS1qdXN0aWZ5LWVuZFxcQG1lZGl1bSB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgfVxuICAudS1qdXN0aWZ5LWNlbnRlclxcQG1lZGl1bSB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgLnUtanVzdGlmeS1iZXR3ZWVuXFxAbWVkaXVtIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cbiAgLnUtanVzdGlmeS1hcm91bmRcXEBtZWRpdW0ge1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kOyB9XG4gIC51LWNvbnRlbnQtc3RhcnRcXEBtZWRpdW0ge1xuICAgIGFsaWduLWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cbiAgLnUtY29udGVudC1lbmRcXEBtZWRpdW0ge1xuICAgIGFsaWduLWNvbnRlbnQ6IGZsZXgtZW5kOyB9XG4gIC51LWNvbnRlbnQtY2VudGVyXFxAbWVkaXVtIHtcbiAgICBhbGlnbi1jb250ZW50OiBjZW50ZXI7IH1cbiAgLnUtY29udGVudC1iZXR3ZWVuXFxAbWVkaXVtIHtcbiAgICBhbGlnbi1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG4gIC51LWNvbnRlbnQtYXJvdW5kXFxAbWVkaXVtIHtcbiAgICBhbGlnbi1jb250ZW50OiBzcGFjZS1hcm91bmQ7IH1cbiAgLnUtY29udGVudC1zdHJldGNoXFxAbWVkaXVtIHtcbiAgICBhbGlnbi1jb250ZW50OiBzdHJldGNoOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDY0cmVtKSB7XG4gIC8qIDEuIEZpeCBmb3IgQ2hyb21lIDQ0IGJ1Zy5cblx0ICogaHR0cHM6Ly9jb2RlLmdvb2dsZS5jb20vcC9jaHJvbWl1bS9pc3N1ZXMvZGV0YWlsP2lkPTUwNjg5MyAqL1xuICAudS1mbGV4LWF1dG9cXEBsYXJnZSB7XG4gICAgZmxleDogMSAxIGF1dG87XG4gICAgbWluLXdpZHRoOiAwO1xuICAgIC8qIDEgKi9cbiAgICBtaW4taGVpZ2h0OiAwO1xuICAgIC8qIDEgKi8gfVxuICAudS1mbGV4LW5vbmVcXEBsYXJnZSB7XG4gICAgZmxleDogbm9uZTsgfVxuICAudS1mbGV4LWNvbHVtblxcQGxhcmdlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gIC51LWZsZXgtcm93XFxAbGFyZ2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7IH1cbiAgLnUtZmxleC13cmFwXFxAbGFyZ2Uge1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAudS1mbGV4LWdyb3dcXEBsYXJnZSB7XG4gICAgZmxleC1ncm93OiAxOyB9XG4gIC51LWZsZXgtc2hyaW5rXFxAbGFyZ2Uge1xuICAgIGZsZXgtc2hyaW5rOiAxOyB9XG4gIC51LWl0ZW1zLXN0YXJ0XFxAbGFyZ2Uge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyB9XG4gIC51LWl0ZW1zLWVuZFxcQGxhcmdlIHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7IH1cbiAgLnUtaXRlbXMtY2VudGVyXFxAbGFyZ2Uge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgLnUtaXRlbXMtYmFzZWxpbmVcXEBsYXJnZSB7XG4gICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lOyB9XG4gIC51LWl0ZW1zLXN0cmV0Y2hcXEBsYXJnZSB7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7IH1cbiAgLnUtc2VsZi1zdGFydFxcQGxhcmdlIHtcbiAgICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0OyB9XG4gIC51LXNlbGYtZW5kXFxAbGFyZ2Uge1xuICAgIGFsaWduLXNlbGY6IGZsZXgtZW5kOyB9XG4gIC51LXNlbGYtY2VudGVyXFxAbGFyZ2Uge1xuICAgIGFsaWduLXNlbGY6IGNlbnRlcjsgfVxuICAudS1zZWxmLWJhc2VsaW5lXFxAbGFyZ2Uge1xuICAgIGFsaWduLXNlbGY6IGJhc2VsaW5lOyB9XG4gIC51LXNlbGYtc3RyZXRjaFxcQGxhcmdlIHtcbiAgICBhbGlnbi1zZWxmOiBzdHJldGNoOyB9XG4gIC51LWp1c3RpZnktc3RhcnRcXEBsYXJnZSB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OyB9XG4gIC51LWp1c3RpZnktZW5kXFxAbGFyZ2Uge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7IH1cbiAgLnUtanVzdGlmeS1jZW50ZXJcXEBsYXJnZSB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgLnUtanVzdGlmeS1iZXR3ZWVuXFxAbGFyZ2Uge1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuICAudS1qdXN0aWZ5LWFyb3VuZFxcQGxhcmdlIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDsgfVxuICAudS1jb250ZW50LXN0YXJ0XFxAbGFyZ2Uge1xuICAgIGFsaWduLWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cbiAgLnUtY29udGVudC1lbmRcXEBsYXJnZSB7XG4gICAgYWxpZ24tY29udGVudDogZmxleC1lbmQ7IH1cbiAgLnUtY29udGVudC1jZW50ZXJcXEBsYXJnZSB7XG4gICAgYWxpZ24tY29udGVudDogY2VudGVyOyB9XG4gIC51LWNvbnRlbnQtYmV0d2VlblxcQGxhcmdlIHtcbiAgICBhbGlnbi1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG4gIC51LWNvbnRlbnQtYXJvdW5kXFxAbGFyZ2Uge1xuICAgIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDsgfVxuICAudS1jb250ZW50LXN0cmV0Y2hcXEBsYXJnZSB7XG4gICAgYWxpZ24tY29udGVudDogc3RyZXRjaDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3OHJlbSkge1xuICAvKiAxLiBGaXggZm9yIENocm9tZSA0NCBidWcuXG5cdCAqIGh0dHBzOi8vY29kZS5nb29nbGUuY29tL3AvY2hyb21pdW0vaXNzdWVzL2RldGFpbD9pZD01MDY4OTMgKi9cbiAgLnUtZmxleC1hdXRvXFxAeGxhcmdlIHtcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgICBtaW4td2lkdGg6IDA7XG4gICAgLyogMSAqL1xuICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgLyogMSAqLyB9XG4gIC51LWZsZXgtbm9uZVxcQHhsYXJnZSB7XG4gICAgZmxleDogbm9uZTsgfVxuICAudS1mbGV4LWNvbHVtblxcQHhsYXJnZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAudS1mbGV4LXJvd1xcQHhsYXJnZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuICAudS1mbGV4LXdyYXBcXEB4bGFyZ2Uge1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAudS1mbGV4LWdyb3dcXEB4bGFyZ2Uge1xuICAgIGZsZXgtZ3JvdzogMTsgfVxuICAudS1mbGV4LXNocmlua1xcQHhsYXJnZSB7XG4gICAgZmxleC1zaHJpbms6IDE7IH1cbiAgLnUtaXRlbXMtc3RhcnRcXEB4bGFyZ2Uge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyB9XG4gIC51LWl0ZW1zLWVuZFxcQHhsYXJnZSB7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kOyB9XG4gIC51LWl0ZW1zLWNlbnRlclxcQHhsYXJnZSB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAudS1pdGVtcy1iYXNlbGluZVxcQHhsYXJnZSB7XG4gICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lOyB9XG4gIC51LWl0ZW1zLXN0cmV0Y2hcXEB4bGFyZ2Uge1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoOyB9XG4gIC51LXNlbGYtc3RhcnRcXEB4bGFyZ2Uge1xuICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7IH1cbiAgLnUtc2VsZi1lbmRcXEB4bGFyZ2Uge1xuICAgIGFsaWduLXNlbGY6IGZsZXgtZW5kOyB9XG4gIC51LXNlbGYtY2VudGVyXFxAeGxhcmdlIHtcbiAgICBhbGlnbi1zZWxmOiBjZW50ZXI7IH1cbiAgLnUtc2VsZi1iYXNlbGluZVxcQHhsYXJnZSB7XG4gICAgYWxpZ24tc2VsZjogYmFzZWxpbmU7IH1cbiAgLnUtc2VsZi1zdHJldGNoXFxAeGxhcmdlIHtcbiAgICBhbGlnbi1zZWxmOiBzdHJldGNoOyB9XG4gIC51LWp1c3RpZnktc3RhcnRcXEB4bGFyZ2Uge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxuICAudS1qdXN0aWZ5LWVuZFxcQHhsYXJnZSB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgfVxuICAudS1qdXN0aWZ5LWNlbnRlclxcQHhsYXJnZSB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgLnUtanVzdGlmeS1iZXR3ZWVuXFxAeGxhcmdlIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cbiAgLnUtanVzdGlmeS1hcm91bmRcXEB4bGFyZ2Uge1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kOyB9XG4gIC51LWNvbnRlbnQtc3RhcnRcXEB4bGFyZ2Uge1xuICAgIGFsaWduLWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cbiAgLnUtY29udGVudC1lbmRcXEB4bGFyZ2Uge1xuICAgIGFsaWduLWNvbnRlbnQ6IGZsZXgtZW5kOyB9XG4gIC51LWNvbnRlbnQtY2VudGVyXFxAeGxhcmdlIHtcbiAgICBhbGlnbi1jb250ZW50OiBjZW50ZXI7IH1cbiAgLnUtY29udGVudC1iZXR3ZWVuXFxAeGxhcmdlIHtcbiAgICBhbGlnbi1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG4gIC51LWNvbnRlbnQtYXJvdW5kXFxAeGxhcmdlIHtcbiAgICBhbGlnbi1jb250ZW50OiBzcGFjZS1hcm91bmQ7IH1cbiAgLnUtY29udGVudC1zdHJldGNoXFxAeGxhcmdlIHtcbiAgICBhbGlnbi1jb250ZW50OiBzdHJldGNoOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyNXJlbSkge1xuICAvKiAxLiBGaXggZm9yIENocm9tZSA0NCBidWcuXG5cdCAqIGh0dHBzOi8vY29kZS5nb29nbGUuY29tL3AvY2hyb21pdW0vaXNzdWVzL2RldGFpbD9pZD01MDY4OTMgKi9cbiAgLnUtZmxleC1hdXRvXFxAc3VwZXIge1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgIG1pbi13aWR0aDogMDtcbiAgICAvKiAxICovXG4gICAgbWluLWhlaWdodDogMDtcbiAgICAvKiAxICovIH1cbiAgLnUtZmxleC1ub25lXFxAc3VwZXIge1xuICAgIGZsZXg6IG5vbmU7IH1cbiAgLnUtZmxleC1jb2x1bW5cXEBzdXBlciB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAudS1mbGV4LXJvd1xcQHN1cGVyIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG4gIC51LWZsZXgtd3JhcFxcQHN1cGVyIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgLnUtZmxleC1ncm93XFxAc3VwZXIge1xuICAgIGZsZXgtZ3JvdzogMTsgfVxuICAudS1mbGV4LXNocmlua1xcQHN1cGVyIHtcbiAgICBmbGV4LXNocmluazogMTsgfVxuICAudS1pdGVtcy1zdGFydFxcQHN1cGVyIHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDsgfVxuICAudS1pdGVtcy1lbmRcXEBzdXBlciB7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kOyB9XG4gIC51LWl0ZW1zLWNlbnRlclxcQHN1cGVyIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIC51LWl0ZW1zLWJhc2VsaW5lXFxAc3VwZXIge1xuICAgIGFsaWduLWl0ZW1zOiBiYXNlbGluZTsgfVxuICAudS1pdGVtcy1zdHJldGNoXFxAc3VwZXIge1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoOyB9XG4gIC51LXNlbGYtc3RhcnRcXEBzdXBlciB7XG4gICAgYWxpZ24tc2VsZjogZmxleC1zdGFydDsgfVxuICAudS1zZWxmLWVuZFxcQHN1cGVyIHtcbiAgICBhbGlnbi1zZWxmOiBmbGV4LWVuZDsgfVxuICAudS1zZWxmLWNlbnRlclxcQHN1cGVyIHtcbiAgICBhbGlnbi1zZWxmOiBjZW50ZXI7IH1cbiAgLnUtc2VsZi1iYXNlbGluZVxcQHN1cGVyIHtcbiAgICBhbGlnbi1zZWxmOiBiYXNlbGluZTsgfVxuICAudS1zZWxmLXN0cmV0Y2hcXEBzdXBlciB7XG4gICAgYWxpZ24tc2VsZjogc3RyZXRjaDsgfVxuICAudS1qdXN0aWZ5LXN0YXJ0XFxAc3VwZXIge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxuICAudS1qdXN0aWZ5LWVuZFxcQHN1cGVyIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOyB9XG4gIC51LWp1c3RpZnktY2VudGVyXFxAc3VwZXIge1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gIC51LWp1c3RpZnktYmV0d2VlblxcQHN1cGVyIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cbiAgLnUtanVzdGlmeS1hcm91bmRcXEBzdXBlciB7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7IH1cbiAgLnUtY29udGVudC1zdGFydFxcQHN1cGVyIHtcbiAgICBhbGlnbi1jb250ZW50OiBmbGV4LXN0YXJ0OyB9XG4gIC51LWNvbnRlbnQtZW5kXFxAc3VwZXIge1xuICAgIGFsaWduLWNvbnRlbnQ6IGZsZXgtZW5kOyB9XG4gIC51LWNvbnRlbnQtY2VudGVyXFxAc3VwZXIge1xuICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAudS1jb250ZW50LWJldHdlZW5cXEBzdXBlciB7XG4gICAgYWxpZ24tY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuICAudS1jb250ZW50LWFyb3VuZFxcQHN1cGVyIHtcbiAgICBhbGlnbi1jb250ZW50OiBzcGFjZS1hcm91bmQ7IH1cbiAgLnUtY29udGVudC1zdHJldGNoXFxAc3VwZXIge1xuICAgIGFsaWduLWNvbnRlbnQ6IHN0cmV0Y2g7IH0gfVxuXG4vKmRvY1xuLS0tXG50aXRsZTogTGluZSBIZWlnaHRzXG5uYW1lOiBsaW5lLWhlaWdodHNcbmNhdGVnb3J5OiBVdGlsaXRpZXNcbi0tLVxuXG5PdmVycmlkZSB0aGUgZGVmYXVsdCBsaW5lLWhlaWdodCB2YWx1ZSB3aXRoIGB1LWxpbmUtaGVpZ2h0LS1zb2xpZGAsIGB1LWxpbmUtaGVpZ2h0LS10aXRsZWAsIGFuZCBgdS1saW5lLWhlaWdodC0tY29weWAgY2xhc3Nlcy5cblxuYGBgaHRtbF9leGFtcGxlX3RhYmxlXG48cCBjbGFzcz1cInUtbGluZS1oZWlnaHQtLXNvbGlkXCI+VGhpcyBzZW50ZW5jZSBoYXMgYSBsaW5lLWhlaWdodCBvZiAxLiBUaGlzIGlzIHRoZSBzbWFsbGVzdCB2YWx1ZS4gV2hlbiB0ZXh0IHdyYXBzIHRoZXJlIHdpbGwgYmUgdmVyeSBsaXR0bGUgc3BhY2UgYmV0d2VlbiBsaW5lcy48L3A+XG5cbjxwIGNsYXNzPVwidS1saW5lLWhlaWdodC0tdGl0bGVcIj5UaGlzIHNlbnRlbmNlIGhhcyBhIGxpbmUtaGVpZ2h0IG9mIDEuMjUuIFRoaXMgaXMgdGhlIHR5cGljYWxseSB1c2VkIGZvciBsYXJnZSB0ZXh0IGxpa2UgaGVhZGluZ3MuIFdoZW4gdGV4dCB3cmFwcyB0aGVyZSB3aWxsIGJlIGEgYml0IG9mIHNwYWNlIGJldHdlZW4gbGluZXMuPC9wPlxuXG48cCBjbGFzcz1cInUtbGluZS1oZWlnaHQtLWNvcHlcIj5UaGlzIHNlbnRlbmNlIGhhcyBhIGxpbmUtaGVpZ2h0IG9mIDEuNS4gVGhpcyBpcyB0aGUgdHlwaWNhbGx5IHVzZWQgZm9yIGJvZHkgY29weS4gV2hlbiB0ZXh0IHdyYXBzIHRoZXJlIHdpbGwgYmUgZW5vdWdoIHNwYWNlIGJldHdlZW4gbGluZXMgdG8gcmVhZCBsb25nIGxpbmVzIGNvbWZvcnRhYmx5LjwvcD5cbmBgYFxuXG4jIyMgTWVkaWEgUXVlcmllc1xuXG5DbGFzcyBzdWZmaXhlcyAoYEB4c21hbGxgLCBgQHNtYWxsYCwgYEBtZWRpdW1gLCBgQGxhcmdlYCwgYEB4bGFyZ2VgLCBgQHN1cGVyYCkgY2FuIGJlIHVzZWQgdG8gY2hhbmdlIGxpbmUtaGVpZ2h0cyBiYXNlZCBvbiB2aWV3cG9ydCB3aWR0aC5cblxuKi9cbi51LWxpbmUtaGVpZ2h0LS1zb2xpZCB7XG4gIGxpbmUtaGVpZ2h0OiAxOyB9XG5cbi51LWxpbmUtaGVpZ2h0LS10aXRsZSB7XG4gIGxpbmUtaGVpZ2h0OiAxLjI1OyB9XG5cbi51LWxpbmUtaGVpZ2h0LS1jb3B5IHtcbiAgbGluZS1oZWlnaHQ6IDEuNTsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMjByZW0pIHtcbiAgLnUtbGluZS1oZWlnaHQtLXNvbGlkXFxAeHNtYWxsIHtcbiAgICBsaW5lLWhlaWdodDogMTsgfVxuICAudS1saW5lLWhlaWdodC0tdGl0bGVcXEB4c21hbGwge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI1OyB9XG4gIC51LWxpbmUtaGVpZ2h0LS1jb3B5XFxAeHNtYWxsIHtcbiAgICBsaW5lLWhlaWdodDogMS41OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDMwcmVtKSB7XG4gIC51LWxpbmUtaGVpZ2h0LS1zb2xpZFxcQHNtYWxsIHtcbiAgICBsaW5lLWhlaWdodDogMTsgfVxuICAudS1saW5lLWhlaWdodC0tdGl0bGVcXEBzbWFsbCB7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjU7IH1cbiAgLnUtbGluZS1oZWlnaHQtLWNvcHlcXEBzbWFsbCB7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0OHJlbSkge1xuICAudS1saW5lLWhlaWdodC0tc29saWRcXEBtZWRpdW0ge1xuICAgIGxpbmUtaGVpZ2h0OiAxOyB9XG4gIC51LWxpbmUtaGVpZ2h0LS10aXRsZVxcQG1lZGl1bSB7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjU7IH1cbiAgLnUtbGluZS1oZWlnaHQtLWNvcHlcXEBtZWRpdW0ge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNjRyZW0pIHtcbiAgLnUtbGluZS1oZWlnaHQtLXNvbGlkXFxAbGFyZ2Uge1xuICAgIGxpbmUtaGVpZ2h0OiAxOyB9XG4gIC51LWxpbmUtaGVpZ2h0LS10aXRsZVxcQGxhcmdlIHtcbiAgICBsaW5lLWhlaWdodDogMS4yNTsgfVxuICAudS1saW5lLWhlaWdodC0tY29weVxcQGxhcmdlIHtcbiAgICBsaW5lLWhlaWdodDogMS41OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc4cmVtKSB7XG4gIC51LWxpbmUtaGVpZ2h0LS1zb2xpZFxcQHhsYXJnZSB7XG4gICAgbGluZS1oZWlnaHQ6IDE7IH1cbiAgLnUtbGluZS1oZWlnaHQtLXRpdGxlXFxAeGxhcmdlIHtcbiAgICBsaW5lLWhlaWdodDogMS4yNTsgfVxuICAudS1saW5lLWhlaWdodC0tY29weVxcQHhsYXJnZSB7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjVyZW0pIHtcbiAgLnUtbGluZS1oZWlnaHQtLXNvbGlkXFxAc3VwZXIge1xuICAgIGxpbmUtaGVpZ2h0OiAxOyB9XG4gIC51LWxpbmUtaGVpZ2h0LS10aXRsZVxcQHN1cGVyIHtcbiAgICBsaW5lLWhlaWdodDogMS4yNTsgfVxuICAudS1saW5lLWhlaWdodC0tY29weVxcQHN1cGVyIHtcbiAgICBsaW5lLWhlaWdodDogMS41OyB9IH1cblxuLypkb2Ncbi0tLVxudGl0bGU6IE9yZGVyXG5uYW1lOiBvcmRlclxuY2F0ZWdvcnk6IFV0aWxpdGllc1xuLS0tXG5cbkVsZW1lbnRzIGNhbiBiZSByZW9yZGVyZWQgaWYgdGhlaXIgcGFyZW50IGlzIGEgZmxleCBjb250YWluZXIsIHN1Y2ggYXMgYSBncmlkLiBUaGVyZSBhcmUgdGhyZWUgb3JkZXJpbmcgb3B0aW9ucywgYHUtb3JkZXItZmlyc3RgLCBgdS1vcmRlci1sYXN0YCwgYW5kIGB1LW9yZGVyLXVub3JkZXJlZGAgd2hpY2ggc2ltcGx5IHJldHVybnMgdGhlIG9yZGVyIHRvIHRoZSBkZWZhdWx0IHZhbHVlIG9mIDAuXG5cbmBgYGh0bWxfZXhhbXBsZVxuPGRpdiBjbGFzcz1cImwtZ3JpZCAgc2ctZ3JpZFwiPlxuXHQ8ZGl2IGNsYXNzPVwibC1ncmlkX19pdGVtICB1LW9yZGVyLWxhc3RcIj5maXJzdDwvZGl2PlxuXHQ8ZGl2IGNsYXNzPVwibC1ncmlkX19pdGVtXCI+c2Vjb25kPC9kaXY+XG5cdDxkaXYgY2xhc3M9XCJsLWdyaWRfX2l0ZW0gIHUtb3JkZXItZmlyc3RcIj50aGlyZDwvZGl2PlxuPC9kaXY+XG5gYGAgXG5cbiMjIyBNZWRpYSBRdWVyaWVzXG5cbkNsYXNzIHN1ZmZpeGVzIChgQHhzbWFsbGAsIGBAc21hbGxgLCBgQG1lZGl1bWAsIGBAbGFyZ2VgLCBgQHhsYXJnZWAsIGBAc3VwZXJgKSBjYW4gYmUgdXNlZCB0byBjaGFuZ2UgdGhlIG9yZGVyIGJhc2VkIG9uIHZpZXdwb3J0IHdpZHRoLlxuXG5gYGBodG1sX2V4YW1wbGVcbjxkaXYgY2xhc3M9XCJsLWdyaWQgIHNnLWdyaWRcIj5cblx0PGRpdiBjbGFzcz1cImwtZ3JpZF9faXRlbSAgdS1vcmRlci1sYXN0QGxhcmdlICB1LW9yZGVyLXVub3JkZXJkQG1lZGl1bSB1LW9yZGVyLWZpcnN0QHNtYWxsXCI+Zmlyc3Q8L2Rpdj5cblx0PGRpdiBjbGFzcz1cImwtZ3JpZF9faXRlbVwiPnNlY29uZDwvZGl2PlxuXHQ8ZGl2IGNsYXNzPVwibC1ncmlkX19pdGVtXCI+dGhpcmQ8L2Rpdj5cbjwvZGl2PlxuYGBgIFxuXG4qL1xuLnUtb3JkZXItZmlyc3Qge1xuICBvcmRlcjogLTE7IH1cblxuLnUtb3JkZXItbGFzdCB7XG4gIG9yZGVyOiAxOyB9XG5cbi51LW9yZGVyLXVub3JkZXJlZCB7XG4gIG9yZGVyOiAwOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAyMHJlbSkge1xuICAudS1vcmRlci1maXJzdFxcQHhzbWFsbCB7XG4gICAgb3JkZXI6IC0xOyB9XG4gIC51LW9yZGVyLWxhc3RcXEB4c21hbGwge1xuICAgIG9yZGVyOiAxOyB9XG4gIC51LW9yZGVyLXVub3JkZXJlZFxcQHhzbWFsbCB7XG4gICAgb3JkZXI6IDA7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMzByZW0pIHtcbiAgLnUtb3JkZXItZmlyc3RcXEBzbWFsbCB7XG4gICAgb3JkZXI6IC0xOyB9XG4gIC51LW9yZGVyLWxhc3RcXEBzbWFsbCB7XG4gICAgb3JkZXI6IDE7IH1cbiAgLnUtb3JkZXItdW5vcmRlcmVkXFxAc21hbGwge1xuICAgIG9yZGVyOiAwOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4cmVtKSB7XG4gIC51LW9yZGVyLWZpcnN0XFxAbWVkaXVtIHtcbiAgICBvcmRlcjogLTE7IH1cbiAgLnUtb3JkZXItbGFzdFxcQG1lZGl1bSB7XG4gICAgb3JkZXI6IDE7IH1cbiAgLnUtb3JkZXItdW5vcmRlcmVkXFxAbWVkaXVtIHtcbiAgICBvcmRlcjogMDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA2NHJlbSkge1xuICAudS1vcmRlci1maXJzdFxcQGxhcmdlIHtcbiAgICBvcmRlcjogLTE7IH1cbiAgLnUtb3JkZXItbGFzdFxcQGxhcmdlIHtcbiAgICBvcmRlcjogMTsgfVxuICAudS1vcmRlci11bm9yZGVyZWRcXEBsYXJnZSB7XG4gICAgb3JkZXI6IDA7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzhyZW0pIHtcbiAgLnUtb3JkZXItZmlyc3RcXEB4bGFyZ2Uge1xuICAgIG9yZGVyOiAtMTsgfVxuICAudS1vcmRlci1sYXN0XFxAeGxhcmdlIHtcbiAgICBvcmRlcjogMTsgfVxuICAudS1vcmRlci11bm9yZGVyZWRcXEB4bGFyZ2Uge1xuICAgIG9yZGVyOiAwOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyNXJlbSkge1xuICAudS1vcmRlci1maXJzdFxcQHN1cGVyIHtcbiAgICBvcmRlcjogLTE7IH1cbiAgLnUtb3JkZXItbGFzdFxcQHN1cGVyIHtcbiAgICBvcmRlcjogMTsgfVxuICAudS1vcmRlci11bm9yZGVyZWRcXEBzdXBlciB7XG4gICAgb3JkZXI6IDA7IH0gfVxuXG4udS1yZWxhdGl2ZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4udS1hYnNvbHV0ZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfVxuXG4udS1maXhlZCB7XG4gIHBvc2l0aW9uOiBmaXhlZDsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMjByZW0pIHtcbiAgLnUtcmVsYXRpdmVcXEB4c21hbGwge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAudS1hYnNvbHV0ZVxcQHhzbWFsbCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlOyB9XG4gIC51LWZpeGVkXFxAeHNtYWxsIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMzByZW0pIHtcbiAgLnUtcmVsYXRpdmVcXEBzbWFsbCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC51LWFic29sdXRlXFxAc21hbGwge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfVxuICAudS1maXhlZFxcQHNtYWxsIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDhyZW0pIHtcbiAgLnUtcmVsYXRpdmVcXEBtZWRpdW0ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAudS1hYnNvbHV0ZVxcQG1lZGl1bSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlOyB9XG4gIC51LWZpeGVkXFxAbWVkaXVtIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNjRyZW0pIHtcbiAgLnUtcmVsYXRpdmVcXEBsYXJnZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC51LWFic29sdXRlXFxAbGFyZ2Uge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfVxuICAudS1maXhlZFxcQGxhcmdlIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzhyZW0pIHtcbiAgLnUtcmVsYXRpdmVcXEB4bGFyZ2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAudS1hYnNvbHV0ZVxcQHhsYXJnZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlOyB9XG4gIC51LWZpeGVkXFxAeGxhcmdlIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTI1cmVtKSB7XG4gIC51LXJlbGF0aXZlXFxAc3VwZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAudS1hYnNvbHV0ZVxcQHN1cGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7IH1cbiAgLnUtZml4ZWRcXEBzdXBlciB7XG4gICAgcG9zaXRpb246IGZpeGVkOyB9IH1cblxuLypkb2Ncbi0tLVxudGl0bGU6IFJhdGlvc1xubmFtZTogcmF0aW9zXG5jYXRlZ29yeTogVXRpbGl0aWVzXG4tLS1cblxuUmF0aW8gY2xhc3NlcyBjYW4gYmUgdXNlZCB0byBjcmVhdGUgYm94ZXMgdGhhdCB3aWxsIHJldGFpbiB0aGVpciBhc3BlY3QgcmF0aW8gZXZlbiBpZiB0aGVpciB3aWR0aCBpcyBjb25zdHJhaW5lZC4gVGhlc2UgY2FuIGJlIHVzZWQgdG8gaW5zZXJ0IEthbHR1cmEgdmlkZW9zIGFuZCBwbGF5bGlzdHMgd2l0aCB2YXJpb3VzIGNvbmZpZ3VyYXRpb25zLlxuXG5gdS1yYXRpby0tMTZ4OWAgaXMgdGhlIHJhdGlvIGNvbW1vbmx5IHVzZWQgZm9yIHNpbmdsZSB2aWRlb3MuXG5cbmB1LXJhdGlvLS0yeDFgIGlzIHRoZSByYXRpbyBjb21tb25seSB1c2VkIGZvciBob3Jpem9udGFsIHZpZGVvIHBsYXlsaXN0cy5cblxuYGBgaHRtbF9leGFtcGxlX3RhYmxlXG48ZGl2IGNsYXNzPVwidS1yYXRpbyAgdS1yYXRpby0tM3gxICB1LXNwYWNlLWJvdHRvbS0tbGFyZ2VcIj5cblx0PGRpdiBjbGFzcz1cInUtcmF0aW9fX2NvbnRlbnRcIiBzdHlsZT1cImJhY2tncm91bmQ6cmdiYSgwLDAsMCwwLjEpXCI+XG5cdFx0PHA+M3gxPC9wPlxuXHQ8L2Rpdj5cbjwvZGl2PlxuXG48ZGl2IGNsYXNzPVwidS1yYXRpbyAgdS1yYXRpby0tMjF4OSAgdS1zcGFjZS1ib3R0b20tLWxhcmdlXCI+XG5cdDxkaXYgY2xhc3M9XCJ1LXJhdGlvX19jb250ZW50XCIgc3R5bGU9XCJiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC4xKVwiPlxuXHRcdDxwPjIxeDk8L3A+XG5cdDwvZGl2PlxuPC9kaXY+XG5cbjxkaXYgY2xhc3M9XCJ1LXJhdGlvICB1LXJhdGlvLS0yeDEgIHUtc3BhY2UtYm90dG9tLS1sYXJnZVwiPlxuXHQ8ZGl2IGNsYXNzPVwidS1yYXRpb19fY29udGVudFwiIHN0eWxlPVwiYmFja2dyb3VuZDpyZ2JhKDAsMCwwLDAuMSlcIj5cblx0XHQ8cD4yeDE8L3A+XG5cdDwvZGl2PlxuPC9kaXY+XG5cbjxkaXYgY2xhc3M9XCJ1LXJhdGlvICB1LXJhdGlvLS0xNng5ICB1LXNwYWNlLWJvdHRvbS0tbGFyZ2VcIj5cblx0PGRpdiBjbGFzcz1cInUtcmF0aW9fX2NvbnRlbnRcIiBzdHlsZT1cImJhY2tncm91bmQ6cmdiYSgwLDAsMCwwLjEpXCI+XG5cdFx0PHA+MTZ4OTwvcD5cblx0PC9kaXY+XG48L2Rpdj5cblxuPGRpdiBjbGFzcz1cInUtcmF0aW8gIHUtcmF0aW8tLTN4MiAgdS1zcGFjZS1ib3R0b20tLWxhcmdlXCI+XG5cdDxkaXYgY2xhc3M9XCJ1LXJhdGlvX19jb250ZW50XCIgc3R5bGU9XCJiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC4xKVwiPlxuXHRcdDxwPjN4MjwvcD5cblx0PC9kaXY+XG48L2Rpdj5cblxuPGRpdiBjbGFzcz1cInUtcmF0aW8gIHUtcmF0aW8tLTR4MyAgdS1zcGFjZS1ib3R0b20tLWxhcmdlXCI+XG5cdDxkaXYgY2xhc3M9XCJ1LXJhdGlvX19jb250ZW50XCIgc3R5bGU9XCJiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC4xKVwiPlxuXHRcdDxwPjR4MzwvcD5cblx0PC9kaXY+XG48L2Rpdj5cblxuPGRpdiBjbGFzcz1cInUtcmF0aW8gIHUtcmF0aW8tLTF4MSAgdS1zcGFjZS1ib3R0b20tLWxhcmdlXCI+XG5cdDxkaXYgY2xhc3M9XCJ1LXJhdGlvX19jb250ZW50XCIgc3R5bGU9XCJiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC4xKVwiPlxuXHRcdDxwPjF4MTwvcD5cblx0PC9kaXY+XG48L2Rpdj5cblxuPGRpdiBjbGFzcz1cInUtcmF0aW8gIHUtcmF0aW8tLTN4NCAgdS1zcGFjZS1ib3R0b20tLWxhcmdlXCI+XG5cdDxkaXYgY2xhc3M9XCJ1LXJhdGlvX19jb250ZW50XCIgc3R5bGU9XCJiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC4xKVwiPlxuXHRcdDxwPjN4NDwvcD5cblx0PC9kaXY+XG48L2Rpdj5cblxuPGRpdiBjbGFzcz1cInUtcmF0aW8gIHUtcmF0aW8tLTJ4MyAgdS1zcGFjZS1ib3R0b20tLWxhcmdlXCI+XG5cdDxkaXYgY2xhc3M9XCJ1LXJhdGlvX19jb250ZW50XCIgc3R5bGU9XCJiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC4xKVwiPlxuXHRcdDxwPjJ4MzwvcD5cblx0PC9kaXY+XG48L2Rpdj5cblxuPGRpdiBjbGFzcz1cInUtcmF0aW8gIHUtcmF0aW8tLTl4MTYgIHUtc3BhY2UtYm90dG9tLS1sYXJnZVwiPlxuXHQ8ZGl2IGNsYXNzPVwidS1yYXRpb19fY29udGVudFwiIHN0eWxlPVwiYmFja2dyb3VuZDpyZ2JhKDAsMCwwLDAuMSlcIj5cblx0XHQ8cD45eDE2PC9wPlxuXHQ8L2Rpdj5cbjwvZGl2PlxuXG48ZGl2IGNsYXNzPVwidS1yYXRpbyAgdS1yYXRpby0tMXgyICB1LXNwYWNlLWJvdHRvbS0tbGFyZ2VcIj5cblx0PGRpdiBjbGFzcz1cInUtcmF0aW9fX2NvbnRlbnRcIiBzdHlsZT1cImJhY2tncm91bmQ6cmdiYSgwLDAsMCwwLjEpXCI+XG5cdFx0PHA+MXgyPC9wPlxuXHQ8L2Rpdj5cbjwvZGl2PlxuXG48ZGl2IGNsYXNzPVwidS1yYXRpbyAgdS1yYXRpby0tMXgzICB1LXNwYWNlLWJvdHRvbS0tbGFyZ2VcIj5cblx0PGRpdiBjbGFzcz1cInUtcmF0aW9fX2NvbnRlbnRcIiBzdHlsZT1cImJhY2tncm91bmQ6cmdiYSgwLDAsMCwwLjEpXCI+XG5cdFx0PHA+MXgzPC9wPlxuXHQ8L2Rpdj5cbjwvZGl2PlxuYGBgXG5cbiMjIyBNZWRpYSBRdWVyaWVzXG5cbkNsYXNzIHN1ZmZpeGVzIChgQHhzbWFsbGAsIGBAc21hbGxgLCBgQG1lZGl1bWAsIGBAbGFyZ2VgLCBgQHhsYXJnZWAsIGBAc3VwZXJgKSBjYW4gYmUgdXNlZCB0byBjaGFuZ2UgcmF0aW9zIGJhc2VkIG9uIHZpZXdwb3J0IHdpZHRoLlxuXG5gYGBodG1sX2V4YW1wbGVfdGFibGVcbjxkaXYgY2xhc3M9XCJ1LXJhdGlvICB1LXJhdGlvLS0xeDFAeHNtYWxsICB1LXJhdGlvLS0yeDFAc21hbGwgIHUtcmF0aW8tLTN4MUBsYXJnZSAgdS1zcGFjZS1ib3R0b20tLWxhcmdlXCI+XG5cdDxkaXYgY2xhc3M9XCJ1LXJhdGlvX19jb250ZW50XCIgc3R5bGU9XCJiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC4xKVwiPlxuXHRcdDxwPlRoaXMgYm94IHdpbGwgY2hhbmdlIGFzcGVjdCByYXRpbyBkZXBlbmRpbmcgb24gdGhlIHZpZXdwb3J0IHdpZHRoLjwvcD5cblx0PC9kaXY+XG48L2Rpdj5cbmBgYFxuXG4qL1xuLnUtcmF0aW8ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLnUtcmF0aW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi51LXJhdGlvLS0zeDE6YmVmb3JlIHtcbiAgcGFkZGluZy10b3A6IDMzLjMzJTsgfVxuXG4udS1yYXRpby0tMjF4OTpiZWZvcmUge1xuICBwYWRkaW5nLXRvcDogNDIuODU3JTsgfVxuXG4udS1yYXRpby0tMngxOmJlZm9yZSB7XG4gIHBhZGRpbmctdG9wOiA1MCU7IH1cblxuLnUtcmF0aW8tLTE2eDk6YmVmb3JlIHtcbiAgcGFkZGluZy10b3A6IDU2LjI1JTsgfVxuXG4udS1yYXRpby0tM3gyOmJlZm9yZSB7XG4gIHBhZGRpbmctdG9wOiA2Ni42NiU7IH1cblxuLnUtcmF0aW8tLTR4MzpiZWZvcmUge1xuICBwYWRkaW5nLXRvcDogNzUlOyB9XG5cbi51LXJhdGlvLS0xeDE6YmVmb3JlIHtcbiAgcGFkZGluZy10b3A6IDEwMCU7IH1cblxuLnUtcmF0aW8tLTN4NDpiZWZvcmUge1xuICBwYWRkaW5nLXRvcDogMTMzLjMzJTsgfVxuXG4udS1yYXRpby0tMngzOmJlZm9yZSB7XG4gIHBhZGRpbmctdG9wOiAxNTAlOyB9XG5cbi51LXJhdGlvLS05eDE2OmJlZm9yZSB7XG4gIHBhZGRpbmctdG9wOiAxNzcuNzclOyB9XG5cbi51LXJhdGlvLS0xeDI6YmVmb3JlIHtcbiAgcGFkZGluZy10b3A6IDIwMCU7IH1cblxuLnUtcmF0aW8tLTF4MzpiZWZvcmUge1xuICBwYWRkaW5nLXRvcDogMzAwJTsgfVxuXG4udS1yYXRpb19fY29udGVudCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAyMHJlbSkge1xuICAudS1yYXRpb1xcQHhzbWFsbCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC51LXJhdGlvXFxAeHNtYWxsOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTsgfVxuICAudS1yYXRpby0tM3gxXFxAeHNtYWxsOmJlZm9yZSB7XG4gICAgcGFkZGluZy10b3A6IDMzLjMzJTsgfVxuICAudS1yYXRpby0tMjF4OVxcQHhzbWFsbDpiZWZvcmUge1xuICAgIHBhZGRpbmctdG9wOiA0Mi44NTclOyB9XG4gIC51LXJhdGlvLS0yeDFcXEB4c21hbGw6YmVmb3JlIHtcbiAgICBwYWRkaW5nLXRvcDogNTAlOyB9XG4gIC51LXJhdGlvLS0xNng5XFxAeHNtYWxsOmJlZm9yZSB7XG4gICAgcGFkZGluZy10b3A6IDU2LjI1JTsgfVxuICAudS1yYXRpby0tM3gyXFxAeHNtYWxsOmJlZm9yZSB7XG4gICAgcGFkZGluZy10b3A6IDY2LjY2JTsgfVxuICAudS1yYXRpby0tNHgzXFxAeHNtYWxsOmJlZm9yZSB7XG4gICAgcGFkZGluZy10b3A6IDc1JTsgfVxuICAudS1yYXRpby0tMXgxXFxAeHNtYWxsOmJlZm9yZSB7XG4gICAgcGFkZGluZy10b3A6IDEwMCU7IH1cbiAgLnUtcmF0aW8tLTN4NFxcQHhzbWFsbDpiZWZvcmUge1xuICAgIHBhZGRpbmctdG9wOiAxMzMuMzMlOyB9XG4gIC51LXJhdGlvLS0yeDNcXEB4c21hbGw6YmVmb3JlIHtcbiAgICBwYWRkaW5nLXRvcDogMTUwJTsgfVxuICAudS1yYXRpby0tOXgxNlxcQHhzbWFsbDpiZWZvcmUge1xuICAgIHBhZGRpbmctdG9wOiAxNzcuNzclOyB9XG4gIC51LXJhdGlvLS0xeDJcXEB4c21hbGw6YmVmb3JlIHtcbiAgICBwYWRkaW5nLXRvcDogMjAwJTsgfVxuICAudS1yYXRpby0tMXgzXFxAeHNtYWxsOmJlZm9yZSB7XG4gICAgcGFkZGluZy10b3A6IDMwMCU7IH1cbiAgLnUtcmF0aW9fX2NvbnRlbnRcXEB4c21hbGwge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMzByZW0pIHtcbiAgLnUtcmF0aW9cXEBzbWFsbCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC51LXJhdGlvXFxAc21hbGw6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC51LXJhdGlvLS0zeDFcXEBzbWFsbDpiZWZvcmUge1xuICAgIHBhZGRpbmctdG9wOiAzMy4zMyU7IH1cbiAgLnUtcmF0aW8tLTIxeDlcXEBzbWFsbDpiZWZvcmUge1xuICAgIHBhZGRpbmctdG9wOiA0Mi44NTclOyB9XG4gIC51LXJhdGlvLS0yeDFcXEBzbWFsbDpiZWZvcmUge1xuICAgIHBhZGRpbmctdG9wOiA1MCU7IH1cbiAgLnUtcmF0aW8tLTE2eDlcXEBzbWFsbDpiZWZvcmUge1xuICAgIHBhZGRpbmctdG9wOiA1Ni4yNSU7IH1cbiAgLnUtcmF0aW8tLTN4MlxcQHNtYWxsOmJlZm9yZSB7XG4gICAgcGFkZGluZy10b3A6IDY2LjY2JTsgfVxuICAudS1yYXRpby0tNHgzXFxAc21hbGw6YmVmb3JlIHtcbiAgICBwYWRkaW5nLXRvcDogNzUlOyB9XG4gIC51LXJhdGlvLS0xeDFcXEBzbWFsbDpiZWZvcmUge1xuICAgIHBhZGRpbmctdG9wOiAxMDAlOyB9XG4gIC51LXJhdGlvLS0zeDRcXEBzbWFsbDpiZWZvcmUge1xuICAgIHBhZGRpbmctdG9wOiAxMzMuMzMlOyB9XG4gIC51LXJhdGlvLS0yeDNcXEBzbWFsbDpiZWZvcmUge1xuICAgIHBhZGRpbmctdG9wOiAxNTAlOyB9XG4gIC51LXJhdGlvLS05eDE2XFxAc21hbGw6YmVmb3JlIHtcbiAgICBwYWRkaW5nLXRvcDogMTc3Ljc3JTsgfVxuICAudS1yYXRpby0tMXgyXFxAc21hbGw6YmVmb3JlIHtcbiAgICBwYWRkaW5nLXRvcDogMjAwJTsgfVxuICAudS1yYXRpby0tMXgzXFxAc21hbGw6YmVmb3JlIHtcbiAgICBwYWRkaW5nLXRvcDogMzAwJTsgfVxuICAudS1yYXRpb19fY29udGVudFxcQHNtYWxsIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4cmVtKSB7XG4gIC51LXJhdGlvXFxAbWVkaXVtIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLnUtcmF0aW9cXEBtZWRpdW06YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC51LXJhdGlvLS0zeDFcXEBtZWRpdW06YmVmb3JlIHtcbiAgICBwYWRkaW5nLXRvcDogMzMuMzMlOyB9XG4gIC51LXJhdGlvLS0yMXg5XFxAbWVkaXVtOmJlZm9yZSB7XG4gICAgcGFkZGluZy10b3A6IDQyLjg1NyU7IH1cbiAgLnUtcmF0aW8tLTJ4MVxcQG1lZGl1bTpiZWZvcmUge1xuICAgIHBhZGRpbmctdG9wOiA1MCU7IH1cbiAgLnUtcmF0aW8tLTE2eDlcXEBtZWRpdW06YmVmb3JlIHtcbiAgICBwYWRkaW5nLXRvcDogNTYuMjUlOyB9XG4gIC51LXJhdGlvLS0zeDJcXEBtZWRpdW06YmVmb3JlIHtcbiAgICBwYWRkaW5nLXRvcDogNjYuNjYlOyB9XG4gIC51LXJhdGlvLS00eDNcXEBtZWRpdW06YmVmb3JlIHtcbiAgICBwYWRkaW5nLXRvcDogNzUlOyB9XG4gIC51LXJhdGlvLS0xeDFcXEBtZWRpdW06YmVmb3JlIHtcbiAgICBwYWRkaW5nLXRvcDogMTAwJTsgfVxuICAudS1yYXRpby0tM3g0XFxAbWVkaXVtOmJlZm9yZSB7XG4gICAgcGFkZGluZy10b3A6IDEzMy4zMyU7IH1cbiAgLnUtcmF0aW8tLTJ4M1xcQG1lZGl1bTpiZWZvcmUge1xuICAgIHBhZGRpbmctdG9wOiAxNTAlOyB9XG4gIC51LXJhdGlvLS05eDE2XFxAbWVkaXVtOmJlZm9yZSB7XG4gICAgcGFkZGluZy10b3A6IDE3Ny43NyU7IH1cbiAgLnUtcmF0aW8tLTF4MlxcQG1lZGl1bTpiZWZvcmUge1xuICAgIHBhZGRpbmctdG9wOiAyMDAlOyB9XG4gIC51LXJhdGlvLS0xeDNcXEBtZWRpdW06YmVmb3JlIHtcbiAgICBwYWRkaW5nLXRvcDogMzAwJTsgfVxuICAudS1yYXRpb19fY29udGVudFxcQG1lZGl1bSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA2NHJlbSkge1xuICAudS1yYXRpb1xcQGxhcmdlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLnUtcmF0aW9cXEBsYXJnZTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLnUtcmF0aW8tLTN4MVxcQGxhcmdlOmJlZm9yZSB7XG4gICAgcGFkZGluZy10b3A6IDMzLjMzJTsgfVxuICAudS1yYXRpby0tMjF4OVxcQGxhcmdlOmJlZm9yZSB7XG4gICAgcGFkZGluZy10b3A6IDQyLjg1NyU7IH1cbiAgLnUtcmF0aW8tLTJ4MVxcQGxhcmdlOmJlZm9yZSB7XG4gICAgcGFkZGluZy10b3A6IDUwJTsgfVxuICAudS1yYXRpby0tMTZ4OVxcQGxhcmdlOmJlZm9yZSB7XG4gICAgcGFkZGluZy10b3A6IDU2LjI1JTsgfVxuICAudS1yYXRpby0tM3gyXFxAbGFyZ2U6YmVmb3JlIHtcbiAgICBwYWRkaW5nLXRvcDogNjYuNjYlOyB9XG4gIC51LXJhdGlvLS00eDNcXEBsYXJnZTpiZWZvcmUge1xuICAgIHBhZGRpbmctdG9wOiA3NSU7IH1cbiAgLnUtcmF0aW8tLTF4MVxcQGxhcmdlOmJlZm9yZSB7XG4gICAgcGFkZGluZy10b3A6IDEwMCU7IH1cbiAgLnUtcmF0aW8tLTN4NFxcQGxhcmdlOmJlZm9yZSB7XG4gICAgcGFkZGluZy10b3A6IDEzMy4zMyU7IH1cbiAgLnUtcmF0aW8tLTJ4M1xcQGxhcmdlOmJlZm9yZSB7XG4gICAgcGFkZGluZy10b3A6IDE1MCU7IH1cbiAgLnUtcmF0aW8tLTl4MTZcXEBsYXJnZTpiZWZvcmUge1xuICAgIHBhZGRpbmctdG9wOiAxNzcuNzclOyB9XG4gIC51LXJhdGlvLS0xeDJcXEBsYXJnZTpiZWZvcmUge1xuICAgIHBhZGRpbmctdG9wOiAyMDAlOyB9XG4gIC51LXJhdGlvLS0xeDNcXEBsYXJnZTpiZWZvcmUge1xuICAgIHBhZGRpbmctdG9wOiAzMDAlOyB9XG4gIC51LXJhdGlvX19jb250ZW50XFxAbGFyZ2Uge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzhyZW0pIHtcbiAgLnUtcmF0aW9cXEB4bGFyZ2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAudS1yYXRpb1xcQHhsYXJnZTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLnUtcmF0aW8tLTN4MVxcQHhsYXJnZTpiZWZvcmUge1xuICAgIHBhZGRpbmctdG9wOiAzMy4zMyU7IH1cbiAgLnUtcmF0aW8tLTIxeDlcXEB4bGFyZ2U6YmVmb3JlIHtcbiAgICBwYWRkaW5nLXRvcDogNDIuODU3JTsgfVxuICAudS1yYXRpby0tMngxXFxAeGxhcmdlOmJlZm9yZSB7XG4gICAgcGFkZGluZy10b3A6IDUwJTsgfVxuICAudS1yYXRpby0tMTZ4OVxcQHhsYXJnZTpiZWZvcmUge1xuICAgIHBhZGRpbmctdG9wOiA1Ni4yNSU7IH1cbiAgLnUtcmF0aW8tLTN4MlxcQHhsYXJnZTpiZWZvcmUge1xuICAgIHBhZGRpbmctdG9wOiA2Ni42NiU7IH1cbiAgLnUtcmF0aW8tLTR4M1xcQHhsYXJnZTpiZWZvcmUge1xuICAgIHBhZGRpbmctdG9wOiA3NSU7IH1cbiAgLnUtcmF0aW8tLTF4MVxcQHhsYXJnZTpiZWZvcmUge1xuICAgIHBhZGRpbmctdG9wOiAxMDAlOyB9XG4gIC51LXJhdGlvLS0zeDRcXEB4bGFyZ2U6YmVmb3JlIHtcbiAgICBwYWRkaW5nLXRvcDogMTMzLjMzJTsgfVxuICAudS1yYXRpby0tMngzXFxAeGxhcmdlOmJlZm9yZSB7XG4gICAgcGFkZGluZy10b3A6IDE1MCU7IH1cbiAgLnUtcmF0aW8tLTl4MTZcXEB4bGFyZ2U6YmVmb3JlIHtcbiAgICBwYWRkaW5nLXRvcDogMTc3Ljc3JTsgfVxuICAudS1yYXRpby0tMXgyXFxAeGxhcmdlOmJlZm9yZSB7XG4gICAgcGFkZGluZy10b3A6IDIwMCU7IH1cbiAgLnUtcmF0aW8tLTF4M1xcQHhsYXJnZTpiZWZvcmUge1xuICAgIHBhZGRpbmctdG9wOiAzMDAlOyB9XG4gIC51LXJhdGlvX19jb250ZW50XFxAeGxhcmdlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyNXJlbSkge1xuICAudS1yYXRpb1xcQHN1cGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLnUtcmF0aW9cXEBzdXBlcjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLnUtcmF0aW8tLTN4MVxcQHN1cGVyOmJlZm9yZSB7XG4gICAgcGFkZGluZy10b3A6IDMzLjMzJTsgfVxuICAudS1yYXRpby0tMjF4OVxcQHN1cGVyOmJlZm9yZSB7XG4gICAgcGFkZGluZy10b3A6IDQyLjg1NyU7IH1cbiAgLnUtcmF0aW8tLTJ4MVxcQHN1cGVyOmJlZm9yZSB7XG4gICAgcGFkZGluZy10b3A6IDUwJTsgfVxuICAudS1yYXRpby0tMTZ4OVxcQHN1cGVyOmJlZm9yZSB7XG4gICAgcGFkZGluZy10b3A6IDU2LjI1JTsgfVxuICAudS1yYXRpby0tM3gyXFxAc3VwZXI6YmVmb3JlIHtcbiAgICBwYWRkaW5nLXRvcDogNjYuNjYlOyB9XG4gIC51LXJhdGlvLS00eDNcXEBzdXBlcjpiZWZvcmUge1xuICAgIHBhZGRpbmctdG9wOiA3NSU7IH1cbiAgLnUtcmF0aW8tLTF4MVxcQHN1cGVyOmJlZm9yZSB7XG4gICAgcGFkZGluZy10b3A6IDEwMCU7IH1cbiAgLnUtcmF0aW8tLTN4NFxcQHN1cGVyOmJlZm9yZSB7XG4gICAgcGFkZGluZy10b3A6IDEzMy4zMyU7IH1cbiAgLnUtcmF0aW8tLTJ4M1xcQHN1cGVyOmJlZm9yZSB7XG4gICAgcGFkZGluZy10b3A6IDE1MCU7IH1cbiAgLnUtcmF0aW8tLTl4MTZcXEBzdXBlcjpiZWZvcmUge1xuICAgIHBhZGRpbmctdG9wOiAxNzcuNzclOyB9XG4gIC51LXJhdGlvLS0xeDJcXEBzdXBlcjpiZWZvcmUge1xuICAgIHBhZGRpbmctdG9wOiAyMDAlOyB9XG4gIC51LXJhdGlvLS0xeDNcXEBzdXBlcjpiZWZvcmUge1xuICAgIHBhZGRpbmctdG9wOiAzMDAlOyB9XG4gIC51LXJhdGlvX19jb250ZW50XFxAc3VwZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7IH0gfVxuXG4vKmRvY1xuLS0tXG50aXRsZTogU2l6ZXNcbm5hbWU6IHNpemVzXG5jYXRlZ29yeTogVXRpbGl0aWVzXG4tLS1cblxuU2l6ZSB1dGlsaXRpZXMgY2FuIHF1aWNrbHkgYW5kIGVhc2lseSBjaGFuZ2UgdGV4dCBzaXplcy5cblxuYGBgaHRtbF9leGFtcGxlX3RhYmxlXG48cCBjbGFzcz1cInUteHNtYWxsXCI+eHNtYWxsPC9wPlxuXG48cCBjbGFzcz1cInUtc21hbGxcIj5zbWFsbDwvcD5cblxuPHAgY2xhc3M9XCJ1LW1lZGl1bVwiPm1lZGl1bTwvcD5cblxuPHAgY2xhc3M9XCJ1LWxhcmdlXCI+bGFyZ2U8L3A+XG5cbjxwIGNsYXNzPVwidS14bGFyZ2VcIj54bGFyZ2U8L3A+XG5cbjxwIGNsYXNzPVwidS1zdXBlclwiPnN1cGVyPC9wPlxuYGBgXG5cbiMjIyBNZWRpYSBRdWVyaWVzXG5cbkNsYXNzIHN1ZmZpeGVzIChgQHhzbWFsbGAsIGBAc21hbGxgLCBgQG1lZGl1bWAsIGBAbGFyZ2VgLCBgQHhsYXJnZWAsIGBAc3VwZXJgKSBjYW4gYmUgdXNlZCB0byBjaGFuZ2UgdGV4dCBzaXplIGJhc2VkIG9uIHZpZXdwb3J0IHdpZHRoLlxuXG5gYGBodG1sX2V4YW1wbGVfdGFibGVcbjxwIGNsYXNzPVwidS1zbWFsbCAgdS1sYXJnZUBzbWFsbCAgdS1zdXBlckBsYXJnZVwiPlRoaXMgdGV4dCB3aWxsIGNoYW5nZSBzaXplIGRlcGVuZGluZyBvbiB0aGUgdmlld3BvcnQgd2lkdGguPC9wPlxuYGBgXG5cbiovXG4udS1zdXBlciB7XG4gIGZvbnQtc2l6ZTogMmVtOyB9XG5cbi51LXhsYXJnZSB7XG4gIGZvbnQtc2l6ZTogMS41ZW07IH1cblxuLnUtbGFyZ2Uge1xuICBmb250LXNpemU6IDEuMjVlbTsgfVxuXG4udS1tZWRpdW0ge1xuICBmb250LXNpemU6IDFlbTsgfVxuXG4udS1zbWFsbCB7XG4gIGZvbnQtc2l6ZTogMC44NzVlbTsgfVxuXG4udS14c21hbGwge1xuICBmb250LXNpemU6IDAuNzVlbTsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMjByZW0pIHtcbiAgLnUtc3VwZXJcXEB4c21hbGwge1xuICAgIGZvbnQtc2l6ZTogMmVtOyB9XG4gIC51LXhsYXJnZVxcQHhzbWFsbCB7XG4gICAgZm9udC1zaXplOiAxLjVlbTsgfVxuICAudS1sYXJnZVxcQHhzbWFsbCB7XG4gICAgZm9udC1zaXplOiAxLjI1ZW07IH1cbiAgLnUtbWVkaXVtXFxAeHNtYWxsIHtcbiAgICBmb250LXNpemU6IDFlbTsgfVxuICAudS1zbWFsbFxcQHhzbWFsbCB7XG4gICAgZm9udC1zaXplOiAwLjg3NWVtOyB9XG4gIC51LXhzbWFsbFxcQHhzbWFsbCB7XG4gICAgZm9udC1zaXplOiAwLjc1ZW07IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMzByZW0pIHtcbiAgLnUtc3VwZXJcXEBzbWFsbCB7XG4gICAgZm9udC1zaXplOiAyZW07IH1cbiAgLnUteGxhcmdlXFxAc21hbGwge1xuICAgIGZvbnQtc2l6ZTogMS41ZW07IH1cbiAgLnUtbGFyZ2VcXEBzbWFsbCB7XG4gICAgZm9udC1zaXplOiAxLjI1ZW07IH1cbiAgLnUtbWVkaXVtXFxAc21hbGwge1xuICAgIGZvbnQtc2l6ZTogMWVtOyB9XG4gIC51LXNtYWxsXFxAc21hbGwge1xuICAgIGZvbnQtc2l6ZTogMC44NzVlbTsgfVxuICAudS14c21hbGxcXEBzbWFsbCB7XG4gICAgZm9udC1zaXplOiAwLjc1ZW07IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDhyZW0pIHtcbiAgLnUtc3VwZXJcXEBtZWRpdW0ge1xuICAgIGZvbnQtc2l6ZTogMmVtOyB9XG4gIC51LXhsYXJnZVxcQG1lZGl1bSB7XG4gICAgZm9udC1zaXplOiAxLjVlbTsgfVxuICAudS1sYXJnZVxcQG1lZGl1bSB7XG4gICAgZm9udC1zaXplOiAxLjI1ZW07IH1cbiAgLnUtbWVkaXVtXFxAbWVkaXVtIHtcbiAgICBmb250LXNpemU6IDFlbTsgfVxuICAudS1zbWFsbFxcQG1lZGl1bSB7XG4gICAgZm9udC1zaXplOiAwLjg3NWVtOyB9XG4gIC51LXhzbWFsbFxcQG1lZGl1bSB7XG4gICAgZm9udC1zaXplOiAwLjc1ZW07IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNjRyZW0pIHtcbiAgLnUtc3VwZXJcXEBsYXJnZSB7XG4gICAgZm9udC1zaXplOiAyZW07IH1cbiAgLnUteGxhcmdlXFxAbGFyZ2Uge1xuICAgIGZvbnQtc2l6ZTogMS41ZW07IH1cbiAgLnUtbGFyZ2VcXEBsYXJnZSB7XG4gICAgZm9udC1zaXplOiAxLjI1ZW07IH1cbiAgLnUtbWVkaXVtXFxAbGFyZ2Uge1xuICAgIGZvbnQtc2l6ZTogMWVtOyB9XG4gIC51LXNtYWxsXFxAbGFyZ2Uge1xuICAgIGZvbnQtc2l6ZTogMC44NzVlbTsgfVxuICAudS14c21hbGxcXEBsYXJnZSB7XG4gICAgZm9udC1zaXplOiAwLjc1ZW07IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzhyZW0pIHtcbiAgLnUtc3VwZXJcXEB4bGFyZ2Uge1xuICAgIGZvbnQtc2l6ZTogMmVtOyB9XG4gIC51LXhsYXJnZVxcQHhsYXJnZSB7XG4gICAgZm9udC1zaXplOiAxLjVlbTsgfVxuICAudS1sYXJnZVxcQHhsYXJnZSB7XG4gICAgZm9udC1zaXplOiAxLjI1ZW07IH1cbiAgLnUtbWVkaXVtXFxAeGxhcmdlIHtcbiAgICBmb250LXNpemU6IDFlbTsgfVxuICAudS1zbWFsbFxcQHhsYXJnZSB7XG4gICAgZm9udC1zaXplOiAwLjg3NWVtOyB9XG4gIC51LXhzbWFsbFxcQHhsYXJnZSB7XG4gICAgZm9udC1zaXplOiAwLjc1ZW07IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTI1cmVtKSB7XG4gIC51LXN1cGVyXFxAc3VwZXIge1xuICAgIGZvbnQtc2l6ZTogMmVtOyB9XG4gIC51LXhsYXJnZVxcQHN1cGVyIHtcbiAgICBmb250LXNpemU6IDEuNWVtOyB9XG4gIC51LWxhcmdlXFxAc3VwZXIge1xuICAgIGZvbnQtc2l6ZTogMS4yNWVtOyB9XG4gIC51LW1lZGl1bVxcQHN1cGVyIHtcbiAgICBmb250LXNpemU6IDFlbTsgfVxuICAudS1zbWFsbFxcQHN1cGVyIHtcbiAgICBmb250LXNpemU6IDAuODc1ZW07IH1cbiAgLnUteHNtYWxsXFxAc3VwZXIge1xuICAgIGZvbnQtc2l6ZTogMC43NWVtOyB9IH1cblxuLypkb2Ncbi0tLVxudGl0bGU6IFNwYWNpbmdcbm5hbWU6IHNwYWNpbmdcbmNhdGVnb3J5OiBVdGlsaXRpZXNcbi0tLVxuXG5TcGFjaW5nIGFyb3VuZCBhbiBlbGVtZW50IGNhbiBiZSBhZGRlZCBvciByZW1vdmVkIHdpdGggdGhlc2Ugc3BhY2luZyB1dGlsaXR5IGNsYXNzZXMuXG5cbiMjIyBSZW1vdmUgU3BhY2luZ1xuXG5UaGUgYC51LW5vLXNwYWNlYCBjbGFzcyBjYW4gYmUgdXNlZCB0byByZW1vdmUgbWFyZ2luIGFuZCBwYWRkaW5nIGZyb20gYW4gZWxlbWVudC5cblxuYGBgaHRtbF9leGFtcGxlX3RhYmxlXG48cCBjbGFzcz1cInUtbm8tc3BhY2VcIj5ObyBzcGFjZSBhcm91bmQgbWUuPC9wPlxuYGBgXG5cbiMjIyBBZGQgU3BhY2luZ1xuXG5TcGFjaW5nIGNhbiBiZSBhZGRlZCB1c2luZyBgeHNtYWxsYCwgYHNtYWxsYCwgYG1lZGl1bWAsIGBsYXJnZWAsIGB4bGFyZ2VgLCBhbmQgYHN1cGVyYCBtb2RpZmllcnMuXG5cbmBgYGh0bWxfZXhhbXBsZV90YWJsZVxuPHAgY2xhc3M9XCJ1LXNwYWNlLS1sYXJnZVwiPlRoaXMgcGFyYWdyYXBoIGhhcyBzcGFjZSBvbiBhbGwgc2lkZXMuPC9wPlxuYGBgXG5cblNwYWNpbmcgY2FuIGFsc28gYmUgYWRkZWQgdG8gb25lIHNpZGUgd2l0aCB0aGUgZm9sbG93aW5nIGNsYXNzIG5hbWVzLlxuXG5gYGBodG1sX2V4YW1wbGVfdGFibGVcbjxwIGNsYXNzPVwidS1zcGFjZS10b3AtLXhsYXJnZVwiPlRoaXMgcGFyYWdyYXBoIGhhcyBzcGFjZSBvbiB0b3AuPC9wPlxuXG48cCBjbGFzcz1cInUtc3BhY2UtcmlnaHQtLXhsYXJnZVwiPlRoaXMgcGFyYWdyYXBoIGhhcyBzcGFjZSB0byB0aGUgcmlnaHQuPC9wPlxuXG48cCBjbGFzcz1cInUtc3BhY2UtYm90dG9tLS14bGFyZ2VcIj5UaGlzIHBhcmFncmFwaCBoYXMgc3BhY2Ugb24gdGhlIGJvdHRvbS48L3A+XG5cbjxwIGNsYXNzPVwidS1zcGFjZS1sZWZ0LS14bGFyZ2VcIj5UaGlzIHBhcmFncmFwaCBoYXMgc3BhY2UgdG8gdGhlIGxlZnQuPC9wPlxuYGBgXG5cbiMjIyBBZGQgUGFkZGluZ1xuXG5QYWRkaW5nIGNhbiBiZSBhZGRlZCB1c2luZyBgeHNtYWxsYCwgYHNtYWxsYCwgYG1lZGl1bWAsIGBsYXJnZWAsIGB4bGFyZ2VgLCBhbmQgYHN1cGVyYCBtb2RpZmllcnMuXG5cbmBgYGh0bWxfZXhhbXBsZV90YWJsZVxuPHAgY2xhc3M9XCJ1LXBhZGRpbmctLWxhcmdlXCI+VGhpcyBwYXJhZ3JhcGggaGFzIHBhZGRpbmcgb24gYWxsIHNpZGVzLjwvcD5cbmBgYFxuXG5QYWRkaW5nIGNhbiBhbHNvIGJlIGFkZGVkIHRvIG9uZSBzaWRlIHdpdGggdGhlIGZvbGxvd2luZyBjbGFzcyBuYW1lcy5cblxuYGBgaHRtbF9leGFtcGxlX3RhYmxlXG48cCBjbGFzcz1cInUtcGFkZGluZy10b3AtLXhsYXJnZVwiPlRoaXMgcGFyYWdyYXBoIGhhcyBwYWRkaW5nIG9uIHRvcC48L3A+XG5cbjxwIGNsYXNzPVwidS1wYWRkaW5nLXJpZ2h0LS14bGFyZ2VcIj5UaGlzIHBhcmFncmFwaCBoYXMgcGFkZGluZyB0byB0aGUgcmlnaHQuPC9wPlxuXG48cCBjbGFzcz1cInUtcGFkZGluZy1ib3R0b20tLXhsYXJnZVwiPlRoaXMgcGFyYWdyYXBoIGhhcyBwYWRkaW5nIG9uIHRoZSBib3R0b20uPC9wPlxuXG48cCBjbGFzcz1cInUtcGFkZGluZy1sZWZ0LS14bGFyZ2VcIj5UaGlzIHBhcmFncmFwaCBoYXMgcGFkZGluZyB0byB0aGUgbGVmdC48L3A+XG5gYGBcblxuIyMjIE1lZGlhIFF1ZXJpZXNcblxuQ2xhc3Mgc3VmZml4ZXMgKGBAeHNtYWxsYCwgYEBzbWFsbGAsIGBAbWVkaXVtYCwgYEBsYXJnZWAsIGBAeGxhcmdlYCwgYEBzdXBlcmApIGNhbiBiZSB1c2VkIHRvIGFkZCBzcGFjaW5nIG9yIHBhZGRpbmcgYmFzZWQgb24gdmlld3BvcnQgd2lkdGguXG5cbmBgYGh0bWxfZXhhbXBsZV90YWJsZVxuPHAgY2xhc3M9XCJ1LW5vLXNwYWNlQHNtYWxsICB1LXNwYWNlLS1sYXJnZUBtZWRpdW0gIHUtcGFkZGluZy1tZWRpdW1AbGFyZ2VcIj5UaGUgc3BhY2luZyBhcm91bmQgdGhpcyB0ZXh0IHdpbGwgY2hhbmdlIGRlcGVuZGluZyBvbiB0aGUgdmlld3BvcnQgd2lkdGguPC9wPlxuYGBgXG5cbiovXG4udS1uby1zcGFjZSB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDsgfVxuXG4udS1zcGFjZS0tbm9uZSB7XG4gIG1hcmdpbjogMDsgfVxuXG4udS1zcGFjZS10b3AtLW5vbmUge1xuICBtYXJnaW4tdG9wOiAwOyB9XG5cbi51LXNwYWNlLXJpZ2h0LS1ub25lIHtcbiAgbWFyZ2luLXJpZ2h0OiAwOyB9XG5cbi51LXNwYWNlLWJvdHRvbS0tbm9uZSB7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLnUtc3BhY2UtbGVmdC0tbm9uZSB7XG4gIG1hcmdpbi1sZWZ0OiAwOyB9XG5cbi51LXNwYWNlLS10aW55IHtcbiAgbWFyZ2luOiAwLjEyNWVtOyB9XG5cbi51LXNwYWNlLXRvcC0tdGlueSB7XG4gIG1hcmdpbi10b3A6IDAuMTI1ZW07IH1cblxuLnUtc3BhY2UtcmlnaHQtLXRpbnkge1xuICBtYXJnaW4tcmlnaHQ6IDAuMTI1ZW07IH1cblxuLnUtc3BhY2UtYm90dG9tLS10aW55IHtcbiAgbWFyZ2luLWJvdHRvbTogMC4xMjVlbTsgfVxuXG4udS1zcGFjZS1sZWZ0LS10aW55IHtcbiAgbWFyZ2luLWxlZnQ6IDAuMTI1ZW07IH1cblxuLnUtc3BhY2UtLXhzbWFsbCB7XG4gIG1hcmdpbjogMC4yNWVtOyB9XG5cbi51LXNwYWNlLXRvcC0teHNtYWxsIHtcbiAgbWFyZ2luLXRvcDogMC4yNWVtOyB9XG5cbi51LXNwYWNlLXJpZ2h0LS14c21hbGwge1xuICBtYXJnaW4tcmlnaHQ6IDAuMjVlbTsgfVxuXG4udS1zcGFjZS1ib3R0b20tLXhzbWFsbCB7XG4gIG1hcmdpbi1ib3R0b206IDAuMjVlbTsgfVxuXG4udS1zcGFjZS1sZWZ0LS14c21hbGwge1xuICBtYXJnaW4tbGVmdDogMC4yNWVtOyB9XG5cbi51LXNwYWNlLS1zbWFsbCB7XG4gIG1hcmdpbjogMC41ZW07IH1cblxuLnUtc3BhY2UtdG9wLS1zbWFsbCB7XG4gIG1hcmdpbi10b3A6IDAuNWVtOyB9XG5cbi51LXNwYWNlLXJpZ2h0LS1zbWFsbCB7XG4gIG1hcmdpbi1yaWdodDogMC41ZW07IH1cblxuLnUtc3BhY2UtYm90dG9tLS1zbWFsbCB7XG4gIG1hcmdpbi1ib3R0b206IDAuNWVtOyB9XG5cbi51LXNwYWNlLWxlZnQtLXNtYWxsIHtcbiAgbWFyZ2luLWxlZnQ6IDAuNWVtOyB9XG5cbi51LXNwYWNlLS1tZWRpdW0ge1xuICBtYXJnaW46IDFlbTsgfVxuXG4udS1zcGFjZS10b3AtLW1lZGl1bSB7XG4gIG1hcmdpbi10b3A6IDFlbTsgfVxuXG4udS1zcGFjZS1yaWdodC0tbWVkaXVtIHtcbiAgbWFyZ2luLXJpZ2h0OiAxZW07IH1cblxuLnUtc3BhY2UtYm90dG9tLS1tZWRpdW0ge1xuICBtYXJnaW4tYm90dG9tOiAxZW07IH1cblxuLnUtc3BhY2UtbGVmdC0tbWVkaXVtIHtcbiAgbWFyZ2luLWxlZnQ6IDFlbTsgfVxuXG4udS1zcGFjZS0tbGFyZ2Uge1xuICBtYXJnaW46IDEuNWVtOyB9XG5cbi51LXNwYWNlLXRvcC0tbGFyZ2Uge1xuICBtYXJnaW4tdG9wOiAxLjVlbTsgfVxuXG4udS1zcGFjZS1yaWdodC0tbGFyZ2Uge1xuICBtYXJnaW4tcmlnaHQ6IDEuNWVtOyB9XG5cbi51LXNwYWNlLWJvdHRvbS0tbGFyZ2Uge1xuICBtYXJnaW4tYm90dG9tOiAxLjVlbTsgfVxuXG4udS1zcGFjZS1sZWZ0LS1sYXJnZSB7XG4gIG1hcmdpbi1sZWZ0OiAxLjVlbTsgfVxuXG4udS1zcGFjZS0teGxhcmdlIHtcbiAgbWFyZ2luOiAyZW07IH1cblxuLnUtc3BhY2UtdG9wLS14bGFyZ2Uge1xuICBtYXJnaW4tdG9wOiAyZW07IH1cblxuLnUtc3BhY2UtcmlnaHQtLXhsYXJnZSB7XG4gIG1hcmdpbi1yaWdodDogMmVtOyB9XG5cbi51LXNwYWNlLWJvdHRvbS0teGxhcmdlIHtcbiAgbWFyZ2luLWJvdHRvbTogMmVtOyB9XG5cbi51LXNwYWNlLWxlZnQtLXhsYXJnZSB7XG4gIG1hcmdpbi1sZWZ0OiAyZW07IH1cblxuLnUtc3BhY2UtLXN1cGVyIHtcbiAgbWFyZ2luOiAzZW07IH1cblxuLnUtc3BhY2UtdG9wLS1zdXBlciB7XG4gIG1hcmdpbi10b3A6IDNlbTsgfVxuXG4udS1zcGFjZS1yaWdodC0tc3VwZXIge1xuICBtYXJnaW4tcmlnaHQ6IDNlbTsgfVxuXG4udS1zcGFjZS1ib3R0b20tLXN1cGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogM2VtOyB9XG5cbi51LXNwYWNlLWxlZnQtLXN1cGVyIHtcbiAgbWFyZ2luLWxlZnQ6IDNlbTsgfVxuXG4udS1wYWRkaW5nLS1ub25lIHtcbiAgcGFkZGluZzogMDsgfVxuXG4udS1wYWRkaW5nLXRvcC0tbm9uZSB7XG4gIHBhZGRpbmctdG9wOiAwOyB9XG5cbi51LXBhZGRpbmctcmlnaHQtLW5vbmUge1xuICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG5cbi51LXBhZGRpbmctYm90dG9tLS1ub25lIHtcbiAgcGFkZGluZy1ib3R0b206IDA7IH1cblxuLnUtcGFkZGluZy1sZWZ0LS1ub25lIHtcbiAgcGFkZGluZy1sZWZ0OiAwOyB9XG5cbi51LXBhZGRpbmctLXRpbnkge1xuICBwYWRkaW5nOiAwLjEyNWVtOyB9XG5cbi51LXBhZGRpbmctdG9wLS10aW55IHtcbiAgcGFkZGluZy10b3A6IDAuMTI1ZW07IH1cblxuLnUtcGFkZGluZy1yaWdodC0tdGlueSB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuMTI1ZW07IH1cblxuLnUtcGFkZGluZy1ib3R0b20tLXRpbnkge1xuICBwYWRkaW5nLWJvdHRvbTogMC4xMjVlbTsgfVxuXG4udS1wYWRkaW5nLWxlZnQtLXRpbnkge1xuICBwYWRkaW5nLWxlZnQ6IDAuMTI1ZW07IH1cblxuLnUtcGFkZGluZy0teHNtYWxsIHtcbiAgcGFkZGluZzogMC4yNWVtOyB9XG5cbi51LXBhZGRpbmctdG9wLS14c21hbGwge1xuICBwYWRkaW5nLXRvcDogMC4yNWVtOyB9XG5cbi51LXBhZGRpbmctcmlnaHQtLXhzbWFsbCB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuMjVlbTsgfVxuXG4udS1wYWRkaW5nLWJvdHRvbS0teHNtYWxsIHtcbiAgcGFkZGluZy1ib3R0b206IDAuMjVlbTsgfVxuXG4udS1wYWRkaW5nLWxlZnQtLXhzbWFsbCB7XG4gIHBhZGRpbmctbGVmdDogMC4yNWVtOyB9XG5cbi51LXBhZGRpbmctLXNtYWxsIHtcbiAgcGFkZGluZzogMC41ZW07IH1cblxuLnUtcGFkZGluZy10b3AtLXNtYWxsIHtcbiAgcGFkZGluZy10b3A6IDAuNWVtOyB9XG5cbi51LXBhZGRpbmctcmlnaHQtLXNtYWxsIHtcbiAgcGFkZGluZy1yaWdodDogMC41ZW07IH1cblxuLnUtcGFkZGluZy1ib3R0b20tLXNtYWxsIHtcbiAgcGFkZGluZy1ib3R0b206IDAuNWVtOyB9XG5cbi51LXBhZGRpbmctbGVmdC0tc21hbGwge1xuICBwYWRkaW5nLWxlZnQ6IDAuNWVtOyB9XG5cbi51LXBhZGRpbmctLW1lZGl1bSB7XG4gIHBhZGRpbmc6IDFlbTsgfVxuXG4udS1wYWRkaW5nLXRvcC0tbWVkaXVtIHtcbiAgcGFkZGluZy10b3A6IDFlbTsgfVxuXG4udS1wYWRkaW5nLXJpZ2h0LS1tZWRpdW0ge1xuICBwYWRkaW5nLXJpZ2h0OiAxZW07IH1cblxuLnUtcGFkZGluZy1ib3R0b20tLW1lZGl1bSB7XG4gIHBhZGRpbmctYm90dG9tOiAxZW07IH1cblxuLnUtcGFkZGluZy1sZWZ0LS1tZWRpdW0ge1xuICBwYWRkaW5nLWxlZnQ6IDFlbTsgfVxuXG4udS1wYWRkaW5nLS1sYXJnZSB7XG4gIHBhZGRpbmc6IDEuNWVtOyB9XG5cbi51LXBhZGRpbmctdG9wLS1sYXJnZSB7XG4gIHBhZGRpbmctdG9wOiAxLjVlbTsgfVxuXG4udS1wYWRkaW5nLXJpZ2h0LS1sYXJnZSB7XG4gIHBhZGRpbmctcmlnaHQ6IDEuNWVtOyB9XG5cbi51LXBhZGRpbmctYm90dG9tLS1sYXJnZSB7XG4gIHBhZGRpbmctYm90dG9tOiAxLjVlbTsgfVxuXG4udS1wYWRkaW5nLWxlZnQtLWxhcmdlIHtcbiAgcGFkZGluZy1sZWZ0OiAxLjVlbTsgfVxuXG4udS1wYWRkaW5nLS14bGFyZ2Uge1xuICBwYWRkaW5nOiAyZW07IH1cblxuLnUtcGFkZGluZy10b3AtLXhsYXJnZSB7XG4gIHBhZGRpbmctdG9wOiAyZW07IH1cblxuLnUtcGFkZGluZy1yaWdodC0teGxhcmdlIHtcbiAgcGFkZGluZy1yaWdodDogMmVtOyB9XG5cbi51LXBhZGRpbmctYm90dG9tLS14bGFyZ2Uge1xuICBwYWRkaW5nLWJvdHRvbTogMmVtOyB9XG5cbi51LXBhZGRpbmctbGVmdC0teGxhcmdlIHtcbiAgcGFkZGluZy1sZWZ0OiAyZW07IH1cblxuLnUtcGFkZGluZy0tc3VwZXIge1xuICBwYWRkaW5nOiAzZW07IH1cblxuLnUtcGFkZGluZy10b3AtLXN1cGVyIHtcbiAgcGFkZGluZy10b3A6IDNlbTsgfVxuXG4udS1wYWRkaW5nLXJpZ2h0LS1zdXBlciB7XG4gIHBhZGRpbmctcmlnaHQ6IDNlbTsgfVxuXG4udS1wYWRkaW5nLWJvdHRvbS0tc3VwZXIge1xuICBwYWRkaW5nLWJvdHRvbTogM2VtOyB9XG5cbi51LXBhZGRpbmctbGVmdC0tc3VwZXIge1xuICBwYWRkaW5nLWxlZnQ6IDNlbTsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMjByZW0pIHtcbiAgLnUtbm8tc3BhY2VcXEB4c21hbGwge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwOyB9XG4gIC51LXNwYWNlLS1ub25lXFxAeHNtYWxsIHtcbiAgICBtYXJnaW46IDA7IH1cbiAgLnUtc3BhY2UtdG9wLS1ub25lXFxAeHNtYWxsIHtcbiAgICBtYXJnaW4tdG9wOiAwOyB9XG4gIC51LXNwYWNlLXJpZ2h0LS1ub25lXFxAeHNtYWxsIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgLnUtc3BhY2UtYm90dG9tLS1ub25lXFxAeHNtYWxsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC51LXNwYWNlLWxlZnQtLW5vbmVcXEB4c21hbGwge1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIC51LXNwYWNlLS10aW55XFxAeHNtYWxsIHtcbiAgICBtYXJnaW46IDAuMTI1ZW07IH1cbiAgLnUtc3BhY2UtdG9wLS10aW55XFxAeHNtYWxsIHtcbiAgICBtYXJnaW4tdG9wOiAwLjEyNWVtOyB9XG4gIC51LXNwYWNlLXJpZ2h0LS10aW55XFxAeHNtYWxsIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuMTI1ZW07IH1cbiAgLnUtc3BhY2UtYm90dG9tLS10aW55XFxAeHNtYWxsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjEyNWVtOyB9XG4gIC51LXNwYWNlLWxlZnQtLXRpbnlcXEB4c21hbGwge1xuICAgIG1hcmdpbi1sZWZ0OiAwLjEyNWVtOyB9XG4gIC51LXNwYWNlLS14c21hbGxcXEB4c21hbGwge1xuICAgIG1hcmdpbjogMC4yNWVtOyB9XG4gIC51LXNwYWNlLXRvcC0teHNtYWxsXFxAeHNtYWxsIHtcbiAgICBtYXJnaW4tdG9wOiAwLjI1ZW07IH1cbiAgLnUtc3BhY2UtcmlnaHQtLXhzbWFsbFxcQHhzbWFsbCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjI1ZW07IH1cbiAgLnUtc3BhY2UtYm90dG9tLS14c21hbGxcXEB4c21hbGwge1xuICAgIG1hcmdpbi1ib3R0b206IDAuMjVlbTsgfVxuICAudS1zcGFjZS1sZWZ0LS14c21hbGxcXEB4c21hbGwge1xuICAgIG1hcmdpbi1sZWZ0OiAwLjI1ZW07IH1cbiAgLnUtc3BhY2UtLXNtYWxsXFxAeHNtYWxsIHtcbiAgICBtYXJnaW46IDAuNWVtOyB9XG4gIC51LXNwYWNlLXRvcC0tc21hbGxcXEB4c21hbGwge1xuICAgIG1hcmdpbi10b3A6IDAuNWVtOyB9XG4gIC51LXNwYWNlLXJpZ2h0LS1zbWFsbFxcQHhzbWFsbCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjVlbTsgfVxuICAudS1zcGFjZS1ib3R0b20tLXNtYWxsXFxAeHNtYWxsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVlbTsgfVxuICAudS1zcGFjZS1sZWZ0LS1zbWFsbFxcQHhzbWFsbCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuNWVtOyB9XG4gIC51LXNwYWNlLS1tZWRpdW1cXEB4c21hbGwge1xuICAgIG1hcmdpbjogMWVtOyB9XG4gIC51LXNwYWNlLXRvcC0tbWVkaXVtXFxAeHNtYWxsIHtcbiAgICBtYXJnaW4tdG9wOiAxZW07IH1cbiAgLnUtc3BhY2UtcmlnaHQtLW1lZGl1bVxcQHhzbWFsbCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxZW07IH1cbiAgLnUtc3BhY2UtYm90dG9tLS1tZWRpdW1cXEB4c21hbGwge1xuICAgIG1hcmdpbi1ib3R0b206IDFlbTsgfVxuICAudS1zcGFjZS1sZWZ0LS1tZWRpdW1cXEB4c21hbGwge1xuICAgIG1hcmdpbi1sZWZ0OiAxZW07IH1cbiAgLnUtc3BhY2UtLWxhcmdlXFxAeHNtYWxsIHtcbiAgICBtYXJnaW46IDEuNWVtOyB9XG4gIC51LXNwYWNlLXRvcC0tbGFyZ2VcXEB4c21hbGwge1xuICAgIG1hcmdpbi10b3A6IDEuNWVtOyB9XG4gIC51LXNwYWNlLXJpZ2h0LS1sYXJnZVxcQHhzbWFsbCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxLjVlbTsgfVxuICAudS1zcGFjZS1ib3R0b20tLWxhcmdlXFxAeHNtYWxsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVlbTsgfVxuICAudS1zcGFjZS1sZWZ0LS1sYXJnZVxcQHhzbWFsbCB7XG4gICAgbWFyZ2luLWxlZnQ6IDEuNWVtOyB9XG4gIC51LXNwYWNlLS14bGFyZ2VcXEB4c21hbGwge1xuICAgIG1hcmdpbjogMmVtOyB9XG4gIC51LXNwYWNlLXRvcC0teGxhcmdlXFxAeHNtYWxsIHtcbiAgICBtYXJnaW4tdG9wOiAyZW07IH1cbiAgLnUtc3BhY2UtcmlnaHQtLXhsYXJnZVxcQHhzbWFsbCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAyZW07IH1cbiAgLnUtc3BhY2UtYm90dG9tLS14bGFyZ2VcXEB4c21hbGwge1xuICAgIG1hcmdpbi1ib3R0b206IDJlbTsgfVxuICAudS1zcGFjZS1sZWZ0LS14bGFyZ2VcXEB4c21hbGwge1xuICAgIG1hcmdpbi1sZWZ0OiAyZW07IH1cbiAgLnUtc3BhY2UtLXN1cGVyXFxAeHNtYWxsIHtcbiAgICBtYXJnaW46IDNlbTsgfVxuICAudS1zcGFjZS10b3AtLXN1cGVyXFxAeHNtYWxsIHtcbiAgICBtYXJnaW4tdG9wOiAzZW07IH1cbiAgLnUtc3BhY2UtcmlnaHQtLXN1cGVyXFxAeHNtYWxsIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDNlbTsgfVxuICAudS1zcGFjZS1ib3R0b20tLXN1cGVyXFxAeHNtYWxsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzZW07IH1cbiAgLnUtc3BhY2UtbGVmdC0tc3VwZXJcXEB4c21hbGwge1xuICAgIG1hcmdpbi1sZWZ0OiAzZW07IH1cbiAgLnUtcGFkZGluZy0tbm9uZVxcQHhzbWFsbCB7XG4gICAgcGFkZGluZzogMDsgfVxuICAudS1wYWRkaW5nLXRvcC0tbm9uZVxcQHhzbWFsbCB7XG4gICAgcGFkZGluZy10b3A6IDA7IH1cbiAgLnUtcGFkZGluZy1yaWdodC0tbm9uZVxcQHhzbWFsbCB7XG4gICAgcGFkZGluZy1yaWdodDogMDsgfVxuICAudS1wYWRkaW5nLWJvdHRvbS0tbm9uZVxcQHhzbWFsbCB7XG4gICAgcGFkZGluZy1ib3R0b206IDA7IH1cbiAgLnUtcGFkZGluZy1sZWZ0LS1ub25lXFxAeHNtYWxsIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgLnUtcGFkZGluZy0tdGlueVxcQHhzbWFsbCB7XG4gICAgcGFkZGluZzogMC4xMjVlbTsgfVxuICAudS1wYWRkaW5nLXRvcC0tdGlueVxcQHhzbWFsbCB7XG4gICAgcGFkZGluZy10b3A6IDAuMTI1ZW07IH1cbiAgLnUtcGFkZGluZy1yaWdodC0tdGlueVxcQHhzbWFsbCB7XG4gICAgcGFkZGluZy1yaWdodDogMC4xMjVlbTsgfVxuICAudS1wYWRkaW5nLWJvdHRvbS0tdGlueVxcQHhzbWFsbCB7XG4gICAgcGFkZGluZy1ib3R0b206IDAuMTI1ZW07IH1cbiAgLnUtcGFkZGluZy1sZWZ0LS10aW55XFxAeHNtYWxsIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMTI1ZW07IH1cbiAgLnUtcGFkZGluZy0teHNtYWxsXFxAeHNtYWxsIHtcbiAgICBwYWRkaW5nOiAwLjI1ZW07IH1cbiAgLnUtcGFkZGluZy10b3AtLXhzbWFsbFxcQHhzbWFsbCB7XG4gICAgcGFkZGluZy10b3A6IDAuMjVlbTsgfVxuICAudS1wYWRkaW5nLXJpZ2h0LS14c21hbGxcXEB4c21hbGwge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuMjVlbTsgfVxuICAudS1wYWRkaW5nLWJvdHRvbS0teHNtYWxsXFxAeHNtYWxsIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC4yNWVtOyB9XG4gIC51LXBhZGRpbmctbGVmdC0teHNtYWxsXFxAeHNtYWxsIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMjVlbTsgfVxuICAudS1wYWRkaW5nLS1zbWFsbFxcQHhzbWFsbCB7XG4gICAgcGFkZGluZzogMC41ZW07IH1cbiAgLnUtcGFkZGluZy10b3AtLXNtYWxsXFxAeHNtYWxsIHtcbiAgICBwYWRkaW5nLXRvcDogMC41ZW07IH1cbiAgLnUtcGFkZGluZy1yaWdodC0tc21hbGxcXEB4c21hbGwge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNWVtOyB9XG4gIC51LXBhZGRpbmctYm90dG9tLS1zbWFsbFxcQHhzbWFsbCB7XG4gICAgcGFkZGluZy1ib3R0b206IDAuNWVtOyB9XG4gIC51LXBhZGRpbmctbGVmdC0tc21hbGxcXEB4c21hbGwge1xuICAgIHBhZGRpbmctbGVmdDogMC41ZW07IH1cbiAgLnUtcGFkZGluZy0tbWVkaXVtXFxAeHNtYWxsIHtcbiAgICBwYWRkaW5nOiAxZW07IH1cbiAgLnUtcGFkZGluZy10b3AtLW1lZGl1bVxcQHhzbWFsbCB7XG4gICAgcGFkZGluZy10b3A6IDFlbTsgfVxuICAudS1wYWRkaW5nLXJpZ2h0LS1tZWRpdW1cXEB4c21hbGwge1xuICAgIHBhZGRpbmctcmlnaHQ6IDFlbTsgfVxuICAudS1wYWRkaW5nLWJvdHRvbS0tbWVkaXVtXFxAeHNtYWxsIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMWVtOyB9XG4gIC51LXBhZGRpbmctbGVmdC0tbWVkaXVtXFxAeHNtYWxsIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDFlbTsgfVxuICAudS1wYWRkaW5nLS1sYXJnZVxcQHhzbWFsbCB7XG4gICAgcGFkZGluZzogMS41ZW07IH1cbiAgLnUtcGFkZGluZy10b3AtLWxhcmdlXFxAeHNtYWxsIHtcbiAgICBwYWRkaW5nLXRvcDogMS41ZW07IH1cbiAgLnUtcGFkZGluZy1yaWdodC0tbGFyZ2VcXEB4c21hbGwge1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuNWVtOyB9XG4gIC51LXBhZGRpbmctYm90dG9tLS1sYXJnZVxcQHhzbWFsbCB7XG4gICAgcGFkZGluZy1ib3R0b206IDEuNWVtOyB9XG4gIC51LXBhZGRpbmctbGVmdC0tbGFyZ2VcXEB4c21hbGwge1xuICAgIHBhZGRpbmctbGVmdDogMS41ZW07IH1cbiAgLnUtcGFkZGluZy0teGxhcmdlXFxAeHNtYWxsIHtcbiAgICBwYWRkaW5nOiAyZW07IH1cbiAgLnUtcGFkZGluZy10b3AtLXhsYXJnZVxcQHhzbWFsbCB7XG4gICAgcGFkZGluZy10b3A6IDJlbTsgfVxuICAudS1wYWRkaW5nLXJpZ2h0LS14bGFyZ2VcXEB4c21hbGwge1xuICAgIHBhZGRpbmctcmlnaHQ6IDJlbTsgfVxuICAudS1wYWRkaW5nLWJvdHRvbS0teGxhcmdlXFxAeHNtYWxsIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMmVtOyB9XG4gIC51LXBhZGRpbmctbGVmdC0teGxhcmdlXFxAeHNtYWxsIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDJlbTsgfVxuICAudS1wYWRkaW5nLS1zdXBlclxcQHhzbWFsbCB7XG4gICAgcGFkZGluZzogM2VtOyB9XG4gIC51LXBhZGRpbmctdG9wLS1zdXBlclxcQHhzbWFsbCB7XG4gICAgcGFkZGluZy10b3A6IDNlbTsgfVxuICAudS1wYWRkaW5nLXJpZ2h0LS1zdXBlclxcQHhzbWFsbCB7XG4gICAgcGFkZGluZy1yaWdodDogM2VtOyB9XG4gIC51LXBhZGRpbmctYm90dG9tLS1zdXBlclxcQHhzbWFsbCB7XG4gICAgcGFkZGluZy1ib3R0b206IDNlbTsgfVxuICAudS1wYWRkaW5nLWxlZnQtLXN1cGVyXFxAeHNtYWxsIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDNlbTsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAzMHJlbSkge1xuICAudS1uby1zcGFjZVxcQHNtYWxsIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDsgfVxuICAudS1zcGFjZS0tbm9uZVxcQHNtYWxsIHtcbiAgICBtYXJnaW46IDA7IH1cbiAgLnUtc3BhY2UtdG9wLS1ub25lXFxAc21hbGwge1xuICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgLnUtc3BhY2UtcmlnaHQtLW5vbmVcXEBzbWFsbCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gIC51LXNwYWNlLWJvdHRvbS0tbm9uZVxcQHNtYWxsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC51LXNwYWNlLWxlZnQtLW5vbmVcXEBzbWFsbCB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLnUtc3BhY2UtLXRpbnlcXEBzbWFsbCB7XG4gICAgbWFyZ2luOiAwLjEyNWVtOyB9XG4gIC51LXNwYWNlLXRvcC0tdGlueVxcQHNtYWxsIHtcbiAgICBtYXJnaW4tdG9wOiAwLjEyNWVtOyB9XG4gIC51LXNwYWNlLXJpZ2h0LS10aW55XFxAc21hbGwge1xuICAgIG1hcmdpbi1yaWdodDogMC4xMjVlbTsgfVxuICAudS1zcGFjZS1ib3R0b20tLXRpbnlcXEBzbWFsbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC4xMjVlbTsgfVxuICAudS1zcGFjZS1sZWZ0LS10aW55XFxAc21hbGwge1xuICAgIG1hcmdpbi1sZWZ0OiAwLjEyNWVtOyB9XG4gIC51LXNwYWNlLS14c21hbGxcXEBzbWFsbCB7XG4gICAgbWFyZ2luOiAwLjI1ZW07IH1cbiAgLnUtc3BhY2UtdG9wLS14c21hbGxcXEBzbWFsbCB7XG4gICAgbWFyZ2luLXRvcDogMC4yNWVtOyB9XG4gIC51LXNwYWNlLXJpZ2h0LS14c21hbGxcXEBzbWFsbCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjI1ZW07IH1cbiAgLnUtc3BhY2UtYm90dG9tLS14c21hbGxcXEBzbWFsbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC4yNWVtOyB9XG4gIC51LXNwYWNlLWxlZnQtLXhzbWFsbFxcQHNtYWxsIHtcbiAgICBtYXJnaW4tbGVmdDogMC4yNWVtOyB9XG4gIC51LXNwYWNlLS1zbWFsbFxcQHNtYWxsIHtcbiAgICBtYXJnaW46IDAuNWVtOyB9XG4gIC51LXNwYWNlLXRvcC0tc21hbGxcXEBzbWFsbCB7XG4gICAgbWFyZ2luLXRvcDogMC41ZW07IH1cbiAgLnUtc3BhY2UtcmlnaHQtLXNtYWxsXFxAc21hbGwge1xuICAgIG1hcmdpbi1yaWdodDogMC41ZW07IH1cbiAgLnUtc3BhY2UtYm90dG9tLS1zbWFsbFxcQHNtYWxsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVlbTsgfVxuICAudS1zcGFjZS1sZWZ0LS1zbWFsbFxcQHNtYWxsIHtcbiAgICBtYXJnaW4tbGVmdDogMC41ZW07IH1cbiAgLnUtc3BhY2UtLW1lZGl1bVxcQHNtYWxsIHtcbiAgICBtYXJnaW46IDFlbTsgfVxuICAudS1zcGFjZS10b3AtLW1lZGl1bVxcQHNtYWxsIHtcbiAgICBtYXJnaW4tdG9wOiAxZW07IH1cbiAgLnUtc3BhY2UtcmlnaHQtLW1lZGl1bVxcQHNtYWxsIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDFlbTsgfVxuICAudS1zcGFjZS1ib3R0b20tLW1lZGl1bVxcQHNtYWxsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxZW07IH1cbiAgLnUtc3BhY2UtbGVmdC0tbWVkaXVtXFxAc21hbGwge1xuICAgIG1hcmdpbi1sZWZ0OiAxZW07IH1cbiAgLnUtc3BhY2UtLWxhcmdlXFxAc21hbGwge1xuICAgIG1hcmdpbjogMS41ZW07IH1cbiAgLnUtc3BhY2UtdG9wLS1sYXJnZVxcQHNtYWxsIHtcbiAgICBtYXJnaW4tdG9wOiAxLjVlbTsgfVxuICAudS1zcGFjZS1yaWdodC0tbGFyZ2VcXEBzbWFsbCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxLjVlbTsgfVxuICAudS1zcGFjZS1ib3R0b20tLWxhcmdlXFxAc21hbGwge1xuICAgIG1hcmdpbi1ib3R0b206IDEuNWVtOyB9XG4gIC51LXNwYWNlLWxlZnQtLWxhcmdlXFxAc21hbGwge1xuICAgIG1hcmdpbi1sZWZ0OiAxLjVlbTsgfVxuICAudS1zcGFjZS0teGxhcmdlXFxAc21hbGwge1xuICAgIG1hcmdpbjogMmVtOyB9XG4gIC51LXNwYWNlLXRvcC0teGxhcmdlXFxAc21hbGwge1xuICAgIG1hcmdpbi10b3A6IDJlbTsgfVxuICAudS1zcGFjZS1yaWdodC0teGxhcmdlXFxAc21hbGwge1xuICAgIG1hcmdpbi1yaWdodDogMmVtOyB9XG4gIC51LXNwYWNlLWJvdHRvbS0teGxhcmdlXFxAc21hbGwge1xuICAgIG1hcmdpbi1ib3R0b206IDJlbTsgfVxuICAudS1zcGFjZS1sZWZ0LS14bGFyZ2VcXEBzbWFsbCB7XG4gICAgbWFyZ2luLWxlZnQ6IDJlbTsgfVxuICAudS1zcGFjZS0tc3VwZXJcXEBzbWFsbCB7XG4gICAgbWFyZ2luOiAzZW07IH1cbiAgLnUtc3BhY2UtdG9wLS1zdXBlclxcQHNtYWxsIHtcbiAgICBtYXJnaW4tdG9wOiAzZW07IH1cbiAgLnUtc3BhY2UtcmlnaHQtLXN1cGVyXFxAc21hbGwge1xuICAgIG1hcmdpbi1yaWdodDogM2VtOyB9XG4gIC51LXNwYWNlLWJvdHRvbS0tc3VwZXJcXEBzbWFsbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogM2VtOyB9XG4gIC51LXNwYWNlLWxlZnQtLXN1cGVyXFxAc21hbGwge1xuICAgIG1hcmdpbi1sZWZ0OiAzZW07IH1cbiAgLnUtcGFkZGluZy0tbm9uZVxcQHNtYWxsIHtcbiAgICBwYWRkaW5nOiAwOyB9XG4gIC51LXBhZGRpbmctdG9wLS1ub25lXFxAc21hbGwge1xuICAgIHBhZGRpbmctdG9wOiAwOyB9XG4gIC51LXBhZGRpbmctcmlnaHQtLW5vbmVcXEBzbWFsbCB7XG4gICAgcGFkZGluZy1yaWdodDogMDsgfVxuICAudS1wYWRkaW5nLWJvdHRvbS0tbm9uZVxcQHNtYWxsIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDsgfVxuICAudS1wYWRkaW5nLWxlZnQtLW5vbmVcXEBzbWFsbCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gIC51LXBhZGRpbmctLXRpbnlcXEBzbWFsbCB7XG4gICAgcGFkZGluZzogMC4xMjVlbTsgfVxuICAudS1wYWRkaW5nLXRvcC0tdGlueVxcQHNtYWxsIHtcbiAgICBwYWRkaW5nLXRvcDogMC4xMjVlbTsgfVxuICAudS1wYWRkaW5nLXJpZ2h0LS10aW55XFxAc21hbGwge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuMTI1ZW07IH1cbiAgLnUtcGFkZGluZy1ib3R0b20tLXRpbnlcXEBzbWFsbCB7XG4gICAgcGFkZGluZy1ib3R0b206IDAuMTI1ZW07IH1cbiAgLnUtcGFkZGluZy1sZWZ0LS10aW55XFxAc21hbGwge1xuICAgIHBhZGRpbmctbGVmdDogMC4xMjVlbTsgfVxuICAudS1wYWRkaW5nLS14c21hbGxcXEBzbWFsbCB7XG4gICAgcGFkZGluZzogMC4yNWVtOyB9XG4gIC51LXBhZGRpbmctdG9wLS14c21hbGxcXEBzbWFsbCB7XG4gICAgcGFkZGluZy10b3A6IDAuMjVlbTsgfVxuICAudS1wYWRkaW5nLXJpZ2h0LS14c21hbGxcXEBzbWFsbCB7XG4gICAgcGFkZGluZy1yaWdodDogMC4yNWVtOyB9XG4gIC51LXBhZGRpbmctYm90dG9tLS14c21hbGxcXEBzbWFsbCB7XG4gICAgcGFkZGluZy1ib3R0b206IDAuMjVlbTsgfVxuICAudS1wYWRkaW5nLWxlZnQtLXhzbWFsbFxcQHNtYWxsIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMjVlbTsgfVxuICAudS1wYWRkaW5nLS1zbWFsbFxcQHNtYWxsIHtcbiAgICBwYWRkaW5nOiAwLjVlbTsgfVxuICAudS1wYWRkaW5nLXRvcC0tc21hbGxcXEBzbWFsbCB7XG4gICAgcGFkZGluZy10b3A6IDAuNWVtOyB9XG4gIC51LXBhZGRpbmctcmlnaHQtLXNtYWxsXFxAc21hbGwge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNWVtOyB9XG4gIC51LXBhZGRpbmctYm90dG9tLS1zbWFsbFxcQHNtYWxsIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC41ZW07IH1cbiAgLnUtcGFkZGluZy1sZWZ0LS1zbWFsbFxcQHNtYWxsIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNWVtOyB9XG4gIC51LXBhZGRpbmctLW1lZGl1bVxcQHNtYWxsIHtcbiAgICBwYWRkaW5nOiAxZW07IH1cbiAgLnUtcGFkZGluZy10b3AtLW1lZGl1bVxcQHNtYWxsIHtcbiAgICBwYWRkaW5nLXRvcDogMWVtOyB9XG4gIC51LXBhZGRpbmctcmlnaHQtLW1lZGl1bVxcQHNtYWxsIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxZW07IH1cbiAgLnUtcGFkZGluZy1ib3R0b20tLW1lZGl1bVxcQHNtYWxsIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMWVtOyB9XG4gIC51LXBhZGRpbmctbGVmdC0tbWVkaXVtXFxAc21hbGwge1xuICAgIHBhZGRpbmctbGVmdDogMWVtOyB9XG4gIC51LXBhZGRpbmctLWxhcmdlXFxAc21hbGwge1xuICAgIHBhZGRpbmc6IDEuNWVtOyB9XG4gIC51LXBhZGRpbmctdG9wLS1sYXJnZVxcQHNtYWxsIHtcbiAgICBwYWRkaW5nLXRvcDogMS41ZW07IH1cbiAgLnUtcGFkZGluZy1yaWdodC0tbGFyZ2VcXEBzbWFsbCB7XG4gICAgcGFkZGluZy1yaWdodDogMS41ZW07IH1cbiAgLnUtcGFkZGluZy1ib3R0b20tLWxhcmdlXFxAc21hbGwge1xuICAgIHBhZGRpbmctYm90dG9tOiAxLjVlbTsgfVxuICAudS1wYWRkaW5nLWxlZnQtLWxhcmdlXFxAc21hbGwge1xuICAgIHBhZGRpbmctbGVmdDogMS41ZW07IH1cbiAgLnUtcGFkZGluZy0teGxhcmdlXFxAc21hbGwge1xuICAgIHBhZGRpbmc6IDJlbTsgfVxuICAudS1wYWRkaW5nLXRvcC0teGxhcmdlXFxAc21hbGwge1xuICAgIHBhZGRpbmctdG9wOiAyZW07IH1cbiAgLnUtcGFkZGluZy1yaWdodC0teGxhcmdlXFxAc21hbGwge1xuICAgIHBhZGRpbmctcmlnaHQ6IDJlbTsgfVxuICAudS1wYWRkaW5nLWJvdHRvbS0teGxhcmdlXFxAc21hbGwge1xuICAgIHBhZGRpbmctYm90dG9tOiAyZW07IH1cbiAgLnUtcGFkZGluZy1sZWZ0LS14bGFyZ2VcXEBzbWFsbCB7XG4gICAgcGFkZGluZy1sZWZ0OiAyZW07IH1cbiAgLnUtcGFkZGluZy0tc3VwZXJcXEBzbWFsbCB7XG4gICAgcGFkZGluZzogM2VtOyB9XG4gIC51LXBhZGRpbmctdG9wLS1zdXBlclxcQHNtYWxsIHtcbiAgICBwYWRkaW5nLXRvcDogM2VtOyB9XG4gIC51LXBhZGRpbmctcmlnaHQtLXN1cGVyXFxAc21hbGwge1xuICAgIHBhZGRpbmctcmlnaHQ6IDNlbTsgfVxuICAudS1wYWRkaW5nLWJvdHRvbS0tc3VwZXJcXEBzbWFsbCB7XG4gICAgcGFkZGluZy1ib3R0b206IDNlbTsgfVxuICAudS1wYWRkaW5nLWxlZnQtLXN1cGVyXFxAc21hbGwge1xuICAgIHBhZGRpbmctbGVmdDogM2VtOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4cmVtKSB7XG4gIC51LW5vLXNwYWNlXFxAbWVkaXVtIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDsgfVxuICAudS1zcGFjZS0tbm9uZVxcQG1lZGl1bSB7XG4gICAgbWFyZ2luOiAwOyB9XG4gIC51LXNwYWNlLXRvcC0tbm9uZVxcQG1lZGl1bSB7XG4gICAgbWFyZ2luLXRvcDogMDsgfVxuICAudS1zcGFjZS1yaWdodC0tbm9uZVxcQG1lZGl1bSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gIC51LXNwYWNlLWJvdHRvbS0tbm9uZVxcQG1lZGl1bSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAudS1zcGFjZS1sZWZ0LS1ub25lXFxAbWVkaXVtIHtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAudS1zcGFjZS0tdGlueVxcQG1lZGl1bSB7XG4gICAgbWFyZ2luOiAwLjEyNWVtOyB9XG4gIC51LXNwYWNlLXRvcC0tdGlueVxcQG1lZGl1bSB7XG4gICAgbWFyZ2luLXRvcDogMC4xMjVlbTsgfVxuICAudS1zcGFjZS1yaWdodC0tdGlueVxcQG1lZGl1bSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjEyNWVtOyB9XG4gIC51LXNwYWNlLWJvdHRvbS0tdGlueVxcQG1lZGl1bSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC4xMjVlbTsgfVxuICAudS1zcGFjZS1sZWZ0LS10aW55XFxAbWVkaXVtIHtcbiAgICBtYXJnaW4tbGVmdDogMC4xMjVlbTsgfVxuICAudS1zcGFjZS0teHNtYWxsXFxAbWVkaXVtIHtcbiAgICBtYXJnaW46IDAuMjVlbTsgfVxuICAudS1zcGFjZS10b3AtLXhzbWFsbFxcQG1lZGl1bSB7XG4gICAgbWFyZ2luLXRvcDogMC4yNWVtOyB9XG4gIC51LXNwYWNlLXJpZ2h0LS14c21hbGxcXEBtZWRpdW0ge1xuICAgIG1hcmdpbi1yaWdodDogMC4yNWVtOyB9XG4gIC51LXNwYWNlLWJvdHRvbS0teHNtYWxsXFxAbWVkaXVtIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjI1ZW07IH1cbiAgLnUtc3BhY2UtbGVmdC0teHNtYWxsXFxAbWVkaXVtIHtcbiAgICBtYXJnaW4tbGVmdDogMC4yNWVtOyB9XG4gIC51LXNwYWNlLS1zbWFsbFxcQG1lZGl1bSB7XG4gICAgbWFyZ2luOiAwLjVlbTsgfVxuICAudS1zcGFjZS10b3AtLXNtYWxsXFxAbWVkaXVtIHtcbiAgICBtYXJnaW4tdG9wOiAwLjVlbTsgfVxuICAudS1zcGFjZS1yaWdodC0tc21hbGxcXEBtZWRpdW0ge1xuICAgIG1hcmdpbi1yaWdodDogMC41ZW07IH1cbiAgLnUtc3BhY2UtYm90dG9tLS1zbWFsbFxcQG1lZGl1bSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC41ZW07IH1cbiAgLnUtc3BhY2UtbGVmdC0tc21hbGxcXEBtZWRpdW0ge1xuICAgIG1hcmdpbi1sZWZ0OiAwLjVlbTsgfVxuICAudS1zcGFjZS0tbWVkaXVtXFxAbWVkaXVtIHtcbiAgICBtYXJnaW46IDFlbTsgfVxuICAudS1zcGFjZS10b3AtLW1lZGl1bVxcQG1lZGl1bSB7XG4gICAgbWFyZ2luLXRvcDogMWVtOyB9XG4gIC51LXNwYWNlLXJpZ2h0LS1tZWRpdW1cXEBtZWRpdW0ge1xuICAgIG1hcmdpbi1yaWdodDogMWVtOyB9XG4gIC51LXNwYWNlLWJvdHRvbS0tbWVkaXVtXFxAbWVkaXVtIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxZW07IH1cbiAgLnUtc3BhY2UtbGVmdC0tbWVkaXVtXFxAbWVkaXVtIHtcbiAgICBtYXJnaW4tbGVmdDogMWVtOyB9XG4gIC51LXNwYWNlLS1sYXJnZVxcQG1lZGl1bSB7XG4gICAgbWFyZ2luOiAxLjVlbTsgfVxuICAudS1zcGFjZS10b3AtLWxhcmdlXFxAbWVkaXVtIHtcbiAgICBtYXJnaW4tdG9wOiAxLjVlbTsgfVxuICAudS1zcGFjZS1yaWdodC0tbGFyZ2VcXEBtZWRpdW0ge1xuICAgIG1hcmdpbi1yaWdodDogMS41ZW07IH1cbiAgLnUtc3BhY2UtYm90dG9tLS1sYXJnZVxcQG1lZGl1bSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS41ZW07IH1cbiAgLnUtc3BhY2UtbGVmdC0tbGFyZ2VcXEBtZWRpdW0ge1xuICAgIG1hcmdpbi1sZWZ0OiAxLjVlbTsgfVxuICAudS1zcGFjZS0teGxhcmdlXFxAbWVkaXVtIHtcbiAgICBtYXJnaW46IDJlbTsgfVxuICAudS1zcGFjZS10b3AtLXhsYXJnZVxcQG1lZGl1bSB7XG4gICAgbWFyZ2luLXRvcDogMmVtOyB9XG4gIC51LXNwYWNlLXJpZ2h0LS14bGFyZ2VcXEBtZWRpdW0ge1xuICAgIG1hcmdpbi1yaWdodDogMmVtOyB9XG4gIC51LXNwYWNlLWJvdHRvbS0teGxhcmdlXFxAbWVkaXVtIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyZW07IH1cbiAgLnUtc3BhY2UtbGVmdC0teGxhcmdlXFxAbWVkaXVtIHtcbiAgICBtYXJnaW4tbGVmdDogMmVtOyB9XG4gIC51LXNwYWNlLS1zdXBlclxcQG1lZGl1bSB7XG4gICAgbWFyZ2luOiAzZW07IH1cbiAgLnUtc3BhY2UtdG9wLS1zdXBlclxcQG1lZGl1bSB7XG4gICAgbWFyZ2luLXRvcDogM2VtOyB9XG4gIC51LXNwYWNlLXJpZ2h0LS1zdXBlclxcQG1lZGl1bSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAzZW07IH1cbiAgLnUtc3BhY2UtYm90dG9tLS1zdXBlclxcQG1lZGl1bSB7XG4gICAgbWFyZ2luLWJvdHRvbTogM2VtOyB9XG4gIC51LXNwYWNlLWxlZnQtLXN1cGVyXFxAbWVkaXVtIHtcbiAgICBtYXJnaW4tbGVmdDogM2VtOyB9XG4gIC51LXBhZGRpbmctLW5vbmVcXEBtZWRpdW0ge1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgLnUtcGFkZGluZy10b3AtLW5vbmVcXEBtZWRpdW0ge1xuICAgIHBhZGRpbmctdG9wOiAwOyB9XG4gIC51LXBhZGRpbmctcmlnaHQtLW5vbmVcXEBtZWRpdW0ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgLnUtcGFkZGluZy1ib3R0b20tLW5vbmVcXEBtZWRpdW0ge1xuICAgIHBhZGRpbmctYm90dG9tOiAwOyB9XG4gIC51LXBhZGRpbmctbGVmdC0tbm9uZVxcQG1lZGl1bSB7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gIC51LXBhZGRpbmctLXRpbnlcXEBtZWRpdW0ge1xuICAgIHBhZGRpbmc6IDAuMTI1ZW07IH1cbiAgLnUtcGFkZGluZy10b3AtLXRpbnlcXEBtZWRpdW0ge1xuICAgIHBhZGRpbmctdG9wOiAwLjEyNWVtOyB9XG4gIC51LXBhZGRpbmctcmlnaHQtLXRpbnlcXEBtZWRpdW0ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuMTI1ZW07IH1cbiAgLnUtcGFkZGluZy1ib3R0b20tLXRpbnlcXEBtZWRpdW0ge1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjEyNWVtOyB9XG4gIC51LXBhZGRpbmctbGVmdC0tdGlueVxcQG1lZGl1bSB7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjEyNWVtOyB9XG4gIC51LXBhZGRpbmctLXhzbWFsbFxcQG1lZGl1bSB7XG4gICAgcGFkZGluZzogMC4yNWVtOyB9XG4gIC51LXBhZGRpbmctdG9wLS14c21hbGxcXEBtZWRpdW0ge1xuICAgIHBhZGRpbmctdG9wOiAwLjI1ZW07IH1cbiAgLnUtcGFkZGluZy1yaWdodC0teHNtYWxsXFxAbWVkaXVtIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjI1ZW07IH1cbiAgLnUtcGFkZGluZy1ib3R0b20tLXhzbWFsbFxcQG1lZGl1bSB7XG4gICAgcGFkZGluZy1ib3R0b206IDAuMjVlbTsgfVxuICAudS1wYWRkaW5nLWxlZnQtLXhzbWFsbFxcQG1lZGl1bSB7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjI1ZW07IH1cbiAgLnUtcGFkZGluZy0tc21hbGxcXEBtZWRpdW0ge1xuICAgIHBhZGRpbmc6IDAuNWVtOyB9XG4gIC51LXBhZGRpbmctdG9wLS1zbWFsbFxcQG1lZGl1bSB7XG4gICAgcGFkZGluZy10b3A6IDAuNWVtOyB9XG4gIC51LXBhZGRpbmctcmlnaHQtLXNtYWxsXFxAbWVkaXVtIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVlbTsgfVxuICAudS1wYWRkaW5nLWJvdHRvbS0tc21hbGxcXEBtZWRpdW0ge1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjVlbTsgfVxuICAudS1wYWRkaW5nLWxlZnQtLXNtYWxsXFxAbWVkaXVtIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNWVtOyB9XG4gIC51LXBhZGRpbmctLW1lZGl1bVxcQG1lZGl1bSB7XG4gICAgcGFkZGluZzogMWVtOyB9XG4gIC51LXBhZGRpbmctdG9wLS1tZWRpdW1cXEBtZWRpdW0ge1xuICAgIHBhZGRpbmctdG9wOiAxZW07IH1cbiAgLnUtcGFkZGluZy1yaWdodC0tbWVkaXVtXFxAbWVkaXVtIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxZW07IH1cbiAgLnUtcGFkZGluZy1ib3R0b20tLW1lZGl1bVxcQG1lZGl1bSB7XG4gICAgcGFkZGluZy1ib3R0b206IDFlbTsgfVxuICAudS1wYWRkaW5nLWxlZnQtLW1lZGl1bVxcQG1lZGl1bSB7XG4gICAgcGFkZGluZy1sZWZ0OiAxZW07IH1cbiAgLnUtcGFkZGluZy0tbGFyZ2VcXEBtZWRpdW0ge1xuICAgIHBhZGRpbmc6IDEuNWVtOyB9XG4gIC51LXBhZGRpbmctdG9wLS1sYXJnZVxcQG1lZGl1bSB7XG4gICAgcGFkZGluZy10b3A6IDEuNWVtOyB9XG4gIC51LXBhZGRpbmctcmlnaHQtLWxhcmdlXFxAbWVkaXVtIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjVlbTsgfVxuICAudS1wYWRkaW5nLWJvdHRvbS0tbGFyZ2VcXEBtZWRpdW0ge1xuICAgIHBhZGRpbmctYm90dG9tOiAxLjVlbTsgfVxuICAudS1wYWRkaW5nLWxlZnQtLWxhcmdlXFxAbWVkaXVtIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuNWVtOyB9XG4gIC51LXBhZGRpbmctLXhsYXJnZVxcQG1lZGl1bSB7XG4gICAgcGFkZGluZzogMmVtOyB9XG4gIC51LXBhZGRpbmctdG9wLS14bGFyZ2VcXEBtZWRpdW0ge1xuICAgIHBhZGRpbmctdG9wOiAyZW07IH1cbiAgLnUtcGFkZGluZy1yaWdodC0teGxhcmdlXFxAbWVkaXVtIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyZW07IH1cbiAgLnUtcGFkZGluZy1ib3R0b20tLXhsYXJnZVxcQG1lZGl1bSB7XG4gICAgcGFkZGluZy1ib3R0b206IDJlbTsgfVxuICAudS1wYWRkaW5nLWxlZnQtLXhsYXJnZVxcQG1lZGl1bSB7XG4gICAgcGFkZGluZy1sZWZ0OiAyZW07IH1cbiAgLnUtcGFkZGluZy0tc3VwZXJcXEBtZWRpdW0ge1xuICAgIHBhZGRpbmc6IDNlbTsgfVxuICAudS1wYWRkaW5nLXRvcC0tc3VwZXJcXEBtZWRpdW0ge1xuICAgIHBhZGRpbmctdG9wOiAzZW07IH1cbiAgLnUtcGFkZGluZy1yaWdodC0tc3VwZXJcXEBtZWRpdW0ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDNlbTsgfVxuICAudS1wYWRkaW5nLWJvdHRvbS0tc3VwZXJcXEBtZWRpdW0ge1xuICAgIHBhZGRpbmctYm90dG9tOiAzZW07IH1cbiAgLnUtcGFkZGluZy1sZWZ0LS1zdXBlclxcQG1lZGl1bSB7XG4gICAgcGFkZGluZy1sZWZ0OiAzZW07IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNjRyZW0pIHtcbiAgLnUtbm8tc3BhY2VcXEBsYXJnZSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgLnUtc3BhY2UtLW5vbmVcXEBsYXJnZSB7XG4gICAgbWFyZ2luOiAwOyB9XG4gIC51LXNwYWNlLXRvcC0tbm9uZVxcQGxhcmdlIHtcbiAgICBtYXJnaW4tdG9wOiAwOyB9XG4gIC51LXNwYWNlLXJpZ2h0LS1ub25lXFxAbGFyZ2Uge1xuICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAudS1zcGFjZS1ib3R0b20tLW5vbmVcXEBsYXJnZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAudS1zcGFjZS1sZWZ0LS1ub25lXFxAbGFyZ2Uge1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIC51LXNwYWNlLS10aW55XFxAbGFyZ2Uge1xuICAgIG1hcmdpbjogMC4xMjVlbTsgfVxuICAudS1zcGFjZS10b3AtLXRpbnlcXEBsYXJnZSB7XG4gICAgbWFyZ2luLXRvcDogMC4xMjVlbTsgfVxuICAudS1zcGFjZS1yaWdodC0tdGlueVxcQGxhcmdlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuMTI1ZW07IH1cbiAgLnUtc3BhY2UtYm90dG9tLS10aW55XFxAbGFyZ2Uge1xuICAgIG1hcmdpbi1ib3R0b206IDAuMTI1ZW07IH1cbiAgLnUtc3BhY2UtbGVmdC0tdGlueVxcQGxhcmdlIHtcbiAgICBtYXJnaW4tbGVmdDogMC4xMjVlbTsgfVxuICAudS1zcGFjZS0teHNtYWxsXFxAbGFyZ2Uge1xuICAgIG1hcmdpbjogMC4yNWVtOyB9XG4gIC51LXNwYWNlLXRvcC0teHNtYWxsXFxAbGFyZ2Uge1xuICAgIG1hcmdpbi10b3A6IDAuMjVlbTsgfVxuICAudS1zcGFjZS1yaWdodC0teHNtYWxsXFxAbGFyZ2Uge1xuICAgIG1hcmdpbi1yaWdodDogMC4yNWVtOyB9XG4gIC51LXNwYWNlLWJvdHRvbS0teHNtYWxsXFxAbGFyZ2Uge1xuICAgIG1hcmdpbi1ib3R0b206IDAuMjVlbTsgfVxuICAudS1zcGFjZS1sZWZ0LS14c21hbGxcXEBsYXJnZSB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuMjVlbTsgfVxuICAudS1zcGFjZS0tc21hbGxcXEBsYXJnZSB7XG4gICAgbWFyZ2luOiAwLjVlbTsgfVxuICAudS1zcGFjZS10b3AtLXNtYWxsXFxAbGFyZ2Uge1xuICAgIG1hcmdpbi10b3A6IDAuNWVtOyB9XG4gIC51LXNwYWNlLXJpZ2h0LS1zbWFsbFxcQGxhcmdlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNWVtOyB9XG4gIC51LXNwYWNlLWJvdHRvbS0tc21hbGxcXEBsYXJnZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC41ZW07IH1cbiAgLnUtc3BhY2UtbGVmdC0tc21hbGxcXEBsYXJnZSB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuNWVtOyB9XG4gIC51LXNwYWNlLS1tZWRpdW1cXEBsYXJnZSB7XG4gICAgbWFyZ2luOiAxZW07IH1cbiAgLnUtc3BhY2UtdG9wLS1tZWRpdW1cXEBsYXJnZSB7XG4gICAgbWFyZ2luLXRvcDogMWVtOyB9XG4gIC51LXNwYWNlLXJpZ2h0LS1tZWRpdW1cXEBsYXJnZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxZW07IH1cbiAgLnUtc3BhY2UtYm90dG9tLS1tZWRpdW1cXEBsYXJnZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMWVtOyB9XG4gIC51LXNwYWNlLWxlZnQtLW1lZGl1bVxcQGxhcmdlIHtcbiAgICBtYXJnaW4tbGVmdDogMWVtOyB9XG4gIC51LXNwYWNlLS1sYXJnZVxcQGxhcmdlIHtcbiAgICBtYXJnaW46IDEuNWVtOyB9XG4gIC51LXNwYWNlLXRvcC0tbGFyZ2VcXEBsYXJnZSB7XG4gICAgbWFyZ2luLXRvcDogMS41ZW07IH1cbiAgLnUtc3BhY2UtcmlnaHQtLWxhcmdlXFxAbGFyZ2Uge1xuICAgIG1hcmdpbi1yaWdodDogMS41ZW07IH1cbiAgLnUtc3BhY2UtYm90dG9tLS1sYXJnZVxcQGxhcmdlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVlbTsgfVxuICAudS1zcGFjZS1sZWZ0LS1sYXJnZVxcQGxhcmdlIHtcbiAgICBtYXJnaW4tbGVmdDogMS41ZW07IH1cbiAgLnUtc3BhY2UtLXhsYXJnZVxcQGxhcmdlIHtcbiAgICBtYXJnaW46IDJlbTsgfVxuICAudS1zcGFjZS10b3AtLXhsYXJnZVxcQGxhcmdlIHtcbiAgICBtYXJnaW4tdG9wOiAyZW07IH1cbiAgLnUtc3BhY2UtcmlnaHQtLXhsYXJnZVxcQGxhcmdlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDJlbTsgfVxuICAudS1zcGFjZS1ib3R0b20tLXhsYXJnZVxcQGxhcmdlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyZW07IH1cbiAgLnUtc3BhY2UtbGVmdC0teGxhcmdlXFxAbGFyZ2Uge1xuICAgIG1hcmdpbi1sZWZ0OiAyZW07IH1cbiAgLnUtc3BhY2UtLXN1cGVyXFxAbGFyZ2Uge1xuICAgIG1hcmdpbjogM2VtOyB9XG4gIC51LXNwYWNlLXRvcC0tc3VwZXJcXEBsYXJnZSB7XG4gICAgbWFyZ2luLXRvcDogM2VtOyB9XG4gIC51LXNwYWNlLXJpZ2h0LS1zdXBlclxcQGxhcmdlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDNlbTsgfVxuICAudS1zcGFjZS1ib3R0b20tLXN1cGVyXFxAbGFyZ2Uge1xuICAgIG1hcmdpbi1ib3R0b206IDNlbTsgfVxuICAudS1zcGFjZS1sZWZ0LS1zdXBlclxcQGxhcmdlIHtcbiAgICBtYXJnaW4tbGVmdDogM2VtOyB9XG4gIC51LXBhZGRpbmctLW5vbmVcXEBsYXJnZSB7XG4gICAgcGFkZGluZzogMDsgfVxuICAudS1wYWRkaW5nLXRvcC0tbm9uZVxcQGxhcmdlIHtcbiAgICBwYWRkaW5nLXRvcDogMDsgfVxuICAudS1wYWRkaW5nLXJpZ2h0LS1ub25lXFxAbGFyZ2Uge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgLnUtcGFkZGluZy1ib3R0b20tLW5vbmVcXEBsYXJnZSB7XG4gICAgcGFkZGluZy1ib3R0b206IDA7IH1cbiAgLnUtcGFkZGluZy1sZWZ0LS1ub25lXFxAbGFyZ2Uge1xuICAgIHBhZGRpbmctbGVmdDogMDsgfVxuICAudS1wYWRkaW5nLS10aW55XFxAbGFyZ2Uge1xuICAgIHBhZGRpbmc6IDAuMTI1ZW07IH1cbiAgLnUtcGFkZGluZy10b3AtLXRpbnlcXEBsYXJnZSB7XG4gICAgcGFkZGluZy10b3A6IDAuMTI1ZW07IH1cbiAgLnUtcGFkZGluZy1yaWdodC0tdGlueVxcQGxhcmdlIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjEyNWVtOyB9XG4gIC51LXBhZGRpbmctYm90dG9tLS10aW55XFxAbGFyZ2Uge1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjEyNWVtOyB9XG4gIC51LXBhZGRpbmctbGVmdC0tdGlueVxcQGxhcmdlIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMTI1ZW07IH1cbiAgLnUtcGFkZGluZy0teHNtYWxsXFxAbGFyZ2Uge1xuICAgIHBhZGRpbmc6IDAuMjVlbTsgfVxuICAudS1wYWRkaW5nLXRvcC0teHNtYWxsXFxAbGFyZ2Uge1xuICAgIHBhZGRpbmctdG9wOiAwLjI1ZW07IH1cbiAgLnUtcGFkZGluZy1yaWdodC0teHNtYWxsXFxAbGFyZ2Uge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuMjVlbTsgfVxuICAudS1wYWRkaW5nLWJvdHRvbS0teHNtYWxsXFxAbGFyZ2Uge1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjI1ZW07IH1cbiAgLnUtcGFkZGluZy1sZWZ0LS14c21hbGxcXEBsYXJnZSB7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjI1ZW07IH1cbiAgLnUtcGFkZGluZy0tc21hbGxcXEBsYXJnZSB7XG4gICAgcGFkZGluZzogMC41ZW07IH1cbiAgLnUtcGFkZGluZy10b3AtLXNtYWxsXFxAbGFyZ2Uge1xuICAgIHBhZGRpbmctdG9wOiAwLjVlbTsgfVxuICAudS1wYWRkaW5nLXJpZ2h0LS1zbWFsbFxcQGxhcmdlIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVlbTsgfVxuICAudS1wYWRkaW5nLWJvdHRvbS0tc21hbGxcXEBsYXJnZSB7XG4gICAgcGFkZGluZy1ib3R0b206IDAuNWVtOyB9XG4gIC51LXBhZGRpbmctbGVmdC0tc21hbGxcXEBsYXJnZSB7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjVlbTsgfVxuICAudS1wYWRkaW5nLS1tZWRpdW1cXEBsYXJnZSB7XG4gICAgcGFkZGluZzogMWVtOyB9XG4gIC51LXBhZGRpbmctdG9wLS1tZWRpdW1cXEBsYXJnZSB7XG4gICAgcGFkZGluZy10b3A6IDFlbTsgfVxuICAudS1wYWRkaW5nLXJpZ2h0LS1tZWRpdW1cXEBsYXJnZSB7XG4gICAgcGFkZGluZy1yaWdodDogMWVtOyB9XG4gIC51LXBhZGRpbmctYm90dG9tLS1tZWRpdW1cXEBsYXJnZSB7XG4gICAgcGFkZGluZy1ib3R0b206IDFlbTsgfVxuICAudS1wYWRkaW5nLWxlZnQtLW1lZGl1bVxcQGxhcmdlIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDFlbTsgfVxuICAudS1wYWRkaW5nLS1sYXJnZVxcQGxhcmdlIHtcbiAgICBwYWRkaW5nOiAxLjVlbTsgfVxuICAudS1wYWRkaW5nLXRvcC0tbGFyZ2VcXEBsYXJnZSB7XG4gICAgcGFkZGluZy10b3A6IDEuNWVtOyB9XG4gIC51LXBhZGRpbmctcmlnaHQtLWxhcmdlXFxAbGFyZ2Uge1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuNWVtOyB9XG4gIC51LXBhZGRpbmctYm90dG9tLS1sYXJnZVxcQGxhcmdlIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMS41ZW07IH1cbiAgLnUtcGFkZGluZy1sZWZ0LS1sYXJnZVxcQGxhcmdlIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuNWVtOyB9XG4gIC51LXBhZGRpbmctLXhsYXJnZVxcQGxhcmdlIHtcbiAgICBwYWRkaW5nOiAyZW07IH1cbiAgLnUtcGFkZGluZy10b3AtLXhsYXJnZVxcQGxhcmdlIHtcbiAgICBwYWRkaW5nLXRvcDogMmVtOyB9XG4gIC51LXBhZGRpbmctcmlnaHQtLXhsYXJnZVxcQGxhcmdlIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyZW07IH1cbiAgLnUtcGFkZGluZy1ib3R0b20tLXhsYXJnZVxcQGxhcmdlIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMmVtOyB9XG4gIC51LXBhZGRpbmctbGVmdC0teGxhcmdlXFxAbGFyZ2Uge1xuICAgIHBhZGRpbmctbGVmdDogMmVtOyB9XG4gIC51LXBhZGRpbmctLXN1cGVyXFxAbGFyZ2Uge1xuICAgIHBhZGRpbmc6IDNlbTsgfVxuICAudS1wYWRkaW5nLXRvcC0tc3VwZXJcXEBsYXJnZSB7XG4gICAgcGFkZGluZy10b3A6IDNlbTsgfVxuICAudS1wYWRkaW5nLXJpZ2h0LS1zdXBlclxcQGxhcmdlIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzZW07IH1cbiAgLnUtcGFkZGluZy1ib3R0b20tLXN1cGVyXFxAbGFyZ2Uge1xuICAgIHBhZGRpbmctYm90dG9tOiAzZW07IH1cbiAgLnUtcGFkZGluZy1sZWZ0LS1zdXBlclxcQGxhcmdlIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDNlbTsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3OHJlbSkge1xuICAudS1uby1zcGFjZVxcQHhsYXJnZSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgLnUtc3BhY2UtLW5vbmVcXEB4bGFyZ2Uge1xuICAgIG1hcmdpbjogMDsgfVxuICAudS1zcGFjZS10b3AtLW5vbmVcXEB4bGFyZ2Uge1xuICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgLnUtc3BhY2UtcmlnaHQtLW5vbmVcXEB4bGFyZ2Uge1xuICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAudS1zcGFjZS1ib3R0b20tLW5vbmVcXEB4bGFyZ2Uge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLnUtc3BhY2UtbGVmdC0tbm9uZVxcQHhsYXJnZSB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLnUtc3BhY2UtLXRpbnlcXEB4bGFyZ2Uge1xuICAgIG1hcmdpbjogMC4xMjVlbTsgfVxuICAudS1zcGFjZS10b3AtLXRpbnlcXEB4bGFyZ2Uge1xuICAgIG1hcmdpbi10b3A6IDAuMTI1ZW07IH1cbiAgLnUtc3BhY2UtcmlnaHQtLXRpbnlcXEB4bGFyZ2Uge1xuICAgIG1hcmdpbi1yaWdodDogMC4xMjVlbTsgfVxuICAudS1zcGFjZS1ib3R0b20tLXRpbnlcXEB4bGFyZ2Uge1xuICAgIG1hcmdpbi1ib3R0b206IDAuMTI1ZW07IH1cbiAgLnUtc3BhY2UtbGVmdC0tdGlueVxcQHhsYXJnZSB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuMTI1ZW07IH1cbiAgLnUtc3BhY2UtLXhzbWFsbFxcQHhsYXJnZSB7XG4gICAgbWFyZ2luOiAwLjI1ZW07IH1cbiAgLnUtc3BhY2UtdG9wLS14c21hbGxcXEB4bGFyZ2Uge1xuICAgIG1hcmdpbi10b3A6IDAuMjVlbTsgfVxuICAudS1zcGFjZS1yaWdodC0teHNtYWxsXFxAeGxhcmdlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuMjVlbTsgfVxuICAudS1zcGFjZS1ib3R0b20tLXhzbWFsbFxcQHhsYXJnZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC4yNWVtOyB9XG4gIC51LXNwYWNlLWxlZnQtLXhzbWFsbFxcQHhsYXJnZSB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuMjVlbTsgfVxuICAudS1zcGFjZS0tc21hbGxcXEB4bGFyZ2Uge1xuICAgIG1hcmdpbjogMC41ZW07IH1cbiAgLnUtc3BhY2UtdG9wLS1zbWFsbFxcQHhsYXJnZSB7XG4gICAgbWFyZ2luLXRvcDogMC41ZW07IH1cbiAgLnUtc3BhY2UtcmlnaHQtLXNtYWxsXFxAeGxhcmdlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNWVtOyB9XG4gIC51LXNwYWNlLWJvdHRvbS0tc21hbGxcXEB4bGFyZ2Uge1xuICAgIG1hcmdpbi1ib3R0b206IDAuNWVtOyB9XG4gIC51LXNwYWNlLWxlZnQtLXNtYWxsXFxAeGxhcmdlIHtcbiAgICBtYXJnaW4tbGVmdDogMC41ZW07IH1cbiAgLnUtc3BhY2UtLW1lZGl1bVxcQHhsYXJnZSB7XG4gICAgbWFyZ2luOiAxZW07IH1cbiAgLnUtc3BhY2UtdG9wLS1tZWRpdW1cXEB4bGFyZ2Uge1xuICAgIG1hcmdpbi10b3A6IDFlbTsgfVxuICAudS1zcGFjZS1yaWdodC0tbWVkaXVtXFxAeGxhcmdlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDFlbTsgfVxuICAudS1zcGFjZS1ib3R0b20tLW1lZGl1bVxcQHhsYXJnZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMWVtOyB9XG4gIC51LXNwYWNlLWxlZnQtLW1lZGl1bVxcQHhsYXJnZSB7XG4gICAgbWFyZ2luLWxlZnQ6IDFlbTsgfVxuICAudS1zcGFjZS0tbGFyZ2VcXEB4bGFyZ2Uge1xuICAgIG1hcmdpbjogMS41ZW07IH1cbiAgLnUtc3BhY2UtdG9wLS1sYXJnZVxcQHhsYXJnZSB7XG4gICAgbWFyZ2luLXRvcDogMS41ZW07IH1cbiAgLnUtc3BhY2UtcmlnaHQtLWxhcmdlXFxAeGxhcmdlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEuNWVtOyB9XG4gIC51LXNwYWNlLWJvdHRvbS0tbGFyZ2VcXEB4bGFyZ2Uge1xuICAgIG1hcmdpbi1ib3R0b206IDEuNWVtOyB9XG4gIC51LXNwYWNlLWxlZnQtLWxhcmdlXFxAeGxhcmdlIHtcbiAgICBtYXJnaW4tbGVmdDogMS41ZW07IH1cbiAgLnUtc3BhY2UtLXhsYXJnZVxcQHhsYXJnZSB7XG4gICAgbWFyZ2luOiAyZW07IH1cbiAgLnUtc3BhY2UtdG9wLS14bGFyZ2VcXEB4bGFyZ2Uge1xuICAgIG1hcmdpbi10b3A6IDJlbTsgfVxuICAudS1zcGFjZS1yaWdodC0teGxhcmdlXFxAeGxhcmdlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDJlbTsgfVxuICAudS1zcGFjZS1ib3R0b20tLXhsYXJnZVxcQHhsYXJnZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMmVtOyB9XG4gIC51LXNwYWNlLWxlZnQtLXhsYXJnZVxcQHhsYXJnZSB7XG4gICAgbWFyZ2luLWxlZnQ6IDJlbTsgfVxuICAudS1zcGFjZS0tc3VwZXJcXEB4bGFyZ2Uge1xuICAgIG1hcmdpbjogM2VtOyB9XG4gIC51LXNwYWNlLXRvcC0tc3VwZXJcXEB4bGFyZ2Uge1xuICAgIG1hcmdpbi10b3A6IDNlbTsgfVxuICAudS1zcGFjZS1yaWdodC0tc3VwZXJcXEB4bGFyZ2Uge1xuICAgIG1hcmdpbi1yaWdodDogM2VtOyB9XG4gIC51LXNwYWNlLWJvdHRvbS0tc3VwZXJcXEB4bGFyZ2Uge1xuICAgIG1hcmdpbi1ib3R0b206IDNlbTsgfVxuICAudS1zcGFjZS1sZWZ0LS1zdXBlclxcQHhsYXJnZSB7XG4gICAgbWFyZ2luLWxlZnQ6IDNlbTsgfVxuICAudS1wYWRkaW5nLS1ub25lXFxAeGxhcmdlIHtcbiAgICBwYWRkaW5nOiAwOyB9XG4gIC51LXBhZGRpbmctdG9wLS1ub25lXFxAeGxhcmdlIHtcbiAgICBwYWRkaW5nLXRvcDogMDsgfVxuICAudS1wYWRkaW5nLXJpZ2h0LS1ub25lXFxAeGxhcmdlIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG4gIC51LXBhZGRpbmctYm90dG9tLS1ub25lXFxAeGxhcmdlIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDsgfVxuICAudS1wYWRkaW5nLWxlZnQtLW5vbmVcXEB4bGFyZ2Uge1xuICAgIHBhZGRpbmctbGVmdDogMDsgfVxuICAudS1wYWRkaW5nLS10aW55XFxAeGxhcmdlIHtcbiAgICBwYWRkaW5nOiAwLjEyNWVtOyB9XG4gIC51LXBhZGRpbmctdG9wLS10aW55XFxAeGxhcmdlIHtcbiAgICBwYWRkaW5nLXRvcDogMC4xMjVlbTsgfVxuICAudS1wYWRkaW5nLXJpZ2h0LS10aW55XFxAeGxhcmdlIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjEyNWVtOyB9XG4gIC51LXBhZGRpbmctYm90dG9tLS10aW55XFxAeGxhcmdlIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC4xMjVlbTsgfVxuICAudS1wYWRkaW5nLWxlZnQtLXRpbnlcXEB4bGFyZ2Uge1xuICAgIHBhZGRpbmctbGVmdDogMC4xMjVlbTsgfVxuICAudS1wYWRkaW5nLS14c21hbGxcXEB4bGFyZ2Uge1xuICAgIHBhZGRpbmc6IDAuMjVlbTsgfVxuICAudS1wYWRkaW5nLXRvcC0teHNtYWxsXFxAeGxhcmdlIHtcbiAgICBwYWRkaW5nLXRvcDogMC4yNWVtOyB9XG4gIC51LXBhZGRpbmctcmlnaHQtLXhzbWFsbFxcQHhsYXJnZSB7XG4gICAgcGFkZGluZy1yaWdodDogMC4yNWVtOyB9XG4gIC51LXBhZGRpbmctYm90dG9tLS14c21hbGxcXEB4bGFyZ2Uge1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjI1ZW07IH1cbiAgLnUtcGFkZGluZy1sZWZ0LS14c21hbGxcXEB4bGFyZ2Uge1xuICAgIHBhZGRpbmctbGVmdDogMC4yNWVtOyB9XG4gIC51LXBhZGRpbmctLXNtYWxsXFxAeGxhcmdlIHtcbiAgICBwYWRkaW5nOiAwLjVlbTsgfVxuICAudS1wYWRkaW5nLXRvcC0tc21hbGxcXEB4bGFyZ2Uge1xuICAgIHBhZGRpbmctdG9wOiAwLjVlbTsgfVxuICAudS1wYWRkaW5nLXJpZ2h0LS1zbWFsbFxcQHhsYXJnZSB7XG4gICAgcGFkZGluZy1yaWdodDogMC41ZW07IH1cbiAgLnUtcGFkZGluZy1ib3R0b20tLXNtYWxsXFxAeGxhcmdlIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC41ZW07IH1cbiAgLnUtcGFkZGluZy1sZWZ0LS1zbWFsbFxcQHhsYXJnZSB7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjVlbTsgfVxuICAudS1wYWRkaW5nLS1tZWRpdW1cXEB4bGFyZ2Uge1xuICAgIHBhZGRpbmc6IDFlbTsgfVxuICAudS1wYWRkaW5nLXRvcC0tbWVkaXVtXFxAeGxhcmdlIHtcbiAgICBwYWRkaW5nLXRvcDogMWVtOyB9XG4gIC51LXBhZGRpbmctcmlnaHQtLW1lZGl1bVxcQHhsYXJnZSB7XG4gICAgcGFkZGluZy1yaWdodDogMWVtOyB9XG4gIC51LXBhZGRpbmctYm90dG9tLS1tZWRpdW1cXEB4bGFyZ2Uge1xuICAgIHBhZGRpbmctYm90dG9tOiAxZW07IH1cbiAgLnUtcGFkZGluZy1sZWZ0LS1tZWRpdW1cXEB4bGFyZ2Uge1xuICAgIHBhZGRpbmctbGVmdDogMWVtOyB9XG4gIC51LXBhZGRpbmctLWxhcmdlXFxAeGxhcmdlIHtcbiAgICBwYWRkaW5nOiAxLjVlbTsgfVxuICAudS1wYWRkaW5nLXRvcC0tbGFyZ2VcXEB4bGFyZ2Uge1xuICAgIHBhZGRpbmctdG9wOiAxLjVlbTsgfVxuICAudS1wYWRkaW5nLXJpZ2h0LS1sYXJnZVxcQHhsYXJnZSB7XG4gICAgcGFkZGluZy1yaWdodDogMS41ZW07IH1cbiAgLnUtcGFkZGluZy1ib3R0b20tLWxhcmdlXFxAeGxhcmdlIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMS41ZW07IH1cbiAgLnUtcGFkZGluZy1sZWZ0LS1sYXJnZVxcQHhsYXJnZSB7XG4gICAgcGFkZGluZy1sZWZ0OiAxLjVlbTsgfVxuICAudS1wYWRkaW5nLS14bGFyZ2VcXEB4bGFyZ2Uge1xuICAgIHBhZGRpbmc6IDJlbTsgfVxuICAudS1wYWRkaW5nLXRvcC0teGxhcmdlXFxAeGxhcmdlIHtcbiAgICBwYWRkaW5nLXRvcDogMmVtOyB9XG4gIC51LXBhZGRpbmctcmlnaHQtLXhsYXJnZVxcQHhsYXJnZSB7XG4gICAgcGFkZGluZy1yaWdodDogMmVtOyB9XG4gIC51LXBhZGRpbmctYm90dG9tLS14bGFyZ2VcXEB4bGFyZ2Uge1xuICAgIHBhZGRpbmctYm90dG9tOiAyZW07IH1cbiAgLnUtcGFkZGluZy1sZWZ0LS14bGFyZ2VcXEB4bGFyZ2Uge1xuICAgIHBhZGRpbmctbGVmdDogMmVtOyB9XG4gIC51LXBhZGRpbmctLXN1cGVyXFxAeGxhcmdlIHtcbiAgICBwYWRkaW5nOiAzZW07IH1cbiAgLnUtcGFkZGluZy10b3AtLXN1cGVyXFxAeGxhcmdlIHtcbiAgICBwYWRkaW5nLXRvcDogM2VtOyB9XG4gIC51LXBhZGRpbmctcmlnaHQtLXN1cGVyXFxAeGxhcmdlIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzZW07IH1cbiAgLnUtcGFkZGluZy1ib3R0b20tLXN1cGVyXFxAeGxhcmdlIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogM2VtOyB9XG4gIC51LXBhZGRpbmctbGVmdC0tc3VwZXJcXEB4bGFyZ2Uge1xuICAgIHBhZGRpbmctbGVmdDogM2VtOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyNXJlbSkge1xuICAudS1uby1zcGFjZVxcQHN1cGVyIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDsgfVxuICAudS1zcGFjZS0tbm9uZVxcQHN1cGVyIHtcbiAgICBtYXJnaW46IDA7IH1cbiAgLnUtc3BhY2UtdG9wLS1ub25lXFxAc3VwZXIge1xuICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgLnUtc3BhY2UtcmlnaHQtLW5vbmVcXEBzdXBlciB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gIC51LXNwYWNlLWJvdHRvbS0tbm9uZVxcQHN1cGVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC51LXNwYWNlLWxlZnQtLW5vbmVcXEBzdXBlciB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLnUtc3BhY2UtLXRpbnlcXEBzdXBlciB7XG4gICAgbWFyZ2luOiAwLjEyNWVtOyB9XG4gIC51LXNwYWNlLXRvcC0tdGlueVxcQHN1cGVyIHtcbiAgICBtYXJnaW4tdG9wOiAwLjEyNWVtOyB9XG4gIC51LXNwYWNlLXJpZ2h0LS10aW55XFxAc3VwZXIge1xuICAgIG1hcmdpbi1yaWdodDogMC4xMjVlbTsgfVxuICAudS1zcGFjZS1ib3R0b20tLXRpbnlcXEBzdXBlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC4xMjVlbTsgfVxuICAudS1zcGFjZS1sZWZ0LS10aW55XFxAc3VwZXIge1xuICAgIG1hcmdpbi1sZWZ0OiAwLjEyNWVtOyB9XG4gIC51LXNwYWNlLS14c21hbGxcXEBzdXBlciB7XG4gICAgbWFyZ2luOiAwLjI1ZW07IH1cbiAgLnUtc3BhY2UtdG9wLS14c21hbGxcXEBzdXBlciB7XG4gICAgbWFyZ2luLXRvcDogMC4yNWVtOyB9XG4gIC51LXNwYWNlLXJpZ2h0LS14c21hbGxcXEBzdXBlciB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjI1ZW07IH1cbiAgLnUtc3BhY2UtYm90dG9tLS14c21hbGxcXEBzdXBlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC4yNWVtOyB9XG4gIC51LXNwYWNlLWxlZnQtLXhzbWFsbFxcQHN1cGVyIHtcbiAgICBtYXJnaW4tbGVmdDogMC4yNWVtOyB9XG4gIC51LXNwYWNlLS1zbWFsbFxcQHN1cGVyIHtcbiAgICBtYXJnaW46IDAuNWVtOyB9XG4gIC51LXNwYWNlLXRvcC0tc21hbGxcXEBzdXBlciB7XG4gICAgbWFyZ2luLXRvcDogMC41ZW07IH1cbiAgLnUtc3BhY2UtcmlnaHQtLXNtYWxsXFxAc3VwZXIge1xuICAgIG1hcmdpbi1yaWdodDogMC41ZW07IH1cbiAgLnUtc3BhY2UtYm90dG9tLS1zbWFsbFxcQHN1cGVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVlbTsgfVxuICAudS1zcGFjZS1sZWZ0LS1zbWFsbFxcQHN1cGVyIHtcbiAgICBtYXJnaW4tbGVmdDogMC41ZW07IH1cbiAgLnUtc3BhY2UtLW1lZGl1bVxcQHN1cGVyIHtcbiAgICBtYXJnaW46IDFlbTsgfVxuICAudS1zcGFjZS10b3AtLW1lZGl1bVxcQHN1cGVyIHtcbiAgICBtYXJnaW4tdG9wOiAxZW07IH1cbiAgLnUtc3BhY2UtcmlnaHQtLW1lZGl1bVxcQHN1cGVyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDFlbTsgfVxuICAudS1zcGFjZS1ib3R0b20tLW1lZGl1bVxcQHN1cGVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxZW07IH1cbiAgLnUtc3BhY2UtbGVmdC0tbWVkaXVtXFxAc3VwZXIge1xuICAgIG1hcmdpbi1sZWZ0OiAxZW07IH1cbiAgLnUtc3BhY2UtLWxhcmdlXFxAc3VwZXIge1xuICAgIG1hcmdpbjogMS41ZW07IH1cbiAgLnUtc3BhY2UtdG9wLS1sYXJnZVxcQHN1cGVyIHtcbiAgICBtYXJnaW4tdG9wOiAxLjVlbTsgfVxuICAudS1zcGFjZS1yaWdodC0tbGFyZ2VcXEBzdXBlciB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxLjVlbTsgfVxuICAudS1zcGFjZS1ib3R0b20tLWxhcmdlXFxAc3VwZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDEuNWVtOyB9XG4gIC51LXNwYWNlLWxlZnQtLWxhcmdlXFxAc3VwZXIge1xuICAgIG1hcmdpbi1sZWZ0OiAxLjVlbTsgfVxuICAudS1zcGFjZS0teGxhcmdlXFxAc3VwZXIge1xuICAgIG1hcmdpbjogMmVtOyB9XG4gIC51LXNwYWNlLXRvcC0teGxhcmdlXFxAc3VwZXIge1xuICAgIG1hcmdpbi10b3A6IDJlbTsgfVxuICAudS1zcGFjZS1yaWdodC0teGxhcmdlXFxAc3VwZXIge1xuICAgIG1hcmdpbi1yaWdodDogMmVtOyB9XG4gIC51LXNwYWNlLWJvdHRvbS0teGxhcmdlXFxAc3VwZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDJlbTsgfVxuICAudS1zcGFjZS1sZWZ0LS14bGFyZ2VcXEBzdXBlciB7XG4gICAgbWFyZ2luLWxlZnQ6IDJlbTsgfVxuICAudS1zcGFjZS0tc3VwZXJcXEBzdXBlciB7XG4gICAgbWFyZ2luOiAzZW07IH1cbiAgLnUtc3BhY2UtdG9wLS1zdXBlclxcQHN1cGVyIHtcbiAgICBtYXJnaW4tdG9wOiAzZW07IH1cbiAgLnUtc3BhY2UtcmlnaHQtLXN1cGVyXFxAc3VwZXIge1xuICAgIG1hcmdpbi1yaWdodDogM2VtOyB9XG4gIC51LXNwYWNlLWJvdHRvbS0tc3VwZXJcXEBzdXBlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogM2VtOyB9XG4gIC51LXNwYWNlLWxlZnQtLXN1cGVyXFxAc3VwZXIge1xuICAgIG1hcmdpbi1sZWZ0OiAzZW07IH1cbiAgLnUtcGFkZGluZy0tbm9uZVxcQHN1cGVyIHtcbiAgICBwYWRkaW5nOiAwOyB9XG4gIC51LXBhZGRpbmctdG9wLS1ub25lXFxAc3VwZXIge1xuICAgIHBhZGRpbmctdG9wOiAwOyB9XG4gIC51LXBhZGRpbmctcmlnaHQtLW5vbmVcXEBzdXBlciB7XG4gICAgcGFkZGluZy1yaWdodDogMDsgfVxuICAudS1wYWRkaW5nLWJvdHRvbS0tbm9uZVxcQHN1cGVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDsgfVxuICAudS1wYWRkaW5nLWxlZnQtLW5vbmVcXEBzdXBlciB7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gIC51LXBhZGRpbmctLXRpbnlcXEBzdXBlciB7XG4gICAgcGFkZGluZzogMC4xMjVlbTsgfVxuICAudS1wYWRkaW5nLXRvcC0tdGlueVxcQHN1cGVyIHtcbiAgICBwYWRkaW5nLXRvcDogMC4xMjVlbTsgfVxuICAudS1wYWRkaW5nLXJpZ2h0LS10aW55XFxAc3VwZXIge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuMTI1ZW07IH1cbiAgLnUtcGFkZGluZy1ib3R0b20tLXRpbnlcXEBzdXBlciB7XG4gICAgcGFkZGluZy1ib3R0b206IDAuMTI1ZW07IH1cbiAgLnUtcGFkZGluZy1sZWZ0LS10aW55XFxAc3VwZXIge1xuICAgIHBhZGRpbmctbGVmdDogMC4xMjVlbTsgfVxuICAudS1wYWRkaW5nLS14c21hbGxcXEBzdXBlciB7XG4gICAgcGFkZGluZzogMC4yNWVtOyB9XG4gIC51LXBhZGRpbmctdG9wLS14c21hbGxcXEBzdXBlciB7XG4gICAgcGFkZGluZy10b3A6IDAuMjVlbTsgfVxuICAudS1wYWRkaW5nLXJpZ2h0LS14c21hbGxcXEBzdXBlciB7XG4gICAgcGFkZGluZy1yaWdodDogMC4yNWVtOyB9XG4gIC51LXBhZGRpbmctYm90dG9tLS14c21hbGxcXEBzdXBlciB7XG4gICAgcGFkZGluZy1ib3R0b206IDAuMjVlbTsgfVxuICAudS1wYWRkaW5nLWxlZnQtLXhzbWFsbFxcQHN1cGVyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMjVlbTsgfVxuICAudS1wYWRkaW5nLS1zbWFsbFxcQHN1cGVyIHtcbiAgICBwYWRkaW5nOiAwLjVlbTsgfVxuICAudS1wYWRkaW5nLXRvcC0tc21hbGxcXEBzdXBlciB7XG4gICAgcGFkZGluZy10b3A6IDAuNWVtOyB9XG4gIC51LXBhZGRpbmctcmlnaHQtLXNtYWxsXFxAc3VwZXIge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNWVtOyB9XG4gIC51LXBhZGRpbmctYm90dG9tLS1zbWFsbFxcQHN1cGVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC41ZW07IH1cbiAgLnUtcGFkZGluZy1sZWZ0LS1zbWFsbFxcQHN1cGVyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNWVtOyB9XG4gIC51LXBhZGRpbmctLW1lZGl1bVxcQHN1cGVyIHtcbiAgICBwYWRkaW5nOiAxZW07IH1cbiAgLnUtcGFkZGluZy10b3AtLW1lZGl1bVxcQHN1cGVyIHtcbiAgICBwYWRkaW5nLXRvcDogMWVtOyB9XG4gIC51LXBhZGRpbmctcmlnaHQtLW1lZGl1bVxcQHN1cGVyIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxZW07IH1cbiAgLnUtcGFkZGluZy1ib3R0b20tLW1lZGl1bVxcQHN1cGVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMWVtOyB9XG4gIC51LXBhZGRpbmctbGVmdC0tbWVkaXVtXFxAc3VwZXIge1xuICAgIHBhZGRpbmctbGVmdDogMWVtOyB9XG4gIC51LXBhZGRpbmctLWxhcmdlXFxAc3VwZXIge1xuICAgIHBhZGRpbmc6IDEuNWVtOyB9XG4gIC51LXBhZGRpbmctdG9wLS1sYXJnZVxcQHN1cGVyIHtcbiAgICBwYWRkaW5nLXRvcDogMS41ZW07IH1cbiAgLnUtcGFkZGluZy1yaWdodC0tbGFyZ2VcXEBzdXBlciB7XG4gICAgcGFkZGluZy1yaWdodDogMS41ZW07IH1cbiAgLnUtcGFkZGluZy1ib3R0b20tLWxhcmdlXFxAc3VwZXIge1xuICAgIHBhZGRpbmctYm90dG9tOiAxLjVlbTsgfVxuICAudS1wYWRkaW5nLWxlZnQtLWxhcmdlXFxAc3VwZXIge1xuICAgIHBhZGRpbmctbGVmdDogMS41ZW07IH1cbiAgLnUtcGFkZGluZy0teGxhcmdlXFxAc3VwZXIge1xuICAgIHBhZGRpbmc6IDJlbTsgfVxuICAudS1wYWRkaW5nLXRvcC0teGxhcmdlXFxAc3VwZXIge1xuICAgIHBhZGRpbmctdG9wOiAyZW07IH1cbiAgLnUtcGFkZGluZy1yaWdodC0teGxhcmdlXFxAc3VwZXIge1xuICAgIHBhZGRpbmctcmlnaHQ6IDJlbTsgfVxuICAudS1wYWRkaW5nLWJvdHRvbS0teGxhcmdlXFxAc3VwZXIge1xuICAgIHBhZGRpbmctYm90dG9tOiAyZW07IH1cbiAgLnUtcGFkZGluZy1sZWZ0LS14bGFyZ2VcXEBzdXBlciB7XG4gICAgcGFkZGluZy1sZWZ0OiAyZW07IH1cbiAgLnUtcGFkZGluZy0tc3VwZXJcXEBzdXBlciB7XG4gICAgcGFkZGluZzogM2VtOyB9XG4gIC51LXBhZGRpbmctdG9wLS1zdXBlclxcQHN1cGVyIHtcbiAgICBwYWRkaW5nLXRvcDogM2VtOyB9XG4gIC51LXBhZGRpbmctcmlnaHQtLXN1cGVyXFxAc3VwZXIge1xuICAgIHBhZGRpbmctcmlnaHQ6IDNlbTsgfVxuICAudS1wYWRkaW5nLWJvdHRvbS0tc3VwZXJcXEBzdXBlciB7XG4gICAgcGFkZGluZy1ib3R0b206IDNlbTsgfVxuICAudS1wYWRkaW5nLWxlZnQtLXN1cGVyXFxAc3VwZXIge1xuICAgIHBhZGRpbmctbGVmdDogM2VtOyB9IH1cblxuLypkb2Ncbi0tLVxudGl0bGU6IFN0aWNreVxubmFtZTogc3RpY2t5XG5jYXRlZ29yeTogVXRpbGl0aWVzXG4tLS1cblxuVGhlIHN0aWNreSB1dGlsaXR5IGNsYXNzIGNhbiBzdGljayBjb250ZW50IHRvIHRoZSB0b3Agb2YgdGhlIHZpZXdwb3J0LlxuXG5Ob3RlOiB0aGUgYGpzLXN0aWNreWAgY2xhc3MgaXMgcmVxdWlyZWQgZm9yIHRoZSBKYXZhU2NyaXB0IHBvbHlmaWxsLlxuXG5gYGBodG1sX2V4YW1wbGVfdGFibGVcbjxkaXYgc3R5bGU9XCJib3JkZXI6IDFweCBzb2xpZCBibGFjazsgaGVpZ2h0OiAzMDBweDtcIj5cblx0PGRpdiBjbGFzcz1cInUtc3RpY2t5ICBqcy1zdGlja3lcIj5cblx0XHRzdGlja3kgY29udGVudFxuXHQ8L2Rpdj5cbjwvZGl2PlxuYGBgXG5cbiMjIyBNZWRpYSBRdWVyaWVzXG5cbkNsYXNzIHN1ZmZpeGVzIChgQHhzbWFsbGAsIGBAc21hbGxgLCBgQG1lZGl1bWAsIGBAbGFyZ2VgLCBgQHhsYXJnZWAsIGBAc3VwZXJgKSBjYW4gYmUgdXNlZCB0byBzdGljayBjb250ZW50IGF0IHNwZWNpZmljIGJyZWFrcG9pbnRzIGFuZCBhYm92ZS5cblxuKi9cbi51LXN0aWNreSB7XG4gIHBvc2l0aW9uOiBzdGlja3k7XG4gIHRvcDogMDtcbiAgei1pbmRleDogMzAwOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAyMHJlbSkge1xuICAudS1zdGlja3lcXEB4c21hbGwge1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgdG9wOiAwO1xuICAgIHotaW5kZXg6IDMwMDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAzMHJlbSkge1xuICAudS1zdGlja3lcXEBzbWFsbCB7XG4gICAgcG9zaXRpb246IHN0aWNreTtcbiAgICB0b3A6IDA7XG4gICAgei1pbmRleDogMzAwOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4cmVtKSB7XG4gIC51LXN0aWNreVxcQG1lZGl1bSB7XG4gICAgcG9zaXRpb246IHN0aWNreTtcbiAgICB0b3A6IDA7XG4gICAgei1pbmRleDogMzAwOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDY0cmVtKSB7XG4gIC51LXN0aWNreVxcQGxhcmdlIHtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIHRvcDogMDtcbiAgICB6LWluZGV4OiAzMDA7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzhyZW0pIHtcbiAgLnUtc3RpY2t5XFxAeGxhcmdlIHtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIHRvcDogMDtcbiAgICB6LWluZGV4OiAzMDA7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTI1cmVtKSB7XG4gIC51LXN0aWNreVxcQHN1cGVyIHtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIHRvcDogMDtcbiAgICB6LWluZGV4OiAzMDA7IH0gfVxuXG4udS1hY3RpdmUtc3RpY2t5IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB3aWR0aDogMTAwJTtcbiAgdG9wOiAwOyB9XG5cbi8qZG9jXG4tLS1cbnRpdGxlOiBUeXBvZ3JhcGhpYyBVdGlsaXRpZXNcbm5hbWU6IHR5cG9ncmFwaGljLXV0aWxpdGllc1xuY2F0ZWdvcnk6IFV0aWxpdGllc1xuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZV90YWJsZVxuPHAgY2xhc3M9XCJ1LXJlZ3VsYXJcIj5UaGlzIHBhcmFncmFwaCBoYXMgYSByZWd1bGFyIGZvbnQgd2VpZ2h0PC9wPlxuXG48cCBjbGFzcz1cInUtYm9sZFwiPlRoaXMgcGFyYWdyYXBoIGhhcyBhIGJvbGQgZm9udCB3ZWlnaHQ8L3A+XG5cbjxwIGNsYXNzPVwidS1pdGFsaWNcIj5UaGlzIHBhcmFncmFwaCBpcyBpdGFsaWM8L3A+XG5cbjxwIGNsYXNzPVwidS1lbGxpcHNlXCI+VGhpcyBwYXJhZ3JhcGggd2lsbCB0cnVuY2F0ZSBpZiBpdCBleHRlbmRzIGJleW9uZCBpdHMgY29udGFpbmVyPC9wPlxuXG48cCBjbGFzcz1cInUtYnJlYWstd29yZFwiPlRoaXMgcGFyYWdyYXBoIHdpbGwgYnJlYWsgd29yZHMgd2hlbiBjcmVhdGluZyBuZXcgbGluZXM8L3A+XG5cbjxwIGNsYXNzPVwidS1uby13cmFwXCI+VGhpcyBwYXJhZ3JhcGggd2lsbCBub3Qgd3JhcCB3aGVuIGl0J3MgdG9vIGxvbmcgZm9yIGl0cyBjb250YWluZXI8L3A+XG5cbjxwIGNsYXNzPVwidS11cHBlcmNhc2VcIj5UaGlzIHBhcmFncmFwaCBpcyB1cHBlcmNhc2U8L3A+XG5gYGBcblxuKi9cbi51LXJlZ3VsYXIge1xuICBmb250LXdlaWdodDogMzAwOyB9XG5cbi51LWJvbGQge1xuICBmb250LXdlaWdodDogNTAwOyB9XG5cbi51LWl0YWxpYyB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYzsgfVxuXG4udS1lbGxpcHNlIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7IH1cblxuLnUtYnJlYWstd29yZCB7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDsgfVxuXG4udS1uby13cmFwIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuXG4udS11cHBlcmNhc2Uge1xuICBsZXR0ZXItc3BhY2luZzogLjFlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuXG4udS1jYXBpdGFsaXplIHtcbiAgbGV0dGVyLXNwYWNpbmc6IC4xZW07XG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplOyB9XG5cbi8qZG9jXG4tLS1cbnRpdGxlOiBWaXNpYmlsaXR5XG5uYW1lOiB2aXNpYmlsaXR5XG5jYXRlZ29yeTogVXRpbGl0aWVzXG4tLS1cblxuVmlzaWJpbGl0eSB1dGlsaXR5IGNsYXNzZXMgY2FuIGVhc2lseSBzaG93IG9yIGhpZGUgZWxlbWVudHMgaW4gdmFyaW91cyB3YXlzLlxuXG5gYGBodG1sX2V4YW1wbGVfdGFibGVcbjxwIGNsYXNzPVwidS12aXN1YWxseWhpZGRlblwiPkhpZGRlbiB2aXN1YWxseSwgYnV0IGF2YWlsYWJsZSBmb3Igc2NyZWVucmVhZGVyczwvcD5cblxuPHAgY2xhc3M9XCJ1LXZpc3VhbGx5aGlkZGVuICB1LWZvY3VzYWJsZVwiPkhpZGRlbiB2aXN1YWxseSwgYnV0IGF2YWlsYWJsZSBmb3Igc2NyZWVucmVhZGVycyBhbmQgY2FuIGJlIGZvY3VzZWQgdmlhIGtleWJvYXJkPC9wPlxuXG48cCBjbGFzcz1cInUtaGlkZVwiPkhpZGUgZnJvbSBicm93c2VycyBhbmQgc2NyZWVucmVhZGVyczwvcD5cblxuPHAgY2xhc3M9XCJ1LXNob3dcIj5TaG93IGluIGJyb3dzZXJzIGFuZCBzY3JlZW5yZWFkZXJzPC9wPlxuYGBgXG5cbiMjIyBQcmludCBWaXNpYmlsaXR5XG5cbmBgYGh0bWxfZXhhbXBsZV90YWJsZVxuPHAgY2xhc3M9XCJ1LXNob3dAcHJpbnRcIj5IaWRlIGluIGJyb3dzZXJzLCBidXQgc2hvdyB3aGVuIHByaW50aW5nPC9wPlxuXG48cCBjbGFzcz1cInUtaGlkZUBwcmludFwiPlNob3cgaW4gYnJvd3NlcnMsIGJ1dCBoaWRlIHdoZW4gcHJpbnRpbmc8L3A+XG5gYGBcblxuIyMjIE1lZGlhIFF1ZXJpZXNcblxuQ2xhc3Mgc3VmZml4ZXMgKGBAeHNtYWxsYCwgYEBzbWFsbGAsIGBAbWVkaXVtYCwgYEBsYXJnZWAsIGBAeGxhcmdlYCwgYEBzdXBlcmApIGNhbiBiZSB1c2VkIHRvIGhpZGUgb3Igc2hvdyBlbGVtZW50cyBiYXNlZCBvbiB2aWV3cG9ydCB3aWR0aC4gQ2hhbmdlIHlvdXIgYnJvd3NlciB3aWR0aCB0byBzZWUgZWxlbWVudHMgYXBwZWFyIC8gZGlzYXBwZWFyLlxuXG5gYGBodG1sX2V4YW1wbGVfdGFibGVcbjxwIGNsYXNzPVwidS1oaWRlQHNtYWxsXCI+SGlkZSB3aGVuIGJyb3dzZXIgaXMgYXQgbGVhc3Qgc21hbGwgd2lkdGg8L3A+XG5cbjxwIGNsYXNzPVwidS1oaWRlQG1lZGl1bVwiPkhpZGUgd2hlbiBicm93c2VyIGlzIGF0IGxlYXN0IG1lZGl1bSB3aWR0aDwvcD5cblxuPHAgY2xhc3M9XCJ1LWhpZGVAbGFyZ2VcIj5IaWRlIHdoZW4gYnJvd3NlciBpcyBhdCBsZWFzdCBsYXJnZSB3aWR0aDwvcD5cblxuPHAgY2xhc3M9XCJ1LXNob3dAc21hbGxcIj5TaG93IHdoZW4gYnJvd3NlciBpcyBhdCBsZWFzdCBzbWFsbCB3aWR0aDwvcD5cblxuPHAgY2xhc3M9XCJ1LXNob3dAbWVkaXVtXCI+U2hvdyB3aGVuIGJyb3dzZXIgaXMgYXQgbGVhc3QgbWVkaXVtIHdpZHRoPC9wPlxuXG48cCBjbGFzcz1cInUtc2hvd0BsYXJnZVwiPlNob3cgd2hlbiBicm93c2VyIGlzIGF0IGxlYXN0IGxhcmdlIHdpZHRoPC9wPlxuYGBgXG5cbiovXG4udS12aXN1YWxseWhpZGRlbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbWFyZ2luOiAtMXB4O1xuICBwYWRkaW5nOiAwO1xuICBoZWlnaHQ6IDFweDtcbiAgd2lkdGg6IDFweDtcbiAgYm9yZGVyOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwOiByZWN0KDAgMCAwIDApOyB9XG5cbi51LXZpc3VhbGx5aGlkZGVuLnUtZm9jdXNhYmxlOmFjdGl2ZSxcbi51LXZpc3VhbGx5aGlkZGVuLnUtZm9jdXNhYmxlOmZvY3VzIHtcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgbWFyZ2luOiAwO1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgY2xpcDogYXV0bzsgfVxuXG4udS1oaWRlIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi51LXNob3cge1xuICBkaXNwbGF5OiBpbmhlcml0OyB9XG5cbi8qKlxuICogVmlzaWJpbGl0eSBtaXhpbnNcbiAqL1xuLyoqXG4gKiBSZXNwb25zaXZlIHZpc2liaWxpdHlcbiAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDIwcmVtKSB7XG4gIC51LWhpZGVcXEB4c21hbGwge1xuICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTkuOTlyZW0pIHtcbiAgLnUtc2hvd1xcQHhzbWFsbCB7XG4gICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAzMHJlbSkge1xuICAudS1oaWRlXFxAc21hbGwge1xuICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogMjkuOTlyZW0pIHtcbiAgLnUtc2hvd1xcQHNtYWxsIHtcbiAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4cmVtKSB7XG4gIC51LWhpZGVcXEBtZWRpdW0ge1xuICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNDcuOTlyZW0pIHtcbiAgLnUtc2hvd1xcQG1lZGl1bSB7XG4gICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA2NHJlbSkge1xuICAudS1oaWRlXFxAbGFyZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNjMuOTlyZW0pIHtcbiAgLnUtc2hvd1xcQGxhcmdlIHtcbiAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc4cmVtKSB7XG4gIC51LWhpZGVcXEB4bGFyZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzcuOTlyZW0pIHtcbiAgLnUtc2hvd1xcQHhsYXJnZSB7XG4gICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjVyZW0pIHtcbiAgLnUtaGlkZVxcQHN1cGVyIHtcbiAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDEyNC45OXJlbSkge1xuICAudS1zaG93XFxAc3VwZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4vKipcbiAqIFByaW50IHZpc2liaWxpdHlcbiAqL1xuQG1lZGlhIHByaW50IHtcbiAgLnUtaGlkZVxcQHByaW50IHtcbiAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuQG1lZGlhIG5vdCBwcmludCB7XG4gIC51LXNob3dcXEBwcmludCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuLypkb2Ncbi0tLVxudGl0bGU6IE92ZXJcbm5hbWU6IG92ZXJcbmNhdGVnb3J5OiBVdGlsaXRpZXNcbi0tLVxuXG5PdmVyIHV0aWxpdHkgY2xhc3NlcyBhcmUgYW4gZWFzeSB3YXkgdG8gY2hhbmdlIGFuIGl0ZW0ncyB6LWluZGV4LiBDbGFzc2VzIGZyb20gbG93ZXN0IHRvIGhpZ2hlc3QgYXJlIGB1LW92ZXItY29udGVudGAsIGB1LW92ZXItY29udHJvbGAsIGB1LW92ZXItcGFnZWAsIGB1LW92ZXItc2NyZWVuYCwgYW5kIGB1LW92ZXItZXZlcnl0aGluZ2AuIFRoZSBpdGVtIG11c3QgaGF2ZSBhIHBvc2l0aW9uIHNldCBmb3IgdGhlc2UgY2xhc3NlcyB0byB3b3JrLlxuXG5gYGBodG1sX2V4YW1wbGVfdGFibGVcbjxkaXYgc3R5bGU9XCJwb3NpdGlvbjogcmVsYXRpdmU7XCI+XG5cdDxkaXYgY2xhc3M9XCJ1LW92ZXItY29udGVudCAgdS1iZy1yZWRcIiBzdHlsZT1cImhlaWdodDogNTBweDsgcG9zaXRpb246IGFic29sdXRlOyB3aWR0aDogMjUlO1wiPjwvZGl2PlxuXHQ8ZGl2IGNsYXNzPVwidS1vdmVyLWNvbnRyb2wgIHUtYmctZ3JlZW5cIiBzdHlsZT1cImhlaWdodDogNTBweDsgbGVmdDogMjAlOyBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogNDBweDsgd2lkdGg6IDI1JTtcIj48L2Rpdj5cblx0PGRpdiBjbGFzcz1cInUtb3Zlci1wYWdlICB1LWJnLWJsdWVcIiBzdHlsZT1cImhlaWdodDogNTBweDsgbGVmdDogNDAlOyBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogODBweDsgd2lkdGg6IDI1JTtcIj48L2Rpdj5cblx0PGRpdiBjbGFzcz1cInUtb3Zlci1zY3JlZW4gIHUtYmcteWVsbG93XCIgc3R5bGU9XCJoZWlnaHQ6IDUwcHg7IGxlZnQ6IDYwJTsgcG9zaXRpb246IGFic29sdXRlOyB0b3A6IDEyMHB4OyB3aWR0aDogMjUlO1wiPjwvZGl2PlxuXHQ8ZGl2IGNsYXNzPVwidS1vdmVyLWV2ZXJ5dGhpbmcgIHUtYmctcHVycGxlXCIgc3R5bGU9XCJoZWlnaHQ6IDUwcHg7ICBwb3NpdGlvbjogYWJzb2x1dGU7IHJpZ2h0OiAwOyB0b3A6IDE2MHB4OyB3aWR0aDogMjUlO1wiPjwvZGl2PlxuPC9kaXY+XG5gYGBcblxuIyMjIE1lZGlhIFF1ZXJpZXNcblxuQ2xhc3Mgc3VmZml4ZXMgKGBAeHNtYWxsYCwgYEBzbWFsbGAsIGBAbWVkaXVtYCwgYEBsYXJnZWAsIGBAeGxhcmdlYCwgYEBzdXBlcmApIGNhbiBiZSB1c2VkIHRvIGNoYW5nZSB6LWluZGV4IGF0IHNwZWNpZmljIGJyZWFrcG9pbnRzIGFuZCBhYm92ZS5cblxuKi9cbi51LW92ZXItY29udGVudCB7XG4gIHotaW5kZXg6IDEwMDsgfVxuXG4udS1vdmVyLWNvbnRyb2wge1xuICB6LWluZGV4OiAyMDA7IH1cblxuLnUtb3Zlci1wYWdlIHtcbiAgei1pbmRleDogMzAwOyB9XG5cbi51LW92ZXItc2NyZWVuIHtcbiAgei1pbmRleDogNDAwOyB9XG5cbi51LW92ZXItZXZlcnl0aGluZyB7XG4gIHotaW5kZXg6IDUwMDsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMjByZW0pIHtcbiAgLnUtb3Zlci1jb250ZW50XFxAeHNtYWxsIHtcbiAgICB6LWluZGV4OiAxMDA7IH1cbiAgLnUtb3Zlci1jb250cm9sXFxAeHNtYWxsIHtcbiAgICB6LWluZGV4OiAyMDA7IH1cbiAgLnUtb3Zlci1wYWdlXFxAeHNtYWxsIHtcbiAgICB6LWluZGV4OiAzMDA7IH1cbiAgLnUtb3Zlci1zY3JlZW5cXEB4c21hbGwge1xuICAgIHotaW5kZXg6IDQwMDsgfVxuICAudS1vdmVyLWV2ZXJ5dGhpbmdcXEB4c21hbGwge1xuICAgIHotaW5kZXg6IDUwMDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAzMHJlbSkge1xuICAudS1vdmVyLWNvbnRlbnRcXEBzbWFsbCB7XG4gICAgei1pbmRleDogMTAwOyB9XG4gIC51LW92ZXItY29udHJvbFxcQHNtYWxsIHtcbiAgICB6LWluZGV4OiAyMDA7IH1cbiAgLnUtb3Zlci1wYWdlXFxAc21hbGwge1xuICAgIHotaW5kZXg6IDMwMDsgfVxuICAudS1vdmVyLXNjcmVlblxcQHNtYWxsIHtcbiAgICB6LWluZGV4OiA0MDA7IH1cbiAgLnUtb3Zlci1ldmVyeXRoaW5nXFxAc21hbGwge1xuICAgIHotaW5kZXg6IDUwMDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0OHJlbSkge1xuICAudS1vdmVyLWNvbnRlbnRcXEBtZWRpdW0ge1xuICAgIHotaW5kZXg6IDEwMDsgfVxuICAudS1vdmVyLWNvbnRyb2xcXEBtZWRpdW0ge1xuICAgIHotaW5kZXg6IDIwMDsgfVxuICAudS1vdmVyLXBhZ2VcXEBtZWRpdW0ge1xuICAgIHotaW5kZXg6IDMwMDsgfVxuICAudS1vdmVyLXNjcmVlblxcQG1lZGl1bSB7XG4gICAgei1pbmRleDogNDAwOyB9XG4gIC51LW92ZXItZXZlcnl0aGluZ1xcQG1lZGl1bSB7XG4gICAgei1pbmRleDogNTAwOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDY0cmVtKSB7XG4gIC51LW92ZXItY29udGVudFxcQGxhcmdlIHtcbiAgICB6LWluZGV4OiAxMDA7IH1cbiAgLnUtb3Zlci1jb250cm9sXFxAbGFyZ2Uge1xuICAgIHotaW5kZXg6IDIwMDsgfVxuICAudS1vdmVyLXBhZ2VcXEBsYXJnZSB7XG4gICAgei1pbmRleDogMzAwOyB9XG4gIC51LW92ZXItc2NyZWVuXFxAbGFyZ2Uge1xuICAgIHotaW5kZXg6IDQwMDsgfVxuICAudS1vdmVyLWV2ZXJ5dGhpbmdcXEBsYXJnZSB7XG4gICAgei1pbmRleDogNTAwOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc4cmVtKSB7XG4gIC51LW92ZXItY29udGVudFxcQHhsYXJnZSB7XG4gICAgei1pbmRleDogMTAwOyB9XG4gIC51LW92ZXItY29udHJvbFxcQHhsYXJnZSB7XG4gICAgei1pbmRleDogMjAwOyB9XG4gIC51LW92ZXItcGFnZVxcQHhsYXJnZSB7XG4gICAgei1pbmRleDogMzAwOyB9XG4gIC51LW92ZXItc2NyZWVuXFxAeGxhcmdlIHtcbiAgICB6LWluZGV4OiA0MDA7IH1cbiAgLnUtb3Zlci1ldmVyeXRoaW5nXFxAeGxhcmdlIHtcbiAgICB6LWluZGV4OiA1MDA7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTI1cmVtKSB7XG4gIC51LW92ZXItY29udGVudFxcQHN1cGVyIHtcbiAgICB6LWluZGV4OiAxMDA7IH1cbiAgLnUtb3Zlci1jb250cm9sXFxAc3VwZXIge1xuICAgIHotaW5kZXg6IDIwMDsgfVxuICAudS1vdmVyLXBhZ2VcXEBzdXBlciB7XG4gICAgei1pbmRleDogMzAwOyB9XG4gIC51LW92ZXItc2NyZWVuXFxAc3VwZXIge1xuICAgIHotaW5kZXg6IDQwMDsgfVxuICAudS1vdmVyLWV2ZXJ5dGhpbmdcXEBzdXBlciB7XG4gICAgei1pbmRleDogNTAwOyB9IH1cblxuQG1lZGlhIHByaW50IHtcbiAgKiB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICBjb2xvcjogIzAwMCAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50OyB9XG4gIEBwYWdlIHtcbiAgICBtYXJnaW46IDAuNWNtOyB9XG4gIGEsXG4gIGE6dmlzaXRlZCB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cbiAgYVtocmVmXTphZnRlciB7XG4gICAgY29udGVudDogXCIgKFwiIGF0dHIoaHJlZikgXCIpXCI7IH1cbiAgYWJiclt0aXRsZV06YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIChcIiBhdHRyKHRpdGxlKSBcIilcIjsgfVxuICAuaXIgYTphZnRlcixcbiAgYVtocmVmXj1cImphdmFzY3JpcHQ6XCJdOmFmdGVyLFxuICBhW2hyZWZePVwiI1wiXTphZnRlciB7XG4gICAgY29udGVudDogXCJcIjsgfVxuICBwcmUsXG4gIGJsb2NrcXVvdGUge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICM5OTk7XG4gICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkOyB9XG4gIHRoZWFkIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXA7IH1cbiAgdHIsXG4gIGltZyB7XG4gICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkOyB9XG4gIGltZyB7XG4gICAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IH1cbiAgcCxcbiAgaDIsXG4gIGgzIHtcbiAgICBvcnBoYW5zOiAzO1xuICAgIHdpZG93czogMzsgfVxuICBoMixcbiAgaDMge1xuICAgIHBhZ2UtYnJlYWstYWZ0ZXI6IGF2b2lkOyB9IH1cblxuLyoqXG4gKiBGaXJlZm94OiBkaXNhYmxlIGZsZXhib3ggZm9yIHByaW50IGR1ZSB0byBudW1lcm91cyBidWdzXG4gKi9cbkBtZWRpYSBwcmludCB7XG4gIEAtbW96LWRvY3VtZW50IHVybC1wcmVmaXgoKSB7XG4gICAgLmwtaHRtbC0tbm8tc2Nyb2xsIHtcbiAgICAgIG92ZXJmbG93OiBpbml0aWFsOyB9XG4gICAgLmwtYm9keS0tc3RpY2t5LWZvb3RlciB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1pbi1oZWlnaHQ6IGluaXRpYWw7IH1cbiAgICAubC1tYWluLS1zdGlja3ktZm9vdGVyIHtcbiAgICAgIGZsZXg6IGluaXRpYWw7IH1cbiAgICAubC1ncmlkLFxuICAgIC5vLW1haW4sXG4gICAgLm0tY2FyZCxcbiAgICAubS1yYXRpbmcsXG4gICAgLm0tc2lnbnBvc3QsXG4gICAgLm0tdGlsZSxcbiAgICAubS10aWxlX19jb250ZW50LFxuICAgIC5vLWJpbGxib2FyZC0tc3VwZXIsXG4gICAgLm8tYmlsbGJvYXJkX19jb250ZW50LFxuICAgIC5vLWJpbGxib2FyZF9fYm9keSB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIC5sLWdyaWRfX2l0ZW0ge1xuICAgICAgbWluLXdpZHRoOiAxMDAlOyB9IH0gfVxuIl19 */
