/*
Theme Name: Vidlery
Theme URI:
Description: A basic platform for web development.
Author: Christopher Uryga | Subverse LLC
Author URI: http://www.dissidentchoir.com
Version: 1.0

License: GNU General Public License v3.0
License URI: http://www.gnu.org/licenses/gpl.html

Tags: responsive-layout
*/
/*! normalize.css v3.0.2 | MIT License | git.io/normalize */
/**
 * 1. Set default font family to sans-serif.
 * 2. Prevent iOS text size adjust after orientation change, without disabling
 *    user zoom.
 */
html {
  font-family: sans-serif;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}

/**
 * Remove default margin.
 */
body {
  margin: 0;
}

/* HTML5 display definitions
   ========================================================================== */
/**
 * Correct `block` display not defined for any HTML5 element in IE 8/9.
 * Correct `block` display not defined for `details` or `summary` in IE 10/11
 * and Firefox.
 * Correct `block` display not defined for `main` in IE 11.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block;
}

/**
 * 1. Correct `inline-block` display not defined in IE 8/9.
 * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
 */
audio,
canvas,
progress,
video {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */
}

/**
 * Prevent modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */
audio:not([controls]) {
  display: none;
  height: 0;
}

/**
 * Address `[hidden]` styling not present in IE 8/9/10.
 * Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22.
 */
[hidden],
template {
  display: none;
}

/* Links
   ========================================================================== */
/**
 * Remove the gray background color from active links in IE 10.
 */
a {
  background-color: transparent;
}

/**
 * Improve readability when focused and also mouse hovered in all browsers.
 */
a:active,
a:hover {
  outline: 0;
}

/* Text-level semantics
   ========================================================================== */
/**
 * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
 */
abbr[title] {
  border-bottom: 1px dotted;
}

/**
 * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
 */
b,
strong {
  font-weight: bold;
}

/**
 * Address styling not present in Safari and Chrome.
 */
dfn {
  font-style: italic;
}

/**
 * Address variable `h1` font-size and margin within `section` and `article`
 * contexts in Firefox 4+, Safari, and Chrome.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/**
 * Address styling not present in IE 8/9.
 */
mark {
  background: #ff0;
  color: #000;
}

/**
 * Address inconsistent and variable font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` affecting `line-height` in all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

/* Embedded content
   ========================================================================== */
/**
 * Remove border when inside `a` element in IE 8/9/10.
 */
img {
  border: 0;
}

/**
 * Correct overflow not hidden in IE 9/10/11.
 */
svg:not(:root) {
  overflow: hidden;
}

/* Grouping content
   ========================================================================== */
/**
 * Address margin not present in IE 8/9 and Safari.
 */
figure {
  margin: 1em 40px;
}

/**
 * Address differences between Firefox and other browsers.
 */
hr {
  box-sizing: content-box;
  height: 0;
}

/**
 * Contain overflow in all browsers.
 */
pre {
  overflow: auto;
}

/**
 * Address odd `em`-unit font size rendering in all browsers.
 */
code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

/* Forms
   ========================================================================== */
/**
 * Known limitation: by default, Chrome and Safari on OS X allow very limited
 * styling of `select`, unless a `border` property is set.
 */
/**
 * 1. Correct color not being inherited.
 *    Known issue: affects color of disabled elements.
 * 2. Correct font properties not being inherited.
 * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
 */
button,
input,
optgroup,
select,
textarea {
  color: inherit;
  /* 1 */
  font: inherit;
  /* 2 */
  margin: 0;
  /* 3 */
}

/**
 * Address `overflow` set to `hidden` in IE 8/9/10/11.
 */
button {
  overflow: visible;
}

/**
 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 * All other form control elements do not inherit `text-transform` values.
 * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
 * Correct `select` style inheritance in Firefox.
 */
button,
select {
  text-transform: none;
}

/**
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. Improve usability and consistency of cursor style between image-type
 *    `input` and others.
 */
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  /* 2 */
  cursor: pointer;
  /* 3 */
}

/**
 * Re-set default cursor for disabled elements.
 */
button[disabled],
html input[disabled] {
  cursor: default;
}

/**
 * Remove inner padding and border in Firefox 4+.
 */
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

/**
 * Address Firefox 4+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */
input {
  line-height: normal;
}

/**
 * It's recommended that you don't attempt to style these elements.
 * Firefox's implementation doesn't respect box-sizing, padding, or width.
 *
 * 1. Address box sizing set to `content-box` in IE 8/9/10.
 * 2. Remove excess padding in IE 8/9/10.
 */
input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
 * Fix the cursor style for Chrome's increment/decrement buttons. For certain
 * `font-size` values of the `input`, it causes the cursor style of the
 * decrement button to change from `default` to `text`.
 */
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
 * 2. Address `box-sizing` set to `border-box` in Safari and Chrome
 *    (include `-moz` to future-proof).
 */
input[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  /* 2 */
  box-sizing: content-box;
}

/**
 * Remove inner padding and search cancel button in Safari and Chrome on OS X.
 * Safari (but not Chrome) clips the cancel button when the search input has
 * padding (and `textfield` appearance).
 */
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * Define consistent border, margin, and padding.
 */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

/**
 * 1. Correct `color` not being inherited in IE 8/9/10/11.
 * 2. Remove padding so people aren't caught out if they zero out fieldsets.
 */
legend {
  border: 0;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
 * Remove default vertical scrollbar in IE 8/9/10/11.
 */
textarea {
  overflow: auto;
}

/**
 * Don't inherit the `font-weight` (applied by a rule above).
 * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
 */
optgroup {
  font-weight: bold;
}

/* Tables
   ========================================================================== */
/**
 * Remove most spacing between table cells.
 */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

td,
th {
  padding: 0;
}

.alignnone {
  margin: 5px 20px 20px 0;
}

.aligncenter,
div.aligncenter {
  display: block;
  margin: 5px auto 5px auto;
}

.alignright {
  float: right;
  margin: 5px 0 20px 20px;
}

.alignleft {
  float: left;
  margin: 5px 20px 20px 0;
}

.aligncenter {
  display: block;
  margin: 5px auto 5px auto;
}

a img.alignright {
  float: right;
  margin: 5px 0 20px 20px;
}

a img.alignnone {
  margin: 5px 20px 20px 0;
}

a img.alignleft {
  float: left;
  margin: 5px 20px 20px 0;
}

a img.aligncenter {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.wp-caption {
  background: #fff;
  border: 1px solid #f0f0f0;
  max-width: 96%;
  /* Image does not overflow the content area */
  padding: 5px 3px 10px;
  text-align: center;
}

.wp-caption.alignnone {
  margin: 5px 20px 20px 0;
}

.wp-caption.alignleft {
  margin: 5px 20px 20px 0;
}

.wp-caption.alignright {
  margin: 5px 0 20px 20px;
}

.wp-caption img {
  border: 0 none;
  height: auto;
  margin: 0;
  max-width: 98.5%;
  padding: 0;
  width: auto;
}

.wp-caption p.wp-caption-text {
  font-size: 11px;
  line-height: 17px;
  margin: 0;
  padding: 0 4px 5px;
}

.size-auto,
.size-full,
.size-large,
.size-medium,
.size-thumbnail {
  max-width: 100%;
  height: auto;
}

/*! fancyBox v2.1.5 fancyapps.com | fancyapps.com/fancybox/#license */
.fancybox-wrap,
.fancybox-skin,
.fancybox-outer,
.fancybox-inner,
.fancybox-image,
.fancybox-wrap iframe,
.fancybox-wrap object,
.fancybox-nav,
.fancybox-nav span,
.fancybox-tmp {
  padding: 0;
  margin: 0;
  border: 0;
  outline: none;
  vertical-align: top;
}

.fancybox-wrap {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 8020;
}

.fancybox-skin {
  position: relative;
  background: #f9f9f9;
  color: #444;
  text-shadow: none;
  border-radius: 4px;
}

.fancybox-opened {
  z-index: 8030;
}

.fancybox-opened .fancybox-skin {
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.5);
}

.fancybox-outer, .fancybox-inner {
  position: relative;
}

.fancybox-inner {
  overflow: hidden;
}

.fancybox-type-iframe .fancybox-inner {
  -webkit-overflow-scrolling: touch;
}

.fancybox-error {
  color: #444;
  font: 14px/20px "Helvetica Neue",Helvetica,Arial,sans-serif;
  margin: 0;
  padding: 15px;
  white-space: nowrap;
}

.fancybox-image, .fancybox-iframe {
  display: block;
  width: 100%;
  height: 100%;
}

.fancybox-image {
  max-width: 100%;
  max-height: 100%;
}

#fancybox-loading, .fancybox-close, .fancybox-prev span, .fancybox-next span {
  background-image: url("img/fancybox_sprite.png");
}

#fancybox-loading {
  position: fixed;
  top: 50%;
  left: 50%;
  margin-top: -22px;
  margin-left: -22px;
  background-position: 0 -108px;
  opacity: 0.8;
  cursor: pointer;
  z-index: 8060;
}

#fancybox-loading div {
  width: 44px;
  height: 44px;
  background: url("img/fancybox_loading.gif") center center no-repeat;
}

.fancybox-close {
  position: absolute;
  top: -18px;
  right: -18px;
  width: 36px;
  height: 36px;
  cursor: pointer;
  z-index: 8040;
}

.fancybox-nav {
  position: absolute;
  top: 0;
  width: 40%;
  height: 100%;
  cursor: pointer;
  text-decoration: none;
  background: transparent url("img/blank.gif");
  /* helps IE */
  -webkit-tap-highlight-color: transparent;
  z-index: 8040;
}

.fancybox-prev {
  left: 0;
}

.fancybox-next {
  right: 0;
}

.fancybox-nav span {
  position: absolute;
  top: 50%;
  width: 36px;
  height: 34px;
  margin-top: -18px;
  cursor: pointer;
  z-index: 8040;
  visibility: hidden;
}

.fancybox-prev span {
  left: 10px;
  background-position: 0 -36px;
}

.fancybox-next span {
  right: 10px;
  background-position: 0 -72px;
}

.fancybox-nav:hover span {
  visibility: visible;
}

.fancybox-tmp {
  position: absolute;
  top: -99999px;
  left: -99999px;
  visibility: hidden;
  max-width: 99999px;
  max-height: 99999px;
  overflow: visible !important;
}

/* Overlay helper */
.fancybox-lock {
  overflow: hidden !important;
  width: auto;
}

.fancybox-lock body {
  overflow: hidden !important;
}

.fancybox-lock-test {
  overflow-y: hidden !important;
}

.fancybox-overlay {
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden;
  display: none;
  z-index: 8010;
  background: url("img/fancybox_overlay.png");
}

.fancybox-overlay-fixed {
  position: fixed;
  bottom: 0;
  right: 0;
}

.fancybox-lock .fancybox-overlay {
  overflow: auto;
  overflow-y: scroll;
}

/* Title helper */
.fancybox-title {
  visibility: hidden;
  font: normal 13px/20px "Helvetica Neue",Helvetica,Arial,sans-serif;
  position: relative;
  text-shadow: none;
  z-index: 8050;
}

.fancybox-opened .fancybox-title {
  visibility: visible;
}

.fancybox-title-float-wrap {
  position: absolute;
  bottom: 0;
  right: 50%;
  margin-bottom: -35px;
  z-index: 8050;
  text-align: center;
}

.fancybox-title-float-wrap .child {
  display: inline-block;
  margin-right: -100%;
  padding: 2px 20px;
  background: transparent;
  /* Fallback for web browsers that doesn't support RGBa */
  background: rgba(0, 0, 0, 0.8);
  border-radius: 15px;
  text-shadow: 0 1px 2px #222;
  color: #FFF;
  font-weight: bold;
  line-height: 24px;
  white-space: nowrap;
}

.fancybox-title-outside-wrap {
  position: relative;
  margin-top: 10px;
  color: #fff;
}

.fancybox-title-inside-wrap {
  padding-top: 10px;
}

.fancybox-title-over-wrap {
  position: absolute;
  bottom: 0;
  left: 0;
  color: #fff;
  padding: 10px;
  background: #000;
  background: rgba(0, 0, 0, 0.8);
}

/*Retina graphics!*/
@media only screen and (-webkit-min-device-pixel-ratio: 1.5), only screen and (min--moz-device-pixel-ratio: 1.5), only screen and (min-device-pixel-ratio: 1.5) {
  #fancybox-loading, .fancybox-close, .fancybox-prev span, .fancybox-next span {
    background-image: url("img/fancybox_sprite@2x.png");
    background-size: 44px 152px;
    /*The size of the normal image, half the size of the hi-res image*/
  }

  #fancybox-loading div {
    background-image: url("img/fancybox_loading@2x.gif");
    background-size: 24px 24px;
    /*The size of the normal image, half the size of the hi-res image*/
  }
}
#fancybox-buttons {
  position: fixed;
  left: 0;
  width: 100%;
  z-index: 8050;
}

#fancybox-buttons.top {
  top: 10px;
}

#fancybox-buttons.bottom {
  bottom: 10px;
}

#fancybox-buttons ul {
  display: block;
  width: 166px;
  height: 30px;
  margin: 0 auto;
  padding: 0;
  list-style: none;
  border: 1px solid #111;
  border-radius: 3px;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.05);
  background: #323232;
  background: linear-gradient(to bottom, #444444 0%, #343434 50%, #292929 50%, #333333 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#444444', endColorstr='#222222',GradientType=0 );
}

#fancybox-buttons ul li {
  float: left;
  margin: 0;
  padding: 0;
}

#fancybox-buttons a {
  display: block;
  width: 30px;
  height: 30px;
  text-indent: -9999px;
  background-color: transparent;
  background-image: url("img/fancybox_buttons.png");
  background-repeat: no-repeat;
  outline: none;
  opacity: 0.8;
}

#fancybox-buttons a:hover {
  opacity: 1;
}

#fancybox-buttons a.btnPrev {
  background-position: 5px 0;
}

#fancybox-buttons a.btnNext {
  background-position: -33px 0;
  border-right: 1px solid #3e3e3e;
}

#fancybox-buttons a.btnPlay {
  background-position: 0 -30px;
}

#fancybox-buttons a.btnPlayOn {
  background-position: -30px -30px;
}

#fancybox-buttons a.btnToggle {
  background-position: 3px -60px;
  border-left: 1px solid #111;
  border-right: 1px solid #3e3e3e;
  width: 35px;
}

#fancybox-buttons a.btnToggleOn {
  background-position: -27px -60px;
}

#fancybox-buttons a.btnClose {
  border-left: 1px solid #111;
  width: 35px;
  background-position: -56px 0px;
}

#fancybox-buttons a.btnDisabled {
  opacity: 0.4;
  cursor: default;
}

#fancybox-thumbs {
  position: fixed;
  left: 0;
  width: 100%;
  overflow: hidden;
  z-index: 8050;
}

#fancybox-thumbs.bottom {
  bottom: 2px;
}

#fancybox-thumbs.top {
  top: 2px;
}

#fancybox-thumbs ul {
  position: relative;
  list-style: none;
  margin: 0;
  padding: 0;
}

#fancybox-thumbs ul li {
  float: left;
  padding: 1px;
  opacity: 0.5;
}

#fancybox-thumbs ul li.active {
  opacity: 0.75;
  padding: 0;
  border: 1px solid #fff;
}

#fancybox-thumbs ul li:hover {
  opacity: 1;
}

#fancybox-thumbs ul li a {
  display: block;
  position: relative;
  overflow: hidden;
  border: 1px solid #222;
  background: #111;
  outline: none;
}

#fancybox-thumbs ul li img {
  display: block;
  position: relative;
  border: 0;
  padding: 0;
  max-width: none;
}

html {
  font-size: 100%;
  -webkit-tap-highlight-color: transparent;
}
html body {
  padding: 0;
  /* Useful mixin @include font-size() has been set in mixins.scss that 
  will convert a pixel size to rem units with a px fallback. */
  font-family: 'Lato', sans-serif;
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.5;
  color: #333;
  /*--- LINKS ---*/
  /*--- HORIZONTAL RULE ---*/
  /*--- LISTS ---*/
  /*--- MARK ---*/
  /*--- SMALL ---*/
  /*--- SUPERSCRIPT AND SUBSCRIPT ---*/
  /*--- QUOTES ---*/
  /*--- ABBREVIATION ---*/
  /*--- CODE ---*/
  /*--- ALIGNMENT ---*/
  /*--- CASING ---*/
  /*--- ALERTS ---*/
  /*--- BUTTONS ---*/
}
html body h1, html body h2, html body h3, html body h4, html body h5, html body h6 {
  font-family: 'Lato', sans-serif;
  line-height: 1.3;
  color: #0AB8F1;
  margin-top: 0;
}
html body p {
  font-size: 16px;
  margin-top: 0;
  margin-bottom: 16px;
}
html body h1 {
  font-size: 48px;
  font-size: 3rem;
  margin-bottom: 10px;
  font-weight: 300 !important;
}
html body h2 {
  font-size: 32px;
  font-size: 2rem;
  margin-bottom: 10px;
}
html body h3 {
  font-size: 24px;
  font-size: 1.5rem;
  margin-bottom: 10px;
}
html body h4 {
  font-size: 16px;
  font-size: 1rem;
  margin-bottom: 10px;
}
html body h5 {
  font-size: 14px;
  font-size: 0.875rem;
  margin-bottom: 10px;
}
html body h6 {
  font-size: 12px;
  font-size: 0.75rem;
  margin-bottom: 10px;
}
html body .section-title {
  text-align: center;
}
html body a {
  color: #0AB8F1;
  text-decoration: none;
}
html body a:hover {
  color: #0AB8F1;
  text-decoration: underline;
}
html body a a:focus {
  color: #0AB8F1;
  text-decoration: underline;
  outline: thin dotted;
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px;
}
html body hr {
  margin-top: 20px;
  margin-bottom: 20px;
  border: 0;
  border-top: 1px solid #eeeeee;
}
html body ul,
html body ol {
  margin-top: 0;
  margin-bottom: 10px;
}
html body ul ul,
html body ul ol,
html body ol ul,
html body ol ol {
  margin-bottom: 0;
}
html body ul {
  list-style: square;
}
html body ul.fancy {
  list-style: none;
}
html body ul.fancy li {
  position: relative;
  padding-left: 20px;
  margin-bottom: 10px;
}
html body ul.fancy li:before {
  display: block;
  content: '';
  width: 10px;
  height: 10px;
  position: absolute;
  top: 8px;
  left: 0;
  background: #0AB8F1;
  border-radius: 2px;
}
html body mark, html body .mark {
  color: #000;
  background: #ff0;
}
html body small, html body .small {
  font-size: 85%;
}
html body sub,
html body sup {
  position: relative;
  font-size: 75%;
  line-height: 0;
  vertical-align: baseline;
}
html body sup {
  top: -0.5em;
}
html body sub {
  bottom: -0.25em;
}
html body blockquote {
  font-style: italic;
  padding: 10px 20px;
  margin: 0 0 20px;
  font-size: 17.5px;
  border-left: 5px solid #eeeeee;
}
html body blockquote p:last-child,
html body blockquote ul:last-child,
html body blockquote ol:last-child {
  margin-bottom: 0;
}
html body abbr[title],
html body abbr[data-original-title] {
  cursor: help;
  border-bottom: 1px dotted #777777;
}
html body code,
html body kbd,
html body pre,
html body samp {
  font-family: Menlo, Monaco, Consolas, "Courier New", monospace;
}
html body code {
  padding: 2px 4px;
  font-size: 90%;
  color: #c7254e;
  background-color: #f9f2f4;
  border-radius: 4px;
}
html body kbd {
  padding: 2px 4px;
  font-size: 90%;
  color: #fff;
  background-color: #333;
  border-radius: 3px;
  box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.25);
}
html body kbd kbd {
  padding: 0;
  font-size: 100%;
  box-shadow: none;
}
html body pre {
  display: block;
  padding: 9.5px;
  margin: 0 0 10px;
  font-size: 13px;
  line-height: 1.42857;
  word-break: break-all;
  word-wrap: break-word;
  color: #fff;
  background-color: transparent !important;
  border: 0px solid #ccc;
  border-radius: 4px;
  width: 100%;
  height: 100%;
}
html body pre code {
  padding: 0;
  font-size: inherit;
  color: inherit;
  white-space: pre-wrap;
  background-color: transparent;
  border-radius: 0;
}
html body .text-left {
  text-align: left;
}
html body .text-right {
  text-align: right;
}
html body .text-center {
  text-align: center;
}
html body .text-justify {
  text-align: justify;
}
html body .text-nowrap {
  white-space: nowrap;
}
html body .text-lowercase {
  text-transform: lowercase;
}
html body .text-uppercase {
  text-transform: uppercase;
}
html body .text-capitalize {
  text-transform: capitalize;
}
html body .text-success {
  color: #3c763d;
}
html body a.text-success:hover {
  color: #2b542c;
}
html body .text-info {
  color: #31708f;
}
html body a.text-info:hover {
  color: #245269;
}
html body .text-warning {
  color: #8a6d3b;
}
html body a.text-warning:hover {
  color: #66512c;
}
html body .text-danger {
  color: #a94442;
}
html body a.text-danger:hover {
  color: #843534;
}
html body .bg-success {
  background-color: #cce5cc;
}
html body a.bg-success:hover {
  background-color: #aad4ab;
}
html body .bg-info {
  background-color: #d0e5ef;
}
html body a.bg-info:hover {
  background-color: #aad0e2;
}
html body .bg-warning {
  background-color: #e6dac5;
}
html body a.bg-warning:hover {
  background-color: #d7c3a1;
}
html body .bg-danger {
  background-color: #ebcdcc;
}
html body a.bg-danger:hover {
  background-color: #dda8a7;
}
html body a.arrow {
  display: block;
  margin: auto;
  border: 2px solid white;
  border-radius: 24px;
  width: 48px;
  height: 48px;
  background-image: url(/wp-content/themes/animationsworld/img/arrow.png);
  background-size: 34px 35px;
  background-repeat: no-repeat;
  background-position: 5px 4px;
}
html body .btn {
  display: inline-block;
  margin-bottom: 0;
  font-weight: normal;
  text-align: center;
  vertical-align: middle;
  cursor: pointer;
  background-color: #0AB8F1;
  background-image: none;
  color: #fff;
  border: 1px solid transparent;
  white-space: nowrap;
  padding: 6px 12px;
  font-size: 14px;
  line-height: 1.42857;
  border-radius: 4px;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  transition: background-color .3s ease, border-color .3s ease, color .3s ease;
}
html body .btn.reverse {
  color: #0AB8F1;
  background-color: white;
  border-color: #0AB8F1;
}
html body .btn.clear {
  background-color: transparent;
}
html body .btn.clear:hover {
  background-color: #37c7f7;
  border-color: #37c7f7 !important;
}
html body .btn.clear.white {
  color: white;
  border-color: white;
}
html body .btn.center {
  max-width: 25%;
  margin: 10px auto;
  min-width: 230px;
  -webkit-align-self: center;
      -ms-flex-item-align: center;
          align-self: center;
}
html body .btn:focus, html body .btn:active:focus, html body .btn.active:focus {
  outline: thin dotted;
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px;
}
html body .btn:hover, html body .btn:focus {
  background-color: #37c7f7;
  color: #fff;
  text-decoration: none;
}
html body .btn:active, html body .btn.active {
  outline: 0;
  background-image: none;
  box-shadow: none;
}
html body .btn.disabled, html body .btn[disabled], html body fieldset[disabled] .btn {
  cursor: not-allowed;
  pointer-events: none;
  opacity: 0.65;
  filter: alpha(opacity=65);
  box-shadow: none;
}
html body .btn-link {
  color: #428bca;
  font-weight: normal;
  cursor: pointer;
  border-radius: 0;
}
html body .btn-link, html body .btn-link:active, html body .btn-link[disabled], html body fieldset[disabled] .btn-link {
  background-color: transparent;
  box-shadow: none;
}
html body .btn-link, html body .btn-link:hover, html body .btn-link:focus, html body .btn-link:active {
  border-color: transparent;
}
html body .btn-link:hover, html body .btn-link:focus {
  color: #2a6496;
  text-decoration: underline;
  background-color: transparent;
}
html body .btn-link[disabled]:hover, html body .btn-link[disabled]:focus, html body fieldset[disabled] .btn-link:hover, html body fieldset[disabled] .btn-link:focus {
  color: #777777;
  text-decoration: none;
}
html body .btn-lg, html body .btn-group-lg > .btn {
  padding: 10px 16px;
  font-size: 18px;
  line-height: 1.33;
  border-radius: 6px;
}
html body .btn-sm, html body .btn-group-sm > .btn {
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 3px;
}
html body .btn-xs, html body .btn-group-xs > .btn {
  padding: 1px 5px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 3px;
}
html body .btn-block {
  display: block;
  width: 100%;
}
html body .btn-block + .btn-block {
  margin-top: 5px;
}
html body input[type="submit"].btn-block,
html body input[type="reset"].btn-block,
html body input[type="button"].btn-block {
  width: 100%;
}

input {
  color: #58595B;
}

.search-form input[type="search"] {
  box-sizing: border-box;
}
.search-form .form-group {
  position: relative;
}
.search-form .form-group label {
  display: none;
}
.search-form .form-group .form-control {
  line-height: 36px;
  padding-right: 48px;
}
.search-form .form-group .form-control[type="search"] {
  height: 48px;
}
.search-form .form-group .btn {
  position: absolute;
  display: block;
  height: 48px;
  width: 48px;
  top: 0;
  right: 0;
  background: transparent;
  color: #F7941E;
}

.wpcf7 form .form-group label {
  display: none;
}
.wpcf7 form .form-group span .wpcf7-not-valid-tip {
  font-size: 12px;
  font-size: 0.75rem;
  color: #a94442;
  display: block;
  margin-top: 5px;
}
.wpcf7 form .wpcf7-response-output {
  padding: 15px;
  margin: 20px 0;
  border: 1px solid transparent;
  border-radius: 4px;
  font-size: 14px;
  font-size: 0.875rem;
}
.wpcf7 form .wpcf7-validation-errors, .wpcf7 form .wpcf7-mail-sent-ng {
  color: #a94442;
  background-color: #ebcdcc;
  border-color: #a94442;
}
.wpcf7 form .wpcf7-validation-success {
  color: #3c763d;
  background-color: #cce5cc;
  border-color: #3c763d;
}

img {
  vertical-align: middle;
}

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

.wp-caption {
  padding: 5px 3px 0;
}
.wp-caption p.wp-caption-text {
  padding: 8px;
}

/* ==========================================================================
   AEDIS THEME STYLES
   ========================================================================== */
* {
  box-sizing: border-box;
}

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

.wrapper {
  clear: both;
  width: 100%;
  float: left;
  margin-left: 0;
  margin-right: 0;
  position: relative;
}
.wrapper .container {
  max-width: 1140px;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  padding: 0px 10px;
}
.wrapper .container:after {
  content: " ";
  display: block;
  clear: both;
}

.vpad-1x {
  padding-top: 15px;
  padding-bottom: 15px;
}

.vpad-2x {
  padding-top: 30px;
  padding-bottom: 30px;
}

.vpad-3x {
  padding-top: 60px;
  padding-bottom: 60px;
}

.vpad-4x {
  padding-top: 70px;
  padding-bottom: 70px;
}
@media (max-width: 768px) {
  .vpad-4x {
    padding-top: 45px;
    padding-bottom: 45px;
  }
}

.sixteen-nine {
  position: relative;
}
.sixteen-nine:before {
  display: block;
  content: "";
  width: 100%;
  padding-top: 56.25%;
}
.sixteen-nine > .content {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

/* ==========================================================================
   HEADER
   ========================================================================== */
#header {
  clear: both;
  width: 100%;
  float: left;
  margin-left: 0;
  margin-right: 0;
  position: fixed;
  top: 0;
  z-index: 10000;
  transition: top 0.3s ease-in-out;
  background: #fff;
  border-bottom: solid 4px rgba(0, 0, 0, 0.3);
}
#header.nav-up {
  top: -100px;
}
#header .container {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding-top: 10px;
  padding-bottom: 10px;
}
#header .container:after {
  display: none;
}
#header .container:before {
  content: none !important;
}
#header #id {
  width: 212px;
  height: 60px;
}
#header #id a {
  display: block;
  width: 100%;
  height: 100%;
  text-indent: -1000em;
  background-image: url(img/id.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: left;
}

/* ==========================================================================
   NAVIGATION
   ========================================================================== */
#navigation .navigation-header {
  display: none;
}
#navigation ul.navigation-links {
  list-style: none;
  margin: 0;
  padding: 0;
  background: #e5e5e5;
}
#navigation ul.navigation-links > li {
  padding: 0;
  margin: 0 5px;
  position: relative;
  float: left;
}
#navigation ul.navigation-links > li > a {
  display: block;
  width: 100%;
  padding: 5px 20px;
  color: #333;
  font-size: 18px;
  font-size: 1.125rem;
  border-radius: 10px;
  transition: background-color .3s ease, color .3s ease;
}
#navigation ul.navigation-links > li > a:hover {
  background: #0AB8F1;
  color: #fff;
  text-decoration: none;
}
#navigation ul.navigation-links > li > a:hover i {
  color: #fff;
}
#navigation ul.navigation-links > li > a:focus {
  outline: none;
}
#navigation ul.navigation-links > li > a i {
  display: block;
  width: 16px;
  height: 16px;
  position: absolute;
  right: 15px;
  top: 50%;
  margin-top: -8px;
  text-align: center;
  color: #BCBEC0;
  transition: color .3s ease;
}
#navigation ul.navigation-links > li.current-menu-item a {
  background-color: #e5e5e5;
}
#navigation ul.navigation-links > li.current-menu-item a:hover {
  background: #0AB8F1;
}
#navigation.collapsed {
  width: 100%;
}
#navigation.collapsed .navigation-header {
  display: block;
  width: 44px;
  height: 34px;
  position: absolute;
  top: 25px;
  right: 25px;
}
#navigation.collapsed .navigation-header .navigation-toggle {
  display: block;
  position: relative;
  float: right;
  margin: 0;
  padding: 9px 10px;
  background-color: transparent;
  background-image: none;
  border: 1px solid #0AB8F1;
  border-radius: 4px;
}
#navigation.collapsed .navigation-header .navigation-toggle:focus {
  outline: 0;
}
#navigation.collapsed .navigation-header .navigation-toggle .icon-bar {
  display: block;
  width: 22px;
  height: 2px;
  border-radius: 1px;
  background: #0AB8F1;
}
#navigation.collapsed .navigation-header .navigation-toggle .icon-bar + .icon-bar {
  margin-top: 4px;
}
#navigation.collapsed ul.navigation-links {
  list-style: none;
  width: calc(100% + 30px);
  margin: 10px -15px 0px;
  padding: 0;
  overflow: hidden;
  background: #0AB8F1;
  max-height: 0em;
}
#navigation.collapsed ul.navigation-links.open {
  transition: max-height .3s ease;
  max-height: 50em;
}
#navigation.collapsed ul.navigation-links > li {
  margin: 0;
  padding: 0;
  position: relative;
  border-bottom: solid 1px #fff;
  float: none;
  width: 100%;
  overflow: hidden;
}
#navigation.collapsed ul.navigation-links > li:last-child {
  border-bottom: none;
}
#navigation.collapsed ul.navigation-links > li > a {
  display: block;
  width: 100%;
  height: 50px;
  line-height: 50px;
  padding: 0 15px;
  color: #fff;
  border-radius: 0px;
}
#navigation.collapsed ul.navigation-links > li > a:hover {
  background: #37c7f7;
  text-decoration: none;
}
#navigation.collapsed ul.navigation-links > li > a:hover i {
  color: #fff;
}
#navigation.collapsed ul.navigation-links > li > a i {
  display: block;
  width: 50px;
  height: 50px;
  text-align: center;
  line-height: 50px;
  position: absolute;
  color: #4d4d4d;
  top: 0px;
  right: 0px;
  margin-top: 0;
  transition: color .3s ease;
}
#navigation.collapsed ul.navigation-links > li.current-menu-item > a {
  background-color: #0893c0;
}
#navigation.collapsed ul.navigation-links > li.current-menu-item > a:hover {
  background: #37c7f7;
}
#navigation.collapsed ul.navigation-links > li > ul.sub-menu {
  position: relative;
  top: 0;
  list-style: none;
  margin: 0;
  padding: 0;
  background: #666;
  width: 100%;
  max-height: 0;
  transition: max-height .3s ease;
}
#navigation.collapsed ul.navigation-links > li > ul.sub-menu.open {
  max-height: 1000px;
}
#navigation.collapsed ul.navigation-links > li > ul.sub-menu > li {
  border-bottom: solid 1px #4d4d4d;
}
#navigation.collapsed ul.navigation-links > li > ul.sub-menu > li:last-child {
  border: none;
}
#navigation.collapsed ul.navigation-links > li > ul.sub-menu > li > a {
  display: block;
  width: 100%;
  height: 50px;
  line-height: 50px;
  padding: 0 15px;
  color: #fff;
}
#navigation.collapsed ul.navigation-links > li > ul.sub-menu > li > a:hover {
  background: #0AB8F1;
  text-decoration: none;
}

#sub-navigation {
  height: 40px;
  width: 100%;
  background-color: #333;
  position: fixed;
  bottom: 0px;
  z-index: 1000;
}
#sub-navigation ul {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  list-style: outside none none;
  width: 90%;
  -webkit-justify-content: space-around;
      -ms-flex-pack: distribute;
          justify-content: space-around;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
#sub-navigation ul li > a {
  transition: background .3s ease;
  display: block;
  width: 100%;
  height: 40px;
  line-height: 40px;
  padding: 0 15px;
  color: #fff;
  text-decoration: none;
}
#sub-navigation ul li > a:hover {
  background-color: #2e2e2e;
}

/* ==========================================================================
   CONTENT
   ========================================================================== */
#content {
  clear: both;
  width: 100%;
  float: left;
  margin-left: 0;
  margin-right: 0;
  position: relative;
  padding-top: 20px;
}
#content #main {
  width: 65.71429%;
  float: left;
  margin-right: 2.85714%;
  position: relative;
  margin-bottom: 20px;
}
#content #main.full-width {
  clear: both;
  width: 100%;
  float: left;
  margin-left: 0;
  margin-right: 0;
}
#content #main .post, #content #main .page {
  position: relative;
  margin-bottom: 20px;
}
#content #main .post.post, #content #main .page.post {
  padding-bottom: 40px;
  border-bottom: solid 4px #ccc;
}
#content #main .post.post-single, #content #main .page.post-single {
  padding-bottom: 0;
  border-bottom: none;
}
#content #main .post .article-header .article-title a:hover, #content #main .page .article-header .article-title a:hover {
  text-decoration: none;
}
#content #main .post .article-header .postmetadata, #content #main .page .article-header .postmetadata {
  margin-bottom: 20px;
}
#content #main .post .article-header .postmetadata span.post-date, #content #main .post .article-header .postmetadata span.post-author, #content #main .post .article-header .postmetadata span.post-comments, #content #main .page .article-header .postmetadata span.post-date, #content #main .page .article-header .postmetadata span.post-author, #content #main .page .article-header .postmetadata span.post-comments {
  display: inline-block;
  margin-right: 20px;
}
#content #main .post .article-header .postmetadata span.post-date i, #content #main .post .article-header .postmetadata span.post-author i, #content #main .post .article-header .postmetadata span.post-comments i, #content #main .page .article-header .postmetadata span.post-date i, #content #main .page .article-header .postmetadata span.post-author i, #content #main .page .article-header .postmetadata span.post-comments i {
  display: inline-block;
  margin-right: 5px;
}
#content #main .post .article-content, #content #main .page .article-content {
  padding-top: 20px;
}
#content #main .post .article-content .readmore-link, #content #main .page .article-content .readmore-link {
  display: block;
  width: 100px;
  margin-top: 20px;
}
#content #sidebar {
  margin-left: 8.57143%;
  width: 22.85714%;
  float: right;
  margin-right: 0;
  list-style: none;
  position: relative;
}
#content #sidebar li {
  list-style-image: none;
  list-style-type: none;
  margin-left: 0;
}
#content #sidebar ul {
  margin: 0;
  padding: 0;
}
#content #sidebar ul li.widget-container {
  margin: 0 0 20px 0;
  padding: 0;
}

/* ==========================================================================
   CONTACT US
   ========================================================================== */
#contact-us {
  background: #103142;
  border-top: solid 4px #0F2938;
}
#contact-us h2 {
  color: #fff;
}
#contact-us .container {
  text-align: center;
}
#contact-us .container .contact-info {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
#contact-us .container .contact-info p, #contact-us .container .contact-info a {
  color: #fff;
  font-weight: 600;
  line-height: 30px;
}
#contact-us .container .contact-info span.dot-break {
  display: inline-block;
  margin: 0px 10px;
}
#contact-us .container .contact-info .social-media {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin: auto;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
#contact-us .container .contact-info .social-media a {
  text-decoration: none;
  display: block;
  margin: 5px;
}
#contact-us .container .contact-info .social-media a i {
  display: block;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  text-align: center;
  font-size: 30px;
  line-height: 50px;
  color: #0AB8F1;
  background-color: white;
  padding-top: 2px;
}

/* ==========================================================================
   HEADER ON SCROLL
   ========================================================================== */
#scrollHeader {
  z-index: 500;
  height: 62px;
  position: fixed;
  top: 0;
  transition: top 0.2s ease-in-out;
  width: 100%;
  text-align: center;
  font-size: 28px;
  font-size: 1.75rem;
  background-color: #58595B;
}
#scrollHeader ul {
  display: inline-block;
  list-style-type: none;
  -webkit-padding-start: 0px;
}
#scrollHeader ul li {
  float: left;
  padding: 10px 50px;
}
#scrollHeader ul li a {
  color: #fff;
}
#scrollHeader ul li a:hover {
  border-bottom: 1px dotted white;
  color: #fff;
  text-decoration: none;
}

.nav-up {
  top: -62px !important;
}

.remove {
  display: none;
}

/* ==========================================================================
   BACKGROUND VIDEO
   ========================================================================== */
video {
  position: absolute;
  top: 50%;
  left: 50%;
  min-width: 100%;
  min-height: 100%;
  width: auto;
  height: auto;
  -webkit-transform: translateX(-50%) translateY(-50%);
          transform: translateX(-50%) translateY(-50%);
}

/* ==========================================================================
   JUMBOTRON
   ========================================================================== */
#jumbotron {
  position: relative;
  background: transparent;
  overflow: hidden;
  width: 100%;
  height: 100vh;
  z-index: 600;
}
#jumbotron video {
  z-index: 0;
}
#jumbotron .container {
  padding-top: 30vh;
  padding-bottom: 30vh;
  z-index: 2;
}
#jumbotron h1, #jumbotron p {
  text-shadow: 2px 2px rgba(0, 0, 0, 0.75);
}
#jumbotron h1 {
  text-align: center;
  color: white;
}
#jumbotron p {
  font-size: 18px;
  font-size: 1.125rem;
  color: white;
  text-align: center;
  margin-bottom: 0;
}
#jumbotron:after {
  display: block;
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.5);
  z-index: 1;
}

/* ==========================================================================
   FREE ANIMATIONS
   ========================================================================== */
#free-animations {
  text-align: center;
}
#free-animations #video-container {
  position: relative;
  z-index: 50;
  background-color: transparent;
  color: #fff;
  margin: 0;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  height: 100vh;
  width: 100%;
}
#free-animations #video-container div {
  margin: auto;
  text-align: center;
  max-width: 900px;
}
#free-animations #video-container div img {
  max-width: 300px;
}
#free-animations #video-container div h1 {
  color: #fff;
  font-weight: 400;
  text-shadow: -2px 2px 2px black;
}
#free-animations #video-container div p {
  font-size: 24px;
  font-size: 1.5rem;
  font-style: italic;
  margin-top: 15px;
}
#free-animations .menu {
  z-index: 650;
  font-size: 28px;
  font-size: 1.75rem;
}
#free-animations .menu ul {
  display: inline-block;
  list-style-type: none;
  margin-top: -10%;
  -webkit-padding-start: 0px;
}
#free-animations .menu ul li {
  float: left;
  padding: 10px 50px;
}
#free-animations .menu ul li a {
  color: #fff;
}
#free-animations .menu ul li a:hover {
  border-bottom: 1px dotted white;
  color: #fff;
  text-decoration: none;
}
#free-animations .container #animations h1 {
  margin: 40px 0 30px;
}
#free-animations .container #animations .grid {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-justify-content: space-around;
      -ms-flex-pack: distribute;
          justify-content: space-around;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  -webkit-align-content: stretch;
      -ms-flex-line-pack: stretch;
          align-content: stretch;
}
#free-animations .container #animations .grid .item {
  -webkit-flex: 1 0 auto;
      -ms-flex: 1 0 auto;
          flex: 1 0 auto;
  max-width: 350px;
}
#free-animations .container #animations .grid .item figure {
  position: relative;
  max-width: 350px;
  height: 200px;
  margin: 10px auto;
  padding: 5px;
  border-radius: 3px;
  transition: all .3s ease-in-out;
  border: solid 1px #BCBEC0;
  border-radius: 5px;
  overflow: hidden;
}
#free-animations .container #animations .grid .item figure:after {
  opacity: 0;
  content: "\f0da";
  font-family: FontAwesome;
  position: absolute;
  margin-left: -55%;
  margin-top: -15%;
  font-size: 200px;
  color: #fff;
  text-shadow: 1px 1px 50px black;
  transition: all .3s ease-in-out;
}
#free-animations .container #animations .grid .item figure:hover {
  border-color: #0AB8F1;
}
#free-animations .container #animations .grid .item figure:hover:after {
  opacity: .8;
}
#free-animations .container #animations .grid .item figure:hover img {
  -webkit-filter: grayscale(1);
  filter: grayscale(1);
}
#free-animations .container #animations .grid .item figure:hover .video-title {
  opacity: 0;
}
#free-animations .container #animations .grid .item figure img {
  width: 100%;
  height: 100%;
  border-radius: 3px;
  transition: all .3s ease-in-out;
}
#free-animations .container #animations .grid .item figure .video-title {
  float: right;
  position: relative;
  top: -44px;
  width: 100%;
  text-align: right;
  padding: 10px 15px;
  transition: all .3s ease-in-out;
  color: #fff;
}
#free-animations .container #animations .grid .item figcaption {
  position: absolute;
  width: 100%;
  text-align: center;
  color: #f4f4f4;
  text-shadow: 0 0 3px #000;
  bottom: 10px;
  transition: all .3s ease-in-out;
}
#free-animations .container #how-to-use {
  max-width: 960px;
  margin: 50px auto 0;
}
#free-animations .container #how-to-use h1 {
  margin-bottom: 30px;
}
#free-animations .container #how-to-use .grid {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-justify-content: space-around;
      -ms-flex-pack: distribute;
          justify-content: space-around;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  -webkit-align-content: stretch;
      -ms-flex-line-pack: stretch;
          align-content: stretch;
  padding: 10px 0 60px;
}
#free-animations .container #how-to-use .grid .item {
  -webkit-flex: 1 0 auto;
      -ms-flex: 1 0 auto;
          flex: 1 0 auto;
}
#free-animations .container #how-to-use .grid .item .steps {
  position: relative;
  max-width: 320px;
  margin: 10px auto;
  border-radius: 3px;
  transition: all .2s ease-in-out;
  border-radius: 0;
}
#free-animations .container #how-to-use .grid .item .steps span {
  display: block;
  width: 80px;
  height: 80px;
  border-radius: 50%;
  text-align: center;
  font-size: 3em;
  line-height: 1.14em;
  color: #0AB8F1;
  padding: 10px;
  margin: auto;
  margin-bottom: 30px;
  border: 2px solid #0AB8F1;
  font-weight: 300;
}
#free-animations .container #how-to-use .grid .item .steps .title {
  color: #000;
  /* @include font-size(18); */
}
#free-animations .container #how-to-use .grid .item .steps .desc {
  color: #808285;
  font-family: 'Open Sans', sans-serif;
  font-size: 14px;
  font-size: 0.875rem;
}
#free-animations .container #how-to-use .instructions {
  width: 80%;
  margin: 0 auto;
}
#free-animations .container #how-to-use .instructions .nav-tabs {
  border-bottom: 0;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-align-content: center;
      -ms-flex-line-pack: center;
          align-content: center;
}
#free-animations .container #how-to-use .instructions .nav-tabs li {
  -webkit-flex: 1 1 auto;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  border: 2px solid #0AB8F1;
  border-radius: 3px;
  margin-bottom: 0;
}
#free-animations .container #how-to-use .instructions .nav-tabs li a {
  margin-right: 0;
  border: 0;
  border-radius: 0;
}
#free-animations .container #how-to-use .instructions .nav-tabs li a:hover {
  background-color: #0AB8F1;
  color: #fff;
}
#free-animations .container #how-to-use .instructions .nav-tabs li:nth-child(2) {
  margin: 0 3px;
}
#free-animations .container #how-to-use .instructions .nav-tabs li.active a {
  background-color: #0AB8F1;
  color: #fff;
}
#free-animations .container #how-to-use .instructions .tab-content {
  background-image: url(../vidlery/img/instructions.svg);
  background-size: cover;
  color: #fff;
  height: 300px;
  margin-top: 3px;
  text-align: left;
  padding: 10px;
}
#free-animations .container #how-to-use .instructions .tab-content pre .yellow {
  color: #e2cd52;
}
#free-animations .container #how-to-use .instructions .tab-content pre .orange {
  color: #F7941E;
}
#free-animations .container #how-to-use .instructions .tab-content pre .green {
  color: #AEC978;
}
#free-animations .container #how-to-use .instructions .tab-content pre .blue {
  color: #0AB8F1;
}
#free-animations #contact-box {
  padding: 80px 0;
  background-color: #fff;
  border-top: 0px;
}
#free-animations #contact-box h1 {
  margin-bottom: 30px;
}
#free-animations #contact-box p {
  display: inline-block;
  margin-right: 5px;
}
#free-animations #contact-box .btn {
  padding: 15px 10%;
  border-radius: 3px;
}
#free-animations #contact-box .btn:hover, #free-animations #contact-box .btn:focus {
  text-decoration: none;
}
#free-animations #newsletter {
  background-color: #f1f2f2;
  color: #fff;
  padding: 40px 0 60px;
  font-family: 'Open Sans', sans-serif;
}
#free-animations #newsletter #signup p {
  color: #000;
  margin-bottom: 25px;
}
#free-animations #newsletter #signup #mc_embed_signup {
  background: transparent;
  font: normal;
}
#free-animations #newsletter #signup #mc_embed_signup #mc_embed_signup form form {
  text-align: inherit;
  padding: 0;
}
#free-animations #newsletter #signup #mc_embed_signup .mc-field-group {
  clear: none;
  width: 100%;
  padding-bottom: 0;
  min-height: inherit;
  position: inherit;
  text-align: center;
}
#free-animations #newsletter #signup #mc_embed_signup .mc-field-group .email {
  border-radius: 3px 0 0 3px;
  border: 0;
  padding: 7px 12px;
  margin-right: -5px;
  width: 50%;
  box-shadow: none;
  height: 52px;
  font-style: italic;
  display: initial;
  text-indent: initial;
}
#free-animations #newsletter #signup #mc_embed_signup .mc-field-group .btn {
  line-height: inherit;
  padding: 11px 20px;
  border-radius: 0 3px 3px 0;
  border: 0;
  font-size: 18px;
  font-size: 1.125rem;
  width: initial;
  text-indent: initial;
  display: initial;
  margin: 0;
  height: 52px;
  border: 0;
  margin-top: -2px;
}
#free-animations #newsletter #signup #mc_embed_signup .mc-field-group input[type=text]:focus, #free-animations #newsletter #signup #mc_embed_signup .mc-field-group textarea:focus {
  box-shadow: 0 0 0px #51cbee;
}

/* ==========================================================================
   FREE ANIMATIONS MODALS
   ========================================================================== */
.modal .vertical-alignment-helper {
  display: table;
  height: 100%;
  width: 100%;
}
.modal .vertical-alignment-helper .vertical-align-center {
  /* To center vertically */
  display: table-cell;
  vertical-align: middle;
}
.modal .vertical-alignment-helper .vertical-align-center .modal-content {
  /* Bootstrap sets the size of the modal in the modal-dialog class, we need to inherit it */
  width: inherit;
  height: inherit;
  /* To center horizontally */
  margin: 0 auto;
}
.modal .vertical-alignment-helper .vertical-align-center .modal-content .modal-header {
  text-align: left;
  border-bottom: 0;
}
.modal .vertical-alignment-helper .vertical-align-center .modal-content .modal-header .modal-title {
  color: #333 !important;
}
.modal .vertical-alignment-helper .vertical-align-center .modal-content .modal-body video {
  position: relative;
  top: initial;
  left: initial;
  min-width: auto;
  min-height: auto;
  width: 90%;
  height: auto;
  -webkit-transform: initial;
  transform: initial;
  z-index: 100;
  border: 0;
  border-radius: 0;
  box-shadow: none;
}
.modal .vertical-alignment-helper .vertical-align-center .modal-content .modal-footer {
  border-top: 0;
}
.modal .vertical-alignment-helper .vertical-align-center .modal-content .modal-footer .btn-cover:before {
  opacity: 1;
  content: "\f06e";
  font-family: FontAwesome;
  color: #fff;
  padding-right: 10px;
  transition: all .3s ease-in-out;
}
.modal .vertical-alignment-helper .vertical-align-center .modal-content .modal-footer .btn-download {
  background-color: #F7941E;
  margin-left: 10px;
  transition: all .3s ease-in-out;
}
.modal .vertical-alignment-helper .vertical-align-center .modal-content .modal-footer .btn-download:before {
  opacity: 1;
  content: "\f019";
  font-family: FontAwesome;
  color: #fff;
  padding-right: 10px;
  transition: all .3s ease-in-out;
}
.modal .vertical-alignment-helper .vertical-align-center .modal-content .modal-footer .btn-download:hover {
  opacity: .7;
}

/* ==========================================================================
   FOOTER
   ========================================================================== */
#footer {
  clear: both;
  width: 100%;
  float: left;
  margin-left: 0;
  margin-right: 0;
  position: relative;
  padding: 20px 0;
  border-top: 5px solid #a7a9ac;
  background: #BCBEC0;
  color: #58595B;
  text-align: center;
  font-weight: 300;
}
#footer a {
  color: #58595B;
  font-weight: 400;
  text-decoration: underline;
}
#footer a:hover {
  text-decoration: none;
}
#footer a.email {
  font-weight: 300;
}
#footer .cc, #footer .animationsworld {
  max-width: 100px;
  transition: all .3s ease-in-out;
}
#footer .cc:hover, #footer .animationsworld:hover {
  opacity: .8;
}
#footer .cc {
  margin-bottom: 15px;
}
#footer #site-info {
  margin: 0;
}

@media (max-width: 1200px) {
  /* ==========================================================================
     FREE ANIMATIONS
     ========================================================================== */
  #free-animations .menu {
    font-size: 22px;
    font-size: 1.375rem;
  }
  #free-animations #how-to-use .grid .item {
    margin-bottom: 30px;
  }
}
@media (max-width: 992px) {
  /* ==========================================================================
     HEADER ON SCROLL
     ========================================================================== */
  #scrollHeader {
    font-size: 24px;
    font-size: 1.5rem;
  }

  #scrollHeader ul li {
    padding: 15px 30px;
  }

  /* ==========================================================================
     FREE ANIMATIONS
     ========================================================================== */
  #free-animations .menu {
    font-size: 20px;
    font-size: 1.25rem;
  }
  #free-animations .menu ul {
    margin-top: -15%;
  }
  #free-animations .menu ul li {
    padding: 15px 40px;
  }

  /* ==========================================================================
     How to Use
     ========================================================================== */
  .instructions {
    width: 90%;
  }
}
@media (max-width: 768px) {
  /* ==========================================================================
     HEADER ON SCROLL
     ========================================================================== */
  #scrollHeader {
    font-size: 20px;
    font-size: 1.25rem;
  }

  #scrollHeader ul li {
    padding: 16px 20px;
  }

  /* ==========================================================================
     TYPOGRAPHY
     ========================================================================== */
  html body {
    font-size: 16px;
    font-size: 1rem;
  }
  html body p {
    margin: 0 0 10px;
  }
  html body h1 {
    font-size: 48px;
    font-size: 3rem;
    margin-top: 20px;
    margin-bottom: 10px;
  }
  html body h2 {
    font-size: 32px;
    font-size: 2rem;
    margin-top: 20px;
    margin-bottom: 10px;
  }
  html body h3 {
    font-size: 24px;
    font-size: 1.5rem;
    margin-top: 20px;
    margin-bottom: 10px;
  }
  html body h4 {
    font-size: 16px;
    font-size: 1rem;
    margin-top: 10px;
    margin-bottom: 10px;
  }
  html body h5 {
    font-size: 14px;
    font-size: 0.875rem;
    margin-top: 10px;
    margin-bottom: 10px;
  }
  html body h6 {
    font-size: 12px;
    font-size: 0.75rem;
    margin-top: 10px;
    margin-bottom: 10px;
  }

  /* ==========================================================================
     CONTAINER
     ========================================================================== */
  .container {
    max-width: 768px;
    margin-left: auto;
    margin-right: auto;
  }
  .container:after {
    content: " ";
    display: block;
    clear: both;
  }

  /* ==========================================================================
     HEADER
     ========================================================================== */
  #header {
    margin-top: 50px;
  }

  /* ==========================================================================
     CONTENT
     ========================================================================== */
  #content #main {
    clear: both;
    width: 100%;
    float: left;
    margin-left: 0;
    margin-right: 0;
  }
  #content #sidebar {
    clear: both;
    width: 100%;
    float: left;
    margin-left: 0;
    margin-right: 0;
  }

  /* ==========================================================================
     FREE ANIMATIONS
     ========================================================================== */
  #free-animations #video-container div p {
    font-size: 20px;
    font-size: 1.25rem;
  }
  #free-animations .menu {
    font-size: 18px;
    font-size: 1.125rem;
    margin-top: -20px;
  }
  #free-animations .menu ul li {
    padding: 16px 20px;
  }

  /* ==========================================================================
     How to Use
     ========================================================================== */
  #how-to-use .instructions {
    width: 90% !important;
  }
  #how-to-use .instructions .nav-tabs {
    margin-left: 0 !important;
  }
  #how-to-use .instructions .nav-tabs li {
    width: 100% !important;
    margin-bottom: 5px !important;
    -webkit-flex: 0 0 100%;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
  }
  #how-to-use .instructions li:nth-child(2) {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
}
@media (max-width: 600px) {
  /* ==========================================================================
     HEADER ON SCROLL
     ========================================================================== */
  #scrollHeader {
    font-size: 14px;
    font-size: 0.875rem;
  }

  #scrollHeader ul li {
    padding: 21px 10px;
  }

  /* ==========================================================================
     TYPOGRAPHY
     ========================================================================== */
  html body h1 {
    font-size: 40px;
    font-size: 2.5rem;
  }

  /* ==========================================================================
     FREE ANIMATIONS
     ========================================================================== */
  #free-animations #video-container div img {
    max-width: 200px;
  }
  #free-animations #video-container div p {
    font-size: 18px;
    font-size: 1.125rem;
  }
  #free-animations .menu {
    font-size: 14px;
    font-size: 0.875rem;
  }
  #free-animations .menu ul li {
    padding: 21px 10px;
  }
}
@media (max-width: 400px) {
  /* ==========================================================================
     HEADER ON SCROLL
     ========================================================================== */
  #scrollHeader {
    font-size: 11px;
    font-size: 0.6875rem;
  }

  /* ==========================================================================
     FREE ANIMATIONS
     ========================================================================== */
  #free-animations .menu {
    font-size: 11px;
    font-size: 0.6875rem;
  }
}

/*# sourceMappingURL=data:application/json;base64,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QixxQkFBb0I7SUFDckI7O0VBRUQ7SUFDRSxvQkFBbUI7SUFDcEI7O0VBRUQ7O21GQUVnRjtFQUNoRjtJQUNFLGlCQUFnQjtJQUNoQixtQkFBa0I7SUFDbkI7O0VBRUQ7O21GQUVnRjtFQUNoRjtJQUNFLGtCQUFpQjtJQUNsQjtFQUNEO0lBQ0UsaUJBQWdCO0lBQ2hCLHFCQUFvQjtJQUNyQjtFQUNEO0lBQ0UsaUJBQWdCO0lBQ2hCLHFCQUFvQjtJQUNyQjtFQUNEO0lBQ0Usb0JBQW1CO0lBQ3BCO0VBQ0Y7QUFDRDtFQUNFOzttRkFFZ0Y7RUFDaEY7SUFDRSxpQkFBZ0I7SUFDaEIsc0JBQXFCO0lBQ3RCOztFQUVEOzttRkFFZ0Y7RUFDaEY7SUFDRSxpQkFBZ0I7SUFDaEIsc0JBQXFCO0lBQ3RCO0VBQ0YiLCJmaWxlIjoic3R5bGUuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLypcblRoZW1lIE5hbWU6IFZpZGxlcnlcblRoZW1lIFVSSTpcbkRlc2NyaXB0aW9uOiBBIGJhc2ljIHBsYXRmb3JtIGZvciB3ZWIgZGV2ZWxvcG1lbnQuXG5BdXRob3I6IENocmlzdG9waGVyIFVyeWdhIHwgU3VidmVyc2UgTExDXG5BdXRob3IgVVJJOiBodHRwOi8vd3d3LmRpc3NpZGVudGNob2lyLmNvbVxuVmVyc2lvbjogMS4wXG5cbkxpY2Vuc2U6IEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHYzLjBcbkxpY2Vuc2UgVVJJOiBodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvZ3BsLmh0bWxcblxuVGFnczogcmVzcG9uc2l2ZS1sYXlvdXRcbiovXG4vKiEgbm9ybWFsaXplLmNzcyB2My4wLjIgfCBNSVQgTGljZW5zZSB8IGdpdC5pby9ub3JtYWxpemUgKi9cbi8qKlxuICogMS4gU2V0IGRlZmF1bHQgZm9udCBmYW1pbHkgdG8gc2Fucy1zZXJpZi5cbiAqIDIuIFByZXZlbnQgaU9TIHRleHQgc2l6ZSBhZGp1c3QgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlLCB3aXRob3V0IGRpc2FibGluZ1xuICogICAgdXNlciB6b29tLlxuICovXG5odG1sIHtcbiAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7XG4gIC8qIDEgKi9cbiAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC8qIDIgKi9cbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAvKiAyICovXG59XG5cbi8qKlxuICogUmVtb3ZlIGRlZmF1bHQgbWFyZ2luLlxuICovXG5ib2R5IHtcbiAgbWFyZ2luOiAwO1xufVxuXG4vKiBIVE1MNSBkaXNwbGF5IGRlZmluaXRpb25zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYW55IEhUTUw1IGVsZW1lbnQgaW4gSUUgOC85LlxuICogQ29ycmVjdCBgYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgZm9yIGBkZXRhaWxzYCBvciBgc3VtbWFyeWAgaW4gSUUgMTAvMTFcbiAqIGFuZCBGaXJlZm94LlxuICogQ29ycmVjdCBgYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgZm9yIGBtYWluYCBpbiBJRSAxMS5cbiAqL1xuYXJ0aWNsZSxcbmFzaWRlLFxuZGV0YWlscyxcbmZpZ2NhcHRpb24sXG5maWd1cmUsXG5mb290ZXIsXG5oZWFkZXIsXG5oZ3JvdXAsXG5tYWluLFxubWVudSxcbm5hdixcbnNlY3Rpb24sXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCBgaW5saW5lLWJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGluIElFIDgvOS5cbiAqIDIuIE5vcm1hbGl6ZSB2ZXJ0aWNhbCBhbGlnbm1lbnQgb2YgYHByb2dyZXNzYCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbiAqL1xuYXVkaW8sXG5jYW52YXMsXG5wcm9ncmVzcyxcbnZpZGVvIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAvKiAxICovXG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgLyogMiAqL1xufVxuXG4vKipcbiAqIFByZXZlbnQgbW9kZXJuIGJyb3dzZXJzIGZyb20gZGlzcGxheWluZyBgYXVkaW9gIHdpdGhvdXQgY29udHJvbHMuXG4gKiBSZW1vdmUgZXhjZXNzIGhlaWdodCBpbiBpT1MgNSBkZXZpY2VzLlxuICovXG5hdWRpbzpub3QoW2NvbnRyb2xzXSkge1xuICBkaXNwbGF5OiBub25lO1xuICBoZWlnaHQ6IDA7XG59XG5cbi8qKlxuICogQWRkcmVzcyBgW2hpZGRlbl1gIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LzEwLlxuICogSGlkZSB0aGUgYHRlbXBsYXRlYCBlbGVtZW50IGluIElFIDgvOS8xMSwgU2FmYXJpLCBhbmQgRmlyZWZveCA8IDIyLlxuICovXG5baGlkZGVuXSxcbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyogTGlua3NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIGNvbG9yIGZyb20gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuICovXG5hIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi8qKlxuICogSW1wcm92ZSByZWFkYWJpbGl0eSB3aGVuIGZvY3VzZWQgYW5kIGFsc28gbW91c2UgaG92ZXJlZCBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbmE6YWN0aXZlLFxuYTpob3ZlciB7XG4gIG91dGxpbmU6IDA7XG59XG5cbi8qIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LzEwLzExLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4gKi9cbmFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZDtcbn1cblxuLyoqXG4gKiBBZGRyZXNzIHN0eWxlIHNldCB0byBgYm9sZGVyYCBpbiBGaXJlZm94IDQrLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4gKi9cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLyoqXG4gKiBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gU2FmYXJpIGFuZCBDaHJvbWUuXG4gKi9cbmRmbiB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuLyoqXG4gKiBBZGRyZXNzIHZhcmlhYmxlIGBoMWAgZm9udC1zaXplIGFuZCBtYXJnaW4gd2l0aGluIGBzZWN0aW9uYCBhbmQgYGFydGljbGVgXG4gKiBjb250ZXh0cyBpbiBGaXJlZm94IDQrLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4gKi9cbmgxIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIG1hcmdpbjogMC42N2VtIDA7XG59XG5cbi8qKlxuICogQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDgvOS5cbiAqL1xubWFyayB7XG4gIGJhY2tncm91bmQ6ICNmZjA7XG4gIGNvbG9yOiAjMDAwO1xufVxuXG4vKipcbiAqIEFkZHJlc3MgaW5jb25zaXN0ZW50IGFuZCB2YXJpYWJsZSBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlO1xufVxuXG4vKipcbiAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGFmZmVjdGluZyBgbGluZS1oZWlnaHRgIGluIGFsbCBicm93c2Vycy5cbiAqL1xuc3ViLFxuc3VwIHtcbiAgZm9udC1zaXplOiA3NSU7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3VwIHtcbiAgdG9wOiAtMC41ZW07XG59XG5cbnN1YiB7XG4gIGJvdHRvbTogLTAuMjVlbTtcbn1cblxuLyogRW1iZWRkZWQgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogUmVtb3ZlIGJvcmRlciB3aGVuIGluc2lkZSBgYWAgZWxlbWVudCBpbiBJRSA4LzkvMTAuXG4gKi9cbmltZyB7XG4gIGJvcmRlcjogMDtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IG92ZXJmbG93IG5vdCBoaWRkZW4gaW4gSUUgOS8xMC8xMS5cbiAqL1xuc3ZnOm5vdCg6cm9vdCkge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4vKiBHcm91cGluZyBjb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBBZGRyZXNzIG1hcmdpbiBub3QgcHJlc2VudCBpbiBJRSA4LzkgYW5kIFNhZmFyaS5cbiAqL1xuZmlndXJlIHtcbiAgbWFyZ2luOiAxZW0gNDBweDtcbn1cblxuLyoqXG4gKiBBZGRyZXNzIGRpZmZlcmVuY2VzIGJldHdlZW4gRmlyZWZveCBhbmQgb3RoZXIgYnJvd3NlcnMuXG4gKi9cbmhyIHtcbiAgLW1vei1ib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIGhlaWdodDogMDtcbn1cblxuLyoqXG4gKiBDb250YWluIG92ZXJmbG93IGluIGFsbCBicm93c2Vycy5cbiAqL1xucHJlIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbi8qKlxuICogQWRkcmVzcyBvZGQgYGVtYC11bml0IGZvbnQgc2l6ZSByZW5kZXJpbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5jb2RlLFxua2JkLFxucHJlLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgZm9udC1zaXplOiAxZW07XG59XG5cbi8qIEZvcm1zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBLbm93biBsaW1pdGF0aW9uOiBieSBkZWZhdWx0LCBDaHJvbWUgYW5kIFNhZmFyaSBvbiBPUyBYIGFsbG93IHZlcnkgbGltaXRlZFxuICogc3R5bGluZyBvZiBgc2VsZWN0YCwgdW5sZXNzIGEgYGJvcmRlcmAgcHJvcGVydHkgaXMgc2V0LlxuICovXG4vKipcbiAqIDEuIENvcnJlY3QgY29sb3Igbm90IGJlaW5nIGluaGVyaXRlZC5cbiAqICAgIEtub3duIGlzc3VlOiBhZmZlY3RzIGNvbG9yIG9mIGRpc2FibGVkIGVsZW1lbnRzLlxuICogMi4gQ29ycmVjdCBmb250IHByb3BlcnRpZXMgbm90IGJlaW5nIGluaGVyaXRlZC5cbiAqIDMuIEFkZHJlc3MgbWFyZ2lucyBzZXQgZGlmZmVyZW50bHkgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxuICovXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBjb2xvcjogaW5oZXJpdDtcbiAgLyogMSAqL1xuICBmb250OiBpbmhlcml0O1xuICAvKiAyICovXG4gIG1hcmdpbjogMDtcbiAgLyogMyAqL1xufVxuXG4vKipcbiAqIEFkZHJlc3MgYG92ZXJmbG93YCBzZXQgdG8gYGhpZGRlbmAgaW4gSUUgOC85LzEwLzExLlxuICovXG5idXR0b24ge1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLyoqXG4gKiBBZGRyZXNzIGluY29uc2lzdGVudCBgdGV4dC10cmFuc2Zvcm1gIGluaGVyaXRhbmNlIGZvciBgYnV0dG9uYCBhbmQgYHNlbGVjdGAuXG4gKiBBbGwgb3RoZXIgZm9ybSBjb250cm9sIGVsZW1lbnRzIGRvIG5vdCBpbmhlcml0IGB0ZXh0LXRyYW5zZm9ybWAgdmFsdWVzLlxuICogQ29ycmVjdCBgYnV0dG9uYCBzdHlsZSBpbmhlcml0YW5jZSBpbiBGaXJlZm94LCBJRSA4LzkvMTAvMTEsIGFuZCBPcGVyYS5cbiAqIENvcnJlY3QgYHNlbGVjdGAgc3R5bGUgaW5oZXJpdGFuY2UgaW4gRmlyZWZveC5cbiAqL1xuYnV0dG9uLFxuc2VsZWN0IHtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi8qKlxuICogMS4gQXZvaWQgdGhlIFdlYktpdCBidWcgaW4gQW5kcm9pZCA0LjAuKiB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2BcbiAqICAgIGFuZCBgdmlkZW9gIGNvbnRyb2xzLlxuICogMi4gQ29ycmVjdCBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIGBpbnB1dGAgdHlwZXMgaW4gaU9TLlxuICogMy4gSW1wcm92ZSB1c2FiaWxpdHkgYW5kIGNvbnNpc3RlbmN5IG9mIGN1cnNvciBzdHlsZSBiZXR3ZWVuIGltYWdlLXR5cGVcbiAqICAgIGBpbnB1dGAgYW5kIG90aGVycy5cbiAqL1xuYnV0dG9uLFxuaHRtbCBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdLFxuaW5wdXRbdHlwZT1cInJlc2V0XCJdLFxuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xuICAvKiAyICovXG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgLyogMyAqL1xufVxuXG4vKipcbiAqIFJlLXNldCBkZWZhdWx0IGN1cnNvciBmb3IgZGlzYWJsZWQgZWxlbWVudHMuXG4gKi9cbmJ1dHRvbltkaXNhYmxlZF0sXG5odG1sIGlucHV0W2Rpc2FibGVkXSB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuLyoqXG4gKiBSZW1vdmUgaW5uZXIgcGFkZGluZyBhbmQgYm9yZGVyIGluIEZpcmVmb3ggNCsuXG4gKi9cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcbmlucHV0OjotbW96LWZvY3VzLWlubmVyIHtcbiAgYm9yZGVyOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG4vKipcbiAqIEFkZHJlc3MgRmlyZWZveCA0KyBzZXR0aW5nIGBsaW5lLWhlaWdodGAgb24gYGlucHV0YCB1c2luZyBgIWltcG9ydGFudGAgaW5cbiAqIHRoZSBVQSBzdHlsZXNoZWV0LlxuICovXG5pbnB1dCB7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG59XG5cbi8qKlxuICogSXQncyByZWNvbW1lbmRlZCB0aGF0IHlvdSBkb24ndCBhdHRlbXB0IHRvIHN0eWxlIHRoZXNlIGVsZW1lbnRzLlxuICogRmlyZWZveCdzIGltcGxlbWVudGF0aW9uIGRvZXNuJ3QgcmVzcGVjdCBib3gtc2l6aW5nLCBwYWRkaW5nLCBvciB3aWR0aC5cbiAqXG4gKiAxLiBBZGRyZXNzIGJveCBzaXppbmcgc2V0IHRvIGBjb250ZW50LWJveGAgaW4gSUUgOC85LzEwLlxuICogMi4gUmVtb3ZlIGV4Y2VzcyBwYWRkaW5nIGluIElFIDgvOS8xMC5cbiAqL1xuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxuaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLyogMSAqL1xuICBwYWRkaW5nOiAwO1xuICAvKiAyICovXG59XG5cbi8qKlxuICogRml4IHRoZSBjdXJzb3Igc3R5bGUgZm9yIENocm9tZSdzIGluY3JlbWVudC9kZWNyZW1lbnQgYnV0dG9ucy4gRm9yIGNlcnRhaW5cbiAqIGBmb250LXNpemVgIHZhbHVlcyBvZiB0aGUgYGlucHV0YCwgaXQgY2F1c2VzIHRoZSBjdXJzb3Igc3R5bGUgb2YgdGhlXG4gKiBkZWNyZW1lbnQgYnV0dG9uIHRvIGNoYW5nZSBmcm9tIGBkZWZhdWx0YCB0byBgdGV4dGAuXG4gKi9cbmlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIEFkZHJlc3MgYGFwcGVhcmFuY2VgIHNldCB0byBgc2VhcmNoZmllbGRgIGluIFNhZmFyaSBhbmQgQ2hyb21lLlxuICogMi4gQWRkcmVzcyBgYm94LXNpemluZ2Agc2V0IHRvIGBib3JkZXItYm94YCBpbiBTYWZhcmkgYW5kIENocm9tZVxuICogICAgKGluY2x1ZGUgYC1tb3pgIHRvIGZ1dHVyZS1wcm9vZikuXG4gKi9cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbiAgLyogMSAqL1xuICAtbW96LWJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAtd2Via2l0LWJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAvKiAyICovXG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xufVxuXG4vKipcbiAqIFJlbW92ZSBpbm5lciBwYWRkaW5nIGFuZCBzZWFyY2ggY2FuY2VsIGJ1dHRvbiBpbiBTYWZhcmkgYW5kIENocm9tZSBvbiBPUyBYLlxuICogU2FmYXJpIChidXQgbm90IENocm9tZSkgY2xpcHMgdGhlIGNhbmNlbCBidXR0b24gd2hlbiB0aGUgc2VhcmNoIGlucHV0IGhhc1xuICogcGFkZGluZyAoYW5kIGB0ZXh0ZmllbGRgIGFwcGVhcmFuY2UpLlxuICovXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLFxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLyoqXG4gKiBEZWZpbmUgY29uc2lzdGVudCBib3JkZXIsIG1hcmdpbiwgYW5kIHBhZGRpbmcuXG4gKi9cbmZpZWxkc2V0IHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2MwYzBjMDtcbiAgbWFyZ2luOiAwIDJweDtcbiAgcGFkZGluZzogMC4zNWVtIDAuNjI1ZW0gMC43NWVtO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgYGNvbG9yYCBub3QgYmVpbmcgaW5oZXJpdGVkIGluIElFIDgvOS8xMC8xMS5cbiAqIDIuIFJlbW92ZSBwYWRkaW5nIHNvIHBlb3BsZSBhcmVuJ3QgY2F1Z2h0IG91dCBpZiB0aGV5IHplcm8gb3V0IGZpZWxkc2V0cy5cbiAqL1xubGVnZW5kIHtcbiAgYm9yZGVyOiAwO1xuICAvKiAxICovXG4gIHBhZGRpbmc6IDA7XG4gIC8qIDIgKi9cbn1cblxuLyoqXG4gKiBSZW1vdmUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUgOC85LzEwLzExLlxuICovXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG4vKipcbiAqIERvbid0IGluaGVyaXQgdGhlIGBmb250LXdlaWdodGAgKGFwcGxpZWQgYnkgYSBydWxlIGFib3ZlKS5cbiAqIE5PVEU6IHRoZSBkZWZhdWx0IGNhbm5vdCBzYWZlbHkgYmUgY2hhbmdlZCBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBPUyBYLlxuICovXG5vcHRncm91cCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4vKiBUYWJsZXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIFJlbW92ZSBtb3N0IHNwYWNpbmcgYmV0d2VlbiB0YWJsZSBjZWxscy5cbiAqL1xudGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICBib3JkZXItc3BhY2luZzogMDtcbn1cblxudGQsXG50aCB7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5hbGlnbm5vbmUge1xuICBtYXJnaW46IDVweCAyMHB4IDIwcHggMDtcbn1cblxuLmFsaWduY2VudGVyLFxuZGl2LmFsaWduY2VudGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogNXB4IGF1dG8gNXB4IGF1dG87XG59XG5cbi5hbGlnbnJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW46IDVweCAwIDIwcHggMjBweDtcbn1cblxuLmFsaWdubGVmdCB7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW46IDVweCAyMHB4IDIwcHggMDtcbn1cblxuLmFsaWduY2VudGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogNXB4IGF1dG8gNXB4IGF1dG87XG59XG5cbmEgaW1nLmFsaWducmlnaHQge1xuICBmbG9hdDogcmlnaHQ7XG4gIG1hcmdpbjogNXB4IDAgMjBweCAyMHB4O1xufVxuXG5hIGltZy5hbGlnbm5vbmUge1xuICBtYXJnaW46IDVweCAyMHB4IDIwcHggMDtcbn1cblxuYSBpbWcuYWxpZ25sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbjogNXB4IDIwcHggMjBweCAwO1xufVxuXG5hIGltZy5hbGlnbmNlbnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuXG4ud3AtY2FwdGlvbiB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNmMGYwZjA7XG4gIG1heC13aWR0aDogOTYlO1xuICAvKiBJbWFnZSBkb2VzIG5vdCBvdmVyZmxvdyB0aGUgY29udGVudCBhcmVhICovXG4gIHBhZGRpbmc6IDVweCAzcHggMTBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4ud3AtY2FwdGlvbi5hbGlnbm5vbmUge1xuICBtYXJnaW46IDVweCAyMHB4IDIwcHggMDtcbn1cblxuLndwLWNhcHRpb24uYWxpZ25sZWZ0IHtcbiAgbWFyZ2luOiA1cHggMjBweCAyMHB4IDA7XG59XG5cbi53cC1jYXB0aW9uLmFsaWducmlnaHQge1xuICBtYXJnaW46IDVweCAwIDIwcHggMjBweDtcbn1cblxuLndwLWNhcHRpb24gaW1nIHtcbiAgYm9yZGVyOiAwIG5vbmU7XG4gIGhlaWdodDogYXV0bztcbiAgbWFyZ2luOiAwO1xuICBtYXgtd2lkdGg6IDk4LjUlO1xuICBwYWRkaW5nOiAwO1xuICB3aWR0aDogYXV0bztcbn1cblxuLndwLWNhcHRpb24gcC53cC1jYXB0aW9uLXRleHQge1xuICBmb250LXNpemU6IDExcHg7XG4gIGxpbmUtaGVpZ2h0OiAxN3B4O1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAgNHB4IDVweDtcbn1cblxuLnNpemUtYXV0byxcbi5zaXplLWZ1bGwsXG4uc2l6ZS1sYXJnZSxcbi5zaXplLW1lZGl1bSxcbi5zaXplLXRodW1ibmFpbCB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vKiEgZmFuY3lCb3ggdjIuMS41IGZhbmN5YXBwcy5jb20gfCBmYW5jeWFwcHMuY29tL2ZhbmN5Ym94LyNsaWNlbnNlICovXG4uZmFuY3lib3gtd3JhcCxcbi5mYW5jeWJveC1za2luLFxuLmZhbmN5Ym94LW91dGVyLFxuLmZhbmN5Ym94LWlubmVyLFxuLmZhbmN5Ym94LWltYWdlLFxuLmZhbmN5Ym94LXdyYXAgaWZyYW1lLFxuLmZhbmN5Ym94LXdyYXAgb2JqZWN0LFxuLmZhbmN5Ym94LW5hdixcbi5mYW5jeWJveC1uYXYgc3Bhbixcbi5mYW5jeWJveC10bXAge1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGJvcmRlcjogMDtcbiAgb3V0bGluZTogbm9uZTtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cblxuLmZhbmN5Ym94LXdyYXAge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogODAyMDtcbn1cblxuLmZhbmN5Ym94LXNraW4ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQ6ICNmOWY5Zjk7XG4gIGNvbG9yOiAjNDQ0O1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA0cHg7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogNHB4O1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG59XG5cbi5mYW5jeWJveC1vcGVuZWQge1xuICB6LWluZGV4OiA4MDMwO1xufVxuXG4uZmFuY3lib3gtb3BlbmVkIC5mYW5jeWJveC1za2luIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDEwcHggMjVweCByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gIC1tb3otYm94LXNoYWRvdzogMCAxMHB4IDI1cHggcmdiYSgwLCAwLCAwLCAwLjUpO1xuICBib3gtc2hhZG93OiAwIDEwcHggMjVweCByZ2JhKDAsIDAsIDAsIDAuNSk7XG59XG5cbi5mYW5jeWJveC1vdXRlciwgLmZhbmN5Ym94LWlubmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uZmFuY3lib3gtaW5uZXIge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uZmFuY3lib3gtdHlwZS1pZnJhbWUgLmZhbmN5Ym94LWlubmVyIHtcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xufVxuXG4uZmFuY3lib3gtZXJyb3Ige1xuICBjb2xvcjogIzQ0NDtcbiAgZm9udDogMTRweC8yMHB4IFwiSGVsdmV0aWNhIE5ldWVcIixIZWx2ZXRpY2EsQXJpYWwsc2Fucy1zZXJpZjtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAxNXB4O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4uZmFuY3lib3gtaW1hZ2UsIC5mYW5jeWJveC1pZnJhbWUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLmZhbmN5Ym94LWltYWdlIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xufVxuXG4jZmFuY3lib3gtbG9hZGluZywgLmZhbmN5Ym94LWNsb3NlLCAuZmFuY3lib3gtcHJldiBzcGFuLCAuZmFuY3lib3gtbmV4dCBzcGFuIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaW1nL2ZhbmN5Ym94X3Nwcml0ZS5wbmdcIik7XG59XG5cbiNmYW5jeWJveC1sb2FkaW5nIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICBtYXJnaW4tdG9wOiAtMjJweDtcbiAgbWFyZ2luLWxlZnQ6IC0yMnB4O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0xMDhweDtcbiAgb3BhY2l0eTogMC44O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHotaW5kZXg6IDgwNjA7XG59XG5cbiNmYW5jeWJveC1sb2FkaW5nIGRpdiB7XG4gIHdpZHRoOiA0NHB4O1xuICBoZWlnaHQ6IDQ0cHg7XG4gIGJhY2tncm91bmQ6IHVybChcImltZy9mYW5jeWJveF9sb2FkaW5nLmdpZlwiKSBjZW50ZXIgY2VudGVyIG5vLXJlcGVhdDtcbn1cblxuLmZhbmN5Ym94LWNsb3NlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC0xOHB4O1xuICByaWdodDogLTE4cHg7XG4gIHdpZHRoOiAzNnB4O1xuICBoZWlnaHQ6IDM2cHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgei1pbmRleDogODA0MDtcbn1cblxuLmZhbmN5Ym94LW5hdiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICB3aWR0aDogNDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoXCJpbWcvYmxhbmsuZ2lmXCIpO1xuICAvKiBoZWxwcyBJRSAqL1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB6LWluZGV4OiA4MDQwO1xufVxuXG4uZmFuY3lib3gtcHJldiB7XG4gIGxlZnQ6IDA7XG59XG5cbi5mYW5jeWJveC1uZXh0IHtcbiAgcmlnaHQ6IDA7XG59XG5cbi5mYW5jeWJveC1uYXYgc3BhbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHdpZHRoOiAzNnB4O1xuICBoZWlnaHQ6IDM0cHg7XG4gIG1hcmdpbi10b3A6IC0xOHB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHotaW5kZXg6IDgwNDA7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLmZhbmN5Ym94LXByZXYgc3BhbiB7XG4gIGxlZnQ6IDEwcHg7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTM2cHg7XG59XG5cbi5mYW5jeWJveC1uZXh0IHNwYW4ge1xuICByaWdodDogMTBweDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtNzJweDtcbn1cblxuLmZhbmN5Ym94LW5hdjpob3ZlciBzcGFuIHtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbn1cblxuLmZhbmN5Ym94LXRtcCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtOTk5OTlweDtcbiAgbGVmdDogLTk5OTk5cHg7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgbWF4LXdpZHRoOiA5OTk5OXB4O1xuICBtYXgtaGVpZ2h0OiA5OTk5OXB4O1xuICBvdmVyZmxvdzogdmlzaWJsZSAhaW1wb3J0YW50O1xufVxuXG4vKiBPdmVybGF5IGhlbHBlciAqL1xuLmZhbmN5Ym94LWxvY2sge1xuICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiBhdXRvO1xufVxuXG4uZmFuY3lib3gtbG9jayBib2R5IHtcbiAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xufVxuXG4uZmFuY3lib3gtbG9jay10ZXN0IHtcbiAgb3ZlcmZsb3cteTogaGlkZGVuICFpbXBvcnRhbnQ7XG59XG5cbi5mYW5jeWJveC1vdmVybGF5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHotaW5kZXg6IDgwMTA7XG4gIGJhY2tncm91bmQ6IHVybChcImltZy9mYW5jeWJveF9vdmVybGF5LnBuZ1wiKTtcbn1cblxuLmZhbmN5Ym94LW92ZXJsYXktZml4ZWQge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGJvdHRvbTogMDtcbiAgcmlnaHQ6IDA7XG59XG5cbi5mYW5jeWJveC1sb2NrIC5mYW5jeWJveC1vdmVybGF5IHtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbn1cblxuLyogVGl0bGUgaGVscGVyICovXG4uZmFuY3lib3gtdGl0bGUge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIGZvbnQ6IG5vcm1hbCAxM3B4LzIwcHggXCJIZWx2ZXRpY2EgTmV1ZVwiLEhlbHZldGljYSxBcmlhbCxzYW5zLXNlcmlmO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICB6LWluZGV4OiA4MDUwO1xufVxuXG4uZmFuY3lib3gtb3BlbmVkIC5mYW5jeWJveC10aXRsZSB7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG59XG5cbi5mYW5jeWJveC10aXRsZS1mbG9hdC13cmFwIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDA7XG4gIHJpZ2h0OiA1MCU7XG4gIG1hcmdpbi1ib3R0b206IC0zNXB4O1xuICB6LWluZGV4OiA4MDUwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5mYW5jeWJveC10aXRsZS1mbG9hdC13cmFwIC5jaGlsZCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcbiAgcGFkZGluZzogMnB4IDIwcHg7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAvKiBGYWxsYmFjayBmb3Igd2ViIGJyb3dzZXJzIHRoYXQgZG9lc24ndCBzdXBwb3J0IFJHQmEgKi9cbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjgpO1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDE1cHg7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogMTVweDtcbiAgYm9yZGVyLXJhZGl1czogMTVweDtcbiAgdGV4dC1zaGFkb3c6IDAgMXB4IDJweCAjMjIyO1xuICBjb2xvcjogI0ZGRjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4uZmFuY3lib3gtdGl0bGUtb3V0c2lkZS13cmFwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tdG9wOiAxMHB4O1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLmZhbmN5Ym94LXRpdGxlLWluc2lkZS13cmFwIHtcbiAgcGFkZGluZy10b3A6IDEwcHg7XG59XG5cbi5mYW5jeWJveC10aXRsZS1vdmVyLXdyYXAge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgY29sb3I6ICNmZmY7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIGJhY2tncm91bmQ6ICMwMDA7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC44KTtcbn1cblxuLypSZXRpbmEgZ3JhcGhpY3MhKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMS41KSwgb25seSBzY3JlZW4gYW5kIChtaW4tLW1vei1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuNSksIG9ubHkgc2NyZWVuIGFuZCAobWluLWRldmljZS1waXhlbC1yYXRpbzogMS41KSB7XG4gICNmYW5jeWJveC1sb2FkaW5nLCAuZmFuY3lib3gtY2xvc2UsIC5mYW5jeWJveC1wcmV2IHNwYW4sIC5mYW5jeWJveC1uZXh0IHNwYW4ge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImltZy9mYW5jeWJveF9zcHJpdGVAMngucG5nXCIpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogNDRweCAxNTJweDtcbiAgICAvKlRoZSBzaXplIG9mIHRoZSBub3JtYWwgaW1hZ2UsIGhhbGYgdGhlIHNpemUgb2YgdGhlIGhpLXJlcyBpbWFnZSovXG4gIH1cblxuICAjZmFuY3lib3gtbG9hZGluZyBkaXYge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImltZy9mYW5jeWJveF9sb2FkaW5nQDJ4LmdpZlwiKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDI0cHggMjRweDtcbiAgICAvKlRoZSBzaXplIG9mIHRoZSBub3JtYWwgaW1hZ2UsIGhhbGYgdGhlIHNpemUgb2YgdGhlIGhpLXJlcyBpbWFnZSovXG4gIH1cbn1cbiNmYW5jeWJveC1idXR0b25zIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogODA1MDtcbn1cblxuI2ZhbmN5Ym94LWJ1dHRvbnMudG9wIHtcbiAgdG9wOiAxMHB4O1xufVxuXG4jZmFuY3lib3gtYnV0dG9ucy5ib3R0b20ge1xuICBib3R0b206IDEwcHg7XG59XG5cbiNmYW5jeWJveC1idXR0b25zIHVsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxNjZweDtcbiAgaGVpZ2h0OiAzMHB4O1xuICBtYXJnaW46IDAgYXV0bztcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgIzExMTtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAtd2Via2l0LWJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDFweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDUpO1xuICAtbW96LWJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDFweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDUpO1xuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAxcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA1KTtcbiAgYmFja2dyb3VuZDogIzMyMzIzMjtcbiAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCAjNDQ0NDQ0IDAlLCAjMzQzNDM0IDUwJSwgIzI5MjkyOSA1MCUsICMzMzMzMzMgMTAwJSk7XG4gIGJhY2tncm91bmQ6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgbGVmdCBib3R0b20sIGNvbG9yLXN0b3AoMCUsICM0NDQ0NDQpLCBjb2xvci1zdG9wKDUwJSwgIzM0MzQzNCksIGNvbG9yLXN0b3AoNTAlLCAjMjkyOTI5KSwgY29sb3Itc3RvcCgxMDAlLCAjMzMzMzMzKSk7XG4gIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgIzQ0NDQ0NCAwJSwgIzM0MzQzNCA1MCUsICMyOTI5MjkgNTAlLCAjMzMzMzMzIDEwMCUpO1xuICBiYWNrZ3JvdW5kOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCAjNDQ0NDQ0IDAlLCAjMzQzNDM0IDUwJSwgIzI5MjkyOSA1MCUsICMzMzMzMzMgMTAwJSk7XG4gIGJhY2tncm91bmQ6IC1tcy1saW5lYXItZ3JhZGllbnQodG9wLCAjNDQ0NDQ0IDAlLCAjMzQzNDM0IDUwJSwgIzI5MjkyOSA1MCUsICMzMzMzMzMgMTAwJSk7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICM0NDQ0NDQgMCUsICMzNDM0MzQgNTAlLCAjMjkyOTI5IDUwJSwgIzMzMzMzMyAxMDAlKTtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyM0NDQ0NDQnLCBlbmRDb2xvcnN0cj0nIzIyMjIyMicsR3JhZGllbnRUeXBlPTAgKTtcbn1cblxuI2ZhbmN5Ym94LWJ1dHRvbnMgdWwgbGkge1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG4jZmFuY3lib3gtYnV0dG9ucyBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAzMHB4O1xuICBoZWlnaHQ6IDMwcHg7XG4gIHRleHQtaW5kZW50OiAtOTk5OXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaW1nL2ZhbmN5Ym94X2J1dHRvbnMucG5nXCIpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBvdXRsaW5lOiBub25lO1xuICBvcGFjaXR5OiAwLjg7XG59XG5cbiNmYW5jeWJveC1idXR0b25zIGE6aG92ZXIge1xuICBvcGFjaXR5OiAxO1xufVxuXG4jZmFuY3lib3gtYnV0dG9ucyBhLmJ0blByZXYge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1cHggMDtcbn1cblxuI2ZhbmN5Ym94LWJ1dHRvbnMgYS5idG5OZXh0IHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMzcHggMDtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIzNlM2UzZTtcbn1cblxuI2ZhbmN5Ym94LWJ1dHRvbnMgYS5idG5QbGF5IHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMzBweDtcbn1cblxuI2ZhbmN5Ym94LWJ1dHRvbnMgYS5idG5QbGF5T24ge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzBweCAtMzBweDtcbn1cblxuI2ZhbmN5Ym94LWJ1dHRvbnMgYS5idG5Ub2dnbGUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAzcHggLTYwcHg7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIzExMTtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIzNlM2UzZTtcbiAgd2lkdGg6IDM1cHg7XG59XG5cbiNmYW5jeWJveC1idXR0b25zIGEuYnRuVG9nZ2xlT24ge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjdweCAtNjBweDtcbn1cblxuI2ZhbmN5Ym94LWJ1dHRvbnMgYS5idG5DbG9zZSB7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIzExMTtcbiAgd2lkdGg6IDM1cHg7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC01NnB4IDBweDtcbn1cblxuI2ZhbmN5Ym94LWJ1dHRvbnMgYS5idG5EaXNhYmxlZCB7XG4gIG9wYWNpdHk6IDAuNDtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuXG4jZmFuY3lib3gtdGh1bWJzIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgei1pbmRleDogODA1MDtcbn1cblxuI2ZhbmN5Ym94LXRodW1icy5ib3R0b20ge1xuICBib3R0b206IDJweDtcbn1cblxuI2ZhbmN5Ym94LXRodW1icy50b3Age1xuICB0b3A6IDJweDtcbn1cblxuI2ZhbmN5Ym94LXRodW1icyB1bCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG4jZmFuY3lib3gtdGh1bWJzIHVsIGxpIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmc6IDFweDtcbiAgb3BhY2l0eTogMC41O1xufVxuXG4jZmFuY3lib3gtdGh1bWJzIHVsIGxpLmFjdGl2ZSB7XG4gIG9wYWNpdHk6IDAuNzU7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNmZmY7XG59XG5cbiNmYW5jeWJveC10aHVtYnMgdWwgbGk6aG92ZXIge1xuICBvcGFjaXR5OiAxO1xufVxuXG4jZmFuY3lib3gtdGh1bWJzIHVsIGxpIGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3JkZXI6IDFweCBzb2xpZCAjMjIyO1xuICBiYWNrZ3JvdW5kOiAjMTExO1xuICBvdXRsaW5lOiBub25lO1xufVxuXG4jZmFuY3lib3gtdGh1bWJzIHVsIGxpIGltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJvcmRlcjogMDtcbiAgcGFkZGluZzogMDtcbiAgbWF4LXdpZHRoOiBub25lO1xufVxuXG5odG1sIHtcbiAgZm9udC1zaXplOiAxMDAlO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuaHRtbCBib2R5IHtcbiAgcGFkZGluZzogMDtcbiAgLyogVXNlZnVsIG1peGluIEBpbmNsdWRlIGZvbnQtc2l6ZSgpIGhhcyBiZWVuIHNldCBpbiBtaXhpbnMuc2NzcyB0aGF0IFxuICB3aWxsIGNvbnZlcnQgYSBwaXhlbCBzaXplIHRvIHJlbSB1bml0cyB3aXRoIGEgcHggZmFsbGJhY2suICovXG4gIGZvbnQtZmFtaWx5OiAnTGF0bycsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBjb2xvcjogIzMzMztcbiAgLyotLS0gTElOS1MgLS0tKi9cbiAgLyotLS0gSE9SSVpPTlRBTCBSVUxFIC0tLSovXG4gIC8qLS0tIExJU1RTIC0tLSovXG4gIC8qLS0tIE1BUksgLS0tKi9cbiAgLyotLS0gU01BTEwgLS0tKi9cbiAgLyotLS0gU1VQRVJTQ1JJUFQgQU5EIFNVQlNDUklQVCAtLS0qL1xuICAvKi0tLSBRVU9URVMgLS0tKi9cbiAgLyotLS0gQUJCUkVWSUFUSU9OIC0tLSovXG4gIC8qLS0tIENPREUgLS0tKi9cbiAgLyotLS0gQUxJR05NRU5UIC0tLSovXG4gIC8qLS0tIENBU0lORyAtLS0qL1xuICAvKi0tLSBBTEVSVFMgLS0tKi9cbiAgLyotLS0gQlVUVE9OUyAtLS0qL1xufVxuaHRtbCBib2R5IGgxLCBodG1sIGJvZHkgaDIsIGh0bWwgYm9keSBoMywgaHRtbCBib2R5IGg0LCBodG1sIGJvZHkgaDUsIGh0bWwgYm9keSBoNiB7XG4gIGZvbnQtZmFtaWx5OiAnTGF0bycsIHNhbnMtc2VyaWY7XG4gIGxpbmUtaGVpZ2h0OiAxLjM7XG4gIGNvbG9yOiAjMEFCOEYxO1xuICBtYXJnaW4tdG9wOiAwO1xufVxuaHRtbCBib2R5IHAge1xuICBmb250LXNpemU6IDE2cHg7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDE2cHg7XG59XG5odG1sIGJvZHkgaDEge1xuICBmb250LXNpemU6IDQ4cHg7XG4gIGZvbnQtc2l6ZTogM3JlbTtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgZm9udC13ZWlnaHQ6IDMwMCAhaW1wb3J0YW50O1xufVxuaHRtbCBib2R5IGgyIHtcbiAgZm9udC1zaXplOiAzMnB4O1xuICBmb250LXNpemU6IDJyZW07XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG59XG5odG1sIGJvZHkgaDMge1xuICBmb250LXNpemU6IDI0cHg7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuaHRtbCBib2R5IGg0IHtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBmb250LXNpemU6IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG59XG5odG1sIGJvZHkgaDUge1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG59XG5odG1sIGJvZHkgaDYge1xuICBmb250LXNpemU6IDEycHg7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbn1cbmh0bWwgYm9keSAuc2VjdGlvbi10aXRsZSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbmh0bWwgYm9keSBhIHtcbiAgY29sb3I6ICMwQUI4RjE7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbmh0bWwgYm9keSBhOmhvdmVyIHtcbiAgY29sb3I6ICMwQUI4RjE7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuaHRtbCBib2R5IGEgYTpmb2N1cyB7XG4gIGNvbG9yOiAjMEFCOEYxO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgb3V0bGluZTogdGhpbiBkb3R0ZWQ7XG4gIG91dGxpbmU6IDVweCBhdXRvIC13ZWJraXQtZm9jdXMtcmluZy1jb2xvcjtcbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7XG59XG5odG1sIGJvZHkgaHIge1xuICBtYXJnaW4tdG9wOiAyMHB4O1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZWVlZWVlO1xufVxuaHRtbCBib2R5IHVsLFxuaHRtbCBib2R5IG9sIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbn1cbmh0bWwgYm9keSB1bCB1bCxcbmh0bWwgYm9keSB1bCBvbCxcbmh0bWwgYm9keSBvbCB1bCxcbmh0bWwgYm9keSBvbCBvbCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5odG1sIGJvZHkgdWwge1xuICBsaXN0LXN0eWxlOiBzcXVhcmU7XG59XG5odG1sIGJvZHkgdWwuZmFuY3kge1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuaHRtbCBib2R5IHVsLmZhbmN5IGxpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG59XG5odG1sIGJvZHkgdWwuZmFuY3kgbGk6YmVmb3JlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbnRlbnQ6ICcnO1xuICB3aWR0aDogMTBweDtcbiAgaGVpZ2h0OiAxMHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogOHB4O1xuICBsZWZ0OiAwO1xuICBiYWNrZ3JvdW5kOiAjMEFCOEYxO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG59XG5odG1sIGJvZHkgbWFyaywgaHRtbCBib2R5IC5tYXJrIHtcbiAgY29sb3I6ICMwMDA7XG4gIGJhY2tncm91bmQ6ICNmZjA7XG59XG5odG1sIGJvZHkgc21hbGwsIGh0bWwgYm9keSAuc21hbGwge1xuICBmb250LXNpemU6IDg1JTtcbn1cbmh0bWwgYm9keSBzdWIsXG5odG1sIGJvZHkgc3VwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cbmh0bWwgYm9keSBzdXAge1xuICB0b3A6IC0wLjVlbTtcbn1cbmh0bWwgYm9keSBzdWIge1xuICBib3R0b206IC0wLjI1ZW07XG59XG5odG1sIGJvZHkgYmxvY2txdW90ZSB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgcGFkZGluZzogMTBweCAyMHB4O1xuICBtYXJnaW46IDAgMCAyMHB4O1xuICBmb250LXNpemU6IDE3LjVweDtcbiAgYm9yZGVyLWxlZnQ6IDVweCBzb2xpZCAjZWVlZWVlO1xufVxuaHRtbCBib2R5IGJsb2NrcXVvdGUgcDpsYXN0LWNoaWxkLFxuaHRtbCBib2R5IGJsb2NrcXVvdGUgdWw6bGFzdC1jaGlsZCxcbmh0bWwgYm9keSBibG9ja3F1b3RlIG9sOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuaHRtbCBib2R5IGFiYnJbdGl0bGVdLFxuaHRtbCBib2R5IGFiYnJbZGF0YS1vcmlnaW5hbC10aXRsZV0ge1xuICBjdXJzb3I6IGhlbHA7XG4gIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQgIzc3Nzc3Nztcbn1cbmh0bWwgYm9keSBjb2RlLFxuaHRtbCBib2R5IGtiZCxcbmh0bWwgYm9keSBwcmUsXG5odG1sIGJvZHkgc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBNZW5sbywgTW9uYWNvLCBDb25zb2xhcywgXCJDb3VyaWVyIE5ld1wiLCBtb25vc3BhY2U7XG59XG5odG1sIGJvZHkgY29kZSB7XG4gIHBhZGRpbmc6IDJweCA0cHg7XG4gIGZvbnQtc2l6ZTogOTAlO1xuICBjb2xvcjogI2M3MjU0ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y5ZjJmNDtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xufVxuaHRtbCBib2R5IGtiZCB7XG4gIHBhZGRpbmc6IDJweCA0cHg7XG4gIGZvbnQtc2l6ZTogOTAlO1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMzMztcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBib3gtc2hhZG93OiBpbnNldCAwIC0xcHggMCByZ2JhKDAsIDAsIDAsIDAuMjUpO1xufVxuaHRtbCBib2R5IGtiZCBrYmQge1xuICBwYWRkaW5nOiAwO1xuICBmb250LXNpemU6IDEwMCU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5odG1sIGJvZHkgcHJlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDkuNXB4O1xuICBtYXJnaW46IDAgMCAxMHB4O1xuICBmb250LXNpemU6IDEzcHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjQyODU3O1xuICB3b3JkLWJyZWFrOiBicmVhay1hbGw7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogMHB4IHNvbGlkICNjY2M7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cbmh0bWwgYm9keSBwcmUgY29kZSB7XG4gIHBhZGRpbmc6IDA7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIHdoaXRlLXNwYWNlOiBwcmUtd3JhcDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5odG1sIGJvZHkgLnRleHQtbGVmdCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5odG1sIGJvZHkgLnRleHQtcmlnaHQge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cbmh0bWwgYm9keSAudGV4dC1jZW50ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5odG1sIGJvZHkgLnRleHQtanVzdGlmeSB7XG4gIHRleHQtYWxpZ246IGp1c3RpZnk7XG59XG5odG1sIGJvZHkgLnRleHQtbm93cmFwIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbmh0bWwgYm9keSAudGV4dC1sb3dlcmNhc2Uge1xuICB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlO1xufVxuaHRtbCBib2R5IC50ZXh0LXVwcGVyY2FzZSB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5odG1sIGJvZHkgLnRleHQtY2FwaXRhbGl6ZSB7XG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xufVxuaHRtbCBib2R5IC50ZXh0LXN1Y2Nlc3Mge1xuICBjb2xvcjogIzNjNzYzZDtcbn1cbmh0bWwgYm9keSBhLnRleHQtc3VjY2Vzczpob3ZlciB7XG4gIGNvbG9yOiAjMmI1NDJjO1xufVxuaHRtbCBib2R5IC50ZXh0LWluZm8ge1xuICBjb2xvcjogIzMxNzA4Zjtcbn1cbmh0bWwgYm9keSBhLnRleHQtaW5mbzpob3ZlciB7XG4gIGNvbG9yOiAjMjQ1MjY5O1xufVxuaHRtbCBib2R5IC50ZXh0LXdhcm5pbmcge1xuICBjb2xvcjogIzhhNmQzYjtcbn1cbmh0bWwgYm9keSBhLnRleHQtd2FybmluZzpob3ZlciB7XG4gIGNvbG9yOiAjNjY1MTJjO1xufVxuaHRtbCBib2R5IC50ZXh0LWRhbmdlciB7XG4gIGNvbG9yOiAjYTk0NDQyO1xufVxuaHRtbCBib2R5IGEudGV4dC1kYW5nZXI6aG92ZXIge1xuICBjb2xvcjogIzg0MzUzNDtcbn1cbmh0bWwgYm9keSAuYmctc3VjY2VzcyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjY2U1Y2M7XG59XG5odG1sIGJvZHkgYS5iZy1zdWNjZXNzOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2FhZDRhYjtcbn1cbmh0bWwgYm9keSAuYmctaW5mbyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkMGU1ZWY7XG59XG5odG1sIGJvZHkgYS5iZy1pbmZvOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2FhZDBlMjtcbn1cbmh0bWwgYm9keSAuYmctd2FybmluZyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNmRhYzU7XG59XG5odG1sIGJvZHkgYS5iZy13YXJuaW5nOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Q3YzNhMTtcbn1cbmh0bWwgYm9keSAuYmctZGFuZ2VyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ViY2RjYztcbn1cbmh0bWwgYm9keSBhLmJnLWRhbmdlcjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkZGE4YTc7XG59XG5odG1sIGJvZHkgYS5hcnJvdyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IGF1dG87XG4gIGJvcmRlcjogMnB4IHNvbGlkIHdoaXRlO1xuICBib3JkZXItcmFkaXVzOiAyNHB4O1xuICB3aWR0aDogNDhweDtcbiAgaGVpZ2h0OiA0OHB4O1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL3dwLWNvbnRlbnQvdGhlbWVzL2FuaW1hdGlvbnN3b3JsZC9pbWcvYXJyb3cucG5nKTtcbiAgYmFja2dyb3VuZC1zaXplOiAzNHB4IDM1cHg7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDVweCA0cHg7XG59XG5odG1sIGJvZHkgLmJ0biB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwQUI4RjE7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIGNvbG9yOiAjZmZmO1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgcGFkZGluZzogNnB4IDEycHg7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbGluZS1oZWlnaHQ6IDEuNDI4NTc7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjNzIGVhc2UsIGJvcmRlci1jb2xvciAuM3MgZWFzZSwgY29sb3IgLjNzIGVhc2U7XG59XG5odG1sIGJvZHkgLmJ0bi5yZXZlcnNlIHtcbiAgY29sb3I6ICMwQUI4RjE7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICBib3JkZXItY29sb3I6ICMwQUI4RjE7XG59XG5odG1sIGJvZHkgLmJ0bi5jbGVhciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuaHRtbCBib2R5IC5idG4uY2xlYXI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzdjN2Y3O1xuICBib3JkZXItY29sb3I6ICMzN2M3ZjcgIWltcG9ydGFudDtcbn1cbmh0bWwgYm9keSAuYnRuLmNsZWFyLndoaXRlIHtcbiAgY29sb3I6IHdoaXRlO1xuICBib3JkZXItY29sb3I6IHdoaXRlO1xufVxuaHRtbCBib2R5IC5idG4uY2VudGVyIHtcbiAgbWF4LXdpZHRoOiAyNSU7XG4gIG1hcmdpbjogMTBweCBhdXRvO1xuICBtaW4td2lkdGg6IDIzMHB4O1xuICBhbGlnbi1zZWxmOiBjZW50ZXI7XG59XG5odG1sIGJvZHkgLmJ0bjpmb2N1cywgaHRtbCBib2R5IC5idG46YWN0aXZlOmZvY3VzLCBodG1sIGJvZHkgLmJ0bi5hY3RpdmU6Zm9jdXMge1xuICBvdXRsaW5lOiB0aGluIGRvdHRlZDtcbiAgb3V0bGluZTogNXB4IGF1dG8gLXdlYmtpdC1mb2N1cy1yaW5nLWNvbG9yO1xuICBvdXRsaW5lLW9mZnNldDogLTJweDtcbn1cbmh0bWwgYm9keSAuYnRuOmhvdmVyLCBodG1sIGJvZHkgLmJ0bjpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzN2M3Zjc7XG4gIGNvbG9yOiAjZmZmO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5odG1sIGJvZHkgLmJ0bjphY3RpdmUsIGh0bWwgYm9keSAuYnRuLmFjdGl2ZSB7XG4gIG91dGxpbmU6IDA7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5odG1sIGJvZHkgLmJ0bi5kaXNhYmxlZCwgaHRtbCBib2R5IC5idG5bZGlzYWJsZWRdLCBodG1sIGJvZHkgZmllbGRzZXRbZGlzYWJsZWRdIC5idG4ge1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgb3BhY2l0eTogMC42NTtcbiAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTY1KTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cbmh0bWwgYm9keSAuYnRuLWxpbmsge1xuICBjb2xvcjogIzQyOGJjYTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuaHRtbCBib2R5IC5idG4tbGluaywgaHRtbCBib2R5IC5idG4tbGluazphY3RpdmUsIGh0bWwgYm9keSAuYnRuLWxpbmtbZGlzYWJsZWRdLCBodG1sIGJvZHkgZmllbGRzZXRbZGlzYWJsZWRdIC5idG4tbGluayB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5odG1sIGJvZHkgLmJ0bi1saW5rLCBodG1sIGJvZHkgLmJ0bi1saW5rOmhvdmVyLCBodG1sIGJvZHkgLmJ0bi1saW5rOmZvY3VzLCBodG1sIGJvZHkgLmJ0bi1saW5rOmFjdGl2ZSB7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5odG1sIGJvZHkgLmJ0bi1saW5rOmhvdmVyLCBodG1sIGJvZHkgLmJ0bi1saW5rOmZvY3VzIHtcbiAgY29sb3I6ICMyYTY0OTY7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbmh0bWwgYm9keSAuYnRuLWxpbmtbZGlzYWJsZWRdOmhvdmVyLCBodG1sIGJvZHkgLmJ0bi1saW5rW2Rpc2FibGVkXTpmb2N1cywgaHRtbCBib2R5IGZpZWxkc2V0W2Rpc2FibGVkXSAuYnRuLWxpbms6aG92ZXIsIGh0bWwgYm9keSBmaWVsZHNldFtkaXNhYmxlZF0gLmJ0bi1saW5rOmZvY3VzIHtcbiAgY29sb3I6ICM3Nzc3Nzc7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbmh0bWwgYm9keSAuYnRuLWxnLCBodG1sIGJvZHkgLmJ0bi1ncm91cC1sZyA+IC5idG4ge1xuICBwYWRkaW5nOiAxMHB4IDE2cHg7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgbGluZS1oZWlnaHQ6IDEuMzM7XG4gIGJvcmRlci1yYWRpdXM6IDZweDtcbn1cbmh0bWwgYm9keSAuYnRuLXNtLCBodG1sIGJvZHkgLmJ0bi1ncm91cC1zbSA+IC5idG4ge1xuICBwYWRkaW5nOiA1cHggMTBweDtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBsaW5lLWhlaWdodDogMS41O1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG59XG5odG1sIGJvZHkgLmJ0bi14cywgaHRtbCBib2R5IC5idG4tZ3JvdXAteHMgPiAuYnRuIHtcbiAgcGFkZGluZzogMXB4IDVweDtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBsaW5lLWhlaWdodDogMS41O1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG59XG5odG1sIGJvZHkgLmJ0bi1ibG9jayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbn1cbmh0bWwgYm9keSAuYnRuLWJsb2NrICsgLmJ0bi1ibG9jayB7XG4gIG1hcmdpbi10b3A6IDVweDtcbn1cbmh0bWwgYm9keSBpbnB1dFt0eXBlPVwic3VibWl0XCJdLmJ0bi1ibG9jayxcbmh0bWwgYm9keSBpbnB1dFt0eXBlPVwicmVzZXRcIl0uYnRuLWJsb2NrLFxuaHRtbCBib2R5IGlucHV0W3R5cGU9XCJidXR0b25cIl0uYnRuLWJsb2NrIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbmlucHV0IHtcbiAgY29sb3I6ICM1ODU5NUI7XG59XG5cbi5zZWFyY2gtZm9ybSBpbnB1dFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cbi5zZWFyY2gtZm9ybSAuZm9ybS1ncm91cCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5zZWFyY2gtZm9ybSAuZm9ybS1ncm91cCBsYWJlbCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uc2VhcmNoLWZvcm0gLmZvcm0tZ3JvdXAgLmZvcm0tY29udHJvbCB7XG4gIGxpbmUtaGVpZ2h0OiAzNnB4O1xuICBwYWRkaW5nLXJpZ2h0OiA0OHB4O1xufVxuLnNlYXJjaC1mb3JtIC5mb3JtLWdyb3VwIC5mb3JtLWNvbnRyb2xbdHlwZT1cInNlYXJjaFwiXSB7XG4gIGhlaWdodDogNDhweDtcbn1cbi5zZWFyY2gtZm9ybSAuZm9ybS1ncm91cCAuYnRuIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiA0OHB4O1xuICB3aWR0aDogNDhweDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiAjRjc5NDFFO1xufVxuXG4ud3BjZjcgZm9ybSAuZm9ybS1ncm91cCBsYWJlbCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4ud3BjZjcgZm9ybSAuZm9ybS1ncm91cCBzcGFuIC53cGNmNy1ub3QtdmFsaWQtdGlwIHtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGNvbG9yOiAjYTk0NDQyO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXRvcDogNXB4O1xufVxuLndwY2Y3IGZvcm0gLndwY2Y3LXJlc3BvbnNlLW91dHB1dCB7XG4gIHBhZGRpbmc6IDE1cHg7XG4gIG1hcmdpbjogMjBweCAwO1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG59XG4ud3BjZjcgZm9ybSAud3BjZjctdmFsaWRhdGlvbi1lcnJvcnMsIC53cGNmNyBmb3JtIC53cGNmNy1tYWlsLXNlbnQtbmcge1xuICBjb2xvcjogI2E5NDQ0MjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ViY2RjYztcbiAgYm9yZGVyLWNvbG9yOiAjYTk0NDQyO1xufVxuLndwY2Y3IGZvcm0gLndwY2Y3LXZhbGlkYXRpb24tc3VjY2VzcyB7XG4gIGNvbG9yOiAjM2M3NjNkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2NlNWNjO1xuICBib3JkZXItY29sb3I6ICMzYzc2M2Q7XG59XG5cbmltZyB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbmltZy5pbWctZnVsbC13aWR0aCB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLndwLWNhcHRpb24ge1xuICBwYWRkaW5nOiA1cHggM3B4IDA7XG59XG4ud3AtY2FwdGlvbiBwLndwLWNhcHRpb24tdGV4dCB7XG4gIHBhZGRpbmc6IDhweDtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIEFFRElTIFRIRU1FIFNUWUxFU1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbioge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4qOmJlZm9yZSxcbio6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4ud3JhcHBlciB7XG4gIGNsZWFyOiBib3RoO1xuICB3aWR0aDogMTAwJTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi53cmFwcGVyIC5jb250YWluZXIge1xuICBtYXgtd2lkdGg6IDExNDBweDtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAwcHggMTBweDtcbn1cbi53cmFwcGVyIC5jb250YWluZXI6YWZ0ZXIge1xuICBjb250ZW50OiBcIiBcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4udnBhZC0xeCB7XG4gIHBhZGRpbmctdG9wOiAxNXB4O1xuICBwYWRkaW5nLWJvdHRvbTogMTVweDtcbn1cblxuLnZwYWQtMngge1xuICBwYWRkaW5nLXRvcDogMzBweDtcbiAgcGFkZGluZy1ib3R0b206IDMwcHg7XG59XG5cbi52cGFkLTN4IHtcbiAgcGFkZGluZy10b3A6IDYwcHg7XG4gIHBhZGRpbmctYm90dG9tOiA2MHB4O1xufVxuXG4udnBhZC00eCB7XG4gIHBhZGRpbmctdG9wOiA3MHB4O1xuICBwYWRkaW5nLWJvdHRvbTogNzBweDtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAudnBhZC00eCB7XG4gICAgcGFkZGluZy10b3A6IDQ1cHg7XG4gICAgcGFkZGluZy1ib3R0b206IDQ1cHg7XG4gIH1cbn1cblxuLnNpeHRlZW4tbmluZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5zaXh0ZWVuLW5pbmU6YmVmb3JlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXRvcDogNTYuMjUlO1xufVxuLnNpeHRlZW4tbmluZSA+IC5jb250ZW50IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBIRUFERVJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4jaGVhZGVyIHtcbiAgY2xlYXI6IGJvdGg7XG4gIHdpZHRoOiAxMDAlO1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHotaW5kZXg6IDEwMDAwO1xuICB0cmFuc2l0aW9uOiB0b3AgMC4zcyBlYXNlLWluLW91dDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm9yZGVyLWJvdHRvbTogc29saWQgNHB4IHJnYmEoMCwgMCwgMCwgMC4zKTtcbn1cbiNoZWFkZXIubmF2LXVwIHtcbiAgdG9wOiAtMTAwcHg7XG59XG4jaGVhZGVyIC5jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmctdG9wOiAxMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbn1cbiNoZWFkZXIgLmNvbnRhaW5lcjphZnRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4jaGVhZGVyIC5jb250YWluZXI6YmVmb3JlIHtcbiAgY29udGVudDogbm9uZSAhaW1wb3J0YW50O1xufVxuI2hlYWRlciAjaWQge1xuICB3aWR0aDogMjEycHg7XG4gIGhlaWdodDogNjBweDtcbn1cbiNoZWFkZXIgI2lkIGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgdGV4dC1pbmRlbnQ6IC0xMDAwZW07XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChpbWcvaWQuc3ZnKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0O1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgTkFWSUdBVElPTlxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbiNuYXZpZ2F0aW9uIC5uYXZpZ2F0aW9uLWhlYWRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4jbmF2aWdhdGlvbiB1bC5uYXZpZ2F0aW9uLWxpbmtzIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBiYWNrZ3JvdW5kOiAjZTVlNWU1O1xufVxuI25hdmlnYXRpb24gdWwubmF2aWdhdGlvbi1saW5rcyA+IGxpIHtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwIDVweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbG9hdDogbGVmdDtcbn1cbiNuYXZpZ2F0aW9uIHVsLm5hdmlnYXRpb24tbGlua3MgPiBsaSA+IGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDVweCAyMHB4O1xuICBjb2xvcjogIzMzMztcbiAgZm9udC1zaXplOiAxOHB4O1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4zcyBlYXNlLCBjb2xvciAuM3MgZWFzZTtcbn1cbiNuYXZpZ2F0aW9uIHVsLm5hdmlnYXRpb24tbGlua3MgPiBsaSA+IGE6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjMEFCOEYxO1xuICBjb2xvcjogI2ZmZjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuI25hdmlnYXRpb24gdWwubmF2aWdhdGlvbi1saW5rcyA+IGxpID4gYTpob3ZlciBpIHtcbiAgY29sb3I6ICNmZmY7XG59XG4jbmF2aWdhdGlvbiB1bC5uYXZpZ2F0aW9uLWxpbmtzID4gbGkgPiBhOmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cbiNuYXZpZ2F0aW9uIHVsLm5hdmlnYXRpb24tbGlua3MgPiBsaSA+IGEgaSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTZweDtcbiAgaGVpZ2h0OiAxNnB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAxNXB4O1xuICB0b3A6IDUwJTtcbiAgbWFyZ2luLXRvcDogLThweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb2xvcjogI0JDQkVDMDtcbiAgdHJhbnNpdGlvbjogY29sb3IgLjNzIGVhc2U7XG59XG4jbmF2aWdhdGlvbiB1bC5uYXZpZ2F0aW9uLWxpbmtzID4gbGkuY3VycmVudC1tZW51LWl0ZW0gYSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNWU1ZTU7XG59XG4jbmF2aWdhdGlvbiB1bC5uYXZpZ2F0aW9uLWxpbmtzID4gbGkuY3VycmVudC1tZW51LWl0ZW0gYTpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICMwQUI4RjE7XG59XG4jbmF2aWdhdGlvbi5jb2xsYXBzZWQge1xuICB3aWR0aDogMTAwJTtcbn1cbiNuYXZpZ2F0aW9uLmNvbGxhcHNlZCAubmF2aWdhdGlvbi1oZWFkZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDQ0cHg7XG4gIGhlaWdodDogMzRweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDI1cHg7XG4gIHJpZ2h0OiAyNXB4O1xufVxuI25hdmlnYXRpb24uY29sbGFwc2VkIC5uYXZpZ2F0aW9uLWhlYWRlciAubmF2aWdhdGlvbi10b2dnbGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbG9hdDogcmlnaHQ7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogOXB4IDEwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICBib3JkZXI6IDFweCBzb2xpZCAjMEFCOEYxO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG59XG4jbmF2aWdhdGlvbi5jb2xsYXBzZWQgLm5hdmlnYXRpb24taGVhZGVyIC5uYXZpZ2F0aW9uLXRvZ2dsZTpmb2N1cyB7XG4gIG91dGxpbmU6IDA7XG59XG4jbmF2aWdhdGlvbi5jb2xsYXBzZWQgLm5hdmlnYXRpb24taGVhZGVyIC5uYXZpZ2F0aW9uLXRvZ2dsZSAuaWNvbi1iYXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDIycHg7XG4gIGhlaWdodDogMnB4O1xuICBib3JkZXItcmFkaXVzOiAxcHg7XG4gIGJhY2tncm91bmQ6ICMwQUI4RjE7XG59XG4jbmF2aWdhdGlvbi5jb2xsYXBzZWQgLm5hdmlnYXRpb24taGVhZGVyIC5uYXZpZ2F0aW9uLXRvZ2dsZSAuaWNvbi1iYXIgKyAuaWNvbi1iYXIge1xuICBtYXJnaW4tdG9wOiA0cHg7XG59XG4jbmF2aWdhdGlvbi5jb2xsYXBzZWQgdWwubmF2aWdhdGlvbi1saW5rcyB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHdpZHRoOiBjYWxjKDEwMCUgKyAzMHB4KTtcbiAgbWFyZ2luOiAxMHB4IC0xNXB4IDBweDtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYmFja2dyb3VuZDogIzBBQjhGMTtcbiAgbWF4LWhlaWdodDogMGVtO1xufVxuI25hdmlnYXRpb24uY29sbGFwc2VkIHVsLm5hdmlnYXRpb24tbGlua3Mub3BlbiB7XG4gIHRyYW5zaXRpb246IG1heC1oZWlnaHQgLjNzIGVhc2U7XG4gIG1heC1oZWlnaHQ6IDUwZW07XG59XG4jbmF2aWdhdGlvbi5jb2xsYXBzZWQgdWwubmF2aWdhdGlvbi1saW5rcyA+IGxpIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCAjZmZmO1xuICBmbG9hdDogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4jbmF2aWdhdGlvbi5jb2xsYXBzZWQgdWwubmF2aWdhdGlvbi1saW5rcyA+IGxpOmxhc3QtY2hpbGQge1xuICBib3JkZXItYm90dG9tOiBub25lO1xufVxuI25hdmlnYXRpb24uY29sbGFwc2VkIHVsLm5hdmlnYXRpb24tbGlua3MgPiBsaSA+IGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNTBweDtcbiAgbGluZS1oZWlnaHQ6IDUwcHg7XG4gIHBhZGRpbmc6IDAgMTVweDtcbiAgY29sb3I6ICNmZmY7XG4gIGJvcmRlci1yYWRpdXM6IDBweDtcbn1cbiNuYXZpZ2F0aW9uLmNvbGxhcHNlZCB1bC5uYXZpZ2F0aW9uLWxpbmtzID4gbGkgPiBhOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogIzM3YzdmNztcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuI25hdmlnYXRpb24uY29sbGFwc2VkIHVsLm5hdmlnYXRpb24tbGlua3MgPiBsaSA+IGE6aG92ZXIgaSB7XG4gIGNvbG9yOiAjZmZmO1xufVxuI25hdmlnYXRpb24uY29sbGFwc2VkIHVsLm5hdmlnYXRpb24tbGlua3MgPiBsaSA+IGEgaSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogNTBweDtcbiAgaGVpZ2h0OiA1MHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGxpbmUtaGVpZ2h0OiA1MHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbG9yOiAjNGQ0ZDRkO1xuICB0b3A6IDBweDtcbiAgcmlnaHQ6IDBweDtcbiAgbWFyZ2luLXRvcDogMDtcbiAgdHJhbnNpdGlvbjogY29sb3IgLjNzIGVhc2U7XG59XG4jbmF2aWdhdGlvbi5jb2xsYXBzZWQgdWwubmF2aWdhdGlvbi1saW5rcyA+IGxpLmN1cnJlbnQtbWVudS1pdGVtID4gYSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwODkzYzA7XG59XG4jbmF2aWdhdGlvbi5jb2xsYXBzZWQgdWwubmF2aWdhdGlvbi1saW5rcyA+IGxpLmN1cnJlbnQtbWVudS1pdGVtID4gYTpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICMzN2M3Zjc7XG59XG4jbmF2aWdhdGlvbi5jb2xsYXBzZWQgdWwubmF2aWdhdGlvbi1saW5rcyA+IGxpID4gdWwuc3ViLW1lbnUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBiYWNrZ3JvdW5kOiAjNjY2O1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LWhlaWdodDogMDtcbiAgdHJhbnNpdGlvbjogbWF4LWhlaWdodCAuM3MgZWFzZTtcbn1cbiNuYXZpZ2F0aW9uLmNvbGxhcHNlZCB1bC5uYXZpZ2F0aW9uLWxpbmtzID4gbGkgPiB1bC5zdWItbWVudS5vcGVuIHtcbiAgbWF4LWhlaWdodDogMTAwMHB4O1xufVxuI25hdmlnYXRpb24uY29sbGFwc2VkIHVsLm5hdmlnYXRpb24tbGlua3MgPiBsaSA+IHVsLnN1Yi1tZW51ID4gbGkge1xuICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggIzRkNGQ0ZDtcbn1cbiNuYXZpZ2F0aW9uLmNvbGxhcHNlZCB1bC5uYXZpZ2F0aW9uLWxpbmtzID4gbGkgPiB1bC5zdWItbWVudSA+IGxpOmxhc3QtY2hpbGQge1xuICBib3JkZXI6IG5vbmU7XG59XG4jbmF2aWdhdGlvbi5jb2xsYXBzZWQgdWwubmF2aWdhdGlvbi1saW5rcyA+IGxpID4gdWwuc3ViLW1lbnUgPiBsaSA+IGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNTBweDtcbiAgbGluZS1oZWlnaHQ6IDUwcHg7XG4gIHBhZGRpbmc6IDAgMTVweDtcbiAgY29sb3I6ICNmZmY7XG59XG4jbmF2aWdhdGlvbi5jb2xsYXBzZWQgdWwubmF2aWdhdGlvbi1saW5rcyA+IGxpID4gdWwuc3ViLW1lbnUgPiBsaSA+IGE6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjMEFCOEYxO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbiNzdWItbmF2aWdhdGlvbiB7XG4gIGhlaWdodDogNDBweDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMzM7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgYm90dG9tOiAwcHg7XG4gIHotaW5kZXg6IDEwMDA7XG59XG4jc3ViLW5hdmlnYXRpb24gdWwge1xuICBkaXNwbGF5OiBmbGV4O1xuICBsaXN0LXN0eWxlOiBvdXRzaWRlIG5vbmUgbm9uZTtcbiAgd2lkdGg6IDkwJTtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4jc3ViLW5hdmlnYXRpb24gdWwgbGkgPiBhIHtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAuM3MgZWFzZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDQwcHg7XG4gIGxpbmUtaGVpZ2h0OiA0MHB4O1xuICBwYWRkaW5nOiAwIDE1cHg7XG4gIGNvbG9yOiAjZmZmO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4jc3ViLW5hdmlnYXRpb24gdWwgbGkgPiBhOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzJlMmUyZTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENPTlRFTlRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4jY29udGVudCB7XG4gIGNsZWFyOiBib3RoO1xuICB3aWR0aDogMTAwJTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy10b3A6IDIwcHg7XG59XG4jY29udGVudCAjbWFpbiB7XG4gIHdpZHRoOiA2NS43MTQyOSU7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tcmlnaHQ6IDIuODU3MTQlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG4jY29udGVudCAjbWFpbi5mdWxsLXdpZHRoIHtcbiAgY2xlYXI6IGJvdGg7XG4gIHdpZHRoOiAxMDAlO1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cbiNjb250ZW50ICNtYWluIC5wb3N0LCAjY29udGVudCAjbWFpbiAucGFnZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbn1cbiNjb250ZW50ICNtYWluIC5wb3N0LnBvc3QsICNjb250ZW50ICNtYWluIC5wYWdlLnBvc3Qge1xuICBwYWRkaW5nLWJvdHRvbTogNDBweDtcbiAgYm9yZGVyLWJvdHRvbTogc29saWQgNHB4ICNjY2M7XG59XG4jY29udGVudCAjbWFpbiAucG9zdC5wb3N0LXNpbmdsZSwgI2NvbnRlbnQgI21haW4gLnBhZ2UucG9zdC1zaW5nbGUge1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbn1cbiNjb250ZW50ICNtYWluIC5wb3N0IC5hcnRpY2xlLWhlYWRlciAuYXJ0aWNsZS10aXRsZSBhOmhvdmVyLCAjY29udGVudCAjbWFpbiAucGFnZSAuYXJ0aWNsZS1oZWFkZXIgLmFydGljbGUtdGl0bGUgYTpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbiNjb250ZW50ICNtYWluIC5wb3N0IC5hcnRpY2xlLWhlYWRlciAucG9zdG1ldGFkYXRhLCAjY29udGVudCAjbWFpbiAucGFnZSAuYXJ0aWNsZS1oZWFkZXIgLnBvc3RtZXRhZGF0YSB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG4jY29udGVudCAjbWFpbiAucG9zdCAuYXJ0aWNsZS1oZWFkZXIgLnBvc3RtZXRhZGF0YSBzcGFuLnBvc3QtZGF0ZSwgI2NvbnRlbnQgI21haW4gLnBvc3QgLmFydGljbGUtaGVhZGVyIC5wb3N0bWV0YWRhdGEgc3Bhbi5wb3N0LWF1dGhvciwgI2NvbnRlbnQgI21haW4gLnBvc3QgLmFydGljbGUtaGVhZGVyIC5wb3N0bWV0YWRhdGEgc3Bhbi5wb3N0LWNvbW1lbnRzLCAjY29udGVudCAjbWFpbiAucGFnZSAuYXJ0aWNsZS1oZWFkZXIgLnBvc3RtZXRhZGF0YSBzcGFuLnBvc3QtZGF0ZSwgI2NvbnRlbnQgI21haW4gLnBhZ2UgLmFydGljbGUtaGVhZGVyIC5wb3N0bWV0YWRhdGEgc3Bhbi5wb3N0LWF1dGhvciwgI2NvbnRlbnQgI21haW4gLnBhZ2UgLmFydGljbGUtaGVhZGVyIC5wb3N0bWV0YWRhdGEgc3Bhbi5wb3N0LWNvbW1lbnRzIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG59XG4jY29udGVudCAjbWFpbiAucG9zdCAuYXJ0aWNsZS1oZWFkZXIgLnBvc3RtZXRhZGF0YSBzcGFuLnBvc3QtZGF0ZSBpLCAjY29udGVudCAjbWFpbiAucG9zdCAuYXJ0aWNsZS1oZWFkZXIgLnBvc3RtZXRhZGF0YSBzcGFuLnBvc3QtYXV0aG9yIGksICNjb250ZW50ICNtYWluIC5wb3N0IC5hcnRpY2xlLWhlYWRlciAucG9zdG1ldGFkYXRhIHNwYW4ucG9zdC1jb21tZW50cyBpLCAjY29udGVudCAjbWFpbiAucGFnZSAuYXJ0aWNsZS1oZWFkZXIgLnBvc3RtZXRhZGF0YSBzcGFuLnBvc3QtZGF0ZSBpLCAjY29udGVudCAjbWFpbiAucGFnZSAuYXJ0aWNsZS1oZWFkZXIgLnBvc3RtZXRhZGF0YSBzcGFuLnBvc3QtYXV0aG9yIGksICNjb250ZW50ICNtYWluIC5wYWdlIC5hcnRpY2xlLWhlYWRlciAucG9zdG1ldGFkYXRhIHNwYW4ucG9zdC1jb21tZW50cyBpIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IDVweDtcbn1cbiNjb250ZW50ICNtYWluIC5wb3N0IC5hcnRpY2xlLWNvbnRlbnQsICNjb250ZW50ICNtYWluIC5wYWdlIC5hcnRpY2xlLWNvbnRlbnQge1xuICBwYWRkaW5nLXRvcDogMjBweDtcbn1cbiNjb250ZW50ICNtYWluIC5wb3N0IC5hcnRpY2xlLWNvbnRlbnQgLnJlYWRtb3JlLWxpbmssICNjb250ZW50ICNtYWluIC5wYWdlIC5hcnRpY2xlLWNvbnRlbnQgLnJlYWRtb3JlLWxpbmsge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMHB4O1xuICBtYXJnaW4tdG9wOiAyMHB4O1xufVxuI2NvbnRlbnQgI3NpZGViYXIge1xuICBtYXJnaW4tbGVmdDogOC41NzE0MyU7XG4gIHdpZHRoOiAyMi44NTcxNCU7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4jY29udGVudCAjc2lkZWJhciBsaSB7XG4gIGxpc3Qtc3R5bGUtaW1hZ2U6IG5vbmU7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG4jY29udGVudCAjc2lkZWJhciB1bCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbn1cbiNjb250ZW50ICNzaWRlYmFyIHVsIGxpLndpZGdldC1jb250YWluZXIge1xuICBtYXJnaW46IDAgMCAyMHB4IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDT05UQUNUIFVTXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuI2NvbnRhY3QtdXMge1xuICBiYWNrZ3JvdW5kOiAjMTAzMTQyO1xuICBib3JkZXItdG9wOiBzb2xpZCA0cHggIzBGMjkzODtcbn1cbiNjb250YWN0LXVzIGgyIHtcbiAgY29sb3I6ICNmZmY7XG59XG4jY29udGFjdC11cyAuY29udGFpbmVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuI2NvbnRhY3QtdXMgLmNvbnRhaW5lciAuY29udGFjdC1pbmZvIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG4jY29udGFjdC11cyAuY29udGFpbmVyIC5jb250YWN0LWluZm8gcCwgI2NvbnRhY3QtdXMgLmNvbnRhaW5lciAuY29udGFjdC1pbmZvIGEge1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbGluZS1oZWlnaHQ6IDMwcHg7XG59XG4jY29udGFjdC11cyAuY29udGFpbmVyIC5jb250YWN0LWluZm8gc3Bhbi5kb3QtYnJlYWsge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbjogMHB4IDEwcHg7XG59XG4jY29udGFjdC11cyAuY29udGFpbmVyIC5jb250YWN0LWluZm8gLnNvY2lhbC1tZWRpYSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1hcmdpbjogYXV0bztcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG4jY29udGFjdC11cyAuY29udGFpbmVyIC5jb250YWN0LWluZm8gLnNvY2lhbC1tZWRpYSBhIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiA1cHg7XG59XG4jY29udGFjdC11cyAuY29udGFpbmVyIC5jb250YWN0LWluZm8gLnNvY2lhbC1tZWRpYSBhIGkge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDUwcHg7XG4gIGhlaWdodDogNTBweDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMzBweDtcbiAgbGluZS1oZWlnaHQ6IDUwcHg7XG4gIGNvbG9yOiAjMEFCOEYxO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgcGFkZGluZy10b3A6IDJweDtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIEhFQURFUiBPTiBTQ1JPTExcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4jc2Nyb2xsSGVhZGVyIHtcbiAgei1pbmRleDogNTAwO1xuICBoZWlnaHQ6IDYycHg7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICB0cmFuc2l0aW9uOiB0b3AgMC4ycyBlYXNlLWluLW91dDtcbiAgd2lkdGg6IDEwMCU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1zaXplOiAyOHB4O1xuICBmb250LXNpemU6IDEuNzVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICM1ODU5NUI7XG59XG4jc2Nyb2xsSGVhZGVyIHVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIC13ZWJraXQtcGFkZGluZy1zdGFydDogMHB4O1xufVxuI3Njcm9sbEhlYWRlciB1bCBsaSB7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nOiAxMHB4IDUwcHg7XG59XG4jc2Nyb2xsSGVhZGVyIHVsIGxpIGEge1xuICBjb2xvcjogI2ZmZjtcbn1cbiNzY3JvbGxIZWFkZXIgdWwgbGkgYTpob3ZlciB7XG4gIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQgd2hpdGU7XG4gIGNvbG9yOiAjZmZmO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5uYXYtdXAge1xuICB0b3A6IC02MnB4ICFpbXBvcnRhbnQ7XG59XG5cbi5yZW1vdmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQkFDS0dST1VORCBWSURFT1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbnZpZGVvIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICBtaW4td2lkdGg6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IGF1dG87XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKC01MCUpO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgSlVNQk9UUk9OXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuI2p1bWJvdHJvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMHZoO1xuICB6LWluZGV4OiA2MDA7XG59XG4janVtYm90cm9uIHZpZGVvIHtcbiAgei1pbmRleDogMDtcbn1cbiNqdW1ib3Ryb24gLmNvbnRhaW5lciB7XG4gIHBhZGRpbmctdG9wOiAzMHZoO1xuICBwYWRkaW5nLWJvdHRvbTogMzB2aDtcbiAgei1pbmRleDogMjtcbn1cbiNqdW1ib3Ryb24gaDEsICNqdW1ib3Ryb24gcCB7XG4gIHRleHQtc2hhZG93OiAycHggMnB4IHJnYmEoMCwgMCwgMCwgMC43NSk7XG59XG4janVtYm90cm9uIGgxIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb2xvcjogd2hpdGU7XG59XG4janVtYm90cm9uIHAge1xuICBmb250LXNpemU6IDE4cHg7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGNvbG9yOiB3aGl0ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuI2p1bWJvdHJvbjphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb250ZW50OiAnJztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgei1pbmRleDogMTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIEZSRUUgQU5JTUFUSU9OU1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbiNmcmVlLWFuaW1hdGlvbnMge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4jZnJlZS1hbmltYXRpb25zICN2aWRlby1jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDUwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6ICNmZmY7XG4gIG1hcmdpbjogMDtcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICBkaXNwbGF5OiBmbGV4O1xuICBoZWlnaHQ6IDEwMHZoO1xuICB3aWR0aDogMTAwJTtcbn1cbiNmcmVlLWFuaW1hdGlvbnMgI3ZpZGVvLWNvbnRhaW5lciBkaXYge1xuICBtYXJnaW46IGF1dG87XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWF4LXdpZHRoOiA5MDBweDtcbn1cbiNmcmVlLWFuaW1hdGlvbnMgI3ZpZGVvLWNvbnRhaW5lciBkaXYgaW1nIHtcbiAgbWF4LXdpZHRoOiAzMDBweDtcbn1cbiNmcmVlLWFuaW1hdGlvbnMgI3ZpZGVvLWNvbnRhaW5lciBkaXYgaDEge1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgdGV4dC1zaGFkb3c6IC0ycHggMnB4IDJweCBibGFjaztcbn1cbiNmcmVlLWFuaW1hdGlvbnMgI3ZpZGVvLWNvbnRhaW5lciBkaXYgcCB7XG4gIGZvbnQtc2l6ZTogMjRweDtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgbWFyZ2luLXRvcDogMTVweDtcbn1cbiNmcmVlLWFuaW1hdGlvbnMgLm1lbnUge1xuICB6LWluZGV4OiA2NTA7XG4gIGZvbnQtc2l6ZTogMjhweDtcbiAgZm9udC1zaXplOiAxLjc1cmVtO1xufVxuI2ZyZWUtYW5pbWF0aW9ucyAubWVudSB1bCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBtYXJnaW4tdG9wOiAtMTAlO1xuICAtd2Via2l0LXBhZGRpbmctc3RhcnQ6IDBweDtcbn1cbiNmcmVlLWFuaW1hdGlvbnMgLm1lbnUgdWwgbGkge1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZzogMTBweCA1MHB4O1xufVxuI2ZyZWUtYW5pbWF0aW9ucyAubWVudSB1bCBsaSBhIHtcbiAgY29sb3I6ICNmZmY7XG59XG4jZnJlZS1hbmltYXRpb25zIC5tZW51IHVsIGxpIGE6aG92ZXIge1xuICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkIHdoaXRlO1xuICBjb2xvcjogI2ZmZjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuI2ZyZWUtYW5pbWF0aW9ucyAuY29udGFpbmVyICNhbmltYXRpb25zIGgxIHtcbiAgbWFyZ2luOiA0MHB4IDAgMzBweDtcbn1cbiNmcmVlLWFuaW1hdGlvbnMgLmNvbnRhaW5lciAjYW5pbWF0aW9ucyAuZ3JpZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICBhbGlnbi1jb250ZW50OiBzdHJldGNoO1xufVxuI2ZyZWUtYW5pbWF0aW9ucyAuY29udGFpbmVyICNhbmltYXRpb25zIC5ncmlkIC5pdGVtIHtcbiAgZmxleDogMSAwIGF1dG87XG4gIG1heC13aWR0aDogMzUwcHg7XG59XG4jZnJlZS1hbmltYXRpb25zIC5jb250YWluZXIgI2FuaW1hdGlvbnMgLmdyaWQgLml0ZW0gZmlndXJlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXgtd2lkdGg6IDM1MHB4O1xuICBoZWlnaHQ6IDIwMHB4O1xuICBtYXJnaW46IDEwcHggYXV0bztcbiAgcGFkZGluZzogNXB4O1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXQ7XG4gIGJvcmRlcjogc29saWQgMXB4ICNCQ0JFQzA7XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbiNmcmVlLWFuaW1hdGlvbnMgLmNvbnRhaW5lciAjYW5pbWF0aW9ucyAuZ3JpZCAuaXRlbSBmaWd1cmU6YWZ0ZXIge1xuICBvcGFjaXR5OiAwO1xuICBjb250ZW50OiBcIlxcZjBkYVwiO1xuICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbWFyZ2luLWxlZnQ6IC01NSU7XG4gIG1hcmdpbi10b3A6IC0xNSU7XG4gIGZvbnQtc2l6ZTogMjAwcHg7XG4gIGNvbG9yOiAjZmZmO1xuICB0ZXh0LXNoYWRvdzogMXB4IDFweCA1MHB4IGJsYWNrO1xuICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0O1xufVxuI2ZyZWUtYW5pbWF0aW9ucyAuY29udGFpbmVyICNhbmltYXRpb25zIC5ncmlkIC5pdGVtIGZpZ3VyZTpob3ZlciB7XG4gIGJvcmRlci1jb2xvcjogIzBBQjhGMTtcbn1cbiNmcmVlLWFuaW1hdGlvbnMgLmNvbnRhaW5lciAjYW5pbWF0aW9ucyAuZ3JpZCAuaXRlbSBmaWd1cmU6aG92ZXI6YWZ0ZXIge1xuICBvcGFjaXR5OiAuODtcbn1cbiNmcmVlLWFuaW1hdGlvbnMgLmNvbnRhaW5lciAjYW5pbWF0aW9ucyAuZ3JpZCAuaXRlbSBmaWd1cmU6aG92ZXIgaW1nIHtcbiAgLXdlYmtpdC1maWx0ZXI6IGdyYXlzY2FsZSgxKTtcbiAgZmlsdGVyOiBncmF5c2NhbGUoMSk7XG59XG4jZnJlZS1hbmltYXRpb25zIC5jb250YWluZXIgI2FuaW1hdGlvbnMgLmdyaWQgLml0ZW0gZmlndXJlOmhvdmVyIC52aWRlby10aXRsZSB7XG4gIG9wYWNpdHk6IDA7XG59XG4jZnJlZS1hbmltYXRpb25zIC5jb250YWluZXIgI2FuaW1hdGlvbnMgLmdyaWQgLml0ZW0gZmlndXJlIGltZyB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLWluLW91dDtcbn1cbiNmcmVlLWFuaW1hdGlvbnMgLmNvbnRhaW5lciAjYW5pbWF0aW9ucyAuZ3JpZCAuaXRlbSBmaWd1cmUgLnZpZGVvLXRpdGxlIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogLTQ0cHg7XG4gIHdpZHRoOiAxMDAlO1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgcGFkZGluZzogMTBweCAxNXB4O1xuICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0O1xuICBjb2xvcjogI2ZmZjtcbn1cbiNmcmVlLWFuaW1hdGlvbnMgLmNvbnRhaW5lciAjYW5pbWF0aW9ucyAuZ3JpZCAuaXRlbSBmaWdjYXB0aW9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb2xvcjogI2Y0ZjRmNDtcbiAgdGV4dC1zaGFkb3c6IDAgMCAzcHggIzAwMDtcbiAgYm90dG9tOiAxMHB4O1xuICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0O1xufVxuI2ZyZWUtYW5pbWF0aW9ucyAuY29udGFpbmVyICNob3ctdG8tdXNlIHtcbiAgbWF4LXdpZHRoOiA5NjBweDtcbiAgbWFyZ2luOiA1MHB4IGF1dG8gMDtcbn1cbiNmcmVlLWFuaW1hdGlvbnMgLmNvbnRhaW5lciAjaG93LXRvLXVzZSBoMSB7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG59XG4jZnJlZS1hbmltYXRpb25zIC5jb250YWluZXIgI2hvdy10by11c2UgLmdyaWQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgYWxpZ24tY29udGVudDogc3RyZXRjaDtcbiAgcGFkZGluZzogMTBweCAwIDYwcHg7XG59XG4jZnJlZS1hbmltYXRpb25zIC5jb250YWluZXIgI2hvdy10by11c2UgLmdyaWQgLml0ZW0ge1xuICBmbGV4OiAxIDAgYXV0bztcbn1cbiNmcmVlLWFuaW1hdGlvbnMgLmNvbnRhaW5lciAjaG93LXRvLXVzZSAuZ3JpZCAuaXRlbSAuc3RlcHMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1heC13aWR0aDogMzIwcHg7XG4gIG1hcmdpbjogMTBweCBhdXRvO1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIHRyYW5zaXRpb246IGFsbCAuMnMgZWFzZS1pbi1vdXQ7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG4jZnJlZS1hbmltYXRpb25zIC5jb250YWluZXIgI2hvdy10by11c2UgLmdyaWQgLml0ZW0gLnN0ZXBzIHNwYW4ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDgwcHg7XG4gIGhlaWdodDogODBweDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogM2VtO1xuICBsaW5lLWhlaWdodDogMS4xNGVtO1xuICBjb2xvcjogIzBBQjhGMTtcbiAgcGFkZGluZzogMTBweDtcbiAgbWFyZ2luOiBhdXRvO1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICBib3JkZXI6IDJweCBzb2xpZCAjMEFCOEYxO1xuICBmb250LXdlaWdodDogMzAwO1xufVxuI2ZyZWUtYW5pbWF0aW9ucyAuY29udGFpbmVyICNob3ctdG8tdXNlIC5ncmlkIC5pdGVtIC5zdGVwcyAudGl0bGUge1xuICBjb2xvcjogIzAwMDtcbiAgLyogQGluY2x1ZGUgZm9udC1zaXplKDE4KTsgKi9cbn1cbiNmcmVlLWFuaW1hdGlvbnMgLmNvbnRhaW5lciAjaG93LXRvLXVzZSAuZ3JpZCAuaXRlbSAuc3RlcHMgLmRlc2Mge1xuICBjb2xvcjogIzgwODI4NTtcbiAgZm9udC1mYW1pbHk6ICdPcGVuIFNhbnMnLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG59XG4jZnJlZS1hbmltYXRpb25zIC5jb250YWluZXIgI2hvdy10by11c2UgLmluc3RydWN0aW9ucyB7XG4gIHdpZHRoOiA4MCU7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuI2ZyZWUtYW5pbWF0aW9ucyAuY29udGFpbmVyICNob3ctdG8tdXNlIC5pbnN0cnVjdGlvbnMgLm5hdi10YWJzIHtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgZmxleC13cmFwOiB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcbn1cbiNmcmVlLWFuaW1hdGlvbnMgLmNvbnRhaW5lciAjaG93LXRvLXVzZSAuaW5zdHJ1Y3Rpb25zIC5uYXYtdGFicyBsaSB7XG4gIGZsZXg6IDEgMSBhdXRvO1xuICBib3JkZXI6IDJweCBzb2xpZCAjMEFCOEYxO1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4jZnJlZS1hbmltYXRpb25zIC5jb250YWluZXIgI2hvdy10by11c2UgLmluc3RydWN0aW9ucyAubmF2LXRhYnMgbGkgYSB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuI2ZyZWUtYW5pbWF0aW9ucyAuY29udGFpbmVyICNob3ctdG8tdXNlIC5pbnN0cnVjdGlvbnMgLm5hdi10YWJzIGxpIGE6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMEFCOEYxO1xuICBjb2xvcjogI2ZmZjtcbn1cbiNmcmVlLWFuaW1hdGlvbnMgLmNvbnRhaW5lciAjaG93LXRvLXVzZSAuaW5zdHJ1Y3Rpb25zIC5uYXYtdGFicyBsaTpudGgtY2hpbGQoMikge1xuICBtYXJnaW46IDAgM3B4O1xufVxuI2ZyZWUtYW5pbWF0aW9ucyAuY29udGFpbmVyICNob3ctdG8tdXNlIC5pbnN0cnVjdGlvbnMgLm5hdi10YWJzIGxpLmFjdGl2ZSBhIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBBQjhGMTtcbiAgY29sb3I6ICNmZmY7XG59XG4jZnJlZS1hbmltYXRpb25zIC5jb250YWluZXIgI2hvdy10by11c2UgLmluc3RydWN0aW9ucyAudGFiLWNvbnRlbnQge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vdmlkbGVyeS9pbWcvaW5zdHJ1Y3Rpb25zLnN2Zyk7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGNvbG9yOiAjZmZmO1xuICBoZWlnaHQ6IDMwMHB4O1xuICBtYXJnaW4tdG9wOiAzcHg7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHBhZGRpbmc6IDEwcHg7XG59XG4jZnJlZS1hbmltYXRpb25zIC5jb250YWluZXIgI2hvdy10by11c2UgLmluc3RydWN0aW9ucyAudGFiLWNvbnRlbnQgcHJlIC55ZWxsb3cge1xuICBjb2xvcjogI2UyY2Q1Mjtcbn1cbiNmcmVlLWFuaW1hdGlvbnMgLmNvbnRhaW5lciAjaG93LXRvLXVzZSAuaW5zdHJ1Y3Rpb25zIC50YWItY29udGVudCBwcmUgLm9yYW5nZSB7XG4gIGNvbG9yOiAjRjc5NDFFO1xufVxuI2ZyZWUtYW5pbWF0aW9ucyAuY29udGFpbmVyICNob3ctdG8tdXNlIC5pbnN0cnVjdGlvbnMgLnRhYi1jb250ZW50IHByZSAuZ3JlZW4ge1xuICBjb2xvcjogI0FFQzk3ODtcbn1cbiNmcmVlLWFuaW1hdGlvbnMgLmNvbnRhaW5lciAjaG93LXRvLXVzZSAuaW5zdHJ1Y3Rpb25zIC50YWItY29udGVudCBwcmUgLmJsdWUge1xuICBjb2xvcjogIzBBQjhGMTtcbn1cbiNmcmVlLWFuaW1hdGlvbnMgI2NvbnRhY3QtYm94IHtcbiAgcGFkZGluZzogODBweCAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3JkZXItdG9wOiAwcHg7XG59XG4jZnJlZS1hbmltYXRpb25zICNjb250YWN0LWJveCBoMSB7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG59XG4jZnJlZS1hbmltYXRpb25zICNjb250YWN0LWJveCBwIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IDVweDtcbn1cbiNmcmVlLWFuaW1hdGlvbnMgI2NvbnRhY3QtYm94IC5idG4ge1xuICBwYWRkaW5nOiAxNXB4IDEwJTtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xufVxuI2ZyZWUtYW5pbWF0aW9ucyAjY29udGFjdC1ib3ggLmJ0bjpob3ZlciwgI2ZyZWUtYW5pbWF0aW9ucyAjY29udGFjdC1ib3ggLmJ0bjpmb2N1cyB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbiNmcmVlLWFuaW1hdGlvbnMgI25ld3NsZXR0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjFmMmYyO1xuICBjb2xvcjogI2ZmZjtcbiAgcGFkZGluZzogNDBweCAwIDYwcHg7XG4gIGZvbnQtZmFtaWx5OiAnT3BlbiBTYW5zJywgc2Fucy1zZXJpZjtcbn1cbiNmcmVlLWFuaW1hdGlvbnMgI25ld3NsZXR0ZXIgI3NpZ251cCBwIHtcbiAgY29sb3I6ICMwMDA7XG4gIG1hcmdpbi1ib3R0b206IDI1cHg7XG59XG4jZnJlZS1hbmltYXRpb25zICNuZXdzbGV0dGVyICNzaWdudXAgI21jX2VtYmVkX3NpZ251cCB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBmb250OiBub3JtYWw7XG59XG4jZnJlZS1hbmltYXRpb25zICNuZXdzbGV0dGVyICNzaWdudXAgI21jX2VtYmVkX3NpZ251cCAjbWNfZW1iZWRfc2lnbnVwIGZvcm0gZm9ybSB7XG4gIHRleHQtYWxpZ246IGluaGVyaXQ7XG4gIHBhZGRpbmc6IDA7XG59XG4jZnJlZS1hbmltYXRpb25zICNuZXdzbGV0dGVyICNzaWdudXAgI21jX2VtYmVkX3NpZ251cCAubWMtZmllbGQtZ3JvdXAge1xuICBjbGVhcjogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xuICBtaW4taGVpZ2h0OiBpbmhlcml0O1xuICBwb3NpdGlvbjogaW5oZXJpdDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuI2ZyZWUtYW5pbWF0aW9ucyAjbmV3c2xldHRlciAjc2lnbnVwICNtY19lbWJlZF9zaWdudXAgLm1jLWZpZWxkLWdyb3VwIC5lbWFpbCB7XG4gIGJvcmRlci1yYWRpdXM6IDNweCAwIDAgM3B4O1xuICBib3JkZXI6IDA7XG4gIHBhZGRpbmc6IDdweCAxMnB4O1xuICBtYXJnaW4tcmlnaHQ6IC01cHg7XG4gIHdpZHRoOiA1MCU7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgaGVpZ2h0OiA1MnB4O1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGRpc3BsYXk6IGluaXRpYWw7XG4gIHRleHQtaW5kZW50OiBpbml0aWFsO1xufVxuI2ZyZWUtYW5pbWF0aW9ucyAjbmV3c2xldHRlciAjc2lnbnVwICNtY19lbWJlZF9zaWdudXAgLm1jLWZpZWxkLWdyb3VwIC5idG4ge1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgcGFkZGluZzogMTFweCAyMHB4O1xuICBib3JkZXItcmFkaXVzOiAwIDNweCAzcHggMDtcbiAgYm9yZGVyOiAwO1xuICBmb250LXNpemU6IDE4cHg7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIHdpZHRoOiBpbml0aWFsO1xuICB0ZXh0LWluZGVudDogaW5pdGlhbDtcbiAgZGlzcGxheTogaW5pdGlhbDtcbiAgbWFyZ2luOiAwO1xuICBoZWlnaHQ6IDUycHg7XG4gIGJvcmRlcjogMDtcbiAgbWFyZ2luLXRvcDogLTJweDtcbn1cbiNmcmVlLWFuaW1hdGlvbnMgI25ld3NsZXR0ZXIgI3NpZ251cCAjbWNfZW1iZWRfc2lnbnVwIC5tYy1maWVsZC1ncm91cCBpbnB1dFt0eXBlPXRleHRdOmZvY3VzLCAjZnJlZS1hbmltYXRpb25zICNuZXdzbGV0dGVyICNzaWdudXAgI21jX2VtYmVkX3NpZ251cCAubWMtZmllbGQtZ3JvdXAgdGV4dGFyZWE6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMHB4ICM1MWNiZWU7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBGUkVFIEFOSU1BVElPTlMgTU9EQUxTXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLm1vZGFsIC52ZXJ0aWNhbC1hbGlnbm1lbnQtaGVscGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG59XG4ubW9kYWwgLnZlcnRpY2FsLWFsaWdubWVudC1oZWxwZXIgLnZlcnRpY2FsLWFsaWduLWNlbnRlciB7XG4gIC8qIFRvIGNlbnRlciB2ZXJ0aWNhbGx5ICovXG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG4ubW9kYWwgLnZlcnRpY2FsLWFsaWdubWVudC1oZWxwZXIgLnZlcnRpY2FsLWFsaWduLWNlbnRlciAubW9kYWwtY29udGVudCB7XG4gIC8qIEJvb3RzdHJhcCBzZXRzIHRoZSBzaXplIG9mIHRoZSBtb2RhbCBpbiB0aGUgbW9kYWwtZGlhbG9nIGNsYXNzLCB3ZSBuZWVkIHRvIGluaGVyaXQgaXQgKi9cbiAgd2lkdGg6IGluaGVyaXQ7XG4gIGhlaWdodDogaW5oZXJpdDtcbiAgLyogVG8gY2VudGVyIGhvcml6b250YWxseSAqL1xuICBtYXJnaW46IDAgYXV0bztcbn1cbi5tb2RhbCAudmVydGljYWwtYWxpZ25tZW50LWhlbHBlciAudmVydGljYWwtYWxpZ24tY2VudGVyIC5tb2RhbC1jb250ZW50IC5tb2RhbC1oZWFkZXIge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBib3JkZXItYm90dG9tOiAwO1xufVxuLm1vZGFsIC52ZXJ0aWNhbC1hbGlnbm1lbnQtaGVscGVyIC52ZXJ0aWNhbC1hbGlnbi1jZW50ZXIgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWhlYWRlciAubW9kYWwtdGl0bGUge1xuICBjb2xvcjogIzMzMyAhaW1wb3J0YW50O1xufVxuLm1vZGFsIC52ZXJ0aWNhbC1hbGlnbm1lbnQtaGVscGVyIC52ZXJ0aWNhbC1hbGlnbi1jZW50ZXIgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWJvZHkgdmlkZW8ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogaW5pdGlhbDtcbiAgbGVmdDogaW5pdGlhbDtcbiAgbWluLXdpZHRoOiBhdXRvO1xuICBtaW4taGVpZ2h0OiBhdXRvO1xuICB3aWR0aDogOTAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBpbml0aWFsO1xuICB0cmFuc2Zvcm06IGluaXRpYWw7XG4gIHotaW5kZXg6IDEwMDtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBib3gtc2hhZG93OiBub25lO1xufVxuLm1vZGFsIC52ZXJ0aWNhbC1hbGlnbm1lbnQtaGVscGVyIC52ZXJ0aWNhbC1hbGlnbi1jZW50ZXIgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWZvb3RlciB7XG4gIGJvcmRlci10b3A6IDA7XG59XG4ubW9kYWwgLnZlcnRpY2FsLWFsaWdubWVudC1oZWxwZXIgLnZlcnRpY2FsLWFsaWduLWNlbnRlciAubW9kYWwtY29udGVudCAubW9kYWwtZm9vdGVyIC5idG4tY292ZXI6YmVmb3JlIHtcbiAgb3BhY2l0eTogMTtcbiAgY29udGVudDogXCJcXGYwNmVcIjtcbiAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICBjb2xvcjogI2ZmZjtcbiAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLWluLW91dDtcbn1cbi5tb2RhbCAudmVydGljYWwtYWxpZ25tZW50LWhlbHBlciAudmVydGljYWwtYWxpZ24tY2VudGVyIC5tb2RhbC1jb250ZW50IC5tb2RhbC1mb290ZXIgLmJ0bi1kb3dubG9hZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGNzk0MUU7XG4gIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0O1xufVxuLm1vZGFsIC52ZXJ0aWNhbC1hbGlnbm1lbnQtaGVscGVyIC52ZXJ0aWNhbC1hbGlnbi1jZW50ZXIgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWZvb3RlciAuYnRuLWRvd25sb2FkOmJlZm9yZSB7XG4gIG9wYWNpdHk6IDE7XG4gIGNvbnRlbnQ6IFwiXFxmMDE5XCI7XG4gIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgY29sb3I6ICNmZmY7XG4gIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXQ7XG59XG4ubW9kYWwgLnZlcnRpY2FsLWFsaWdubWVudC1oZWxwZXIgLnZlcnRpY2FsLWFsaWduLWNlbnRlciAubW9kYWwtY29udGVudCAubW9kYWwtZm9vdGVyIC5idG4tZG93bmxvYWQ6aG92ZXIge1xuICBvcGFjaXR5OiAuNztcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIEZPT1RFUlxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbiNmb290ZXIge1xuICBjbGVhcjogYm90aDtcbiAgd2lkdGg6IDEwMCU7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDIwcHggMDtcbiAgYm9yZGVyLXRvcDogNXB4IHNvbGlkICNhN2E5YWM7XG4gIGJhY2tncm91bmQ6ICNCQ0JFQzA7XG4gIGNvbG9yOiAjNTg1OTVCO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG59XG4jZm9vdGVyIGEge1xuICBjb2xvcjogIzU4NTk1QjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG4jZm9vdGVyIGE6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4jZm9vdGVyIGEuZW1haWwge1xuICBmb250LXdlaWdodDogMzAwO1xufVxuI2Zvb3RlciAuY2MsICNmb290ZXIgLmFuaW1hdGlvbnN3b3JsZCB7XG4gIG1heC13aWR0aDogMTAwcHg7XG4gIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXQ7XG59XG4jZm9vdGVyIC5jYzpob3ZlciwgI2Zvb3RlciAuYW5pbWF0aW9uc3dvcmxkOmhvdmVyIHtcbiAgb3BhY2l0eTogLjg7XG59XG4jZm9vdGVyIC5jYyB7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG59XG4jZm9vdGVyICNzaXRlLWluZm8ge1xuICBtYXJnaW46IDA7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMjAwcHgpIHtcbiAgLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICAgRlJFRSBBTklNQVRJT05TXG4gICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4gICNmcmVlLWFuaW1hdGlvbnMgLm1lbnUge1xuICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICBmb250LXNpemU6IDEuMzc1cmVtO1xuICB9XG4gICNmcmVlLWFuaW1hdGlvbnMgI2hvdy10by11c2UgLmdyaWQgLml0ZW0ge1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTJweCkge1xuICAvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgICBIRUFERVIgT04gU0NST0xMXG4gICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4gICNzY3JvbGxIZWFkZXIge1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgfVxuXG4gICNzY3JvbGxIZWFkZXIgdWwgbGkge1xuICAgIHBhZGRpbmc6IDE1cHggMzBweDtcbiAgfVxuXG4gIC8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgIEZSRUUgQU5JTUFUSU9OU1xuICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuICAjZnJlZS1hbmltYXRpb25zIC5tZW51IHtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICB9XG4gICNmcmVlLWFuaW1hdGlvbnMgLm1lbnUgdWwge1xuICAgIG1hcmdpbi10b3A6IC0xNSU7XG4gIH1cbiAgI2ZyZWUtYW5pbWF0aW9ucyAubWVudSB1bCBsaSB7XG4gICAgcGFkZGluZzogMTVweCA0MHB4O1xuICB9XG5cbiAgLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICAgSG93IHRvIFVzZVxuICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuICAuaW5zdHJ1Y3Rpb25zIHtcbiAgICB3aWR0aDogOTAlO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICAgSEVBREVSIE9OIFNDUk9MTFxuICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuICAjc2Nyb2xsSGVhZGVyIHtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICB9XG5cbiAgI3Njcm9sbEhlYWRlciB1bCBsaSB7XG4gICAgcGFkZGluZzogMTZweCAyMHB4O1xuICB9XG5cbiAgLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICAgVFlQT0dSQVBIWVxuICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuICBodG1sIGJvZHkge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBmb250LXNpemU6IDFyZW07XG4gIH1cbiAgaHRtbCBib2R5IHAge1xuICAgIG1hcmdpbjogMCAwIDEwcHg7XG4gIH1cbiAgaHRtbCBib2R5IGgxIHtcbiAgICBmb250LXNpemU6IDQ4cHg7XG4gICAgZm9udC1zaXplOiAzcmVtO1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgfVxuICBodG1sIGJvZHkgaDIge1xuICAgIGZvbnQtc2l6ZTogMzJweDtcbiAgICBmb250LXNpemU6IDJyZW07XG4gICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICB9XG4gIGh0bWwgYm9keSBoMyB7XG4gICAgZm9udC1zaXplOiAyNHB4O1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgfVxuICBodG1sIGJvZHkgaDQge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICB9XG4gIGh0bWwgYm9keSBoNSB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICB9XG4gIGh0bWwgYm9keSBoNiB7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIH1cblxuICAvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgICBDT05UQUlORVJcbiAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbiAgLmNvbnRhaW5lciB7XG4gICAgbWF4LXdpZHRoOiA3NjhweDtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIH1cbiAgLmNvbnRhaW5lcjphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cblxuICAvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgICBIRUFERVJcbiAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbiAgI2hlYWRlciB7XG4gICAgbWFyZ2luLXRvcDogNTBweDtcbiAgfVxuXG4gIC8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgIENPTlRFTlRcbiAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbiAgI2NvbnRlbnQgI21haW4ge1xuICAgIGNsZWFyOiBib3RoO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxuICAjY29udGVudCAjc2lkZWJhciB7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG5cbiAgLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICAgRlJFRSBBTklNQVRJT05TXG4gICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4gICNmcmVlLWFuaW1hdGlvbnMgI3ZpZGVvLWNvbnRhaW5lciBkaXYgcCB7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgfVxuICAjZnJlZS1hbmltYXRpb25zIC5tZW51IHtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICBtYXJnaW4tdG9wOiAtMjBweDtcbiAgfVxuICAjZnJlZS1hbmltYXRpb25zIC5tZW51IHVsIGxpIHtcbiAgICBwYWRkaW5nOiAxNnB4IDIwcHg7XG4gIH1cblxuICAvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgICBIb3cgdG8gVXNlXG4gICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4gICNob3ctdG8tdXNlIC5pbnN0cnVjdGlvbnMge1xuICAgIHdpZHRoOiA5MCUgIWltcG9ydGFudDtcbiAgfVxuICAjaG93LXRvLXVzZSAuaW5zdHJ1Y3Rpb25zIC5uYXYtdGFicyB7XG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgfVxuICAjaG93LXRvLXVzZSAuaW5zdHJ1Y3Rpb25zIC5uYXYtdGFicyBsaSB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICBtYXJnaW4tYm90dG9tOiA1cHggIWltcG9ydGFudDtcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgfVxuICAjaG93LXRvLXVzZSAuaW5zdHJ1Y3Rpb25zIGxpOm50aC1jaGlsZCgyKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDYwMHB4KSB7XG4gIC8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgIEhFQURFUiBPTiBTQ1JPTExcbiAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbiAgI3Njcm9sbEhlYWRlciB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIH1cblxuICAjc2Nyb2xsSGVhZGVyIHVsIGxpIHtcbiAgICBwYWRkaW5nOiAyMXB4IDEwcHg7XG4gIH1cblxuICAvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgICBUWVBPR1JBUEhZXG4gICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4gIGh0bWwgYm9keSBoMSB7XG4gICAgZm9udC1zaXplOiA0MHB4O1xuICAgIGZvbnQtc2l6ZTogMi41cmVtO1xuICB9XG5cbiAgLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICAgRlJFRSBBTklNQVRJT05TXG4gICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4gICNmcmVlLWFuaW1hdGlvbnMgI3ZpZGVvLWNvbnRhaW5lciBkaXYgaW1nIHtcbiAgICBtYXgtd2lkdGg6IDIwMHB4O1xuICB9XG4gICNmcmVlLWFuaW1hdGlvbnMgI3ZpZGVvLWNvbnRhaW5lciBkaXYgcCB7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIH1cbiAgI2ZyZWUtYW5pbWF0aW9ucyAubWVudSB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIH1cbiAgI2ZyZWUtYW5pbWF0aW9ucyAubWVudSB1bCBsaSB7XG4gICAgcGFkZGluZzogMjFweCAxMHB4O1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogNDAwcHgpIHtcbiAgLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICAgSEVBREVSIE9OIFNDUk9MTFxuICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuICAjc2Nyb2xsSGVhZGVyIHtcbiAgICBmb250LXNpemU6IDExcHg7XG4gICAgZm9udC1zaXplOiAwLjY4NzVyZW07XG4gIH1cblxuICAvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgICBGUkVFIEFOSU1BVElPTlNcbiAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbiAgI2ZyZWUtYW5pbWF0aW9ucyAubWVudSB7XG4gICAgZm9udC1zaXplOiAxMXB4O1xuICAgIGZvbnQtc2l6ZTogMC42ODc1cmVtO1xuICB9XG59XG4iXX0= */