/*!**************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[0].use[3]!./src/_scss/foundation.scss ***!
  \**************************************************************************************************************************************************************************************************************************************************/
/*! destyle.css v4.0.0 | MIT License | https://github.com/nicolas-cusan/destyle.css */

/* Reset box-model and set borders */

/* ============================================ */

*,
::before,
::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-width: 0;
  border-style: solid;
}


/* Document */

/* ============================================ */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 * 3. Remove gray overlay on links for iOS.
 */

html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
  -webkit-tap-highlight-color: transparent; /* 3*/
}


/* Sections */

/* ============================================ */

/**
 * Remove the margin in all browsers.
 */

body {
  margin: 0;
}


/**
 * Render the `main` element consistently in IE.
 */

main {
  display: block;
}


/* Vertical rhythm */

/* ============================================ */

p,
table,
blockquote,
address,
pre,
iframe,
form,
figure,
dl {
  margin: 0;
}


/* Headings */

/* ============================================ */

h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0;
  font-weight: inherit;
  font-size: inherit;
}


/* Lists (enumeration) */

/* ============================================ */

ul,
ol {
  margin: 0;
  padding: 0;
  list-style: none;
}


/* Lists (definition) */

/* ============================================ */

dt {
  font-weight: bold;
}

dd {
  margin-left: 0;
}


/* Grouping content */

/* ============================================ */

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */

hr {
  -webkit-box-sizing: content-box;
          box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  margin: 0;
  clear: both;
  overflow: visible; /* 2 */
  border-top-width: 1px;
  color: inherit;
}


/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

pre {
  font-size: inherit; /* 2 */
  font-family: monospace, monospace; /* 1 */
}

address {
  font-style: inherit;
}


/* Text-level semantics */

/* ============================================ */

/**
 * Remove the gray background on active links in IE 10.
 */

a {
  background-color: transparent;
  color: inherit;
  text-decoration: none;
}


/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */

abbr[title] {
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted; /* 2 */
}


/**
 * 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-size: inherit; /* 2 */
  font-family: monospace, monospace; /* 1 */
}


/**
 * 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 {
  position: relative;
  font-size: 75%;
  line-height: 0;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}


/* Replaced content */

/* ============================================ */

/**
 * Prevent vertical alignment issues.
 */

svg,
img,
embed,
object,
iframe {
  vertical-align: bottom;
}


/* Forms */

/* ============================================ */

/**
 * Reset form fields to make them styleable.
 * 1. Make form elements stylable across systems iOS especially.
 * 2. Inherit text-transform from parent.
 */

button,
input,
optgroup,
select,
textarea {
  -webkit-appearance: none; /* 1 */
  -moz-appearance: none;
       appearance: none;
  margin: 0;
  padding: 0;
  border-radius: 0;
  background: transparent;
  color: inherit;
  font: inherit;
  text-align: inherit;
  text-transform: inherit; /* 2 */
  vertical-align: middle;
}


/**
 * Correct cursors for clickable elements.
 */

button,
[type=button],
[type=reset],
[type=submit] {
  cursor: pointer;
}

button:disabled,
[type=button]:disabled,
[type=reset]:disabled,
[type=submit]:disabled {
  cursor: default;
}


/**
 * Improve outlines for Firefox and unify style with input elements & buttons.
 */

:-moz-focusring {
  outline: auto;
}

select:disabled {
  opacity: inherit;
}


/**
 * Remove padding
 */

option {
  padding: 0;
}


/**
 * Reset to invisible
 */

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

legend {
  padding: 0;
}


/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */

progress {
  vertical-align: baseline;
}


/**
 * Remove the default vertical scrollbar in IE 10+.
 */

textarea {
  overflow: auto;
}


/**
 * 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;
}


/**
 * Correct the outline style in Safari.
 */

[type=search] {
  outline-offset: -2px; /* 1 */
}


/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */

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


/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Fix font inheritance.
 */

::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}


/**
 * Fix appearance for Firefox
 */

[type=number] {
  -moz-appearance: textfield;
}


/**
 * Clickable labels
 */

label[for] {
  cursor: pointer;
}


/* Interactive */

/* ============================================ */

/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */

details {
  display: block;
}


/*
 * Add the correct display in all browsers.
 */

summary {
  display: list-item;
}


/*
 * Remove outline for editable content.
 */

[contenteditable]:focus {
  outline: auto;
}


/* Tables */

/* ============================================ */

/**
1. Correct table border color inheritance in all Chrome and Safari.
*/

table {
  border-color: inherit; /* 1 */
  border-collapse: collapse;
}

caption {
  text-align: left;
}

td,
th {
  padding: 0;
  vertical-align: top;
}

th {
  font-weight: bold;
  text-align: left;
}

:root {
  --color-blue-700: #1f5c9a;
  --color-blue-500: #007eff;
  --color-blue-100: #cdd9eb;
  --color-blue-50: #edf4ff;
  --color-gray-900: #222;
  --color-white: #fff;
}

html {
  font-size: 62.5%;
}

body {
  color: var(--color-gray-900);
  font-weight: 500;
  font-size: 1.6rem;
  line-height: 1;
  font-family: "Noto Sans JP", sans-serif;
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
  -webkit-text-size-adjust: 100%;
}

body.is-fixed {
  overflow: hidden;
}

a {
  color: currentcolor;
  text-decoration: none;
}

img {
  max-width: 100%;
  -webkit-backface-visibility: hidden;
  height: auto;
  vertical-align: bottom;
}

button {
  padding: 0;
  border: none;
  background: none;
}

@media screen and (max-width: 374px) {
  html {
    font-size: 51.5%;
  }
}

@media screen and (max-width: 767px) {
  body {
    min-width: 0;
    font-size: 1.4rem;
    letter-spacing: 0;
  }
}

@media (hover: hover) {
  a {
    -webkit-transition: opacity 0.3s ease;
    transition: opacity 0.3s ease;
  }
}

@media (hover: hover) and (hover: hover) {
  a:hover {
    opacity: 0.6;
  }
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9jc3MvZm91bmRhdGlvbi5jc3MiLCJtYXBwaW5ncyI6Ijs7O0FBQUE7O0FBRUE7O0FBQ0E7O0FBRUE7OztFQUdFO1VBQUE7RUFFQTtFQURBO0FDQUY7OztBRElBOztBQUNBOztBQUVBOzs7O0VBQUE7O0FBTUE7RUFDRTtFQUNBO0VBQ0E7QUNIRjs7O0FETUE7O0FBQ0E7O0FBRUE7O0VBQUE7O0FBSUE7RUFDRTtBQ0xGOzs7QURRQTs7RUFBQTs7QUFJQTtFQUNFO0FDTkY7OztBRFNBOztBQUNBOztBQUVBOzs7Ozs7Ozs7RUFTRTtBQ1BGOzs7QURVQTs7QUFDQTs7QUFFQTs7Ozs7O0VBUUU7RUFEQTtFQURBO0FDTkY7OztBRFdBOztBQUNBOztBQUVBOztFQUVFO0VBQ0E7RUFDQTtBQ1RGOzs7QURZQTs7QUFDQTs7QUFFQTtFQUNFO0FDVkY7O0FEYUE7RUFDRTtBQ1ZGOzs7QURhQTs7QUFDQTs7QUFFQTs7O0VBQUE7O0FBS0E7RUFDRTtVQUFBO0VBQ0E7RUFHQTtFQUNBO0VBSEE7RUFDQTtFQUdBO0FDWkY7OztBRGVBOzs7RUFBQTs7QUFLQTtFQUVFO0VBREE7QUNaRjs7QURnQkE7RUFDRTtBQ2JGOzs7QURnQkE7O0FBQ0E7O0FBRUE7O0VBQUE7O0FBSUE7RUFDRTtFQUVBO0VBREE7QUNkRjs7O0FEa0JBOzs7RUFBQTs7QUFLQTtFQUNFO1VBQUE7QUNoQkY7OztBRG1CQTs7RUFBQTs7QUFJQTs7RUFFRTtBQ2pCRjs7O0FEb0JBOzs7RUFBQTs7QUFLQTs7O0VBSUU7RUFEQTtBQ2pCRjs7O0FEcUJBOztFQUFBOztBQUlBO0VBQ0U7QUNuQkY7OztBRHNCQTs7O0VBQUE7O0FBS0E7O0VBSUU7RUFGQTtFQUNBO0VBRUE7QUNwQkY7O0FEdUJBO0VBQ0U7QUNwQkY7O0FEdUJBO0VBQ0U7QUNwQkY7OztBRHVCQTs7QUFDQTs7QUFFQTs7RUFBQTs7QUFJQTs7Ozs7RUFLRTtBQ3RCRjs7O0FEeUJBOztBQUNBOztBQUVBOzs7O0VBQUE7O0FBTUE7Ozs7O0VBS0U7RUFDQTtPQUFBO0VBTUE7RUFEQTtFQUVBO0VBSEE7RUFGQTtFQUNBO0VBS0E7RUFDQTtFQVJBO0FDaEJGOzs7QUQyQkE7O0VBQUE7O0FBSUE7Ozs7RUFJRTtBQ3pCRjs7QUQ0QkE7Ozs7RUFJRTtBQ3pCRjs7O0FENEJBOztFQUFBOztBQUlBO0VBQ0U7QUMxQkY7O0FENkJBO0VBQ0U7QUMxQkY7OztBRDZCQTs7RUFBQTs7QUFJQTtFQUNFO0FDM0JGOzs7QUQ4QkE7O0VBQUE7O0FBSUE7RUFHRTtFQUZBO0VBQ0E7QUMzQkY7O0FEK0JBO0VBQ0U7QUM1QkY7OztBRCtCQTs7RUFBQTs7QUFJQTtFQUNFO0FDN0JGOzs7QURnQ0E7O0VBQUE7O0FBSUE7RUFDRTtBQzlCRjs7O0FEaUNBOztFQUFBOztBQUlBOztFQUVFO0FDL0JGOzs7QURrQ0E7O0VBQUE7O0FBSUE7RUFDRTtBQ2hDRjs7O0FEbUNBOztFQUFBOztBQUlBO0VBQ0U7QUNqQ0Y7OztBRG9DQTs7O0VBQUE7O0FBS0E7RUFDRTtFQUNBO0FDbENGOzs7QURxQ0E7O0VBQUE7O0FBR0E7RUFDRTtBQ2xDRjs7O0FEcUNBOztFQUFBOztBQUlBO0VBQ0U7QUNuQ0Y7OztBRHNDQTs7QUFDQTs7QUFFQTs7RUFBQTs7QUFJQTtFQUNFO0FDckNGOzs7QUR3Q0E7O0VBQUE7O0FBSUE7RUFDRTtBQ3RDRjs7O0FEeUNBOztFQUFBOztBQUlBO0VBQ0U7QUN2Q0Y7OztBRDBDQTs7QUFDQTs7QUFFQTs7Q0FBQTs7QUFJQTtFQUNFO0VBQ0E7QUN6Q0Y7O0FENENBO0VBQ0U7QUN6Q0Y7O0FENENBOztFQUdFO0VBREE7QUN4Q0Y7O0FENENBO0VBRUU7RUFEQTtBQ3hDRjs7QUNqWEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QURvWEY7O0FDalhBO0VBQ0U7QURvWEY7O0FDN1dBO0VBSUUsNEJDWFU7RURVVjtFQURBO0VBR0E7RUFKQSx1Q0NHSztFREVMO0VBQ0E7RUFDQTtBRHFYRjs7QUM3V0U7RUFDRTtBRHNYSjs7QUNsWEE7RUFFRTtFQURBO0FEc1hGOztBQ3hXQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FEcVhGOztBQ2xYQTtFQUVFO0VBREE7RUFFQTtBRHFYRjs7QUN4YUU7RUFIRjtJQUlJO0VEcVhGO0FBQ0Y7O0FHNVVFO0VGdENGO0lBV0k7SUFFQSxpQkNWUztJRFNUO0VEdVhGO0FBQ0Y7O0FDMVdBO0VBQ0U7SUFDRTtJQUFBO0VEcVhGO0FBQ0Y7O0FHeFVFO0VBQ0U7SUY1Q0U7RUR1WEo7QUFDRixDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vS05BUFN0YXRpY1NpdGVHZW5lcmF0b3IvLi9zcmMvX3Njc3MvZm91bmRhdGlvbi9fbm9ybWFsaXplLnNjc3MiLCJ3ZWJwYWNrOi8vS05BUFN0YXRpY1NpdGVHZW5lcmF0b3IvLi9zcmMvX3Njc3MvZm91bmRhdGlvbi5zY3NzIiwid2VicGFjazovL0tOQVBTdGF0aWNTaXRlR2VuZXJhdG9yLy4vc3JjL19zY3NzL2ZvdW5kYXRpb24vX2RlZmF1bHQuc2NzcyIsIndlYnBhY2s6Ly9LTkFQU3RhdGljU2l0ZUdlbmVyYXRvci8uL3NyYy9fc2Nzcy9jb3JlL19zZXR0aW5nLnNjc3MiLCJ3ZWJwYWNrOi8vS05BUFN0YXRpY1NpdGVHZW5lcmF0b3IvLi9zcmMvX3Njc3MvY29yZS9fbWl4aW4uc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKiEgZGVzdHlsZS5jc3MgdjQuMC4wIHwgTUlUIExpY2Vuc2UgfCBodHRwczovL2dpdGh1Yi5jb20vbmljb2xhcy1jdXNhbi9kZXN0eWxlLmNzcyAqL1xuXG4vKiBSZXNldCBib3gtbW9kZWwgYW5kIHNldCBib3JkZXJzICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4qLFxuOjpiZWZvcmUsXG46OmFmdGVyIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiAwO1xufVxuXG4vKiBEb2N1bWVudCAqL1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluIGlPUy5cbiAqIDMuIFJlbW92ZSBncmF5IG92ZXJsYXkgb24gbGlua3MgZm9yIGlPUy5cbiAqL1xuXG5odG1sIHtcbiAgbGluZS1oZWlnaHQ6IDEuMTU7IC8qIDEgKi9cbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAyICovXG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7IC8qIDMqL1xufVxuXG4vKiBTZWN0aW9ucyAqL1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuYm9keSB7XG4gIG1hcmdpbjogMDtcbn1cblxuLyoqXG4gKiBSZW5kZXIgdGhlIGBtYWluYCBlbGVtZW50IGNvbnNpc3RlbnRseSBpbiBJRS5cbiAqL1xuXG5tYWluIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qIFZlcnRpY2FsIHJoeXRobSAqL1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxucCxcbnRhYmxlLFxuYmxvY2txdW90ZSxcbmFkZHJlc3MsXG5wcmUsXG5pZnJhbWUsXG5mb3JtLFxuZmlndXJlLFxuZGwge1xuICBtYXJnaW46IDA7XG59XG5cbi8qIEhlYWRpbmdzICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5oMSxcbmgyLFxuaDMsXG5oNCxcbmg1LFxuaDYge1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICBtYXJnaW46IDA7XG59XG5cbi8qIExpc3RzIChlbnVtZXJhdGlvbikgKi9cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbnVsLFxub2wge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi8qIExpc3RzIChkZWZpbml0aW9uKSAqL1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuZHQge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuZGQge1xuICBtYXJnaW4tbGVmdDogMDtcbn1cblxuLyogR3JvdXBpbmcgY29udGVudCAqL1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuICogMi4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG4gKi9cblxuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLyogMSAqL1xuICBoZWlnaHQ6IDA7IC8qIDEgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7IC8qIDIgKi9cbiAgYm9yZGVyLXRvcC13aWR0aDogMXB4O1xuICBtYXJnaW46IDA7XG4gIGNsZWFyOiBib3RoO1xuICBjb2xvcjogaW5oZXJpdDtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnByZSB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLyogMSAqL1xuICBmb250LXNpemU6IGluaGVyaXQ7IC8qIDIgKi9cbn1cblxuYWRkcmVzcyB7XG4gIGZvbnQtc3R5bGU6IGluaGVyaXQ7XG59XG5cbi8qIFRleHQtbGV2ZWwgc2VtYW50aWNzICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAqL1xuXG5hIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5cbi8qKlxuICogMS4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIENocm9tZSA1Ny1cbiAqIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG4gKi9cblxuYWJiclt0aXRsZV0ge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuICovXG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZGVyO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuY29kZSxcbmtiZCxcbnNhbXAge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cbiAgZm9udC1zaXplOiBpbmhlcml0OyAvKiAyICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc21hbGwge1xuICBmb250LXNpemU6IDgwJTtcbn1cblxuLyoqXG4gKiBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbiAqIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zdWIsXG5zdXAge1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07XG59XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtO1xufVxuXG4vKiBSZXBsYWNlZCBjb250ZW50ICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFByZXZlbnQgdmVydGljYWwgYWxpZ25tZW50IGlzc3Vlcy5cbiAqL1xuXG5zdmcsXG5pbWcsXG5lbWJlZCxcbm9iamVjdCxcbmlmcmFtZSB7XG4gIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG59XG5cbi8qIEZvcm1zICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlc2V0IGZvcm0gZmllbGRzIHRvIG1ha2UgdGhlbSBzdHlsZWFibGUuXG4gKiAxLiBNYWtlIGZvcm0gZWxlbWVudHMgc3R5bGFibGUgYWNyb3NzIHN5c3RlbXMgaU9TIGVzcGVjaWFsbHkuXG4gKiAyLiBJbmhlcml0IHRleHQtdHJhbnNmb3JtIGZyb20gcGFyZW50LlxuICovXG5cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsgLyogMSAqL1xuICBhcHBlYXJhbmNlOiBub25lO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBjb2xvcjogaW5oZXJpdDtcbiAgZm9udDogaW5oZXJpdDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDtcbiAgdGV4dC10cmFuc2Zvcm06IGluaGVyaXQ7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBDb3JyZWN0IGN1cnNvcnMgZm9yIGNsaWNrYWJsZSBlbGVtZW50cy5cbiAqL1xuXG5idXR0b24sXG5bdHlwZT1cImJ1dHRvblwiXSxcblt0eXBlPVwicmVzZXRcIl0sXG5bdHlwZT1cInN1Ym1pdFwiXSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuYnV0dG9uOmRpc2FibGVkLFxuW3R5cGU9XCJidXR0b25cIl06ZGlzYWJsZWQsXG5bdHlwZT1cInJlc2V0XCJdOmRpc2FibGVkLFxuW3R5cGU9XCJzdWJtaXRcIl06ZGlzYWJsZWQge1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbi8qKlxuICogSW1wcm92ZSBvdXRsaW5lcyBmb3IgRmlyZWZveCBhbmQgdW5pZnkgc3R5bGUgd2l0aCBpbnB1dCBlbGVtZW50cyAmIGJ1dHRvbnMuXG4gKi9cblxuOi1tb3otZm9jdXNyaW5nIHtcbiAgb3V0bGluZTogYXV0bztcbn1cblxuc2VsZWN0OmRpc2FibGVkIHtcbiAgb3BhY2l0eTogaW5oZXJpdDtcbn1cblxuLyoqXG4gKiBSZW1vdmUgcGFkZGluZ1xuICovXG5cbm9wdGlvbiB7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi8qKlxuICogUmVzZXQgdG8gaW52aXNpYmxlXG4gKi9cblxuZmllbGRzZXQge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIG1pbi13aWR0aDogMDtcbn1cblxubGVnZW5kIHtcbiAgcGFkZGluZzogMDtcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuICovXG5cbnByb2dyZXNzIHtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUgMTArLlxuICovXG5cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gQ2hyb21lLlxuICovXG5cblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gKi9cblxuW3R5cGU9XCJzZWFyY2hcIl0ge1xuICBvdXRsaW5lLW9mZnNldDogLTJweDsgLyogMSAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cbiAqL1xuXG5bdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICogMi4gRml4IGZvbnQgaW5oZXJpdGFuY2UuXG4gKi9cblxuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvKiAxICovXG4gIGZvbnQ6IGluaGVyaXQ7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBGaXggYXBwZWFyYW5jZSBmb3IgRmlyZWZveFxuICovXG5bdHlwZT1cIm51bWJlclwiXSB7XG4gIC1tb3otYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xufVxuXG4vKipcbiAqIENsaWNrYWJsZSBsYWJlbHNcbiAqL1xuXG5sYWJlbFtmb3JdIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4vKiBJbnRlcmFjdGl2ZSAqL1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIEVkZ2UsIElFIDEwKywgYW5kIEZpcmVmb3guXG4gKi9cblxuZGV0YWlscyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnN1bW1hcnkge1xuICBkaXNwbGF5OiBsaXN0LWl0ZW07XG59XG5cbi8qXG4gKiBSZW1vdmUgb3V0bGluZSBmb3IgZWRpdGFibGUgY29udGVudC5cbiAqL1xuXG5bY29udGVudGVkaXRhYmxlXTpmb2N1cyB7XG4gIG91dGxpbmU6IGF1dG87XG59XG5cbi8qIFRhYmxlcyAqL1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4xLiBDb3JyZWN0IHRhYmxlIGJvcmRlciBjb2xvciBpbmhlcml0YW5jZSBpbiBhbGwgQ2hyb21lIGFuZCBTYWZhcmkuXG4qL1xuXG50YWJsZSB7XG4gIGJvcmRlci1jb2xvcjogaW5oZXJpdDsgLyogMSAqL1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xufVxuXG5jYXB0aW9uIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxudGQsXG50aCB7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIHBhZGRpbmc6IDA7XG59XG5cbnRoIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59IiwiLyohIGRlc3R5bGUuY3NzIHY0LjAuMCB8IE1JVCBMaWNlbnNlIHwgaHR0cHM6Ly9naXRodWIuY29tL25pY29sYXMtY3VzYW4vZGVzdHlsZS5jc3MgKi9cbi8qIFJlc2V0IGJveC1tb2RlbCBhbmQgc2V0IGJvcmRlcnMgKi9cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4qLFxuOjpiZWZvcmUsXG46OmFmdGVyIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiAwO1xufVxuXG4vKiBEb2N1bWVudCAqL1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpbiBpT1MuXG4gKiAzLiBSZW1vdmUgZ3JheSBvdmVybGF5IG9uIGxpbmtzIGZvciBpT1MuXG4gKi9cbmh0bWwge1xuICBsaW5lLWhlaWdodDogMS4xNTsgLyogMSAqL1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDIgKi9cbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDsgLyogMyovXG59XG5cbi8qIFNlY3Rpb25zICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbmJvZHkge1xuICBtYXJnaW46IDA7XG59XG5cbi8qKlxuICogUmVuZGVyIHRoZSBgbWFpbmAgZWxlbWVudCBjb25zaXN0ZW50bHkgaW4gSUUuXG4gKi9cbm1haW4ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyogVmVydGljYWwgcmh5dGhtICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xucCxcbnRhYmxlLFxuYmxvY2txdW90ZSxcbmFkZHJlc3MsXG5wcmUsXG5pZnJhbWUsXG5mb3JtLFxuZmlndXJlLFxuZGwge1xuICBtYXJnaW46IDA7XG59XG5cbi8qIEhlYWRpbmdzICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuaDEsXG5oMixcbmgzLFxuaDQsXG5oNSxcbmg2IHtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICBmb250LXdlaWdodDogaW5oZXJpdDtcbiAgbWFyZ2luOiAwO1xufVxuXG4vKiBMaXN0cyAoZW51bWVyYXRpb24pICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xudWwsXG5vbCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLyogTGlzdHMgKGRlZmluaXRpb24pICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuZHQge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuZGQge1xuICBtYXJnaW4tbGVmdDogMDtcbn1cblxuLyogR3JvdXBpbmcgY29udGVudCAqL1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAqIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuICovXG5ociB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvKiAxICovXG4gIGhlaWdodDogMDsgLyogMSAqL1xuICBvdmVyZmxvdzogdmlzaWJsZTsgLyogMiAqL1xuICBib3JkZXItdG9wLXdpZHRoOiAxcHg7XG4gIG1hcmdpbjogMDtcbiAgY2xlYXI6IGJvdGg7XG4gIGNvbG9yOiBpbmhlcml0O1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbnByZSB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLyogMSAqL1xuICBmb250LXNpemU6IGluaGVyaXQ7IC8qIDIgKi9cbn1cblxuYWRkcmVzcyB7XG4gIGZvbnQtc3R5bGU6IGluaGVyaXQ7XG59XG5cbi8qIFRleHQtbGV2ZWwgc2VtYW50aWNzICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBvbiBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4gKi9cbmEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogaW5oZXJpdDtcbn1cblxuLyoqXG4gKiAxLiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gQ2hyb21lIDU3LVxuICogMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cbiAqL1xuYWJiclt0aXRsZV0ge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuICovXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5jb2RlLFxua2JkLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLyogMSAqL1xuICBmb250LXNpemU6IGluaGVyaXQ7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqL1xuc21hbGwge1xuICBmb250LXNpemU6IDgwJTtcbn1cblxuLyoqXG4gKiBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbiAqIGFsbCBicm93c2Vycy5cbiAqL1xuc3ViLFxuc3VwIHtcbiAgZm9udC1zaXplOiA3NSU7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3ViIHtcbiAgYm90dG9tOiAtMC4yNWVtO1xufVxuXG5zdXAge1xuICB0b3A6IC0wLjVlbTtcbn1cblxuLyogUmVwbGFjZWQgY29udGVudCAqL1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogUHJldmVudCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaXNzdWVzLlxuICovXG5zdmcsXG5pbWcsXG5lbWJlZCxcbm9iamVjdCxcbmlmcmFtZSB7XG4gIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG59XG5cbi8qIEZvcm1zICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBSZXNldCBmb3JtIGZpZWxkcyB0byBtYWtlIHRoZW0gc3R5bGVhYmxlLlxuICogMS4gTWFrZSBmb3JtIGVsZW1lbnRzIHN0eWxhYmxlIGFjcm9zcyBzeXN0ZW1zIGlPUyBlc3BlY2lhbGx5LlxuICogMi4gSW5oZXJpdCB0ZXh0LXRyYW5zZm9ybSBmcm9tIHBhcmVudC5cbiAqL1xuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyAvKiAxICovXG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBmb250OiBpbmhlcml0O1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICB0ZXh0LWFsaWduOiBpbmhlcml0O1xuICB0ZXh0LXRyYW5zZm9ybTogaW5oZXJpdDsgLyogMiAqL1xufVxuXG4vKipcbiAqIENvcnJlY3QgY3Vyc29ycyBmb3IgY2xpY2thYmxlIGVsZW1lbnRzLlxuICovXG5idXR0b24sXG5bdHlwZT1idXR0b25dLFxuW3R5cGU9cmVzZXRdLFxuW3R5cGU9c3VibWl0XSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuYnV0dG9uOmRpc2FibGVkLFxuW3R5cGU9YnV0dG9uXTpkaXNhYmxlZCxcblt0eXBlPXJlc2V0XTpkaXNhYmxlZCxcblt0eXBlPXN1Ym1pdF06ZGlzYWJsZWQge1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbi8qKlxuICogSW1wcm92ZSBvdXRsaW5lcyBmb3IgRmlyZWZveCBhbmQgdW5pZnkgc3R5bGUgd2l0aCBpbnB1dCBlbGVtZW50cyAmIGJ1dHRvbnMuXG4gKi9cbjotbW96LWZvY3VzcmluZyB7XG4gIG91dGxpbmU6IGF1dG87XG59XG5cbnNlbGVjdDpkaXNhYmxlZCB7XG4gIG9wYWNpdHk6IGluaGVyaXQ7XG59XG5cbi8qKlxuICogUmVtb3ZlIHBhZGRpbmdcbiAqL1xub3B0aW9uIHtcbiAgcGFkZGluZzogMDtcbn1cblxuLyoqXG4gKiBSZXNldCB0byBpbnZpc2libGVcbiAqL1xuZmllbGRzZXQge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIG1pbi13aWR0aDogMDtcbn1cblxubGVnZW5kIHtcbiAgcGFkZGluZzogMDtcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuICovXG5wcm9ncmVzcyB7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFIDEwKy5cbiAqL1xudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bztcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG4gKi9cblt0eXBlPW51bWJlcl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5bdHlwZT1udW1iZXJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuICovXG5bdHlwZT1zZWFyY2hdIHtcbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7IC8qIDEgKi9cbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG4gKi9cblt0eXBlPXNlYXJjaF06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAqIDIuIEZpeCBmb250IGluaGVyaXRhbmNlLlxuICovXG46Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8qIDEgKi9cbiAgZm9udDogaW5oZXJpdDsgLyogMiAqL1xufVxuXG4vKipcbiAqIEZpeCBhcHBlYXJhbmNlIGZvciBGaXJlZm94XG4gKi9cblt0eXBlPW51bWJlcl0ge1xuICAtbW96LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbn1cblxuLyoqXG4gKiBDbGlja2FibGUgbGFiZWxzXG4gKi9cbmxhYmVsW2Zvcl0ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi8qIEludGVyYWN0aXZlICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIEVkZ2UsIElFIDEwKywgYW5kIEZpcmVmb3guXG4gKi9cbmRldGFpbHMge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLypcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vycy5cbiAqL1xuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTtcbn1cblxuLypcbiAqIFJlbW92ZSBvdXRsaW5lIGZvciBlZGl0YWJsZSBjb250ZW50LlxuICovXG5bY29udGVudGVkaXRhYmxlXTpmb2N1cyB7XG4gIG91dGxpbmU6IGF1dG87XG59XG5cbi8qIFRhYmxlcyAqL1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuMS4gQ29ycmVjdCB0YWJsZSBib3JkZXIgY29sb3IgaW5oZXJpdGFuY2UgaW4gYWxsIENocm9tZSBhbmQgU2FmYXJpLlxuKi9cbnRhYmxlIHtcbiAgYm9yZGVyLWNvbG9yOiBpbmhlcml0OyAvKiAxICovXG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG59XG5cbmNhcHRpb24ge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG50ZCxcbnRoIHtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgcGFkZGluZzogMDtcbn1cblxudGgge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuOnJvb3Qge1xuICAtLWNvbG9yLWJsdWUtNzAwOiAjMWY1YzlhO1xuICAtLWNvbG9yLWJsdWUtNTAwOiAjMDA3ZWZmO1xuICAtLWNvbG9yLWJsdWUtMTAwOiAjY2RkOWViO1xuICAtLWNvbG9yLWJsdWUtNTA6ICNlZGY0ZmY7XG4gIC0tY29sb3ItZ3JheS05MDA6ICMyMjI7XG4gIC0tY29sb3Itd2hpdGU6ICNmZmY7XG59XG5cbmh0bWwge1xuICBmb250LXNpemU6IDYyLjUlO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzc0cHgpIHtcbiAgaHRtbCB7XG4gICAgZm9udC1zaXplOiA1MS41JTtcbiAgfVxufVxuXG5ib2R5IHtcbiAgZm9udC1mYW1pbHk6IFwiTm90byBTYW5zIEpQXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMS42cmVtO1xuICBmb250LXdlaWdodDogNTAwO1xuICBjb2xvcjogdmFyKC0tY29sb3ItZ3JheS05MDApO1xuICBsaW5lLWhlaWdodDogMTtcbiAgLXdlYmtpdC1mb250LWZlYXR1cmUtc2V0dGluZ3M6IFwicGFsdFwiO1xuICBmb250LWZlYXR1cmUtc2V0dGluZ3M6IFwicGFsdFwiO1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICBib2R5IHtcbiAgICBtaW4td2lkdGg6IDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gICAgZm9udC1zaXplOiAxLjRyZW07XG4gIH1cbn1cbmJvZHkuaXMtZml4ZWQge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG5hIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogY3VycmVudGNvbG9yO1xufVxuXG5AbWVkaWEgKGhvdmVyOiBob3Zlcikge1xuICBhIHtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZTtcbiAgfVxufVxuQG1lZGlhIChob3ZlcjogaG92ZXIpIGFuZCAoaG92ZXI6IGhvdmVyKSB7XG4gIGE6aG92ZXIge1xuICAgIG9wYWNpdHk6IDAuNjtcbiAgfVxufVxuaW1nIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgaGVpZ2h0OiBhdXRvO1xuICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xufVxuXG5idXR0b24ge1xuICBib3JkZXI6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG59IiwiQHVzZSAnLi4vY29yZScgYXMgKjtcblxuOnJvb3Qge1xuICAtLWNvbG9yLWJsdWUtNzAwOiAjMWY1YzlhO1xuICAtLWNvbG9yLWJsdWUtNTAwOiAjMDA3ZWZmO1xuICAtLWNvbG9yLWJsdWUtMTAwOiAjY2RkOWViO1xuICAtLWNvbG9yLWJsdWUtNTA6ICNlZGY0ZmY7XG4gIC0tY29sb3ItZ3JheS05MDA6ICMyMjI7XG4gIC0tY29sb3Itd2hpdGU6ICNmZmY7XG59XG5cbmh0bWwge1xuICBmb250LXNpemU6IDYyLjUlO1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICgzNzRweCkpIHtcbiAgICBmb250LXNpemU6IDUxLjUlO1xuICB9XG59XG5cbmJvZHkge1xuICBmb250LWZhbWlseTogJG5vdG87XG4gIGZvbnQtc2l6ZTogJGZvbnRTaXplO1xuICBmb250LXdlaWdodDogNTAwO1xuICBjb2xvcjogJGZvbnRDb2xvcjtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIC13ZWJraXQtZm9udC1mZWF0dXJlLXNldHRpbmdzOiAncGFsdCc7XG4gIGZvbnQtZmVhdHVyZS1zZXR0aW5nczogJ3BhbHQnO1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG5cbiAgQGluY2x1ZGUgc3Age1xuICAgIG1pbi13aWR0aDogMDtcbiAgICBsZXR0ZXItc3BhY2luZzogMDtcbiAgICBmb250LXNpemU6ICRmb250U2l6ZVNwO1xuICB9XG5cbiAgJi5pcy1maXhlZCB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxufVxuXG5hIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogY3VycmVudGNvbG9yO1xufVxuXG5AbWVkaWEgKGhvdmVyOiBob3Zlcikge1xuICBhIHtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZTtcblxuICAgIEBpbmNsdWRlIGhvdmVyIHtcbiAgICAgIG9wYWNpdHk6IDAuNjtcbiAgICB9XG4gIH1cbn1cblxuaW1nIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgaGVpZ2h0OiBhdXRvO1xuICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xufVxuXG5idXR0b24ge1xuICBib3JkZXI6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG59XG5cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcclxuXHJcbi8vIOKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgVxyXG4vL+OAgOOAgFBBVEhcclxuLy8g4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSBXHJcblxyXG4vLyB1c2FnZTogI3skaW1nUGF0aH1cclxuJGltZ1BhdGg6IFwiLi4vaW1nL1wiO1xyXG5cclxuLy8g4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSBXHJcbi8v44CA44CAQ09MT1JcclxuLy8g4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSBXHJcbiRmb250Q29sb3I6IHZhcigtLWNvbG9yLWdyYXktOTAwKTtcclxuJG1haW5Db2xvcjogI2Y5ZjVlZjtcclxuJGtleUNvbG9yOiAjZmY5MDAwO1xyXG5cclxuXHJcbi8vIOKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgVxyXG4vL+OAgOOAgEZPTlRcclxuLy8g4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSBXHJcblxyXG4kZm9udFNpemU6IDEuNnJlbTtcclxuJGZvbnRTaXplU3A6IDEuNHJlbTtcclxuJG5vdG86ICdOb3RvIFNhbnMgSlAnLCBzYW5zLXNlcmlmO1xyXG4kdGVub3I6ICdUZW5vciBTYW5zJywgc2Fucy1zZXJpZjtcclxuXHJcbi8vIOKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgVxyXG4vL+OAgOOAgE1lZGlhIFF1ZXJ5XHJcbi8vIOKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgVxyXG5cclxuJHdyYXBlcjogMTAwJTtcclxuJHNwOiA3NjdweDtcclxuJHRhYmxldE1heDogNzY4cHg7XHJcbiR0YWJsZXRNaW46IDEwMjRweDtcclxuJHBjOiAxMDI1cHg7XHJcbiRwY0xhcmdlOiAxMjgwcHg7XHJcbiR0YWJsZXRsYXJnZU1heDogMTE4MHB4O1xyXG4kaXBob25lNTogMzIwcHg7IiwiQHVzZSAnLi9zZXR0aW5nJyBhcyAqO1xuQHVzZSAnLi9lYXNpbmcnIGFzICo7XG5cbkBtaXhpbiBsaW5lSGVpZ2h0Q3JvcCgkbGluZS1oZWlnaHQpIHtcbiAgJjo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgbWFyZ2luLXRvcDogY2FsYygoMSAtICN7JGxpbmUtaGVpZ2h0fSkgKiAuNWVtKTtcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG5cbiAgJjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiBjYWxjKCgxIC0gI3skbGluZS1oZWlnaHR9KSAqIC41ZW0pO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cbn1cblxuQG1peGluIGxpbmVIZWlnaHRDcm9wVG9wKCRsaW5lLWhlaWdodC10b3ApIHtcbiAgJjo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgbWFyZ2luLXRvcDogY2FsYygoMSAtICN7JGxpbmUtaGVpZ2h0LXRvcH0pICogLjVlbSk7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxufVxuXG5AbWl4aW4gbGluZUhlaWdodENyb3BCdG0oJGxpbmUtaGVpZ2h0LWJ0bSkge1xuICAmOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIG1hcmdpbi1ib3R0b206IGNhbGMoKDEgLSAjeyRsaW5lLWhlaWdodC1idG19KSAqIC41ZW0pO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cbn1cblxuQG1peGluIHdyYXBwZXIoJHdyYXBwZXIpIHtcbiAgd2lkdGg6ICR3cmFwcGVyO1xuICBtYXJnaW46IDAgYXV0bztcblxuICBAbWVkaWEgI3skYnJlYWtwb2ludH17XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuQG1peGluIHBjIHtcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogKCRwYykpIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gc3Age1xuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAoJHNwKSkge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiB0YWJsZXQge1xuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAoJHRhYmxldE1heCkpIGFuZCAobWF4LXdpZHRoOiAoJHRhYmxldE1pbikpIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gdGFibGV0TGFyZ2Uge1xuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAoJHBjKSkgYW5kIChtYXgtd2lkdGg6ICgkdGFibGV0bGFyZ2VNYXgpKSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuQG1peGluIHBjTGFyZ2Uge1xuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAoJHRhYmxldGxhcmdlTWF4KSkgYW5kIChtYXgtd2lkdGg6ICgkcGNMYXJnZSkpIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gbHMge1xuICBAbWVkaWEgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpe1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBpZSB7XG4gIEBtZWRpYSBhbGwgYW5kICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSkge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBob3ZlciB7XG4gIEBtZWRpYSAoaG92ZXI6IGhvdmVyKSB7XG4gICAgJjpob3ZlciB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGFjdGl2ZSB7XG4gIEBtZWRpYSAoaG92ZXI6IG5vbmUpIHtcbiAgICAmOmFjdGl2ZSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGJnSW1nKCRwYXNzLCAkc2l6ZTpjb3ZlciwgJHJlcGVhdDpuby1yZXBlYXQsICRwb3N0aW9uOmNlbnRlcikge1xuICBiYWNrZ3JvdW5kOiB1cmwoI3skaW1nUGF0aH0jeyRwYXNzfSkgJHJlcGVhdCAkcG9zdGlvbjtcbiAgYmFja2dyb3VuZC1zaXplOiAkc2l6ZTtcbiAgQGNvbnRlbnQ7XG59XG5cbkBtaXhpbiBjZW50ZXIoJGRpcmVjdGlvbjpYWSkge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cblx0QGlmICRkaXJlY3Rpb249PXh5IHtcblx0XHR0b3A6IDUwJTtcblx0XHRsZWZ0OiA1MCU7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG5cdH0gQGVsc2UgaWYgJGRpcmVjdGlvbj09eCB7XG5cdFx0bGVmdDogNTAlO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcblx0fSBAZWxzZSBpZiAkZGlyZWN0aW9uPT15IHtcblx0XHR0b3A6IDUwJTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG5cdH1cbn1cblxuQG1peGluIFRlbm9yIHtcbiAgZm9udC1mYW1pbHk6ICR0ZW5vcjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbn0iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=*/