/* Scripts common to CAS and SPEED Hub. The copies in both repos
should always be kept in sync and ideally this should be extracted to a npm
package in the end. */
@import url("https://fonts.googleapis.com/css?family=Lato");
/**
 * Toolkit styles
 */
/*! normalize.css v6.0.0 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in
 *    IE on Windows Phone and in iOS.
 */
html {
  line-height: 1.15;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */ }

/* Sections
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 */
article,
aside,
footer,
header,
nav,
section {
  display: block; }

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0; }

/* Grouping content
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 * 1. Add the correct display in IE.
 */
figcaption,
figure,
main {
  /* 1 */
  display: block; }

/**
 * Add the correct margin in IE 8.
 */
figure {
  margin: 1em 40px; }

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  -webkit-box-sizing: content-box;
     -moz-box-sizing: content-box;
          box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */ }

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */ }

/* Text-level semantics
   ========================================================================== */
/**
 * 1. Remove the gray background on active links in IE 10.
 * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
 */
a {
  background-color: transparent;
  /* 1 */
  -webkit-text-decoration-skip: objects;
  /* 2 */ }

/**
 * 1. Remove the bottom border in Chrome 57- and Firefox 39-.
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  text-decoration: underline dotted;
  /* 2 */ }

/**
 * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
 */
b,
strong {
  font-weight: inherit; }

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder; }

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */ }

/**
 * Add the correct font style in Android 4.3-.
 */
dfn {
  font-style: italic; }

/**
 * Add the correct background and color in IE 9-.
 */
mark {
  background-color: #ff0;
  color: #000; }

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%; }

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

sub {
  bottom: -0.25em; }

sup {
  top: -0.5em; }

/* Embedded content
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 */
audio,
video {
  display: inline-block; }

/**
 * Add the correct display in iOS 4-7.
 */
audio:not([controls]) {
  display: none;
  height: 0; }

/**
 * Remove the border on images inside links in IE 10-.
 */
img {
  border-style: none; }

/**
 * Hide the overflow in IE.
 */
svg:not(:root) {
  overflow: hidden; }

/* Forms
   ========================================================================== */
/**
 * Remove the margin in Firefox and Safari.
 */
button,
input,
.input-group__addon,
optgroup,
select,
textarea {
  margin: 0; }

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input,
.input-group__addon {
  /* 1 */
  overflow: visible; }

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
  /* 1 */
  text-transform: none; }

/**
 * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
 *    controls in Android 4.
 * 2. Correct the inability to style clickable types in iOS and Safari.
 */
button,
html [type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
  /* 2 */ }

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0; }

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText; }

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */ }

/**
 * 1. Add the correct display in IE 9-.
 * 2. Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */ }

/**
 * Remove the default vertical scrollbar in IE.
 */
textarea {
  overflow: auto; }

/**
 * 1. Add the correct box sizing in IE 10-.
 * 2. Remove the padding in IE 10-.
 */
[type="checkbox"],
[type="radio"] {
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */ }

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto; }

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */ }

/**
 * Remove the inner padding and cancel buttons in Chrome and Safari on macOS.
 */
[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */ }

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in IE 9-.
 * 1. Add the correct display in Edge, IE, and Firefox.
 */
details,
menu {
  display: block; }

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item; }

/* Scripting
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 */
canvas {
  display: inline-block; }

/**
 * Add the correct display in IE.
 */
template {
  display: none; }

/* Hidden
   ========================================================================== */
/**
 * Add the correct display in IE 10-.
 */
[hidden] {
  display: none; }

html {
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box; }

*, *:before, *:after {
  -webkit-box-sizing: inherit;
     -moz-box-sizing: inherit;
          box-sizing: inherit; }

/* Webfont: Lato-Black */
@font-face {
  font-family: 'LatoWebBlack';
  src: url("node_modules/qed-ui/styles/fonts/lato/Lato-Black.33d5f0d956f3.woff2") format("woff2"), url("node_modules/qed-ui/styles/fonts/lato/Lato-Black.f80bda6afd19.woff") format("woff");
  /* Modern Browsers */
  font-style: normal;
  font-weight: normal;
  text-rendering: optimizeLegibility; }

/* Webfont: Lato-BlackItalic */
@font-face {
  font-family: 'LatoWebBlack';
  src: url("node_modules/qed-ui/styles/fonts/lato/Lato-BlackItalic.0f4fa9755f48.woff2") format("woff2"), url("node_modules/qed-ui/styles/fonts/lato/Lato-BlackItalic.798eafdd87dc.woff") format("woff");
  /* Modern Browsers */
  font-style: italic;
  font-weight: normal;
  text-rendering: optimizeLegibility; }

/* Webfont: Lato-Bold */
@font-face {
  font-family: 'LatoWebBold';
  src: url("node_modules/qed-ui/styles/fonts/lato/Lato-Bold.cccb89748581.woff2") format("woff2"), url("node_modules/qed-ui/styles/fonts/lato/Lato-Bold.d878b6c29b10.woff") format("woff");
  /* Modern Browsers */
  font-style: normal;
  font-weight: normal;
  text-rendering: optimizeLegibility; }

/* Webfont: Lato-BoldItalic */
@font-face {
  font-family: 'LatoWebBold';
  src: url("node_modules/qed-ui/styles/fonts/lato/Lato-BoldItalic.0b6bb6725576.woff2") format("woff2"), url("node_modules/qed-ui/styles/fonts/lato/Lato-BoldItalic.9c7e4e9eb485.woff") format("woff");
  /* Modern Browsers */
  font-style: italic;
  font-weight: normal;
  text-rendering: optimizeLegibility; }

/* Webfont: Lato-Hairline */
@font-face {
  font-family: 'LatoWebHairline';
  src: url("node_modules/qed-ui/styles/fonts/lato/Lato-Hairline.ada4458b361d.woff2") format("woff2"), url("node_modules/qed-ui/styles/fonts/lato/Lato-Hairline.482fe0a9e92d.woff") format("woff");
  /* Modern Browsers */
  font-style: normal;
  font-weight: normal;
  text-rendering: optimizeLegibility; }

/* Webfont: Lato-HairlineItalic */
@font-face {
  font-family: 'LatoWebHairline';
  src: url("node_modules/qed-ui/styles/fonts/lato/Lato-HairlineItalic.d9cf51780295.woff2") format("woff2"), url("node_modules/qed-ui/styles/fonts/lato/Lato-HairlineItalic.b4da0df63131.woff") format("woff");
  /* Modern Browsers */
  font-style: italic;
  font-weight: normal;
  text-rendering: optimizeLegibility; }

/* Webfont: Lato-Heavy */
@font-face {
  font-family: 'LatoWebHeavy';
  src: url("node_modules/qed-ui/styles/fonts/lato/Lato-Heavy.c9cbbdc3762c.woff2") format("woff2"), url("node_modules/qed-ui/styles/fonts/lato/Lato-Heavy.2ce4d82354fd.woff") format("woff");
  /* Modern Browsers */
  font-style: normal;
  font-weight: normal;
  text-rendering: optimizeLegibility; }

/* Webfont: Lato-HeavyItalic */
@font-face {
  font-family: 'LatoWebHeavy';
  src: url("node_modules/qed-ui/styles/fonts/lato/Lato-HeavyItalic.46f0461b6e19.woff2") format("woff2"), url("node_modules/qed-ui/styles/fonts/lato/Lato-HeavyItalic.38d2399f6c10.woff") format("woff");
  /* Modern Browsers */
  font-style: italic;
  font-weight: normal;
  text-rendering: optimizeLegibility; }

/* Webfont: Lato-Italic */
@font-face {
  font-family: 'LatoWeb';
  src: url("node_modules/qed-ui/styles/fonts/lato/Lato-Italic.4eb103b4d12b.woff2") format("woff2"), url("node_modules/qed-ui/styles/fonts/lato/Lato-Italic.f28f2d648244.woff") format("woff");
  /* Modern Browsers */
  font-style: italic;
  font-weight: normal;
  text-rendering: optimizeLegibility; }

/* Webfont: Lato-Light */
@font-face {
  font-family: 'LatoWebLight';
  src: url("node_modules/qed-ui/styles/fonts/lato/Lato-Light.7244318390cc.woff2") format("woff2"), url("node_modules/qed-ui/styles/fonts/lato/Lato-Light.90301aa07d78.woff") format("woff");
  /* Modern Browsers */
  font-style: normal;
  font-weight: normal;
  text-rendering: optimizeLegibility; }

/* Webfont: Lato-LightItalic */
@font-face {
  font-family: 'LatoWebLight';
  src: url("node_modules/qed-ui/styles/fonts/lato/Lato-LightItalic.314210a4825a.woff2") format("woff2"), url("node_modules/qed-ui/styles/fonts/lato/Lato-LightItalic.b55e385f24f0.woff") format("woff");
  /* Modern Browsers */
  font-style: italic;
  font-weight: normal;
  text-rendering: optimizeLegibility; }

/* Webfont: Lato-Medium */
@font-face {
  font-family: 'LatoWebMedium';
  src: url("node_modules/qed-ui/styles/fonts/lato/Lato-Medium.0996d39c4cf5.woff2") format("woff2"), url("node_modules/qed-ui/styles/fonts/lato/Lato-Medium.acbd6ecc97c8.woff") format("woff");
  /* Modern Browsers */
  font-style: normal;
  font-weight: normal;
  text-rendering: optimizeLegibility; }

/* Webfont: Lato-MediumItalic */
@font-face {
  font-family: 'LatoWebMedium';
  src: url("node_modules/qed-ui/styles/fonts/lato/Lato-MediumItalic.4d295621045b.woff2") format("woff2"), url("node_modules/qed-ui/styles/fonts/lato/Lato-MediumItalic.aa1a75124661.woff") format("woff");
  /* Modern Browsers */
  font-style: italic;
  font-weight: normal;
  text-rendering: optimizeLegibility; }

/* Webfont: Lato-Regular */
@font-face {
  font-family: 'LatoWeb';
  src: url("node_modules/qed-ui/styles/fonts/lato/Lato-Regular.bd03a2cc277b.woff2") format("woff2"), url("node_modules/qed-ui/styles/fonts/lato/Lato-Regular.27bd77b9162d.woff") format("woff");
  /* Modern Browsers */
  font-style: normal;
  font-weight: normal;
  text-rendering: optimizeLegibility; }

/* Webfont: Lato-Semibold */
@font-face {
  font-family: 'LatoWebSemibold';
  src: url("node_modules/qed-ui/styles/fonts/lato/Lato-Semibold.8b4f872c5de1.woff2") format("woff2"), url("node_modules/qed-ui/styles/fonts/lato/Lato-Semibold.c2b50f4a7d90.woff") format("woff");
  /* Modern Browsers */
  font-style: normal;
  font-weight: normal;
  text-rendering: optimizeLegibility; }

/* Webfont: Lato-SemiboldItalic */
@font-face {
  font-family: 'LatoWebSemibold';
  src: url("node_modules/qed-ui/styles/fonts/lato/Lato-SemiboldItalic.80f6811f6c30.woff2") format("woff2"), url("node_modules/qed-ui/styles/fonts/lato/Lato-SemiboldItalic.9fcec04cdba9.woff") format("woff");
  /* Modern Browsers */
  font-style: italic;
  font-weight: normal;
  text-rendering: optimizeLegibility; }

/* Webfont: Lato-Thin */
@font-face {
  font-family: 'LatoWebThin';
  src: url("node_modules/qed-ui/styles/fonts/lato/Lato-Thin.0faa1074c17a.woff2") format("woff2"), url("node_modules/qed-ui/styles/fonts/lato/Lato-Thin.13fa4c60e0ee.woff") format("woff");
  /* Modern Browsers */
  font-style: normal;
  font-weight: normal;
  text-rendering: optimizeLegibility; }

/* Webfont: Lato-ThinItalic */
@font-face {
  font-family: 'LatoWebThin';
  src: url("node_modules/qed-ui/styles/fonts/lato/Lato-ThinItalic.880cffe4feba.woff2") format("woff2"), url("node_modules/qed-ui/styles/fonts/lato/Lato-ThinItalic.16d14ad31429.woff") format("woff");
  /* Modern Browsers */
  font-style: italic;
  font-weight: normal;
  text-rendering: optimizeLegibility; }

/*
CharisSIL-webfont-example.css
Charis SIL v5.000
14 Oct 2014
This file is part of Charis SIL font family (http://scripts.sil.org/CharisSILfont)
and is Copyright (c) 1994-2014 SIL International (http://www.sil.org/),
with Reserved Font Names "Charis" and "SIL". This Font Software is licensed
under the SIL Open Font License, Version 1.1. You should have received a copy
of the license along with this Font Software. If this is not the case, go to
(http://scripts.sil.org/OFL) for all the details including a FAQ.
*/
/* use Charis SIL - Regular in .woff format */
@font-face {
  font-family: CharisSILW;
  src: url("node_modules/qed-ui/styles/fonts/charis/CharisSIL-R.03a22a6b078b.woff");
  text-rendering: optimizeLegibility;
  -webkit-font-feature-settings: "kern" 1;
     -moz-font-feature-settings: "kern" 1;
          font-feature-settings: "kern" 1; }

/* use Charis SIL - Italic in .woff format */
@font-face {
  font-family: CharisSILW;
  font-style: italic;
  src: url("node_modules/qed-ui/styles/fonts/charis/CharisSIL-I.cf73311add21.woff");
  text-rendering: optimizeLegibility;
  -webkit-font-feature-settings: "kern" 1;
     -moz-font-feature-settings: "kern" 1;
          font-feature-settings: "kern" 1; }

@font-face {
  font-family: CharisSILW;
  font-weight: bold;
  src: url("node_modules/qed-ui/styles/fonts/charis/CharisSIL-B.f76cb67b888d.woff");
  text-rendering: optimizeLegibility;
  -webkit-font-feature-settings: "kern" 1;
     -moz-font-feature-settings: "kern" 1;
          font-feature-settings: "kern" 1; }

@font-face {
  font-family: CharisSILW;
  font-weight: bold;
  font-style: italic;
  src: url("node_modules/qed-ui/styles/fonts/charis/CharisSIL-BI.9bdb5b2b7b29.woff");
  text-rendering: optimizeLegibility;
  -webkit-font-feature-settings: "kern" 1;
     -moz-font-feature-settings: "kern" 1;
          font-feature-settings: "kern" 1; }

body, input, .input-group__addon, button, select, option, textarea {
  font-family: LatoWeb, sans-serif;
  color: #3a3a3a; }

body {
  font-size: 17px;
  line-height: 1.4; }

input, .input-group__addon, button, select, option, textarea {
  font-size: 100%; }

input, .input-group__addon {
  line-height: normal; }

h1, h2, h3 {
  font-family: CharisSILW, serif;
  margin-top: 1.5em;
  margin-bottom: 0.5em;
  font-weight: bold; }

h1 {
  font-size: 1.2em; }

h2 {
  font-size: 1.1em; }

h3 {
  font-size: 1em; }

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

ul, ol {
  list-style-position: outside;
  padding-left: 0; }

.btn {
  border: 1px solid #3a3a3a;
  background-color: white;
  padding: 7px 14px;
  color: #3a3a3a;
  text-align: center; }
  .btn:hover {
    cursor: default;
    color: #3a3a3a;
    text-decoration: none;
    background-color: #eeeeee; }
  .btn:active {
    color: #3a3a3a;
    text-decoration: none;
    background-color: #cccccc; }
  .btn--primary {
    border-color: #2097AC;
    background-color: #25B2CC;
    color: white; }
    .btn--primary:hover {
      color: white;
      background-color: #23A6BE; }
    .btn--primary:active {
      color: white;
      background-color: #2097AC; }

input, .input-group__addon, textarea, .select {
  border: 1px solid #3a3a3a;
  padding: 6px 9px; }

.input--error, .standalone-form__input--error input, .standalone-form__input--error .input-group__addon {
  border-color: #F82849; }

.select:focus {
  border-color: #cccccc; }

.input-group {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
  -webkit-flex: auto;
      -ms-flex: auto;
          flex: auto; }
  .input-group__field {
    -webkit-box-flex: 1;
    -webkit-flex: 1 0 auto;
        -ms-flex: 1 0 auto;
            flex: 1 0 auto; }
  .input-group__addon {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    border-left: 0;
    background: #eeeeee; }
  .input-group__btn {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto; }
    .input-group__btn .btn {
      border-left: 0; }
  .input-group--error .input-group__field {
    border-color: #F82849; }
  .input-group--error .input-group__addon {
    color: #F82849;
    border-color: #F82849;
    background-color: #fed4db; }

.navbar {
  background-color: #666666;
  color: white; }
  .navbar__item, .navbar__logo, .navbar__btn {
    padding: 0 8px;
    margin: 0;
    display: inline-block;
    line-height: 48px;
    height: 48px;
    color: white;
    text-decoration: none;
    border-radius: 3px; }
  .navbar__logo {
    float: left;
    padding-right: 0; }
  .navbar__btn {
    background: inherit;
    border: inherit;
    outline: none;
    cursor: pointer;
    -webkit-user-select: text;
       -moz-user-select: text;
        -ms-user-select: text;
            user-select: text;
    font-size: inherit;
    font-family: inherit; }
    .navbar__btn:hover {
      background-color: rgba(255, 255, 255, 0.2);
      text-decoration: none;
      color: white; }
    .navbar__btn:active {
      background-color: rgba(255, 255, 255, 0.1);
      text-decoration: none;
      color: white; }
    .navbar__btn input[type="submit"], .navbar__btn [type="submit"].input-group__addon {
      background: none;
      border: 0;
      color: inherit;
      font: inherit;
      padding: 0;
      margin: 0;
      cursor: pointer;
      height: 48px; }
      .navbar__btn input[type="submit"]:hover, .navbar__btn [type="submit"].input-group__addon:hover {
        background: none; }

html {
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box; }

*, *:before, *:after {
  -webkit-box-sizing: inherit;
     -moz-box-sizing: inherit;
          box-sizing: inherit; }

body {
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
  margin: 0;
  font-family: "Lato", sans-serif;
  background-color: #ffffff;
  min-height: 100%;
  padding-bottom: -webkit-calc( 48px + 1rem);
  padding-bottom: calc( 48px + 1rem);
  position: relative;
  color: #3a3a3a; }

a {
  color: #25B2CC;
  text-decoration: none; }
  a:hover {
    color: #41C5DC;
    text-decoration: underline; }
  a:active {
    color: #23A6BE;
    text-decoration: underline; }

.container {
  max-width: 960px;
  margin: 0 auto; }

.container-compact {
  max-width: 450px;
  margin: 0 auto; }

.heading {
  text-align: center; }

.outer-box {
  padding: 16px; }

.outer_border {
  margin-left: -8px;
  margin-right: -8px;
  padding-left: 8px;
  padding-right: 8px; }

.main {
  padding-left: 8px;
  padding-right: 8px; }

html {
  height: 100%; }

.footer {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  border-top: 1px solid #cccccc;
  font-size: 0.9em;
  padding-left: 3em;
  padding-right: 3em; }
  .footer__element {
    padding: 8px;
    line-height: 1rem;
    margin: 0;
    display: inline-block; }

.pull-right {
  float: right; }

.clear {
  clear: both; }

.separator {
  text-align: center;
  height: 39px;
  position: relative;
  background: none; }
  .separator__text {
    padding: 8px;
    margin: 0;
    background-color: #fff;
    display: inline-block; }
  .separator__line {
    margin: -19px auto 10px;
    width: 100%; }

.standalone-box {
  margin: 2em auto 0 auto;
  max-width: 300px; }
  .standalone-box__separator {
    margin-top: 10px; }

.header {
  text-align: center; }
  .header__logo {
    width: 100px; }
  .header__text {
    margin-top: 1em; }

.social {
  margin-top: 15px; }

.social-provider {
  display: block;
  width: 100%;
  margin-bottom: 10px; }
  .social-provider__logo {
    float: left;
    width: 21px;
    margin-top: 1px; }

.standalone-form__input {
  margin-top: 10px; }
  .standalone-form__input input, .standalone-form__input .input-group__addon {
    width: 100%; }

.standalone-form__errors {
  list-style: none;
  padding-left: 0;
  color: #F82849;
  margin: 0; }

.standalone-form__forgot {
  margin-top: 2px;
  font-size: 0.8em;
  text-align: right; }

.standalone-form__submit {
  width: 100%;
  margin-top: 13px; }

.standalone-form__help {
  margin-top: 15px;
  text-align: center; }

.info {
  text-align: center; }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIl9jb21tb24uc2NzcyIsIi4uLy4uLy4uLy4uL2Fzc2V0cy9ub2RlX21vZHVsZXMvcWVkLXVpL3N0eWxlcy90b29sa2l0LnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvbm9ybWFsaXplLmNzcy9ub3JtYWxpemUuY3NzIiwic3RhbmRhbG9uZS5jc3MiLCIuLi8uLi8uLi8uLi9hc3NldHMvbm9kZV9tb2R1bGVzL3FlZC11aS9zdHlsZXMvcGFydGlhbHMvX2JveC1zaXppbmcuc2NzcyIsIi4uLy4uLy4uLy4uL2Fzc2V0cy9ub2RlX21vZHVsZXMvcWVkLXVpL3N0eWxlcy9wYXJ0aWFscy9mb250cy9fbGF0by5zY3NzIiwiLi4vLi4vLi4vLi4vYXNzZXRzL25vZGVfbW9kdWxlcy9xZWQtdWkvc3R5bGVzL3BhcnRpYWxzL2ZvbnRzL19jaGFyaXMuc2NzcyIsIi4uLy4uLy4uLy4uL2Fzc2V0cy9ub2RlX21vZHVsZXMvcWVkLXVpL3N0eWxlcy9wYXJ0aWFscy9fdHlwb2dyYXBoeS5zY3NzIiwiLi4vLi4vLi4vLi4vYXNzZXRzL25vZGVfbW9kdWxlcy9xZWQtdWkvc3R5bGVzL3BhcnRpYWxzL19jb2xvcnMuc2NzcyIsIi4uLy4uLy4uLy4uL2Fzc2V0cy9ub2RlX21vZHVsZXMvcWVkLXVpL3N0eWxlcy9wYXJ0aWFscy9fYnV0dG9ucy5zY3NzIiwiLi4vLi4vLi4vLi4vYXNzZXRzL25vZGVfbW9kdWxlcy9xZWQtdWkvc3R5bGVzL3BhcnRpYWxzL19mb3Jtcy5zY3NzIiwiLi4vLi4vLi4vLi4vYXNzZXRzL25vZGVfbW9kdWxlcy9xZWQtdWkvc3R5bGVzL3BhcnRpYWxzL19pbnB1dC1ncm91cHMuc2NzcyIsIl9uYXZiYXIuc2NzcyIsIl9zZXBhcmF0b3Iuc2NzcyIsInN0YW5kYWxvbmUuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7c0JBRXNCO0FBRXRCLDREQUFZO0FDSlo7O0dBRUc7QUNGSCw0RUFBNEU7QUFFNUU7Z0ZBQ2dGO0FBRWhGOzs7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QUNILEVBQUM7O0FDYk47RUFDSSx3QkFBd0I7RUFDeEIsaUJBQWlCLEVBS3BCO0VBUEQ7SUFLUSxpQkFBaUIsRUFDcEI7O0FBR0w7RUFDSSxtQkFBbUIsRUFTdEI7RUFWRDtJQUlRLGFBQWEsRUFDaEI7RUFMTDtJQVFRLGdCQUFnQixFQUNuQjs7QUFHTDtFQUNJLGlCQUFpQixFQUNwQjs7QUFFRDtFQUNJLGVBQWU7RUFDZixZQUFZO0VBRVosb0JBQW9CLEVBT3ZCO0VBWEQ7SUFPUSxZQUFZO0lBQ1osWUFBWTtJQUNaLGdCQUFnQixFQUNuQjs7QUFHTDtFQUVRLGlCQUFpQixFQVdwQjtFQWJMO0lBS1ksWUFBWSxFQUNmOztBQU5UO0VBZ0JRLGlCQUFpQjtFQUNqQixnQkFBZ0I7RUFDaEIsZU4xRE87RU0yRFAsVUFBVSxFQUNiOztBQXBCTDtFQXVCUSxnQkFBZ0I7RUFDaEIsaUJBQWlCO0VBQ2pCLGtCQUFrQixFQUNyQjs7QUExQkw7RUE2QlEsWUFBWTtFQUNaLGlCQUFpQixFQUNwQjs7QUEvQkw7RUFrQ1EsaUJBQWlCO0VBQ2pCLG1CQUFtQixFQUN0Qjs7QUFHTDtFQUNJLG1CQUFtQixFQUN0QiIsImZpbGUiOiJzdGFuZGFsb25lLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi8qIFNjcmlwdHMgY29tbW9uIHRvIENBUyBhbmQgU1BFRUQgSHViLiBUaGUgY29waWVzIGluIGJvdGggcmVwb3NcbnNob3VsZCBhbHdheXMgYmUga2VwdCBpbiBzeW5jIGFuZCBpZGVhbGx5IHRoaXMgc2hvdWxkIGJlIGV4dHJhY3RlZCB0byBhIG5wbVxucGFja2FnZSBpbiB0aGUgZW5kLiAqL1xuXG5AaW1wb3J0IHVybChcImh0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzP2ZhbWlseT1MYXRvXCIpO1xuXG5AaW1wb3J0IFwiaW5jbHVkZS1tZWRpYS9kaXN0L2luY2x1ZGUtbWVkaWFcIjtcblxuQGltcG9ydCBcInFlZC11aS9zdHlsZXMvdG9vbGtpdFwiO1xuXG4kYm9yZGVyLWxlZnQtdG9wOiBzb2xpZCAxcHggcmdiKDE5MCwgMTkwLCAxOTApO1xuJGJvcmRlci1yaWdodC1ib3R0b206IHNvbGlkIDFweCBncmF5O1xuXG4kbGluay1ub3JtYWw6ICRwcmltYXJ5O1xuJGxpbmstaG92ZXI6ICRwcmltYXJ5LWxpZ2h0O1xuJGxpbmstYWN0aXZlOiAkcHJpbWFyeS1kYXJrO1xuXG4kc2l0ZS1iYWNrZ3JvdW5kOiAkYmc7XG5cbiRzcGFjaW5nLXVuaXQ6IDhweDtcbiRvdXRlci1ib3gtcGFkZGluZzogMTZweDtcblxuJGxvZ28tc2l6ZTogNDhweDtcblxuLy8gdGhpcyBoYXMgdG8gYmUgZ2xvYmFsIGJlY2F1c2UgYm9keSBlbGVtZW50IG5lZWRzIHRvIGtub3cgaGVpZ2h0IG9mIHRoZVxuLy8gZm9vdGVyIGJlY2F1c2UgaXQgbmVlZHMgdG8gc2V0IHBhZGRpbmctYm90dG9tIGZvciBmb290ZXIgdG8gbm90IG92ZXJsYXBcbi8vIG90aGVyIGVsZW1lbnRzOyBmb3IgZGV0YWlscyBzZWU6IGh0dHBzOi8vY29kZXBlbi5pby9jYnJhY2NvL3Blbi96ZWtneFxuJGZvb3Rlci1saW5lLWhlaWdodDogMXJlbTtcblxuQGltcG9ydCBcIm5hdmJhclwiO1xuXG5odG1sIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4qLCAqOmJlZm9yZSwgKjphZnRlciB7XG4gICAgYm94LXNpemluZzogaW5oZXJpdDtcbn1cblxuYm9keSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1mYW1pbHk6IFwiTGF0b1wiLCBzYW5zLXNlcmlmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2l0ZS1iYWNrZ3JvdW5kO1xuICBtaW4taGVpZ2h0OiAxMDAlO1xuICBwYWRkaW5nLWJvdHRvbTogY2FsYyhcbiAgICAjezIgKiAkc3BhY2luZy11bml0ICsgMiAqICRvdXRlci1ib3gtcGFkZGluZ30gKyAjeyRmb290ZXItbGluZS1oZWlnaHR9KTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBjb2xvcjogJHRleHQ7XG59XG5cbmEge1xuICBjb2xvcjogJGxpbmstbm9ybWFsO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6ICRsaW5rLWhvdmVyO1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB9XG5cbiAgJjphY3RpdmUge1xuICAgIGNvbG9yOiAkbGluay1hY3RpdmU7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIH1cbn1cblxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7fVxuXG4uY29udGFpbmVyIHtcbiAgbWF4LXdpZHRoOiA5NjBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG5cbi5jb250YWluZXItY29tcGFjdCB7XG4gIG1heC13aWR0aDogNDUwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG4uaGVhZGluZyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLm91dGVyLWJveCB7XG4gIHBhZGRpbmc6ICRvdXRlci1ib3gtcGFkZGluZztcbn1cblxuLm91dGVyX2JvcmRlciB7XG4gIG1hcmdpbi1sZWZ0OiAtJHNwYWNpbmctdW5pdDtcbiAgbWFyZ2luLXJpZ2h0OiAtJHNwYWNpbmctdW5pdDtcbiAgcGFkZGluZy1sZWZ0OiAkc3BhY2luZy11bml0O1xuICBwYWRkaW5nLXJpZ2h0OiAkc3BhY2luZy11bml0O1xufVxuXG4ubWFpbiB7XG4gIHBhZGRpbmctbGVmdDogJHNwYWNpbmctdW5pdDtcbiAgcGFkZGluZy1yaWdodDogJHNwYWNpbmctdW5pdDtcbn1cblxuaHRtbCB7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLmZvb3RlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRiZy1kYXJrZXI7XG4gIGZvbnQtc2l6ZTogMC45ZW07XG4gIHBhZGRpbmctbGVmdDogM2VtO1xuICBwYWRkaW5nLXJpZ2h0OiAzZW07XG5cbiAgJl9fZWxlbWVudCB7XG4gICAgcGFkZGluZzogJHNwYWNpbmctdW5pdDtcbiAgICBsaW5lLWhlaWdodDogJGZvb3Rlci1saW5lLWhlaWdodDtcbiAgICBtYXJnaW46IDA7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG59XG5cbi5wdWxsLXJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4uY2xlYXIge1xuICBjbGVhcjogYm90aDtcbn1cbiIsIi8qKlxuICogVG9vbGtpdCBzdHlsZXNcbiAqL1xuXG5AaW1wb3J0ICdub3JtYWxpemUuY3NzL25vcm1hbGl6ZSc7XG5cbkBpbXBvcnQgJ3BhcnRpYWxzL2JveC1zaXppbmcnO1xuXG5AaW1wb3J0ICdwYXJ0aWFscy9jb2xvcnMnO1xuQGltcG9ydCAncGFydGlhbHMvdHlwb2dyYXBoeSc7XG5AaW1wb3J0ICdwYXJ0aWFscy9idXR0b25zJztcbkBpbXBvcnQgJ3BhcnRpYWxzL2Zvcm1zJztcbkBpbXBvcnQgJ3BhcnRpYWxzL2lucHV0LWdyb3Vwcyc7XG4iLCIvKiEgbm9ybWFsaXplLmNzcyB2Ni4wLjAgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXG5cbi8qIERvY3VtZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbiAqIDIuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW5cbiAqICAgIElFIG9uIFdpbmRvd3MgUGhvbmUgYW5kIGluIGlPUy5cbiAqL1xuXG5odG1sIHtcbiAgbGluZS1oZWlnaHQ6IDEuMTU7IC8qIDEgKi9cbiAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDIgKi9cbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAyICovXG59XG5cbi8qIFNlY3Rpb25zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICovXG5cbmFydGljbGUsXG5hc2lkZSxcbmZvb3RlcixcbmhlYWRlcixcbm5hdixcbnNlY3Rpb24ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBmb250IHNpemUgYW5kIG1hcmdpbiBvbiBgaDFgIGVsZW1lbnRzIHdpdGhpbiBgc2VjdGlvbmAgYW5kXG4gKiBgYXJ0aWNsZWAgY29udGV4dHMgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgU2FmYXJpLlxuICovXG5cbmgxIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIG1hcmdpbjogMC42N2VtIDA7XG59XG5cbi8qIEdyb3VwaW5nIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRS5cbiAqL1xuXG5maWdjYXB0aW9uLFxuZmlndXJlLFxubWFpbiB7IC8qIDEgKi9cbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IG1hcmdpbiBpbiBJRSA4LlxuICovXG5cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMWVtIDQwcHg7XG59XG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAqIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuICovXG5cbmhyIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7IC8qIDEgKi9cbiAgaGVpZ2h0OiAwOyAvKiAxICovXG4gIG92ZXJmbG93OiB2aXNpYmxlOyAvKiAyICovXG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5wcmUge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cbiAgZm9udC1zaXplOiAxZW07IC8qIDIgKi9cbn1cblxuLyogVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogMS4gUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuICogMi4gUmVtb3ZlIGdhcHMgaW4gbGlua3MgdW5kZXJsaW5lIGluIGlPUyA4KyBhbmQgU2FmYXJpIDgrLlxuICovXG5cbmEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgLyogMSAqL1xuICAtd2Via2l0LXRleHQtZGVjb3JhdGlvbi1za2lwOiBvYmplY3RzOyAvKiAyICovXG59XG5cbi8qKlxuICogMS4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIENocm9tZSA1Ny0gYW5kIEZpcmVmb3ggMzktLlxuICogMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cbiAqL1xuXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7IC8qIDEgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IC8qIDIgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyAvKiAyICovXG59XG5cbi8qKlxuICogUHJldmVudCB0aGUgZHVwbGljYXRlIGFwcGxpY2F0aW9uIG9mIGBib2xkZXJgIGJ5IHRoZSBuZXh0IHJ1bGUgaW4gU2FmYXJpIDYuXG4gKi9cblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG4gKi9cblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5jb2RlLFxua2JkLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTsgLyogMiAqL1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHN0eWxlIGluIEFuZHJvaWQgNC4zLS5cbiAqL1xuXG5kZm4ge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGJhY2tncm91bmQgYW5kIGNvbG9yIGluIElFIDktLlxuICovXG5cbm1hcmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmYwO1xuICBjb2xvcjogIzAwMDtcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlO1xufVxuXG4vKipcbiAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuICogYWxsIGJyb3dzZXJzLlxuICovXG5cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1YiB7XG4gIGJvdHRvbTogLTAuMjVlbTtcbn1cblxuc3VwIHtcbiAgdG9wOiAtMC41ZW07XG59XG5cbi8qIEVtYmVkZGVkIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gKi9cblxuYXVkaW8sXG52aWRlbyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBpT1MgNC03LlxuICovXG5cbmF1ZGlvOm5vdChbY29udHJvbHNdKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGhlaWdodDogMDtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLS5cbiAqL1xuXG5pbWcge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG59XG5cbi8qKlxuICogSGlkZSB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gKi9cblxuc3ZnOm5vdCg6cm9vdCkge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4vKiBGb3Jtc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXG4gKi9cblxuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgbWFyZ2luOiAwO1xufVxuXG4vKipcbiAqIFNob3cgdGhlIG92ZXJmbG93IGluIElFLlxuICogMS4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZS5cbiAqL1xuXG5idXR0b24sXG5pbnB1dCB7IC8qIDEgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBFZGdlLCBGaXJlZm94LCBhbmQgSUUuXG4gKiAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guXG4gKi9cblxuYnV0dG9uLFxuc2VsZWN0IHsgLyogMSAqL1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuLyoqXG4gKiAxLiBQcmV2ZW50IGEgV2ViS2l0IGJ1ZyB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2AgYW5kIGB2aWRlb2BcbiAqICAgIGNvbnRyb2xzIGluIEFuZHJvaWQgNC5cbiAqIDIuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKi9cblxuYnV0dG9uLFxuaHRtbCBbdHlwZT1cImJ1dHRvblwiXSwgLyogMSAqL1xuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBpbiBGaXJlZm94LlxuICovXG5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xufVxuXG4vKipcbiAqIFJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cbiAqL1xuXG5idXR0b246LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cImJ1dHRvblwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwicmVzZXRcIl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cInN1Ym1pdFwiXTotbW96LWZvY3VzcmluZyB7XG4gIG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dDtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuICogMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxuICogMy4gUmVtb3ZlIHRoZSBwYWRkaW5nIHNvIGRldmVsb3BlcnMgYXJlIG5vdCBjYXVnaHQgb3V0IHdoZW4gdGhleSB6ZXJvIG91dFxuICogICAgYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxubGVnZW5kIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICBjb2xvcjogaW5oZXJpdDsgLyogMiAqL1xuICBkaXNwbGF5OiB0YWJsZTsgLyogMSAqL1xuICBtYXgtd2lkdGg6IDEwMCU7IC8qIDEgKi9cbiAgcGFkZGluZzogMDsgLyogMyAqL1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsOyAvKiAxICovXG59XG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gKiAyLiBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuICovXG5cbnByb2dyZXNzIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAvKiAxICovXG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUuXG4gKi9cblxudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bztcbn1cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC0uXG4gKiAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAtLlxuICovXG5cblt0eXBlPVwiY2hlY2tib3hcIl0sXG5bdHlwZT1cInJhZGlvXCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICBwYWRkaW5nOiAwOyAvKiAyICovXG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gQ2hyb21lLlxuICovXG5cblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgb2RkIGFwcGVhcmFuY2UgaW4gQ2hyb21lIGFuZCBTYWZhcmkuXG4gKiAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cbiAqL1xuXG5bdHlwZT1cInNlYXJjaFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvKiAxICovXG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4OyAvKiAyICovXG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGFuZCBjYW5jZWwgYnV0dG9ucyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cbiAqL1xuXG5bdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbixcblt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKiAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG4gKi9cblxuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvKiAxICovXG4gIGZvbnQ6IGluaGVyaXQ7IC8qIDIgKi9cbn1cblxuLyogSW50ZXJhY3RpdmVcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIEVkZ2UsIElFLCBhbmQgRmlyZWZveC5cbiAqL1xuXG5kZXRhaWxzLCAvKiAxICovXG5tZW51IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTtcbn1cblxuLyogU2NyaXB0aW5nXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICovXG5cbmNhbnZhcyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRS5cbiAqL1xuXG50ZW1wbGF0ZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qIEhpZGRlblxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMC0uXG4gKi9cblxuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lO1xufVxuIiwiLyogU2NyaXB0cyBjb21tb24gdG8gQ0FTIGFuZCBTUEVFRCBIdWIuIFRoZSBjb3BpZXMgaW4gYm90aCByZXBvc1xuc2hvdWxkIGFsd2F5cyBiZSBrZXB0IGluIHN5bmMgYW5kIGlkZWFsbHkgdGhpcyBzaG91bGQgYmUgZXh0cmFjdGVkIHRvIGEgbnBtXG5wYWNrYWdlIGluIHRoZSBlbmQuICovXG5AaW1wb3J0IHVybChcImh0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzP2ZhbWlseT1MYXRvXCIpO1xuLyoqXG4gKiBUb29sa2l0IHN0eWxlc1xuICovXG4vKiEgbm9ybWFsaXplLmNzcyB2Ni4wLjAgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXG4vKiBEb2N1bWVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpblxuICogICAgSUUgb24gV2luZG93cyBQaG9uZSBhbmQgaW4gaU9TLlxuICovXG5odG1sIHtcbiAgbGluZS1oZWlnaHQ6IDEuMTU7XG4gIC8qIDEgKi9cbiAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC8qIDIgKi9cbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAvKiAyICovIH1cblxuLyogU2VjdGlvbnNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICovXG5hcnRpY2xlLFxuYXNpZGUsXG5mb290ZXIsXG5oZWFkZXIsXG5uYXYsXG5zZWN0aW9uIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBmb250IHNpemUgYW5kIG1hcmdpbiBvbiBgaDFgIGVsZW1lbnRzIHdpdGhpbiBgc2VjdGlvbmAgYW5kXG4gKiBgYXJ0aWNsZWAgY29udGV4dHMgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgU2FmYXJpLlxuICovXG5oMSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBtYXJnaW46IDAuNjdlbSAwOyB9XG5cbi8qIEdyb3VwaW5nIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUuXG4gKi9cbmZpZ2NhcHRpb24sXG5maWd1cmUsXG5tYWluIHtcbiAgLyogMSAqL1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBtYXJnaW4gaW4gSUUgOC5cbiAqL1xuZmlndXJlIHtcbiAgbWFyZ2luOiAxZW0gNDBweDsgfVxuXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXG4gKiAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cbiAqL1xuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgLyogMSAqL1xuICBoZWlnaHQ6IDA7XG4gIC8qIDEgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbnByZSB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTtcbiAgLyogMiAqLyB9XG5cbi8qIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiAxLiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBvbiBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4gKiAyLiBSZW1vdmUgZ2FwcyBpbiBsaW5rcyB1bmRlcmxpbmUgaW4gaU9TIDgrIGFuZCBTYWZhcmkgOCsuXG4gKi9cbmEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLyogMSAqL1xuICAtd2Via2l0LXRleHQtZGVjb3JhdGlvbi1za2lwOiBvYmplY3RzO1xuICAvKiAyICovIH1cblxuLyoqXG4gKiAxLiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gQ2hyb21lIDU3LSBhbmQgRmlyZWZveCAzOS0uXG4gKiAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxuICovXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIC8qIDEgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIC8qIDIgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkO1xuICAvKiAyICovIH1cblxuLyoqXG4gKiBQcmV2ZW50IHRoZSBkdXBsaWNhdGUgYXBwbGljYXRpb24gb2YgYGJvbGRlcmAgYnkgdGhlIG5leHQgcnVsZSBpbiBTYWZhcmkgNi5cbiAqL1xuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0OyB9XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaS5cbiAqL1xuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkZXI7IH1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5jb2RlLFxua2JkLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc3R5bGUgaW4gQW5kcm9pZCA0LjMtLlxuICovXG5kZm4ge1xuICBmb250LXN0eWxlOiBpdGFsaWM7IH1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgYmFja2dyb3VuZCBhbmQgY29sb3IgaW4gSUUgOS0uXG4gKi9cbm1hcmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmYwO1xuICBjb2xvcjogIzAwMDsgfVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlOyB9XG5cbi8qKlxuICogUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4gKiBhbGwgYnJvd3NlcnMuXG4gKi9cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IH1cblxuc3ViIHtcbiAgYm90dG9tOiAtMC4yNWVtOyB9XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtOyB9XG5cbi8qIEVtYmVkZGVkIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICovXG5hdWRpbyxcbnZpZGVvIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gaU9TIDQtNy5cbiAqL1xuYXVkaW86bm90KFtjb250cm9sc10pIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgaGVpZ2h0OiAwOyB9XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC0uXG4gKi9cbmltZyB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTsgfVxuXG4vKipcbiAqIEhpZGUgdGhlIG92ZXJmbG93IGluIElFLlxuICovXG5zdmc6bm90KDpyb290KSB7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLyogRm9ybXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaS5cbiAqL1xuYnV0dG9uLFxuaW5wdXQsXG4uaW5wdXQtZ3JvdXBfX2FkZG9uLFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIG1hcmdpbjogMDsgfVxuXG4vKipcbiAqIFNob3cgdGhlIG92ZXJmbG93IGluIElFLlxuICogMS4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZS5cbiAqL1xuYnV0dG9uLFxuaW5wdXQsXG4uaW5wdXQtZ3JvdXBfX2FkZG9uIHtcbiAgLyogMSAqL1xuICBvdmVyZmxvdzogdmlzaWJsZTsgfVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxuICogMS4gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94LlxuICovXG5idXR0b24sXG5zZWxlY3Qge1xuICAvKiAxICovXG4gIHRleHQtdHJhbnNmb3JtOiBub25lOyB9XG5cbi8qKlxuICogMS4gUHJldmVudCBhIFdlYktpdCBidWcgd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gIGFuZCBgdmlkZW9gXG4gKiAgICBjb250cm9scyBpbiBBbmRyb2lkIDQuXG4gKiAyLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICovXG5idXR0b24sXG5odG1sIFt0eXBlPVwiYnV0dG9uXCJdLFxuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXG4gKi9cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwOyB9XG5cbi8qKlxuICogUmVzdG9yZSB0aGUgZm9jdXMgc3R5bGVzIHVuc2V0IGJ5IHRoZSBwcmV2aW91cyBydWxlLlxuICovXG5idXR0b246LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cImJ1dHRvblwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwicmVzZXRcIl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cInN1Ym1pdFwiXTotbW96LWZvY3VzcmluZyB7XG4gIG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dDsgfVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4gKiAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4gKiAzLiBSZW1vdmUgdGhlIHBhZGRpbmcgc28gZGV2ZWxvcGVycyBhcmUgbm90IGNhdWdodCBvdXQgd2hlbiB0aGV5IHplcm8gb3V0XG4gKiAgICBgZmllbGRzZXRgIGVsZW1lbnRzIGluIGFsbCBicm93c2Vycy5cbiAqL1xubGVnZW5kIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLyogMSAqL1xuICBjb2xvcjogaW5oZXJpdDtcbiAgLyogMiAqL1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgLyogMSAqL1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIC8qIDEgKi9cbiAgcGFkZGluZzogMDtcbiAgLyogMyAqL1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAvKiAxICovIH1cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAqIDIuIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gKi9cbnByb2dyZXNzIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAvKiAxICovXG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRS5cbiAqL1xudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bzsgfVxuXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLS5cbiAqIDIuIFJlbW92ZSB0aGUgcGFkZGluZyBpbiBJRSAxMC0uXG4gKi9cblt0eXBlPVwiY2hlY2tib3hcIl0sXG5bdHlwZT1cInJhZGlvXCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLyogMSAqL1xuICBwYWRkaW5nOiAwO1xuICAvKiAyICovIH1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG4gKi9cblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87IH1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBvZGQgYXBwZWFyYW5jZSBpbiBDaHJvbWUgYW5kIFNhZmFyaS5cbiAqIDIuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuICovXG5bdHlwZT1cInNlYXJjaFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xuICAvKiAxICovXG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4O1xuICAvKiAyICovIH1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgYW5kIGNhbmNlbCBidXR0b25zIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuICovXG5bdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbixcblt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyB9XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAqIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cbiAqL1xuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xuICAvKiAxICovXG4gIGZvbnQ6IGluaGVyaXQ7XG4gIC8qIDIgKi8gfVxuXG4vKiBJbnRlcmFjdGl2ZVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIEVkZ2UsIElFLCBhbmQgRmlyZWZveC5cbiAqL1xuZGV0YWlscyxcbm1lbnUge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4vKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogbGlzdC1pdGVtOyB9XG5cbi8qIFNjcmlwdGluZ1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gKi9cbmNhbnZhcyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFLlxuICovXG50ZW1wbGF0ZSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLyogSGlkZGVuXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMC0uXG4gKi9cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG5odG1sIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxuXG4qLCAqOmJlZm9yZSwgKjphZnRlciB7XG4gIGJveC1zaXppbmc6IGluaGVyaXQ7IH1cblxuLyogV2ViZm9udDogTGF0by1CbGFjayAqL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnTGF0b1dlYkJsYWNrJztcbiAgc3JjOiB1cmwoXCJub2RlX21vZHVsZXMvcWVkLXVpL3N0eWxlcy9mb250cy9sYXRvL0xhdG8tQmxhY2sud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIm5vZGVfbW9kdWxlcy9xZWQtdWkvc3R5bGVzL2ZvbnRzL2xhdG8vTGF0by1CbGFjay53b2ZmXCIpIGZvcm1hdChcIndvZmZcIik7XG4gIC8qIE1vZGVybiBCcm93c2VycyAqL1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7IH1cblxuLyogV2ViZm9udDogTGF0by1CbGFja0l0YWxpYyAqL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnTGF0b1dlYkJsYWNrJztcbiAgc3JjOiB1cmwoXCJub2RlX21vZHVsZXMvcWVkLXVpL3N0eWxlcy9mb250cy9sYXRvL0xhdG8tQmxhY2tJdGFsaWMud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIm5vZGVfbW9kdWxlcy9xZWQtdWkvc3R5bGVzL2ZvbnRzL2xhdG8vTGF0by1CbGFja0l0YWxpYy53b2ZmXCIpIGZvcm1hdChcIndvZmZcIik7XG4gIC8qIE1vZGVybiBCcm93c2VycyAqL1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7IH1cblxuLyogV2ViZm9udDogTGF0by1Cb2xkICovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdMYXRvV2ViQm9sZCc7XG4gIHNyYzogdXJsKFwibm9kZV9tb2R1bGVzL3FlZC11aS9zdHlsZXMvZm9udHMvbGF0by9MYXRvLUJvbGQud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIm5vZGVfbW9kdWxlcy9xZWQtdWkvc3R5bGVzL2ZvbnRzL2xhdG8vTGF0by1Cb2xkLndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcbiAgLyogTW9kZXJuIEJyb3dzZXJzICovXG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTsgfVxuXG4vKiBXZWJmb250OiBMYXRvLUJvbGRJdGFsaWMgKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0xhdG9XZWJCb2xkJztcbiAgc3JjOiB1cmwoXCJub2RlX21vZHVsZXMvcWVkLXVpL3N0eWxlcy9mb250cy9sYXRvL0xhdG8tQm9sZEl0YWxpYy53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwibm9kZV9tb2R1bGVzL3FlZC11aS9zdHlsZXMvZm9udHMvbGF0by9MYXRvLUJvbGRJdGFsaWMud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xuICAvKiBNb2Rlcm4gQnJvd3NlcnMgKi9cbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5OyB9XG5cbi8qIFdlYmZvbnQ6IExhdG8tSGFpcmxpbmUgKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0xhdG9XZWJIYWlybGluZSc7XG4gIHNyYzogdXJsKFwibm9kZV9tb2R1bGVzL3FlZC11aS9zdHlsZXMvZm9udHMvbGF0by9MYXRvLUhhaXJsaW5lLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCJub2RlX21vZHVsZXMvcWVkLXVpL3N0eWxlcy9mb250cy9sYXRvL0xhdG8tSGFpcmxpbmUud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xuICAvKiBNb2Rlcm4gQnJvd3NlcnMgKi9cbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5OyB9XG5cbi8qIFdlYmZvbnQ6IExhdG8tSGFpcmxpbmVJdGFsaWMgKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0xhdG9XZWJIYWlybGluZSc7XG4gIHNyYzogdXJsKFwibm9kZV9tb2R1bGVzL3FlZC11aS9zdHlsZXMvZm9udHMvbGF0by9MYXRvLUhhaXJsaW5lSXRhbGljLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCJub2RlX21vZHVsZXMvcWVkLXVpL3N0eWxlcy9mb250cy9sYXRvL0xhdG8tSGFpcmxpbmVJdGFsaWMud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xuICAvKiBNb2Rlcm4gQnJvd3NlcnMgKi9cbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5OyB9XG5cbi8qIFdlYmZvbnQ6IExhdG8tSGVhdnkgKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0xhdG9XZWJIZWF2eSc7XG4gIHNyYzogdXJsKFwibm9kZV9tb2R1bGVzL3FlZC11aS9zdHlsZXMvZm9udHMvbGF0by9MYXRvLUhlYXZ5LndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCJub2RlX21vZHVsZXMvcWVkLXVpL3N0eWxlcy9mb250cy9sYXRvL0xhdG8tSGVhdnkud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xuICAvKiBNb2Rlcm4gQnJvd3NlcnMgKi9cbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5OyB9XG5cbi8qIFdlYmZvbnQ6IExhdG8tSGVhdnlJdGFsaWMgKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0xhdG9XZWJIZWF2eSc7XG4gIHNyYzogdXJsKFwibm9kZV9tb2R1bGVzL3FlZC11aS9zdHlsZXMvZm9udHMvbGF0by9MYXRvLUhlYXZ5SXRhbGljLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCJub2RlX21vZHVsZXMvcWVkLXVpL3N0eWxlcy9mb250cy9sYXRvL0xhdG8tSGVhdnlJdGFsaWMud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xuICAvKiBNb2Rlcm4gQnJvd3NlcnMgKi9cbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5OyB9XG5cbi8qIFdlYmZvbnQ6IExhdG8tSXRhbGljICovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdMYXRvV2ViJztcbiAgc3JjOiB1cmwoXCJub2RlX21vZHVsZXMvcWVkLXVpL3N0eWxlcy9mb250cy9sYXRvL0xhdG8tSXRhbGljLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCJub2RlX21vZHVsZXMvcWVkLXVpL3N0eWxlcy9mb250cy9sYXRvL0xhdG8tSXRhbGljLndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcbiAgLyogTW9kZXJuIEJyb3dzZXJzICovXG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTsgfVxuXG4vKiBXZWJmb250OiBMYXRvLUxpZ2h0ICovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdMYXRvV2ViTGlnaHQnO1xuICBzcmM6IHVybChcIm5vZGVfbW9kdWxlcy9xZWQtdWkvc3R5bGVzL2ZvbnRzL2xhdG8vTGF0by1MaWdodC53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwibm9kZV9tb2R1bGVzL3FlZC11aS9zdHlsZXMvZm9udHMvbGF0by9MYXRvLUxpZ2h0LndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcbiAgLyogTW9kZXJuIEJyb3dzZXJzICovXG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTsgfVxuXG4vKiBXZWJmb250OiBMYXRvLUxpZ2h0SXRhbGljICovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdMYXRvV2ViTGlnaHQnO1xuICBzcmM6IHVybChcIm5vZGVfbW9kdWxlcy9xZWQtdWkvc3R5bGVzL2ZvbnRzL2xhdG8vTGF0by1MaWdodEl0YWxpYy53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwibm9kZV9tb2R1bGVzL3FlZC11aS9zdHlsZXMvZm9udHMvbGF0by9MYXRvLUxpZ2h0SXRhbGljLndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcbiAgLyogTW9kZXJuIEJyb3dzZXJzICovXG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTsgfVxuXG4vKiBXZWJmb250OiBMYXRvLU1lZGl1bSAqL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnTGF0b1dlYk1lZGl1bSc7XG4gIHNyYzogdXJsKFwibm9kZV9tb2R1bGVzL3FlZC11aS9zdHlsZXMvZm9udHMvbGF0by9MYXRvLU1lZGl1bS53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwibm9kZV9tb2R1bGVzL3FlZC11aS9zdHlsZXMvZm9udHMvbGF0by9MYXRvLU1lZGl1bS53b2ZmXCIpIGZvcm1hdChcIndvZmZcIik7XG4gIC8qIE1vZGVybiBCcm93c2VycyAqL1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7IH1cblxuLyogV2ViZm9udDogTGF0by1NZWRpdW1JdGFsaWMgKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0xhdG9XZWJNZWRpdW0nO1xuICBzcmM6IHVybChcIm5vZGVfbW9kdWxlcy9xZWQtdWkvc3R5bGVzL2ZvbnRzL2xhdG8vTGF0by1NZWRpdW1JdGFsaWMud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIm5vZGVfbW9kdWxlcy9xZWQtdWkvc3R5bGVzL2ZvbnRzL2xhdG8vTGF0by1NZWRpdW1JdGFsaWMud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xuICAvKiBNb2Rlcm4gQnJvd3NlcnMgKi9cbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5OyB9XG5cbi8qIFdlYmZvbnQ6IExhdG8tUmVndWxhciAqL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnTGF0b1dlYic7XG4gIHNyYzogdXJsKFwibm9kZV9tb2R1bGVzL3FlZC11aS9zdHlsZXMvZm9udHMvbGF0by9MYXRvLVJlZ3VsYXIud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIm5vZGVfbW9kdWxlcy9xZWQtdWkvc3R5bGVzL2ZvbnRzL2xhdG8vTGF0by1SZWd1bGFyLndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcbiAgLyogTW9kZXJuIEJyb3dzZXJzICovXG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTsgfVxuXG4vKiBXZWJmb250OiBMYXRvLVNlbWlib2xkICovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdMYXRvV2ViU2VtaWJvbGQnO1xuICBzcmM6IHVybChcIm5vZGVfbW9kdWxlcy9xZWQtdWkvc3R5bGVzL2ZvbnRzL2xhdG8vTGF0by1TZW1pYm9sZC53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwibm9kZV9tb2R1bGVzL3FlZC11aS9zdHlsZXMvZm9udHMvbGF0by9MYXRvLVNlbWlib2xkLndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcbiAgLyogTW9kZXJuIEJyb3dzZXJzICovXG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTsgfVxuXG4vKiBXZWJmb250OiBMYXRvLVNlbWlib2xkSXRhbGljICovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdMYXRvV2ViU2VtaWJvbGQnO1xuICBzcmM6IHVybChcIm5vZGVfbW9kdWxlcy9xZWQtdWkvc3R5bGVzL2ZvbnRzL2xhdG8vTGF0by1TZW1pYm9sZEl0YWxpYy53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwibm9kZV9tb2R1bGVzL3FlZC11aS9zdHlsZXMvZm9udHMvbGF0by9MYXRvLVNlbWlib2xkSXRhbGljLndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcbiAgLyogTW9kZXJuIEJyb3dzZXJzICovXG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTsgfVxuXG4vKiBXZWJmb250OiBMYXRvLVRoaW4gKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0xhdG9XZWJUaGluJztcbiAgc3JjOiB1cmwoXCJub2RlX21vZHVsZXMvcWVkLXVpL3N0eWxlcy9mb250cy9sYXRvL0xhdG8tVGhpbi53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwibm9kZV9tb2R1bGVzL3FlZC11aS9zdHlsZXMvZm9udHMvbGF0by9MYXRvLVRoaW4ud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xuICAvKiBNb2Rlcm4gQnJvd3NlcnMgKi9cbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5OyB9XG5cbi8qIFdlYmZvbnQ6IExhdG8tVGhpbkl0YWxpYyAqL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnTGF0b1dlYlRoaW4nO1xuICBzcmM6IHVybChcIm5vZGVfbW9kdWxlcy9xZWQtdWkvc3R5bGVzL2ZvbnRzL2xhdG8vTGF0by1UaGluSXRhbGljLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCJub2RlX21vZHVsZXMvcWVkLXVpL3N0eWxlcy9mb250cy9sYXRvL0xhdG8tVGhpbkl0YWxpYy53b2ZmXCIpIGZvcm1hdChcIndvZmZcIik7XG4gIC8qIE1vZGVybiBCcm93c2VycyAqL1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7IH1cblxuLypcbkNoYXJpc1NJTC13ZWJmb250LWV4YW1wbGUuY3NzXG5DaGFyaXMgU0lMIHY1LjAwMFxuMTQgT2N0IDIwMTRcblRoaXMgZmlsZSBpcyBwYXJ0IG9mIENoYXJpcyBTSUwgZm9udCBmYW1pbHkgKGh0dHA6Ly9zY3JpcHRzLnNpbC5vcmcvQ2hhcmlzU0lMZm9udClcbmFuZCBpcyBDb3B5cmlnaHQgKGMpIDE5OTQtMjAxNCBTSUwgSW50ZXJuYXRpb25hbCAoaHR0cDovL3d3dy5zaWwub3JnLyksXG53aXRoIFJlc2VydmVkIEZvbnQgTmFtZXMgXCJDaGFyaXNcIiBhbmQgXCJTSUxcIi4gVGhpcyBGb250IFNvZnR3YXJlIGlzIGxpY2Vuc2VkXG51bmRlciB0aGUgU0lMIE9wZW4gRm9udCBMaWNlbnNlLCBWZXJzaW9uIDEuMS4gWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weVxub2YgdGhlIGxpY2Vuc2UgYWxvbmcgd2l0aCB0aGlzIEZvbnQgU29mdHdhcmUuIElmIHRoaXMgaXMgbm90IHRoZSBjYXNlLCBnbyB0b1xuKGh0dHA6Ly9zY3JpcHRzLnNpbC5vcmcvT0ZMKSBmb3IgYWxsIHRoZSBkZXRhaWxzIGluY2x1ZGluZyBhIEZBUS5cbiovXG4vKiB1c2UgQ2hhcmlzIFNJTCAtIFJlZ3VsYXIgaW4gLndvZmYgZm9ybWF0ICovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IENoYXJpc1NJTFc7XG4gIHNyYzogdXJsKG5vZGVfbW9kdWxlcy9xZWQtdWkvc3R5bGVzL2ZvbnRzL2NoYXJpcy9DaGFyaXNTSUwtUi53b2ZmKTtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbiAgZm9udC1mZWF0dXJlLXNldHRpbmdzOiBcImtlcm5cIiAxOyB9XG5cbi8qIHVzZSBDaGFyaXMgU0lMIC0gSXRhbGljIGluIC53b2ZmIGZvcm1hdCAqL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBDaGFyaXNTSUxXO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIHNyYzogdXJsKG5vZGVfbW9kdWxlcy9xZWQtdWkvc3R5bGVzL2ZvbnRzL2NoYXJpcy9DaGFyaXNTSUwtSS53b2ZmKTtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbiAgZm9udC1mZWF0dXJlLXNldHRpbmdzOiBcImtlcm5cIiAxOyB9XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogQ2hhcmlzU0lMVztcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHNyYzogdXJsKG5vZGVfbW9kdWxlcy9xZWQtdWkvc3R5bGVzL2ZvbnRzL2NoYXJpcy9DaGFyaXNTSUwtQi53b2ZmKTtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbiAgZm9udC1mZWF0dXJlLXNldHRpbmdzOiBcImtlcm5cIiAxOyB9XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogQ2hhcmlzU0lMVztcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgc3JjOiB1cmwobm9kZV9tb2R1bGVzL3FlZC11aS9zdHlsZXMvZm9udHMvY2hhcmlzL0NoYXJpc1NJTC1CSS53b2ZmKTtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbiAgZm9udC1mZWF0dXJlLXNldHRpbmdzOiBcImtlcm5cIiAxOyB9XG5cbmJvZHksIGlucHV0LCAuaW5wdXQtZ3JvdXBfX2FkZG9uLCBidXR0b24sIHNlbGVjdCwgb3B0aW9uLCB0ZXh0YXJlYSB7XG4gIGZvbnQtZmFtaWx5OiBMYXRvV2ViLCBzYW5zLXNlcmlmO1xuICBjb2xvcjogIzNhM2EzYTsgfVxuXG5ib2R5IHtcbiAgZm9udC1zaXplOiAxN3B4O1xuICBsaW5lLWhlaWdodDogMS40OyB9XG5cbmlucHV0LCAuaW5wdXQtZ3JvdXBfX2FkZG9uLCBidXR0b24sIHNlbGVjdCwgb3B0aW9uLCB0ZXh0YXJlYSB7XG4gIGZvbnQtc2l6ZTogMTAwJTsgfVxuXG5pbnB1dCwgLmlucHV0LWdyb3VwX19hZGRvbiB7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7IH1cblxuaDEsIGgyLCBoMyB7XG4gIGZvbnQtZmFtaWx5OiBDaGFyaXNTSUxXLCBzZXJpZjtcbiAgbWFyZ2luLXRvcDogMS41ZW07XG4gIG1hcmdpbi1ib3R0b206IDAuNWVtO1xuICBmb250LXdlaWdodDogYm9sZDsgfVxuXG5oMSB7XG4gIGZvbnQtc2l6ZTogMS4yZW07IH1cblxuaDIge1xuICBmb250LXNpemU6IDEuMWVtOyB9XG5cbmgzIHtcbiAgZm9udC1zaXplOiAxZW07IH1cblxucCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDFlbTsgfVxuXG51bCwgb2wge1xuICBsaXN0LXN0eWxlLXBvc2l0aW9uOiBvdXRzaWRlO1xuICBwYWRkaW5nLWxlZnQ6IDA7IH1cblxuLmJ0biB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMzYTNhM2E7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICBwYWRkaW5nOiA3cHggMTRweDtcbiAgY29sb3I6ICMzYTNhM2E7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAuYnRuOmhvdmVyIHtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgY29sb3I6ICMzYTNhM2E7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlZWVlZWU7IH1cbiAgLmJ0bjphY3RpdmUge1xuICAgIGNvbG9yOiAjM2EzYTNhO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2NjY2NjOyB9XG4gIC5idG4tLXByaW1hcnkge1xuICAgIGJvcmRlci1jb2xvcjogIzIwOTdBQztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjVCMkNDO1xuICAgIGNvbG9yOiB3aGl0ZTsgfVxuICAgIC5idG4tLXByaW1hcnk6aG92ZXIge1xuICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzIzQTZCRTsgfVxuICAgIC5idG4tLXByaW1hcnk6YWN0aXZlIHtcbiAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyMDk3QUM7IH1cblxuaW5wdXQsIC5pbnB1dC1ncm91cF9fYWRkb24sIHRleHRhcmVhLCAuc2VsZWN0IHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzNhM2EzYTtcbiAgcGFkZGluZzogNnB4IDlweDsgfVxuXG4uaW5wdXQtLWVycm9yLCAuc3RhbmRhbG9uZS1mb3JtX19pbnB1dC0tZXJyb3IgaW5wdXQsIC5zdGFuZGFsb25lLWZvcm1fX2lucHV0LS1lcnJvciAuaW5wdXQtZ3JvdXBfX2FkZG9uIHtcbiAgYm9yZGVyLWNvbG9yOiAjRjgyODQ5OyB9XG5cbi5zZWxlY3Q6Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICNjY2NjY2M7IH1cblxuLmlucHV0LWdyb3VwIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleDogYXV0bzsgfVxuICAuaW5wdXQtZ3JvdXBfX2ZpZWxkIHtcbiAgICBmbGV4OiAxIDAgYXV0bzsgfVxuICAuaW5wdXQtZ3JvdXBfX2FkZG9uIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICBib3JkZXItbGVmdDogMDtcbiAgICBiYWNrZ3JvdW5kOiAjZWVlZWVlOyB9XG4gIC5pbnB1dC1ncm91cF9fYnRuIHtcbiAgICBmbGV4OiAwIDAgYXV0bzsgfVxuICAgIC5pbnB1dC1ncm91cF9fYnRuIC5idG4ge1xuICAgICAgYm9yZGVyLWxlZnQ6IDA7IH1cbiAgLmlucHV0LWdyb3VwLS1lcnJvciAuaW5wdXQtZ3JvdXBfX2ZpZWxkIHtcbiAgICBib3JkZXItY29sb3I6ICNGODI4NDk7IH1cbiAgLmlucHV0LWdyb3VwLS1lcnJvciAuaW5wdXQtZ3JvdXBfX2FkZG9uIHtcbiAgICBjb2xvcjogI0Y4Mjg0OTtcbiAgICBib3JkZXItY29sb3I6ICNGODI4NDk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZDRkYjsgfVxuXG4ubmF2YmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzY2NjY2NjtcbiAgY29sb3I6IHdoaXRlOyB9XG4gIC5uYXZiYXJfX2l0ZW0sIC5uYXZiYXJfX2xvZ28sIC5uYXZiYXJfX2J0biB7XG4gICAgcGFkZGluZzogMCA4cHg7XG4gICAgbWFyZ2luOiAwO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBsaW5lLWhlaWdodDogNDhweDtcbiAgICBoZWlnaHQ6IDQ4cHg7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7IH1cbiAgLm5hdmJhcl9fbG9nbyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMDsgfVxuICAubmF2YmFyX19idG4ge1xuICAgIGJhY2tncm91bmQ6IGluaGVyaXQ7XG4gICAgYm9yZGVyOiBpbmhlcml0O1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHVzZXItc2VsZWN0OiB0ZXh0O1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDsgfVxuICAgIC5uYXZiYXJfX2J0bjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBjb2xvcjogd2hpdGU7IH1cbiAgICAubmF2YmFyX19idG46YWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIGNvbG9yOiB3aGl0ZTsgfVxuICAgIC5uYXZiYXJfX2J0biBpbnB1dFt0eXBlPVwic3VibWl0XCJdLCAubmF2YmFyX19idG4gW3R5cGU9XCJzdWJtaXRcIl0uaW5wdXQtZ3JvdXBfX2FkZG9uIHtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgIGZvbnQ6IGluaGVyaXQ7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgaGVpZ2h0OiA0OHB4OyB9XG4gICAgICAubmF2YmFyX19idG4gaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpob3ZlciwgLm5hdmJhcl9fYnRuIFt0eXBlPVwic3VibWl0XCJdLmlucHV0LWdyb3VwX19hZGRvbjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7IH1cblxuaHRtbCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH1cblxuKiwgKjpiZWZvcmUsICo6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBpbmhlcml0OyB9XG5cbmJvZHkge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBtYXJnaW46IDA7XG4gIGZvbnQtZmFtaWx5OiBcIkxhdG9cIiwgc2Fucy1zZXJpZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgbWluLWhlaWdodDogMTAwJTtcbiAgcGFkZGluZy1ib3R0b206IGNhbGMoIDQ4cHggKyAxcmVtKTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBjb2xvcjogIzNhM2EzYTsgfVxuXG5hIHtcbiAgY29sb3I6ICMyNUIyQ0M7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICBhOmhvdmVyIHtcbiAgICBjb2xvcjogIzQxQzVEQztcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuICBhOmFjdGl2ZSB7XG4gICAgY29sb3I6ICMyM0E2QkU7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cblxuLmNvbnRhaW5lciB7XG4gIG1heC13aWR0aDogOTYwcHg7XG4gIG1hcmdpbjogMCBhdXRvOyB9XG5cbi5jb250YWluZXItY29tcGFjdCB7XG4gIG1heC13aWR0aDogNDUwcHg7XG4gIG1hcmdpbjogMCBhdXRvOyB9XG5cbi5oZWFkaW5nIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi5vdXRlci1ib3gge1xuICBwYWRkaW5nOiAxNnB4OyB9XG5cbi5vdXRlcl9ib3JkZXIge1xuICBtYXJnaW4tbGVmdDogLThweDtcbiAgbWFyZ2luLXJpZ2h0OiAtOHB4O1xuICBwYWRkaW5nLWxlZnQ6IDhweDtcbiAgcGFkZGluZy1yaWdodDogOHB4OyB9XG5cbi5tYWluIHtcbiAgcGFkZGluZy1sZWZ0OiA4cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDhweDsgfVxuXG5odG1sIHtcbiAgaGVpZ2h0OiAxMDAlOyB9XG5cbi5mb290ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjY2NjY2NjO1xuICBmb250LXNpemU6IDAuOWVtO1xuICBwYWRkaW5nLWxlZnQ6IDNlbTtcbiAgcGFkZGluZy1yaWdodDogM2VtOyB9XG4gIC5mb290ZXJfX2VsZW1lbnQge1xuICAgIHBhZGRpbmc6IDhweDtcbiAgICBsaW5lLWhlaWdodDogMXJlbTtcbiAgICBtYXJnaW46IDA7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbi5wdWxsLXJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0OyB9XG5cbi5jbGVhciB7XG4gIGNsZWFyOiBib3RoOyB9XG5cbi5zZXBhcmF0b3Ige1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGhlaWdodDogMzlweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kOiBub25lOyB9XG4gIC5zZXBhcmF0b3JfX3RleHQge1xuICAgIHBhZGRpbmc6IDhweDtcbiAgICBtYXJnaW46IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgLnNlcGFyYXRvcl9fbGluZSB7XG4gICAgbWFyZ2luOiAtMTlweCBhdXRvIDEwcHg7XG4gICAgd2lkdGg6IDEwMCU7IH1cblxuLnN0YW5kYWxvbmUtYm94IHtcbiAgbWFyZ2luOiAyZW0gYXV0byAwIGF1dG87XG4gIG1heC13aWR0aDogMzAwcHg7IH1cbiAgLnN0YW5kYWxvbmUtYm94X19zZXBhcmF0b3Ige1xuICAgIG1hcmdpbi10b3A6IDEwcHg7IH1cblxuLmhlYWRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAuaGVhZGVyX19sb2dvIHtcbiAgICB3aWR0aDogMTAwcHg7IH1cbiAgLmhlYWRlcl9fdGV4dCB7XG4gICAgbWFyZ2luLXRvcDogMWVtOyB9XG5cbi5zb2NpYWwge1xuICBtYXJnaW4tdG9wOiAxNXB4OyB9XG5cbi5zb2NpYWwtcHJvdmlkZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7IH1cbiAgLnNvY2lhbC1wcm92aWRlcl9fbG9nbyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDIxcHg7XG4gICAgbWFyZ2luLXRvcDogMXB4OyB9XG5cbi5zdGFuZGFsb25lLWZvcm1fX2lucHV0IHtcbiAgbWFyZ2luLXRvcDogMTBweDsgfVxuICAuc3RhbmRhbG9uZS1mb3JtX19pbnB1dCBpbnB1dCwgLnN0YW5kYWxvbmUtZm9ybV9faW5wdXQgLmlucHV0LWdyb3VwX19hZGRvbiB7XG4gICAgd2lkdGg6IDEwMCU7IH1cblxuLnN0YW5kYWxvbmUtZm9ybV9fZXJyb3JzIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBjb2xvcjogI0Y4Mjg0OTtcbiAgbWFyZ2luOiAwOyB9XG5cbi5zdGFuZGFsb25lLWZvcm1fX2ZvcmdvdCB7XG4gIG1hcmdpbi10b3A6IDJweDtcbiAgZm9udC1zaXplOiAwLjhlbTtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cblxuLnN0YW5kYWxvbmUtZm9ybV9fc3VibWl0IHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi10b3A6IDEzcHg7IH1cblxuLnN0YW5kYWxvbmUtZm9ybV9faGVscCB7XG4gIG1hcmdpbi10b3A6IDE1cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4uaW5mbyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuIiwiaHRtbCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuKiwgKjpiZWZvcmUsICo6YWZ0ZXIge1xuICAgIGJveC1zaXppbmc6IGluaGVyaXQ7XG59XG4iLCIvKiBXZWJmb250OiBMYXRvLUJsYWNrICovQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdMYXRvV2ViQmxhY2snO1xuICAgIHNyYzogdXJsKCdub2RlX21vZHVsZXMvcWVkLXVpL3N0eWxlcy9mb250cy9sYXRvL0xhdG8tQmxhY2sud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksIFxuICAgICAgICAgdXJsKCdub2RlX21vZHVsZXMvcWVkLXVpL3N0eWxlcy9mb250cy9sYXRvL0xhdG8tQmxhY2sud29mZicpIGZvcm1hdCgnd29mZicpOyAvKiBNb2Rlcm4gQnJvd3NlcnMgKi9cbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xufVxuXG4vKiBXZWJmb250OiBMYXRvLUJsYWNrSXRhbGljICovQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdMYXRvV2ViQmxhY2snO1xuICAgIHNyYzogdXJsKCdub2RlX21vZHVsZXMvcWVkLXVpL3N0eWxlcy9mb250cy9sYXRvL0xhdG8tQmxhY2tJdGFsaWMud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksIFxuICAgICAgICAgdXJsKCdub2RlX21vZHVsZXMvcWVkLXVpL3N0eWxlcy9mb250cy9sYXRvL0xhdG8tQmxhY2tJdGFsaWMud29mZicpIGZvcm1hdCgnd29mZicpOyAvKiBNb2Rlcm4gQnJvd3NlcnMgKi9cbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xufVxuXG4vKiBXZWJmb250OiBMYXRvLUJvbGQgKi9AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJ0xhdG9XZWJCb2xkJztcbiAgICBzcmM6IHVybCgnbm9kZV9tb2R1bGVzL3FlZC11aS9zdHlsZXMvZm9udHMvbGF0by9MYXRvLUJvbGQud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksIFxuICAgICAgICAgdXJsKCdub2RlX21vZHVsZXMvcWVkLXVpL3N0eWxlcy9mb250cy9sYXRvL0xhdG8tQm9sZC53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7IC8qIE1vZGVybiBCcm93c2VycyAqL1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG59XG5cbi8qIFdlYmZvbnQ6IExhdG8tQm9sZEl0YWxpYyAqL0Bmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnTGF0b1dlYkJvbGQnO1xuICAgIHNyYzogdXJsKCdub2RlX21vZHVsZXMvcWVkLXVpL3N0eWxlcy9mb250cy9sYXRvL0xhdG8tQm9sZEl0YWxpYy53b2ZmMicpIGZvcm1hdCgnd29mZjInKSwgXG4gICAgICAgICB1cmwoJ25vZGVfbW9kdWxlcy9xZWQtdWkvc3R5bGVzL2ZvbnRzL2xhdG8vTGF0by1Cb2xkSXRhbGljLndvZmYnKSBmb3JtYXQoJ3dvZmYnKTsgLyogTW9kZXJuIEJyb3dzZXJzICovXG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbn1cblxuLyogV2ViZm9udDogTGF0by1IYWlybGluZSAqL0Bmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnTGF0b1dlYkhhaXJsaW5lJztcbiAgICBzcmM6IHVybCgnbm9kZV9tb2R1bGVzL3FlZC11aS9zdHlsZXMvZm9udHMvbGF0by9MYXRvLUhhaXJsaW5lLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLCBcbiAgICAgICAgIHVybCgnbm9kZV9tb2R1bGVzL3FlZC11aS9zdHlsZXMvZm9udHMvbGF0by9MYXRvLUhhaXJsaW5lLndvZmYnKSBmb3JtYXQoJ3dvZmYnKTsgLyogTW9kZXJuIEJyb3dzZXJzICovXG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbn1cblxuLyogV2ViZm9udDogTGF0by1IYWlybGluZUl0YWxpYyAqL0Bmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnTGF0b1dlYkhhaXJsaW5lJztcbiAgICBzcmM6IHVybCgnbm9kZV9tb2R1bGVzL3FlZC11aS9zdHlsZXMvZm9udHMvbGF0by9MYXRvLUhhaXJsaW5lSXRhbGljLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLCBcbiAgICAgICAgIHVybCgnbm9kZV9tb2R1bGVzL3FlZC11aS9zdHlsZXMvZm9udHMvbGF0by9MYXRvLUhhaXJsaW5lSXRhbGljLndvZmYnKSBmb3JtYXQoJ3dvZmYnKTsgLyogTW9kZXJuIEJyb3dzZXJzICovXG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbn1cblxuLyogV2ViZm9udDogTGF0by1IZWF2eSAqL0Bmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnTGF0b1dlYkhlYXZ5JztcbiAgICBzcmM6IHVybCgnbm9kZV9tb2R1bGVzL3FlZC11aS9zdHlsZXMvZm9udHMvbGF0by9MYXRvLUhlYXZ5LndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLCBcbiAgICAgICAgIHVybCgnbm9kZV9tb2R1bGVzL3FlZC11aS9zdHlsZXMvZm9udHMvbGF0by9MYXRvLUhlYXZ5LndvZmYnKSBmb3JtYXQoJ3dvZmYnKTsgLyogTW9kZXJuIEJyb3dzZXJzICovXG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbn1cblxuLyogV2ViZm9udDogTGF0by1IZWF2eUl0YWxpYyAqL0Bmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnTGF0b1dlYkhlYXZ5JztcbiAgICBzcmM6IHVybCgnbm9kZV9tb2R1bGVzL3FlZC11aS9zdHlsZXMvZm9udHMvbGF0by9MYXRvLUhlYXZ5SXRhbGljLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLCBcbiAgICAgICAgIHVybCgnbm9kZV9tb2R1bGVzL3FlZC11aS9zdHlsZXMvZm9udHMvbGF0by9MYXRvLUhlYXZ5SXRhbGljLndvZmYnKSBmb3JtYXQoJ3dvZmYnKTsgLyogTW9kZXJuIEJyb3dzZXJzICovXG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbn1cblxuLyogV2ViZm9udDogTGF0by1JdGFsaWMgKi9AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJ0xhdG9XZWInO1xuICAgIHNyYzogdXJsKCdub2RlX21vZHVsZXMvcWVkLXVpL3N0eWxlcy9mb250cy9sYXRvL0xhdG8tSXRhbGljLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLCBcbiAgICAgICAgIHVybCgnbm9kZV9tb2R1bGVzL3FlZC11aS9zdHlsZXMvZm9udHMvbGF0by9MYXRvLUl0YWxpYy53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7IC8qIE1vZGVybiBCcm93c2VycyAqL1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG59XG5cbi8qIFdlYmZvbnQ6IExhdG8tTGlnaHQgKi9AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJ0xhdG9XZWJMaWdodCc7XG4gICAgc3JjOiB1cmwoJ25vZGVfbW9kdWxlcy9xZWQtdWkvc3R5bGVzL2ZvbnRzL2xhdG8vTGF0by1MaWdodC53b2ZmMicpIGZvcm1hdCgnd29mZjInKSwgXG4gICAgICAgICB1cmwoJ25vZGVfbW9kdWxlcy9xZWQtdWkvc3R5bGVzL2ZvbnRzL2xhdG8vTGF0by1MaWdodC53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7IC8qIE1vZGVybiBCcm93c2VycyAqL1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG59XG5cbi8qIFdlYmZvbnQ6IExhdG8tTGlnaHRJdGFsaWMgKi9AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJ0xhdG9XZWJMaWdodCc7XG4gICAgc3JjOiB1cmwoJ25vZGVfbW9kdWxlcy9xZWQtdWkvc3R5bGVzL2ZvbnRzL2xhdG8vTGF0by1MaWdodEl0YWxpYy53b2ZmMicpIGZvcm1hdCgnd29mZjInKSwgXG4gICAgICAgICB1cmwoJ25vZGVfbW9kdWxlcy9xZWQtdWkvc3R5bGVzL2ZvbnRzL2xhdG8vTGF0by1MaWdodEl0YWxpYy53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7IC8qIE1vZGVybiBCcm93c2VycyAqL1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG59XG5cbi8qIFdlYmZvbnQ6IExhdG8tTWVkaXVtICovQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdMYXRvV2ViTWVkaXVtJztcbiAgICBzcmM6IHVybCgnbm9kZV9tb2R1bGVzL3FlZC11aS9zdHlsZXMvZm9udHMvbGF0by9MYXRvLU1lZGl1bS53b2ZmMicpIGZvcm1hdCgnd29mZjInKSwgXG4gICAgICAgICB1cmwoJ25vZGVfbW9kdWxlcy9xZWQtdWkvc3R5bGVzL2ZvbnRzL2xhdG8vTGF0by1NZWRpdW0ud29mZicpIGZvcm1hdCgnd29mZicpOyAvKiBNb2Rlcm4gQnJvd3NlcnMgKi9cbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xufVxuXG4vKiBXZWJmb250OiBMYXRvLU1lZGl1bUl0YWxpYyAqL0Bmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnTGF0b1dlYk1lZGl1bSc7XG4gICAgc3JjOiB1cmwoJ25vZGVfbW9kdWxlcy9xZWQtdWkvc3R5bGVzL2ZvbnRzL2xhdG8vTGF0by1NZWRpdW1JdGFsaWMud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksIFxuICAgICAgICAgdXJsKCdub2RlX21vZHVsZXMvcWVkLXVpL3N0eWxlcy9mb250cy9sYXRvL0xhdG8tTWVkaXVtSXRhbGljLndvZmYnKSBmb3JtYXQoJ3dvZmYnKTsgLyogTW9kZXJuIEJyb3dzZXJzICovXG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbn1cblxuLyogV2ViZm9udDogTGF0by1SZWd1bGFyICovQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdMYXRvV2ViJztcbiAgICBzcmM6IHVybCgnbm9kZV9tb2R1bGVzL3FlZC11aS9zdHlsZXMvZm9udHMvbGF0by9MYXRvLVJlZ3VsYXIud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksIFxuICAgICAgICAgdXJsKCdub2RlX21vZHVsZXMvcWVkLXVpL3N0eWxlcy9mb250cy9sYXRvL0xhdG8tUmVndWxhci53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7IC8qIE1vZGVybiBCcm93c2VycyAqL1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG59XG5cbi8qIFdlYmZvbnQ6IExhdG8tU2VtaWJvbGQgKi9AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJ0xhdG9XZWJTZW1pYm9sZCc7XG4gICAgc3JjOiB1cmwoJ25vZGVfbW9kdWxlcy9xZWQtdWkvc3R5bGVzL2ZvbnRzL2xhdG8vTGF0by1TZW1pYm9sZC53b2ZmMicpIGZvcm1hdCgnd29mZjInKSwgXG4gICAgICAgICB1cmwoJ25vZGVfbW9kdWxlcy9xZWQtdWkvc3R5bGVzL2ZvbnRzL2xhdG8vTGF0by1TZW1pYm9sZC53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7IC8qIE1vZGVybiBCcm93c2VycyAqL1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG59XG5cbi8qIFdlYmZvbnQ6IExhdG8tU2VtaWJvbGRJdGFsaWMgKi9AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJ0xhdG9XZWJTZW1pYm9sZCc7XG4gICAgc3JjOiB1cmwoJ25vZGVfbW9kdWxlcy9xZWQtdWkvc3R5bGVzL2ZvbnRzL2xhdG8vTGF0by1TZW1pYm9sZEl0YWxpYy53b2ZmMicpIGZvcm1hdCgnd29mZjInKSwgXG4gICAgICAgICB1cmwoJ25vZGVfbW9kdWxlcy9xZWQtdWkvc3R5bGVzL2ZvbnRzL2xhdG8vTGF0by1TZW1pYm9sZEl0YWxpYy53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7IC8qIE1vZGVybiBCcm93c2VycyAqL1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG59XG5cbi8qIFdlYmZvbnQ6IExhdG8tVGhpbiAqL0Bmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnTGF0b1dlYlRoaW4nO1xuICAgIHNyYzogdXJsKCdub2RlX21vZHVsZXMvcWVkLXVpL3N0eWxlcy9mb250cy9sYXRvL0xhdG8tVGhpbi53b2ZmMicpIGZvcm1hdCgnd29mZjInKSwgXG4gICAgICAgICB1cmwoJ25vZGVfbW9kdWxlcy9xZWQtdWkvc3R5bGVzL2ZvbnRzL2xhdG8vTGF0by1UaGluLndvZmYnKSBmb3JtYXQoJ3dvZmYnKTsgLyogTW9kZXJuIEJyb3dzZXJzICovXG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbn1cblxuLyogV2ViZm9udDogTGF0by1UaGluSXRhbGljICovQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdMYXRvV2ViVGhpbic7XG4gICAgc3JjOiB1cmwoJ25vZGVfbW9kdWxlcy9xZWQtdWkvc3R5bGVzL2ZvbnRzL2xhdG8vTGF0by1UaGluSXRhbGljLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLCBcbiAgICAgICAgIHVybCgnbm9kZV9tb2R1bGVzL3FlZC11aS9zdHlsZXMvZm9udHMvbGF0by9MYXRvLVRoaW5JdGFsaWMud29mZicpIGZvcm1hdCgnd29mZicpOyAvKiBNb2Rlcm4gQnJvd3NlcnMgKi9cbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xufVxuIiwiLypcbkNoYXJpc1NJTC13ZWJmb250LWV4YW1wbGUuY3NzXG5DaGFyaXMgU0lMIHY1LjAwMFxuMTQgT2N0IDIwMTRcblRoaXMgZmlsZSBpcyBwYXJ0IG9mIENoYXJpcyBTSUwgZm9udCBmYW1pbHkgKGh0dHA6Ly9zY3JpcHRzLnNpbC5vcmcvQ2hhcmlzU0lMZm9udClcbmFuZCBpcyBDb3B5cmlnaHQgKGMpIDE5OTQtMjAxNCBTSUwgSW50ZXJuYXRpb25hbCAoaHR0cDovL3d3dy5zaWwub3JnLyksXG53aXRoIFJlc2VydmVkIEZvbnQgTmFtZXMgXCJDaGFyaXNcIiBhbmQgXCJTSUxcIi4gVGhpcyBGb250IFNvZnR3YXJlIGlzIGxpY2Vuc2VkXG51bmRlciB0aGUgU0lMIE9wZW4gRm9udCBMaWNlbnNlLCBWZXJzaW9uIDEuMS4gWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weVxub2YgdGhlIGxpY2Vuc2UgYWxvbmcgd2l0aCB0aGlzIEZvbnQgU29mdHdhcmUuIElmIHRoaXMgaXMgbm90IHRoZSBjYXNlLCBnbyB0b1xuKGh0dHA6Ly9zY3JpcHRzLnNpbC5vcmcvT0ZMKSBmb3IgYWxsIHRoZSBkZXRhaWxzIGluY2x1ZGluZyBhIEZBUS5cbiovXG5cbi8qIHVzZSBDaGFyaXMgU0lMIC0gUmVndWxhciBpbiAud29mZiBmb3JtYXQgKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogQ2hhcmlzU0lMVztcbiAgc3JjOiB1cmwobm9kZV9tb2R1bGVzL3FlZC11aS9zdHlsZXMvZm9udHMvY2hhcmlzL0NoYXJpc1NJTC1SLndvZmYpO1xuICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xuICBmb250LWZlYXR1cmUtc2V0dGluZ3M6XCJrZXJuXCIgMTtcbn1cbi8qIHVzZSBDaGFyaXMgU0lMIC0gSXRhbGljIGluIC53b2ZmIGZvcm1hdCAqL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBDaGFyaXNTSUxXO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIHNyYzogdXJsKG5vZGVfbW9kdWxlcy9xZWQtdWkvc3R5bGVzL2ZvbnRzL2NoYXJpcy9DaGFyaXNTSUwtSS53b2ZmKTtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbiAgZm9udC1mZWF0dXJlLXNldHRpbmdzOlwia2VyblwiIDE7XG59XG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiBDaGFyaXNTSUxXO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIHNyYzogdXJsKG5vZGVfbW9kdWxlcy9xZWQtdWkvc3R5bGVzL2ZvbnRzL2NoYXJpcy9DaGFyaXNTSUwtQi53b2ZmKTtcbiAgICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xuICAgIGZvbnQtZmVhdHVyZS1zZXR0aW5nczpcImtlcm5cIiAxO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogQ2hhcmlzU0lMVztcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgc3JjOiB1cmwobm9kZV9tb2R1bGVzL3FlZC11aS9zdHlsZXMvZm9udHMvY2hhcmlzL0NoYXJpc1NJTC1CSS53b2ZmKTtcbiAgICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xuICAgIGZvbnQtZmVhdHVyZS1zZXR0aW5nczpcImtlcm5cIiAxO1xufSIsIkBpbXBvcnQgJ2NvbG9ycyc7XG5cbkBpbXBvcnQgJ2ZvbnRzL2xhdG8nO1xuQGltcG9ydCAnZm9udHMvY2hhcmlzJztcblxuYm9keSwgaW5wdXQsIGJ1dHRvbiwgc2VsZWN0LCBvcHRpb24sIHRleHRhcmVhIHtcbiAgZm9udC1mYW1pbHk6IExhdG9XZWIsIHNhbnMtc2VyaWY7XG4gIGNvbG9yOiAkdGV4dDtcbn1cblxuYm9keSB7XG4gICAgZm9udC1zaXplOiAxN3B4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG59XG5cbmlucHV0LCBidXR0b24sIHNlbGVjdCwgb3B0aW9uLCB0ZXh0YXJlYSB7XG4gICAgZm9udC1zaXplOiAxMDAlO1xufVxuXG5pbnB1dCB7XG4gICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbn1cblxuaDEsIGgyLCBoMyB7XG4gICAgZm9udC1mYW1pbHk6IENoYXJpc1NJTFcsIHNlcmlmO1xuICAgIG1hcmdpbi10b3A6IDEuNWVtO1xuICAgIG1hcmdpbi1ib3R0b206IDAuNWVtO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG5oMSB7XG4gICAgZm9udC1zaXplOiAxLjJlbTtcbn1cblxuaDIge1xuICAgIGZvbnQtc2l6ZTogMS4xZW07XG59XG5cbmgzIHtcbiAgICBmb250LXNpemU6IDFlbTtcbn1cblxucCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAxZW07XG59XG5cbnVsLCBvbCB7XG4gICAgbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG59XG4iLCIkdGV4dDogIzNhM2EzYTtcbiRlcnJvcjogI0Y4Mjg0OTtcblxuJGJnOiAjZmZmZmZmO1xuJGJnLWRhcms6ICNlZWVlZWU7XG4kYmctZGFya2VyOiAjY2NjY2NjO1xuJGJnLWVycm9yOiBtaXgoJGVycm9yLCAkYmcsIDIwKTtcblxuJHByaW1hcnk6ICMyNUIyQ0M7XG4kcHJpbWFyeS1saWdodDogIzQxQzVEQztcbiRwcmltYXJ5LWRhcms6ICMyM0E2QkU7XG4kcHJpbWFyeS1kYXJrZXI6ICMyMDk3QUM7XG5cbiRzZWNvbmRhcnk6ICNGRkM5Mjk7XG4kc2Vjb25kYXJ5LWxpZ2h0OiAjRkZENjVDO1xuJHNlY29uZGFyeS1kYXJrOiAjRjVCODAwO1xuIiwiLmJ0biB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJHRleHQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgcGFkZGluZzogN3B4IDE0cHg7XG4gICAgY29sb3I6ICR0ZXh0O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICY6aG92ZXIge1xuICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgICAgIGNvbG9yOiAkdGV4dDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmctZGFyaztcbiAgICB9XG5cbiAgICAmOmFjdGl2ZSB7XG4gICAgICAgIGNvbG9yOiAkdGV4dDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmctZGFya2VyO1xuICAgIH1cblxuICAgICYtLXByaW1hcnkge1xuICAgICAgICBib3JkZXItY29sb3I6ICRwcmltYXJ5LWRhcmtlcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnk7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWRhcms7XG4gICAgICAgIH1cblxuICAgICAgICAmOmFjdGl2ZSB7XG4gICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1kYXJrZXI7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCJpbnB1dCwgdGV4dGFyZWEsIC5zZWxlY3Qge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICR0ZXh0O1xuXG4gICAgcGFkZGluZzogNnB4IDlweDtcbn1cblxuLmlucHV0IHtcbiAgICAmLS1lcnJvciB7XG4gICAgICBib3JkZXItY29sb3I6ICRlcnJvcjtcbiAgICB9XG59XG5cbi5zZWxlY3Qge1xuICAgICY6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICRiZy1kYXJrZXI7XG4gICAgfVxufVxuIiwiLmlucHV0LWdyb3VwIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgZmxleDogYXV0bztcblxuICAgICZfX2ZpZWxkIHtcbiAgICAgICAgZmxleDogMSAwIGF1dG87XG4gICAgfVxuXG4gICAgJl9fYWRkb24ge1xuICAgICAgICBmbGV4OiAwIDAgYXV0bztcblxuICAgICAgICBAZXh0ZW5kIGlucHV0O1xuICAgICAgICBib3JkZXItbGVmdDogMDtcblxuICAgICAgICBiYWNrZ3JvdW5kOiAkYmctZGFyaztcbiAgICB9XG5cbiAgICAmX19idG4ge1xuICAgICAgICBmbGV4OiAwIDAgYXV0bztcblxuICAgICAgICAuYnRuIHtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi0tZXJyb3Ige1xuICAgICAgICAuaW5wdXQtZ3JvdXAge1xuICAgICAgICAgICAgJl9fZmllbGQge1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGVycm9yO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmX19hZGRvbiB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRlcnJvcjtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICRlcnJvcjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmctZXJyb3I7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIkbmF2YnRuLWhvdmVyOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XG4kbmF2YnRuLWFjdGl2ZTogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xuXG4ubmF2YmFyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjY2NjY2O1xuICAgIGNvbG9yOiB3aGl0ZTtcblxuICAgICZfX2l0ZW0ge1xuICAgICAgICBwYWRkaW5nOiAwICRzcGFjaW5nLXVuaXQ7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBsaW5lLWhlaWdodDogJGxvZ28tc2l6ZTtcbiAgICAgICAgaGVpZ2h0OiAkbG9nby1zaXplO1xuXG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgfVxuXG4gICAgJl9fbG9nbyB7XG4gICAgICAgIEBleHRlbmQgLm5hdmJhcl9faXRlbTtcblxuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICB9XG5cbiAgICAmX19idG4ge1xuICAgICAgICBAZXh0ZW5kIC5uYXZiYXJfX2l0ZW07XG5cbiAgICAgICAgYmFja2dyb3VuZDogaW5oZXJpdDtcbiAgICAgICAgYm9yZGVyOiBpbmhlcml0O1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIHVzZXItc2VsZWN0OiB0ZXh0O1xuICAgICAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJ0bi1ob3ZlcjtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZidG4tYWN0aXZlO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICB9XG5cbiAgICAgICAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgICAgICBmb250OiBpbmhlcml0O1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIGhlaWdodDogJGxvZ28tc2l6ZTtcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0iLCIuc2VwYXJhdG9yIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgaGVpZ2h0OiAzOXB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuXG4gICAgJl9fdGV4dCB7XG4gICAgICAgIHBhZGRpbmc6IDhweDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuXG4gICAgJl9fbGluZSB7XG4gICAgICAgIG1hcmdpbjogLTE5cHggYXV0byAxMHB4O1xuICAgICAgICB3aWR0aDogMTAwJVxuICAgIH1cbn0iLCJAaW1wb3J0IFwiY29tbW9uXCI7XG5AaW1wb3J0IFwic2VwYXJhdG9yXCI7XG5cbi5zdGFuZGFsb25lLWJveCB7XG4gICAgbWFyZ2luOiAyZW0gYXV0byAwIGF1dG87XG4gICAgbWF4LXdpZHRoOiAzMDBweDtcblxuICAgICZfX3NlcGFyYXRvciB7XG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgfVxufVxuXG4uaGVhZGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAmX19sb2dvIHtcbiAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgIH1cblxuICAgICZfX3RleHQge1xuICAgICAgICBtYXJnaW4tdG9wOiAxZW07XG4gICAgfVxufVxuXG4uc29jaWFsIHtcbiAgICBtYXJnaW4tdG9wOiAxNXB4O1xufVxuXG4uc29jaWFsLXByb3ZpZGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG5cbiAgICAmX19sb2dvIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHdpZHRoOiAyMXB4O1xuICAgICAgICBtYXJnaW4tdG9wOiAxcHg7XG4gICAgfVxufVxuXG4uc3RhbmRhbG9uZS1mb3JtIHtcbiAgICAmX19pbnB1dCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG5cbiAgICAgICAgaW5wdXQge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICAmLS1lcnJvciB7XG4gICAgICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICAgICAgQGV4dGVuZCAuaW5wdXQtLWVycm9yO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fZXJyb3JzIHtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICBjb2xvcjogJGVycm9yO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgfVxuXG4gICAgJl9fZm9yZ290IHtcbiAgICAgICAgbWFyZ2luLXRvcDogMnB4O1xuICAgICAgICBmb250LXNpemU6IDAuOGVtO1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICB9XG5cbiAgICAmX19zdWJtaXQge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luLXRvcDogMTNweDtcbiAgICB9XG5cbiAgICAmX19oZWxwIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbn1cblxuLmluZm8ge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbn0iXX0= */
