/* normalize.css 2012-07-07T09:50 UTC - http://github.com/necolas/normalize.css */
/* ==========================================================================
   HTML5 display definitions
   ========================================================================== */
/**
 * Correct `block` display not defined in IE 8/9.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section,
summary {
  display: block; }

/**
 * Correct `inline-block` display not defined in IE 8/9.
 */
audio,
canvas,
video {
  display: inline-block; }

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

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

/* ==========================================================================
   Base
   ========================================================================== */
/**
 * 1. Set default font family to sans-serif.
 * 2. Prevent iOS text size adjust after orientation change, without disabling
 *    user zoom.
 */
html {
  font-family: sans-serif;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */ }

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

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

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

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

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

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

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

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

/*
 * proper formatting (http://blog.fontdeck.com/post/9037028497/hyphens)
*/
p {
  /*-webkit-hyphens: auto;
  -epub-hyphens: auto;
  -moz-hyphens: auto;
  hyphens: auto; */}

/*
 * Addresses margins set differently in IE6/7.
 */
pre {
  margin: 0; }

/**
 * Correct font family set oddly in Safari 5 and Chrome.
 */
code,
kbd,
pre,
samp {
  font-family: monospace, serif;
  font-size: 1em; }

/**
 * Improve readability of pre-formatted text in all browsers.
 */
pre {
  white-space: pre-wrap; }

/**
 * Set consistent quote types.
 */
q {
  quotes: "\201C" "\201D" "\2018" "\2019"; }

/**
 * Address inconsistent and variable font size in all browsers.
 */
q:after,
q:before {
  content: '';
  content: none; }

.small,
small {
  font-size: 75%; }

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

sup {
  top: -0.5em; }

sub {
  bottom: -0.25em; }

/* ==========================================================================
  Lists
========================================================================== */
/*
 * Addresses margins set differently in IE6/7.
 */
dl,
menu,
ol,
ul {
  margin: 1em 0; }

dd {
  margin: 0; }

/*
 * Addresses paddings set differently in IE6/7.
 */
menu {
  padding: 0 0 0 40px; }

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

/*
 * Corrects list images handled incorrectly in IE7.
 */
nav ol,
nav ul {
  list-style: none;
  list-style-image: none; }

/* ==========================================================================
  Embedded content
========================================================================== */
/**
 * Remove border when inside `a` element in IE 8/9.
 */
img {
  border: 0;
  max-width: 100%;
  height: auto; }

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

/* ==========================================================================
   Figures
   ========================================================================== */
/**
 * Address margin not present in IE 8/9 and Safari 5.
 */
figure {
  margin: 0; }

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

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

/**
 * 1. Correct font family not being inherited in all browsers.
 * 2. Correct font size not being inherited in all browsers.
 * 3. Address margins set differently in Firefox 4+, Safari 5, and Chrome.
 */
button,
input,
select,
textarea {
  font-family: inherit;
  /* 1 */
  font-size: 100%;
  /* 2 */
  margin: 0;
  /* 3 */ }

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

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

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

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

/**
 * 1. Address box sizing set to `content-box` in IE 8/9/10.
 * 2. Remove excess padding in IE 8/9/10.
 */
input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */ }

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

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

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

/**
 * 1. Remove default vertical scrollbar in IE 8/9.
 * 2. Improve readability and alignment in all browsers.
 */
textarea {
  overflow: auto;
  /* 1 */
  vertical-align: top;
  /* 2 */ }

/* ==========================================================================
   Tables
   ========================================================================== */
/**
 * Remove most spacing between table cells.
 */
table {
  border-collapse: collapse;
  border-spacing: 0; }
  table td,
  table th {
    text-align: left;
    vertical-align: top; }
  table th {
    padding-right: 0.5em; }

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

.image-replacement,
.ir {
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden; }

.cf,
.clearfix {
  zoom: 1; }
  .cf:after, .cf:before,
  .clearfix:after,
  .clearfix:before {
    content: "";
    display: table; }
  .cf:after,
  .clearfix:after {
    clear: both; }

/*
use the best ampersand
http://simplebits.com/notebook/2008/08/14/ampersands-2/
*/
span.amp {
  font-family: Baskerville,'Goudy Old Style',Palatino,'Book Antiqua',serif !important;
  font-style: italic; }

iframe {
  display: block; }

.relative {
  position: relative; }

.red, .red a {
  color: #f44336; }

.green, .green a {
  color: #4caf50; }

a {
  color: #000; }

.mdl-button-wrapper {
  margin: 56px 0 0 0; }
  .mdl-button-wrapper * {
    margin-right: 24px; }

.m-b {
  margin-bottom: 24px; }

.list-wrapper {
  max-height: 300px;
  overflow-y: scroll;
  max-width: 70%; }

.mdl-menu__container a {
  text-decoration: none;
  display: inline-block;
  width: 100%;
  height: 100%; }

.error .mdl-textfield__error {
  visibility: visible; }

.text-align-right {
  text-align: right; }

@media (max-width: 479px) {
  .mdl-snackbar {
    left: 50%; } }

.mdl-list__item-secondary-action {
  max-width: 72px; }

.mdl-button--fab {
  position: fixed;
  bottom: 72px;
  right: 24px;
  z-index: 99; }
  .mdl-button--fab.mdl-button--colored, .mdl-button--fab.mdl-button--colored:hover {
    background: #ffca49;
    color: #000; }

.mdl-layout__header, .mdl-layout__drawer, .mdl-button--accent.mdl-button--accent.mdl-button--raised, .mdl-button--accent.mdl-button--accent.mdl-button--fab, .mdl-snackbar {
  background-color: #ffca49;
  color: #000; }

.mdl-snackbar.mdl-snackbar-error {
  background-color: #f44336; }

.mdl-button--file input {
  cursor: pointer;
  height: 100%;
  right: 0;
  opacity: 0;
  position: absolute;
  top: 0;
  width: 300px;
  z-index: 4; }

.mdl-textfield--file .mdl-textfield__input {
  box-sizing: border-box;
  width: calc(100% - 32px); }

.mdl-textfield--file .mdl-button--file {
  right: 0; }

.mdl-progress.mdl-progress--indeterminate > .bar1, .mdl-progress.mdl-progress--indeterminate > .bar3, .mdl-progress.mdl-progress__indeterminate > .bar1, .mdl-progress.mdl-progress__indeterminate > .bar3 {
  background-color: #ffca49; }

.mdl-progress > .bufferbar {
  background-image: linear-gradient(to right, rgba(255, 255, 255, 0.7), rgba(255, 255, 255, 0.7)), linear-gradient(to right, black, black); }

.mdl-progress:not(.mdl-progress--indeterminate):not(.mdl-progress--indeterminate) > .auxbar, .mdl-progress:not(.mdl-progress__indeterminate):not(.mdl-progress__indeterminate) > .auxbar {
  background-image: none;
  -webkit-mask: none;
  mask: none; }

.mdl-textfield--floating-label.is-focused .mdl-textfield__label, .mdl-textfield--floating-label.is-dirty .mdl-textfield__label, .mdl-textfield--floating-label.has-placeholder .mdl-textfield__label {
  color: rgba(0, 0, 0, 0.87); }

.mdl-snackbar__text {
  color: #000; }

.mdl-textfield {
  display: block; }

.mdl-layout__drawer .mdl-navigation .mdl-navigation__link:hover {
  background-color: #ffd97c; }

.mdl-layout__drawer {
  border-right: 0; }

ul.mdl-navigation {
  margin: 0;
  padding: 0;
  list-style: none; }
  ul.mdl-navigation .menu-item-has-children > a.mdl-navigation__link {
    color: #000; }
  ul.mdl-navigation .sub-menu {
    margin-left: 16px; }

.mdl-layout-title img {
  height: 24px; }

input:-webkit-autofill {
  -webkit-box-shadow: 0 0 0px 1000px white inset; }

.page-content {
  min-height: 400px; }

.sub-menu {
  display: none; }

.page-content h3 {
  font-size: 1.2em; }

.page-content img {
  margin: 0 0 1em; }

.mdl-mini-footer {
  height: 48px;
  background-color: #000;
  padding: 16px; }
  .mdl-mini-footer * {
    line-height: 1em !important; }

.mdl-progress {
  width: 100%;
  height: 7px; }

.mdl-data-table {
  margin-bottom: 24px; }

textarea.mdl-textfield__input {
  border: 1px solid rgba(0, 0, 0, 0.12); }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLmNzcyIsInNvdXJjZXMiOlsiYXBwLnNjc3MiLCJwYXJ0aWFscy9fbm9ybWFsaXplLnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiQGltcG9ydCBcInBhcnRpYWxzL25vcm1hbGl6ZVwiO1xuXG4ucmVsYXRpdmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbiR5ZWxsb3c6ICNmZmNhNDk7XG4kcmVkOiByZ2IoMjQ0LCA2NywgNTQpO1xuJGdyZWVuOiByZ2IoNzYsIDE3NSwgODApO1xuXG4ucmVkLCAucmVkIGEge1xuICBjb2xvcjogJHJlZDtcbn1cblxuLmdyZWVuLCAuZ3JlZW4gYSB7XG4gIGNvbG9yOiAkZ3JlZW47XG59XG5cbmEge1xuICBjb2xvcjogIzAwMDtcbn1cblxuLm1kbC1idXR0b24td3JhcHBlciB7XG4gIG1hcmdpbjogNTZweCAwIDAgMDtcblxuICAqIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDI0cHg7XG4gIH1cbn1cblxuLm0tYiB7XG4gIG1hcmdpbi1ib3R0b206IDI0cHg7XG59XG5cbi5saXN0LXdyYXBwZXIge1xuICBtYXgtaGVpZ2h0OiAzMDBweDtcbiAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICBtYXgtd2lkdGg6IDcwJTtcbn1cblxuLm1kbC1tZW51X19jb250YWluZXIge1xuICBhIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxufVxuXG4uZXJyb3Ige1xuICAubWRsLXRleHRmaWVsZF9fZXJyb3Ige1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbn1cblxuLnRleHQtYWxpZ24tcmlnaHQge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDQ3OXB4KSB7XG4gIC5tZGwtc25hY2tiYXIge1xuICAgIGxlZnQ6IDUwJTtcbiAgfVxufVxuXG4ubWRsLWxpc3RfX2l0ZW0tc2Vjb25kYXJ5LWFjdGlvbiB7XG4gIG1heC13aWR0aDogNzJweDtcbn1cblxuLm1kbC1idXR0b24tLWZhYiB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgYm90dG9tOiA3MnB4O1xuICByaWdodDogMjRweDtcbiAgei1pbmRleDogOTk7XG5cbiAgJi5tZGwtYnV0dG9uLS1jb2xvcmVkLCAmLm1kbC1idXR0b24tLWNvbG9yZWQ6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6ICR5ZWxsb3c7XG4gICAgY29sb3I6ICMwMDA7XG4gIH1cbn1cblxuLm1kbC1sYXlvdXRfX2hlYWRlciwgLm1kbC1sYXlvdXRfX2RyYXdlciwgLm1kbC1idXR0b24tLWFjY2VudC5tZGwtYnV0dG9uLS1hY2NlbnQubWRsLWJ1dHRvbi0tcmFpc2VkLCAubWRsLWJ1dHRvbi0tYWNjZW50Lm1kbC1idXR0b24tLWFjY2VudC5tZGwtYnV0dG9uLS1mYWIsIC5tZGwtc25hY2tiYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkeWVsbG93O1xuICBjb2xvcjogIzAwMDtcbn1cblxuLm1kbC1zbmFja2JhciB7XG4gICYubWRsLXNuYWNrYmFyLWVycm9yIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcmVkO1xuICB9XG59XG5cbi5tZGwtYnV0dG9uLS1maWxlIHtcbiAgaW5wdXQge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcmlnaHQ6IDA7XG4gICAgb3BhY2l0eTogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAzMDBweDtcbiAgICB6LWluZGV4OiA0O1xuICB9XG59XG5cbi5tZGwtdGV4dGZpZWxkLS1maWxlIHtcbiAgLm1kbC10ZXh0ZmllbGRfX2lucHV0IHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAzMnB4KTtcbiAgfVxuXG4gIC5tZGwtYnV0dG9uLS1maWxlIHtcbiAgICByaWdodDogMDtcbiAgfVxufVxuXG4ubWRsLXByb2dyZXNzLm1kbC1wcm9ncmVzcy0taW5kZXRlcm1pbmF0ZSA+IC5iYXIxLCAubWRsLXByb2dyZXNzLm1kbC1wcm9ncmVzcy0taW5kZXRlcm1pbmF0ZSA+IC5iYXIzLCAubWRsLXByb2dyZXNzLm1kbC1wcm9ncmVzc19faW5kZXRlcm1pbmF0ZSA+IC5iYXIxLCAubWRsLXByb2dyZXNzLm1kbC1wcm9ncmVzc19faW5kZXRlcm1pbmF0ZSA+IC5iYXIzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHllbGxvdztcbn1cblxuLm1kbC1wcm9ncmVzcyA+IC5idWZmZXJiYXIge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpKSwgbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCByZ2IoMCwgMCwgMCksIHJnYigwLCAwLCAwKSk7XG59XG5cbi5tZGwtcHJvZ3Jlc3M6bm90KC5tZGwtcHJvZ3Jlc3MtLWluZGV0ZXJtaW5hdGUpOm5vdCgubWRsLXByb2dyZXNzLS1pbmRldGVybWluYXRlKSA+IC5hdXhiYXIsIC5tZGwtcHJvZ3Jlc3M6bm90KC5tZGwtcHJvZ3Jlc3NfX2luZGV0ZXJtaW5hdGUpOm5vdCgubWRsLXByb2dyZXNzX19pbmRldGVybWluYXRlKSA+IC5hdXhiYXIge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAtd2Via2l0LW1hc2s6IG5vbmU7XG4gIG1hc2s6IG5vbmU7XG59XG5cbi5tZGwtdGV4dGZpZWxkLS1mbG9hdGluZy1sYWJlbC5pcy1mb2N1c2VkIC5tZGwtdGV4dGZpZWxkX19sYWJlbCwgLm1kbC10ZXh0ZmllbGQtLWZsb2F0aW5nLWxhYmVsLmlzLWRpcnR5IC5tZGwtdGV4dGZpZWxkX19sYWJlbCwgLm1kbC10ZXh0ZmllbGQtLWZsb2F0aW5nLWxhYmVsLmhhcy1wbGFjZWhvbGRlciAubWRsLXRleHRmaWVsZF9fbGFiZWwge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcbn1cblxuLm1kbC1zbmFja2Jhcl9fdGV4dCB7XG4gIGNvbG9yOiAjMDAwO1xufVxuXG4ubWRsLXRleHRmaWVsZCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4ubWRsLWxheW91dF9fZHJhd2VyIC5tZGwtbmF2aWdhdGlvbiAubWRsLW5hdmlnYXRpb25fX2xpbms6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCR5ZWxsb3csIDEwJSk7XG59XG5cbi5tZGwtbGF5b3V0X19kcmF3ZXIge1xuICBib3JkZXItcmlnaHQ6IDA7XG59XG5cbnVsLm1kbC1uYXZpZ2F0aW9uIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuXG4gIC5tZW51LWl0ZW0taGFzLWNoaWxkcmVuID4gYS5tZGwtbmF2aWdhdGlvbl9fbGluayB7XG4gICAgY29sb3I6ICMwMDA7XG4gIH1cblxuICAuc3ViLW1lbnUge1xuICAgIG1hcmdpbi1sZWZ0OiAxNnB4O1xuICB9XG59XG5cbi5tZGwtbGF5b3V0LXRpdGxlIHtcbiAgaW1nIHtcbiAgICBoZWlnaHQ6IDI0cHg7XG4gIH1cbn1cblxuaW5wdXQ6LXdlYmtpdC1hdXRvZmlsbCB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMCAwIDBweCAxMDAwcHggd2hpdGUgaW5zZXQ7XG59XG5cbi5wYWdlLWNvbnRlbnQge1xuICBtaW4taGVpZ2h0OiA0MDBweDtcbn1cblxuLnN1Yi1tZW51IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnBhZ2UtY29udGVudCB7XG4gIGgzIHtcbiAgICBmb250LXNpemU6IDEuMmVtO1xuICB9XG5cbiAgaW1nIHtcbiAgICBtYXJnaW46IDAgMCAxZW07XG4gIH1cbn1cblxuLm1kbC1taW5pLWZvb3RlciB7XG4gIGhlaWdodDogNDhweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgcGFkZGluZzogMTZweDtcblxuICAqIHtcbiAgICBsaW5lLWhlaWdodDogMWVtICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLm1kbC1wcm9ncmVzcyB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDdweDtcbn1cblxuLm1kbC1kYXRhLXRhYmxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMjRweDtcbn1cblxudGV4dGFyZWEubWRsLXRleHRmaWVsZF9faW5wdXQge1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMTIpO1xufSIsIi8qIG5vcm1hbGl6ZS5jc3MgMjAxMi0wNy0wN1QwOTo1MCBVVEMgLSBodHRwOi8vZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBIVE1MNSBkaXNwbGF5IGRlZmluaXRpb25zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBpbiBJRSA4LzkuXG4gKi9cbmFydGljbGUsXG5hc2lkZSxcbmRldGFpbHMsXG5maWdjYXB0aW9uLFxuZmlndXJlLFxuZm9vdGVyLFxuaGVhZGVyLFxuaGdyb3VwLFxubWFpbixcbm5hdixcbnNlY3Rpb24sXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4vKipcbiAqIENvcnJlY3QgYGlubGluZS1ibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBpbiBJRSA4LzkuXG4gKi9cbmF1ZGlvLFxuY2FudmFzLFxudmlkZW8ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG4vKipcbiAqIFByZXZlbnQgbW9kZXJuIGJyb3dzZXJzIGZyb20gZGlzcGxheWluZyBgYXVkaW9gIHdpdGhvdXQgY29udHJvbHMuXG4gKiBSZW1vdmUgZXhjZXNzIGhlaWdodCBpbiBpT1MgNSBkZXZpY2VzLlxuICovXG5hdWRpbzpub3QoW2NvbnRyb2xzXSkge1xuICBkaXNwbGF5OiBub25lO1xuICBoZWlnaHQ6IDA7XG59XG4vKipcbiAqIEFkZHJlc3MgYFtoaWRkZW5dYCBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDgvOS5cbiAqIEhpZGUgdGhlIGB0ZW1wbGF0ZWAgZWxlbWVudCBpbiBJRSwgU2FmYXJpLCBhbmQgRmlyZWZveCA8IDIyLlxuICovXG5baGlkZGVuXSxcbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBCYXNlXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiAxLiBTZXQgZGVmYXVsdCBmb250IGZhbWlseSB0byBzYW5zLXNlcmlmLlxuICogMi4gUHJldmVudCBpT1MgdGV4dCBzaXplIGFkanVzdCBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2UsIHdpdGhvdXQgZGlzYWJsaW5nXG4gKiAgICB1c2VyIHpvb20uXG4gKi9cbmh0bWwge1xuICBmb250LWZhbWlseTogc2Fucy1zZXJpZjtcbiAgLyogMSAqL1xuICAtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgLyogMiAqL1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC8qIDIgKi9cbn1cbi8qKlxuICogUmVtb3ZlIGRlZmF1bHQgbWFyZ2luLlxuICovXG5ib2R5IHtcbiAgbWFyZ2luOiAwO1xufVxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIExpbmtzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBjb2xvciBmcm9tIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAqL1xuYSB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xufVxuLyoqXG4gKiBBZGRyZXNzIGBvdXRsaW5lYCBpbmNvbnNpc3RlbmN5IGJldHdlZW4gQ2hyb21lIGFuZCBvdGhlciBicm93c2Vycy5cbiAqL1xuYTpmb2N1cyB7XG4gIC8vIG91dGxpbmU6IHRoaW4gZG90dGVkO1xufVxuLyoqXG4gKiBJbXByb3ZlIHJlYWRhYmlsaXR5IHdoZW4gZm9jdXNlZCBhbmQgYWxzbyBtb3VzZSBob3ZlcmVkIGluIGFsbCBicm93c2Vycy5cbiAqL1xuYTphY3RpdmUsXG5hOmhvdmVyIHtcbiAgb3V0bGluZTogMDtcbn1cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBUeXBvZ3JhcGh5XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBBZGRyZXNzIHZhcmlhYmxlIGBoMWAgZm9udC1zaXplIGFuZCBtYXJnaW4gd2l0aGluIGBzZWN0aW9uYCBhbmQgYGFydGljbGVgXG4gKiBjb250ZXh0cyBpbiBGaXJlZm94IDQrLCBTYWZhcmkgNSwgYW5kIENocm9tZS5cbiAqL1xuaDEge1xuICBmb250LXNpemU6IDJlbTtcbiAgbWFyZ2luOiAwLjY3ZW0gMDtcbn1cbi8qKlxuICogQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDgvOSwgU2FmYXJpIDUsIGFuZCBDaHJvbWUuXG4gKi9cbmFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZDtcbn1cbi8qKlxuICogQWRkcmVzcyBzdHlsZSBzZXQgdG8gYGJvbGRlcmAgaW4gRmlyZWZveCA0KywgU2FmYXJpIDUsIGFuZCBDaHJvbWUuXG4gKi9cbi5zdHJvbmcsXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG4vKipcbiAqIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBTYWZhcmkgNSBhbmQgQ2hyb21lLlxuICovXG4uZW0sXG5kZm4sXG5lbSB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cbi8qKlxuICogQWRkcmVzcyBkaWZmZXJlbmNlcyBiZXR3ZWVuIEZpcmVmb3ggYW5kIG90aGVyIGJyb3dzZXJzLlxuICovXG5ociB7XG4gIC1tb3otYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICBoZWlnaHQ6IDA7XG59XG4vKlxuICogcHJvcGVyIGZvcm1hdHRpbmcgKGh0dHA6Ly9ibG9nLmZvbnRkZWNrLmNvbS9wb3N0LzkwMzcwMjg0OTcvaHlwaGVucylcbiovXG5wIHtcbiAgLXdlYmtpdC1oeXBoZW5zOiBhdXRvO1xuICAtZXB1Yi1oeXBoZW5zOiBhdXRvO1xuICAtbW96LWh5cGhlbnM6IGF1dG87XG4gIGh5cGhlbnM6IGF1dG87XG59XG4vKlxuICogQWRkcmVzc2VzIG1hcmdpbnMgc2V0IGRpZmZlcmVudGx5IGluIElFNi83LlxuICovXG5wcmUge1xuICBtYXJnaW46IDA7XG59XG4vKipcbiAqIENvcnJlY3QgZm9udCBmYW1pbHkgc2V0IG9kZGx5IGluIFNhZmFyaSA1IGFuZCBDaHJvbWUuXG4gKi9cbmNvZGUsXG5rYmQsXG5wcmUsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgc2VyaWY7XG4gIGZvbnQtc2l6ZTogMWVtO1xufVxuLyoqXG4gKiBJbXByb3ZlIHJlYWRhYmlsaXR5IG9mIHByZS1mb3JtYXR0ZWQgdGV4dCBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbnByZSB7XG4gIHdoaXRlLXNwYWNlOiBwcmUtd3JhcDtcbn1cbi8qKlxuICogU2V0IGNvbnNpc3RlbnQgcXVvdGUgdHlwZXMuXG4gKi9cbnEge1xuICBxdW90ZXM6IFwiXFwyMDFDXCIgXCJcXDIwMURcIiBcIlxcMjAxOFwiIFwiXFwyMDE5XCI7XG59XG4vKipcbiAqIEFkZHJlc3MgaW5jb25zaXN0ZW50IGFuZCB2YXJpYWJsZSBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5xOmFmdGVyLFxucTpiZWZvcmUge1xuICBjb250ZW50OiAnJztcbiAgY29udGVudDogbm9uZTtcbn1cblxuLnNtYWxsLFxuc21hbGwge1xuICBmb250LXNpemU6IDc1JTtcbn1cbi8qKlxuICogUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgYWZmZWN0aW5nIGBsaW5lLWhlaWdodGAgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5zdWIsXG5zdXAge1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdXAge1xuICB0b3A6IC0wLjVlbTtcbn1cblxuc3ViIHtcbiAgYm90dG9tOiAtMC4yNWVtO1xufVxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgTGlzdHNcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICogQWRkcmVzc2VzIG1hcmdpbnMgc2V0IGRpZmZlcmVudGx5IGluIElFNi83LlxuICovXG5kbCxcbm1lbnUsXG5vbCxcbnVsIHtcbiAgbWFyZ2luOiAxZW0gMDtcbn1cblxuZGQge1xuICBtYXJnaW46IDA7XG59XG4vKlxuICogQWRkcmVzc2VzIHBhZGRpbmdzIHNldCBkaWZmZXJlbnRseSBpbiBJRTYvNy5cbiAqL1xubWVudSB7XG4gIHBhZGRpbmc6IDAgMCAwIDQwcHg7XG59XG5cbm9sLFxudWwge1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG59XG4vKlxuICogQ29ycmVjdHMgbGlzdCBpbWFnZXMgaGFuZGxlZCBpbmNvcnJlY3RseSBpbiBJRTcuXG4gKi9cbm5hdiBvbCxcbm5hdiB1bCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGxpc3Qtc3R5bGUtaW1hZ2U6IG5vbmU7XG59XG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICBFbWJlZGRlZCBjb250ZW50XG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBSZW1vdmUgYm9yZGVyIHdoZW4gaW5zaWRlIGBhYCBlbGVtZW50IGluIElFIDgvOS5cbiAqL1xuaW1nIHtcbiAgYm9yZGVyOiAwO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbn1cbi8qKlxuICogQ29ycmVjdCBvdmVyZmxvdyBkaXNwbGF5ZWQgb2RkbHkgaW4gSUUgOS5cbiAqL1xuc3ZnOm5vdCg6cm9vdCkge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIEZpZ3VyZXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIEFkZHJlc3MgbWFyZ2luIG5vdCBwcmVzZW50IGluIElFIDgvOSBhbmQgU2FmYXJpIDUuXG4gKi9cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMDtcbn1cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBGb3Jtc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogRGVmaW5lIGNvbnNpc3RlbnQgYm9yZGVyLCBtYXJnaW4sIGFuZCBwYWRkaW5nLlxuICovXG5maWVsZHNldCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjMGMwYzA7XG4gIG1hcmdpbjogMCAycHg7XG4gIHBhZGRpbmc6IDAuMzVlbSAwLjYyNWVtIDAuNzVlbTtcbn1cbi8qKlxuICogMS4gQ29ycmVjdCBgY29sb3JgIG5vdCBiZWluZyBpbmhlcml0ZWQgaW4gSUUgOC85LlxuICogMi4gUmVtb3ZlIHBhZGRpbmcgc28gcGVvcGxlIGFyZW4ndCBjYXVnaHQgb3V0IGlmIHRoZXkgemVybyBvdXQgZmllbGRzZXRzLlxuICovXG5sZWdlbmQge1xuICBib3JkZXI6IDA7XG4gIC8qIDEgKi9cbiAgcGFkZGluZzogMDtcbiAgLyogMiAqL1xufVxuLyoqXG4gKiAxLiBDb3JyZWN0IGZvbnQgZmFtaWx5IG5vdCBiZWluZyBpbmhlcml0ZWQgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCBmb250IHNpemUgbm90IGJlaW5nIGluaGVyaXRlZCBpbiBhbGwgYnJvd3NlcnMuXG4gKiAzLiBBZGRyZXNzIG1hcmdpbnMgc2V0IGRpZmZlcmVudGx5IGluIEZpcmVmb3ggNCssIFNhZmFyaSA1LCBhbmQgQ2hyb21lLlxuICovXG5idXR0b24sXG5pbnB1dCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIC8qIDEgKi9cbiAgZm9udC1zaXplOiAxMDAlO1xuICAvKiAyICovXG4gIG1hcmdpbjogMDtcbiAgLyogMyAqL1xufVxuLyoqXG4gKiBBZGRyZXNzIEZpcmVmb3ggNCsgc2V0dGluZyBgbGluZS1oZWlnaHRgIG9uIGBpbnB1dGAgdXNpbmcgYCFpbXBvcnRhbnRgIGluXG4gKiB0aGUgVUEgc3R5bGVzaGVldC5cbiAqL1xuYnV0dG9uLFxuaW5wdXQge1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xufVxuLyoqXG4gKiBBZGRyZXNzIGluY29uc2lzdGVudCBgdGV4dC10cmFuc2Zvcm1gIGluaGVyaXRhbmNlIGZvciBgYnV0dG9uYCBhbmQgYHNlbGVjdGAuXG4gKiBBbGwgb3RoZXIgZm9ybSBjb250cm9sIGVsZW1lbnRzIGRvIG5vdCBpbmhlcml0IGB0ZXh0LXRyYW5zZm9ybWAgdmFsdWVzLlxuICogQ29ycmVjdCBgYnV0dG9uYCBzdHlsZSBpbmhlcml0YW5jZSBpbiBDaHJvbWUsIFNhZmFyaSA1KywgYW5kIElFIDgrLlxuICogQ29ycmVjdCBgc2VsZWN0YCBzdHlsZSBpbmhlcml0YW5jZSBpbiBGaXJlZm94IDQrIGFuZCBPcGVyYS5cbiAqL1xuYnV0dG9uLFxuc2VsZWN0IHtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG4vKipcbiAqIDEuIEF2b2lkIHRoZSBXZWJLaXQgYnVnIGluIEFuZHJvaWQgNC4wLiogd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gXG4gKiAgICBhbmQgYHZpZGVvYCBjb250cm9scy5cbiAqIDIuIENvcnJlY3QgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSBgaW5wdXRgIHR5cGVzIGluIGlPUy5cbiAqIDMuIEltcHJvdmUgdXNhYmlsaXR5IGFuZCBjb25zaXN0ZW5jeSBvZiBjdXJzb3Igc3R5bGUgYmV0d2VlbiBpbWFnZS10eXBlXG4gKiAgICBgaW5wdXRgIGFuZCBvdGhlcnMuXG4gKi9cbmJ1dHRvbixcbmh0bWwgaW5wdXRbdHlwZT1cImJ1dHRvblwiXSxcbmlucHV0W3R5cGU9XCJyZXNldFwiXSxcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgLyogMiAqL1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIC8qIDMgKi9cbn1cbi8qKlxuICogUmUtc2V0IGRlZmF1bHQgY3Vyc29yIGZvciBkaXNhYmxlZCBlbGVtZW50cy5cbiAqL1xuYnV0dG9uW2Rpc2FibGVkXSxcbmh0bWwgaW5wdXRbZGlzYWJsZWRdIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuLyoqXG4gKiAxLiBBZGRyZXNzIGJveCBzaXppbmcgc2V0IHRvIGBjb250ZW50LWJveGAgaW4gSUUgOC85LzEwLlxuICogMi4gUmVtb3ZlIGV4Y2VzcyBwYWRkaW5nIGluIElFIDgvOS8xMC5cbiAqL1xuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxuaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLyogMSAqL1xuICBwYWRkaW5nOiAwO1xuICAvKiAyICovXG59XG4vKipcbiAqIDEuIEFkZHJlc3MgYGFwcGVhcmFuY2VgIHNldCB0byBgc2VhcmNoZmllbGRgIGluIFNhZmFyaSA1IGFuZCBDaHJvbWUuXG4gKiAyLiBBZGRyZXNzIGBib3gtc2l6aW5nYCBzZXQgdG8gYGJvcmRlci1ib3hgIGluIFNhZmFyaSA1IGFuZCBDaHJvbWVcbiAqICAgIChpbmNsdWRlIGAtbW96YCB0byBmdXR1cmUtcHJvb2YpLlxuICovXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XG4gIC8qIDEgKi9cbiAgLW1vei1ib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgLyogMiAqL1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbn1cbi8qKlxuICogUmVtb3ZlIGlubmVyIHBhZGRpbmcgYW5kIHNlYXJjaCBjYW5jZWwgYnV0dG9uIGluIFNhZmFyaSA1IGFuZCBDaHJvbWVcbiAqIG9uIE9TIFguXG4gKi9cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuLyoqXG4gKiBSZW1vdmUgaW5uZXIgcGFkZGluZyBhbmQgYm9yZGVyIGluIEZpcmVmb3ggNCsuXG4gKi9cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcbmlucHV0OjotbW96LWZvY3VzLWlubmVyIHtcbiAgYm9yZGVyOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuLyoqXG4gKiAxLiBSZW1vdmUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUgOC85LlxuICogMi4gSW1wcm92ZSByZWFkYWJpbGl0eSBhbmQgYWxpZ25tZW50IGluIGFsbCBicm93c2Vycy5cbiAqL1xudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bztcbiAgLyogMSAqL1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAvKiAyICovXG59XG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgVGFibGVzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBSZW1vdmUgbW9zdCBzcGFjaW5nIGJldHdlZW4gdGFibGUgY2VsbHMuXG4gKi9cbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgYm9yZGVyLXNwYWNpbmc6IDA7XG5cbiAgdGQsXG4gIHRoIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIH1cblxuICB0aCB7XG4gICAgcGFkZGluZy1yaWdodDogMC41ZW07XG4gIH1cbn1cbi8vIEJPUkRFUi1CT1ggQUxMIFRIRSBUSElOR1MhIChodHRwOi8vcGF1bGlyaXNoLmNvbS8yMDEyL2JveC1zaXppbmctYm9yZGVyLWJveC1mdHcvKVxuKiB7XG4gIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuLy8gaHR0cDovL3d3dy56ZWxkbWFuLmNvbS8yMDEyLzAzLzAxL3JlcGxhY2luZy10aGUtOTk5OXB4LWhhY2stbmV3LWltYWdlLXJlcGxhY2VtZW50L1xuLmltYWdlLXJlcGxhY2VtZW50LFxuLmlyIHtcbiAgdGV4dC1pbmRlbnQ6IDEwMCU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4vLyBDb250YWluIGZsb2F0czogbmljb2xhc2dhbGxhZ2hlci5jb20vbWljcm8tY2xlYXJmaXgtaGFjay9cbi5jZixcbi5jbGVhcmZpeCB7XG4gIHpvb206IDE7XG5cbiAgJjphZnRlcixcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogdGFibGU7XG4gIH1cblxuICAmOmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxufVxuLypcbnVzZSB0aGUgYmVzdCBhbXBlcnNhbmRcbmh0dHA6Ly9zaW1wbGViaXRzLmNvbS9ub3RlYm9vay8yMDA4LzA4LzE0L2FtcGVyc2FuZHMtMi9cbiovXG5zcGFuLmFtcCB7XG4gIGZvbnQtZmFtaWx5OiBCYXNrZXJ2aWxsZSwnR291ZHkgT2xkIFN0eWxlJyxQYWxhdGlubywnQm9vayBBbnRpcXVhJyxzZXJpZiAhaW1wb3J0YW50O1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbmlmcmFtZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQ0FBLGtGQUFrRjtBQUNsRjs7Z0ZBRWdGO0FBQ2hGOztHQUVHO0FBQ0gsQUFBQSxPQUFPO0FBQ1AsS0FBSztBQUNMLE9BQU87QUFDUCxVQUFVO0FBQ1YsTUFBTTtBQUNOLE1BQU07QUFDTixNQUFNO0FBQ04sTUFBTTtBQUNOLElBQUk7QUFDSixHQUFHO0FBQ0gsT0FBTztBQUNQLE9BQU8sQ0FBQztFQUNOLE9BQU8sRUFBRSxLQUFLLEdBQ2Y7O0FBQ0Q7O0dBRUc7QUFDSCxBQUFBLEtBQUs7QUFDTCxNQUFNO0FBQ04sS0FBSyxDQUFDO0VBQ0osT0FBTyxFQUFFLFlBQVksR0FDdEI7O0FBQ0Q7OztHQUdHO0FBQ0gsQUFBQSxLQUFLLEFBQUEsSUFBSyxFQUFBLEFBQUEsUUFBQyxBQUFBLEdBQVc7RUFDcEIsT0FBTyxFQUFFLElBQUk7RUFDYixNQUFNLEVBQUUsQ0FBQyxHQUNWOztBQUNEOzs7R0FHRztDQUNILEFBQUEsQUFBQSxNQUFDLEFBQUE7QUFDRCxRQUFRLENBQUM7RUFDUCxPQUFPLEVBQUUsSUFBSSxHQUNkOztBQUNEOztnRkFFZ0Y7QUFDaEY7Ozs7R0FJRztBQUNILEFBQUEsSUFBSSxDQUFDO0VBQ0gsV0FBVyxFQUFFLFVBQVU7RUFDdkIsT0FBTztFQUNQLG9CQUFvQixFQUFFLElBQUk7RUFDMUIsT0FBTztFQUNQLHdCQUF3QixFQUFFLElBQUk7RUFDOUIsT0FBTyxFQUNSOztBQUNEOztHQUVHO0FBQ0gsQUFBQSxJQUFJLENBQUM7RUFDSCxNQUFNLEVBQUUsQ0FBQyxHQUNWOztBQUNEOztnRkFFZ0Y7QUFDaEY7O0dBRUc7QUFDSCxBQUFBLENBQUMsQ0FBQztFQUNBLFVBQVUsRUFBRSxXQUFXLEdBQ3hCOztBQUNEOztHQUVHO0FBSUg7O0dBRUc7QUFDSCxBQUFBLENBQUMsQUFBQSxPQUFPO0FBQ1IsQ0FBQyxBQUFBLE1BQU0sQ0FBQztFQUNOLE9BQU8sRUFBRSxDQUFDLEdBQ1g7O0FBQ0Q7O2dGQUVnRjtBQUNoRjs7O0dBR0c7QUFDSCxBQUFBLEVBQUUsQ0FBQztFQUNELFNBQVMsRUFBRSxHQUFHO0VBQ2QsTUFBTSxFQUFFLFFBQVEsR0FDakI7O0FBQ0Q7O0dBRUc7QUFDSCxBQUFBLElBQUksQ0FBQSxBQUFBLEtBQUMsQUFBQSxFQUFPO0VBQ1YsYUFBYSxFQUFFLFVBQVUsR0FDMUI7O0FBQ0Q7O0dBRUc7QUFDSCxBQUFBLE9BQU87QUFDUCxDQUFDO0FBQ0QsTUFBTSxDQUFDO0VBQ0wsV0FBVyxFQUFFLElBQUksR0FDbEI7O0FBQ0Q7O0dBRUc7QUFDSCxBQUFBLEdBQUc7QUFDSCxHQUFHO0FBQ0gsRUFBRSxDQUFDO0VBQ0QsVUFBVSxFQUFFLE1BQU0sR0FDbkI7O0FBQ0Q7O0dBRUc7QUFDSCxBQUFBLEVBQUUsQ0FBQztFQUNELGVBQWUsRUFBRSxXQUFXO0VBQzVCLFVBQVUsRUFBRSxXQUFXO0VBQ3ZCLE1BQU0sRUFBRSxDQUFDLEdBQ1Y7O0FBQ0Q7O0VBRUU7QUFDRixBQUFBLENBQUMsQ0FBQztFQUNBLGVBQWUsRUFBRSxJQUFJO0VBQ3JCLGFBQWEsRUFBRSxJQUFJO0VBQ25CLFlBQVksRUFBRSxJQUFJO0VBQ2xCLE9BQU8sRUFBRSxJQUFJLEdBQ2Q7O0FBQ0Q7O0dBRUc7QUFDSCxBQUFBLEdBQUcsQ0FBQztFQUNGLE1BQU0sRUFBRSxDQUFDLEdBQ1Y7O0FBQ0Q7O0dBRUc7QUFDSCxBQUFBLElBQUk7QUFDSixHQUFHO0FBQ0gsR0FBRztBQUNILElBQUksQ0FBQztFQUNILFdBQVcsRUFBRSxnQkFBZ0I7RUFDN0IsU0FBUyxFQUFFLEdBQUcsR0FDZjs7QUFDRDs7R0FFRztBQUNILEFBQUEsR0FBRyxDQUFDO0VBQ0YsV0FBVyxFQUFFLFFBQVEsR0FDdEI7O0FBQ0Q7O0dBRUc7QUFDSCxBQUFBLENBQUMsQ0FBQztFQUNBLE1BQU0sRUFBRSwrQkFBK0IsR0FDeEM7O0FBQ0Q7O0dBRUc7QUFDSCxBQUFBLENBQUMsQUFBQSxNQUFNO0FBQ1AsQ0FBQyxBQUFBLE9BQU8sQ0FBQztFQUNQLE9BQU8sRUFBRSxFQUFFO0VBQ1gsT0FBTyxFQUFFLElBQUksR0FDZDs7QUFFRCxBQUFBLE1BQU07QUFDTixLQUFLLENBQUM7RUFDSixTQUFTLEVBQUUsR0FBRyxHQUNmOztBQUNEOztHQUVHO0FBQ0gsQUFBQSxHQUFHO0FBQ0gsR0FBRyxDQUFDO0VBQ0YsU0FBUyxFQUFFLEdBQUc7RUFDZCxXQUFXLEVBQUUsQ0FBQztFQUNkLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLGNBQWMsRUFBRSxRQUFRLEdBQ3pCOztBQUVELEFBQUEsR0FBRyxDQUFDO0VBQ0YsR0FBRyxFQUFFLE1BQU0sR0FDWjs7QUFFRCxBQUFBLEdBQUcsQ0FBQztFQUNGLE1BQU0sRUFBRSxPQUFPLEdBQ2hCOztBQUNEOzs2RUFFNkU7QUFDN0U7O0dBRUc7QUFDSCxBQUFBLEVBQUU7QUFDRixJQUFJO0FBQ0osRUFBRTtBQUNGLEVBQUUsQ0FBQztFQUNELE1BQU0sRUFBRSxLQUFLLEdBQ2Q7O0FBRUQsQUFBQSxFQUFFLENBQUM7RUFDRCxNQUFNLEVBQUUsQ0FBQyxHQUNWOztBQUNEOztHQUVHO0FBQ0gsQUFBQSxJQUFJLENBQUM7RUFDSCxPQUFPLEVBQUUsVUFBVSxHQUNwQjs7QUFFRCxBQUFBLEVBQUU7QUFDRixFQUFFLENBQUM7RUFDRCxPQUFPLEVBQUUsQ0FBQztFQUNWLGVBQWUsRUFBRSxJQUFJLEdBQ3RCOztBQUNEOztHQUVHO0FBQ0gsQUFBQSxHQUFHLENBQUMsRUFBRTtBQUNOLEdBQUcsQ0FBQyxFQUFFLENBQUM7RUFDTCxVQUFVLEVBQUUsSUFBSTtFQUNoQixnQkFBZ0IsRUFBRSxJQUFJLEdBQ3ZCOztBQUNEOzs2RUFFNkU7QUFDN0U7O0dBRUc7QUFDSCxBQUFBLEdBQUcsQ0FBQztFQUNGLE1BQU0sRUFBRSxDQUFDO0VBQ1QsU0FBUyxFQUFFLElBQUk7RUFDZixNQUFNLEVBQUUsSUFBSSxHQUNiOztBQUNEOztHQUVHO0FBQ0gsQUFBQSxHQUFHLEFBQUEsSUFBSyxDQUFBLEtBQUssRUFBRTtFQUNiLFFBQVEsRUFBRSxNQUFNLEdBQ2pCOztBQUNEOztnRkFFZ0Y7QUFDaEY7O0dBRUc7QUFDSCxBQUFBLE1BQU0sQ0FBQztFQUNMLE1BQU0sRUFBRSxDQUFDLEdBQ1Y7O0FBQ0Q7O2dGQUVnRjtBQUNoRjs7R0FFRztBQUNILEFBQUEsUUFBUSxDQUFDO0VBQ1AsTUFBTSxFQUFFLGlCQUFpQjtFQUN6QixNQUFNLEVBQUUsS0FBSztFQUNiLE9BQU8sRUFBRSxxQkFBcUIsR0FDL0I7O0FBQ0Q7OztHQUdHO0FBQ0gsQUFBQSxNQUFNLENBQUM7RUFDTCxNQUFNLEVBQUUsQ0FBQztFQUNULE9BQU87RUFDUCxPQUFPLEVBQUUsQ0FBQztFQUNWLE9BQU8sRUFDUjs7QUFDRDs7OztHQUlHO0FBQ0gsQUFBQSxNQUFNO0FBQ04sS0FBSztBQUNMLE1BQU07QUFDTixRQUFRLENBQUM7RUFDUCxXQUFXLEVBQUUsT0FBTztFQUNwQixPQUFPO0VBQ1AsU0FBUyxFQUFFLElBQUk7RUFDZixPQUFPO0VBQ1AsTUFBTSxFQUFFLENBQUM7RUFDVCxPQUFPLEVBQ1I7O0FBQ0Q7OztHQUdHO0FBQ0gsQUFBQSxNQUFNO0FBQ04sS0FBSyxDQUFDO0VBQ0osV0FBVyxFQUFFLE1BQU0sR0FDcEI7O0FBQ0Q7Ozs7O0dBS0c7QUFDSCxBQUFBLE1BQU07QUFDTixNQUFNLENBQUM7RUFDTCxjQUFjLEVBQUUsSUFBSSxHQUNyQjs7QUFDRDs7Ozs7O0dBTUc7QUFDSCxBQUFBLE1BQU07QUFDTixJQUFJLENBQUMsS0FBSyxDQUFBLEFBQUEsSUFBQyxDQUFLLFFBQVEsQUFBYjtBQUNYLEtBQUssQ0FBQSxBQUFBLElBQUMsQ0FBSyxPQUFPLEFBQVo7QUFDTixLQUFLLENBQUEsQUFBQSxJQUFDLENBQUssUUFBUSxBQUFiLEVBQWU7RUFDbkIsa0JBQWtCLEVBQUUsTUFBTTtFQUMxQixPQUFPO0VBQ1AsTUFBTSxFQUFFLE9BQU87RUFDZixPQUFPLEVBQ1I7O0FBQ0Q7O0dBRUc7QUFDSCxBQUFBLE1BQU0sQ0FBQSxBQUFBLFFBQUMsQUFBQTtBQUNQLElBQUksQ0FBQyxLQUFLLENBQUEsQUFBQSxRQUFDLEFBQUEsRUFBVTtFQUNuQixNQUFNLEVBQUUsT0FBTyxHQUNoQjs7QUFDRDs7O0dBR0c7QUFDSCxBQUFBLEtBQUssQ0FBQSxBQUFBLElBQUMsQ0FBSyxVQUFVLEFBQWY7QUFDTixLQUFLLENBQUEsQUFBQSxJQUFDLENBQUssT0FBTyxBQUFaLEVBQWM7RUFDbEIsVUFBVSxFQUFFLFVBQVU7RUFDdEIsT0FBTztFQUNQLE9BQU8sRUFBRSxDQUFDO0VBQ1YsT0FBTyxFQUNSOztBQUNEOzs7O0dBSUc7QUFDSCxBQUFBLEtBQUssQ0FBQSxBQUFBLElBQUMsQ0FBSyxRQUFRLEFBQWIsRUFBZTtFQUNuQixrQkFBa0IsRUFBRSxTQUFTO0VBQzdCLE9BQU87RUFDUCxlQUFlLEVBQUUsV0FBVztFQUM1QixrQkFBa0IsRUFBRSxXQUFXO0VBQy9CLE9BQU87RUFDUCxVQUFVLEVBQUUsV0FBVyxHQUN4Qjs7QUFDRDs7O0dBR0c7QUFDSCxBQUFBLEtBQUssQ0FBQSxBQUFBLElBQUMsQ0FBSyxRQUFRLEFBQWIsQ0FBYyw4QkFBOEI7QUFDbEQsS0FBSyxDQUFBLEFBQUEsSUFBQyxDQUFLLFFBQVEsQUFBYixDQUFjLDJCQUEyQixDQUFDO0VBQzlDLGtCQUFrQixFQUFFLElBQUksR0FDekI7O0FBQ0Q7O0dBRUc7QUFDSCxBQUFBLE1BQU0sQUFBQSxrQkFBa0I7QUFDeEIsS0FBSyxBQUFBLGtCQUFrQixDQUFDO0VBQ3RCLE1BQU0sRUFBRSxDQUFDO0VBQ1QsT0FBTyxFQUFFLENBQUMsR0FDWDs7QUFDRDs7O0dBR0c7QUFDSCxBQUFBLFFBQVEsQ0FBQztFQUNQLFFBQVEsRUFBRSxJQUFJO0VBQ2QsT0FBTztFQUNQLGNBQWMsRUFBRSxHQUFHO0VBQ25CLE9BQU8sRUFDUjs7QUFDRDs7Z0ZBRWdGO0FBQ2hGOztHQUVHO0FBQ0gsQUFBQSxLQUFLLENBQUM7RUFDSixlQUFlLEVBQUUsUUFBUTtFQUN6QixjQUFjLEVBQUUsQ0FBQyxHQVdsQjtFQWJELEFBSUUsS0FKRyxDQUlILEVBQUU7RUFKSixLQUFLLENBS0gsRUFBRSxDQUFDO0lBQ0QsVUFBVSxFQUFFLElBQUk7SUFDaEIsY0FBYyxFQUFFLEdBQUcsR0FDcEI7RUFSSCxBQVVFLEtBVkcsQ0FVSCxFQUFFLENBQUM7SUFDRCxhQUFhLEVBQUUsS0FBSyxHQUNyQjs7QUFHSCxBQUFBLENBQUMsQ0FBQztFQUNBLGtCQUFrQixFQUFFLFVBQVU7RUFDOUIsZUFBZSxFQUFFLFVBQVU7RUFDM0IsVUFBVSxFQUFFLFVBQVUsR0FDdkI7O0FBRUQsQUFBQSxrQkFBa0I7QUFDbEIsR0FBRyxDQUFDO0VBQ0YsV0FBVyxFQUFFLElBQUk7RUFDakIsV0FBVyxFQUFFLE1BQU07RUFDbkIsUUFBUSxFQUFFLE1BQU0sR0FDakI7O0FBRUQsQUFBQSxHQUFHO0FBQ0gsU0FBUyxDQUFDO0VBQ1IsSUFBSSxFQUFFLENBQUMsR0FXUjtFQWJELEFBSUUsR0FKQyxBQUlBLE1BQU0sRUFKVCxHQUFHLEFBS0EsT0FBTztFQUpWLFNBQVMsQUFHTixNQUFNO0VBSFQsU0FBUyxBQUlOLE9BQU8sQ0FBQztJQUNQLE9BQU8sRUFBRSxFQUFFO0lBQ1gsT0FBTyxFQUFFLEtBQUssR0FDZjtFQVJILEFBVUUsR0FWQyxBQVVBLE1BQU07RUFUVCxTQUFTLEFBU04sTUFBTSxDQUFDO0lBQ04sS0FBSyxFQUFFLElBQUksR0FDWjs7QUFFSDs7O0VBR0U7QUFDRixBQUFBLElBQUksQUFBQSxJQUFJLENBQUM7RUFDUCxXQUFXLEVBQUUsc0VBQXNFO0VBQ25GLFVBQVUsRUFBRSxNQUFNLEdBQ25COztBQUVELEFBQUEsTUFBTSxDQUFDO0VBQ0wsT0FBTyxFQUFFLEtBQUssR0FDZjs7QUQ3YkQsQUFBQSxTQUFTLENBQUM7RUFDUixRQUFRLEVBQUUsUUFBUSxHQUNuQjs7QUFNRCxBQUFBLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDO0VBQ1gsS0FBSyxFQUpELE9BQWdCLEdBS3JCOztBQUVELEFBQUEsTUFBTSxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUM7RUFDZixLQUFLLEVBUEMsT0FBZ0IsR0FRdkI7O0FBRUQsQUFBQSxDQUFDLENBQUM7RUFDQSxLQUFLLEVBQUUsSUFBSSxHQUNaOztBQUVELEFBQUEsbUJBQW1CLENBQUM7RUFDbEIsTUFBTSxFQUFFLFVBQVUsR0FLbkI7RUFORCxBQUdFLG1CQUhpQixDQUdqQixDQUFDLENBQUM7SUFDQSxZQUFZLEVBQUUsSUFBSSxHQUNuQjs7QUFHSCxBQUFBLElBQUksQ0FBQztFQUNILGFBQWEsRUFBRSxJQUFJLEdBQ3BCOztBQUVELEFBQUEsYUFBYSxDQUFDO0VBQ1osVUFBVSxFQUFFLEtBQUs7RUFDakIsVUFBVSxFQUFFLE1BQU07RUFDbEIsU0FBUyxFQUFFLEdBQUcsR0FDZjs7QUFFRCxBQUNFLG9CQURrQixDQUNsQixDQUFDLENBQUM7RUFDQSxlQUFlLEVBQUUsSUFBSTtFQUNyQixPQUFPLEVBQUUsWUFBWTtFQUNyQixLQUFLLEVBQUUsSUFBSTtFQUNYLE1BQU0sRUFBRSxJQUFJLEdBQ2I7O0FBR0gsQUFDRSxNQURJLENBQ0oscUJBQXFCLENBQUM7RUFDcEIsVUFBVSxFQUFFLE9BQU8sR0FDcEI7O0FBR0gsQUFBQSxpQkFBaUIsQ0FBQztFQUNoQixVQUFVLEVBQUUsS0FBSyxHQUNsQjs7QUFFRCxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFDdEIsQUFBQSxhQUFhLENBQUM7SUFDWixJQUFJLEVBQUUsR0FBRyxHQUNWOztBQUdILEFBQUEsZ0NBQWdDLENBQUM7RUFDL0IsU0FBUyxFQUFFLElBQUksR0FDaEI7O0FBRUQsQUFBQSxnQkFBZ0IsQ0FBQztFQUNmLFFBQVEsRUFBRSxLQUFLO0VBQ2YsTUFBTSxFQUFFLElBQUk7RUFDWixLQUFLLEVBQUUsSUFBSTtFQUNYLE9BQU8sRUFBRSxFQUFFLEdBTVo7RUFWRCxBQU1FLGdCQU5jLEFBTWIsb0JBQW9CLEVBTnZCLGdCQUFnQixBQU1VLG9CQUFvQixBQUFBLE1BQU0sQ0FBQztJQUNqRCxVQUFVLEVBdEVMLE9BQU87SUF1RVosS0FBSyxFQUFFLElBQUksR0FDWjs7QUFHSCxBQUFBLG1CQUFtQixFQUFFLG1CQUFtQixFQUFFLG1CQUFtQixBQUFBLG1CQUFtQixBQUFBLG1CQUFtQixFQUFFLG1CQUFtQixBQUFBLG1CQUFtQixBQUFBLGdCQUFnQixFQUFFLGFBQWEsQ0FBQztFQUN6SyxnQkFBZ0IsRUE1RVQsT0FBTztFQTZFZCxLQUFLLEVBQUUsSUFBSSxHQUNaOztBQUVELEFBQ0UsYUFEVyxBQUNWLG1CQUFtQixDQUFDO0VBQ25CLGdCQUFnQixFQWpGZCxPQUFnQixHQWtGbkI7O0FBR0gsQUFDRSxpQkFEZSxDQUNmLEtBQUssQ0FBQztFQUNKLE1BQU0sRUFBRSxPQUFPO0VBQ2YsTUFBTSxFQUFFLElBQUk7RUFDWixLQUFLLEVBQUUsQ0FBQztFQUNSLE9BQU8sRUFBRSxDQUFDO0VBQ1YsUUFBUSxFQUFFLFFBQVE7RUFDbEIsR0FBRyxFQUFFLENBQUM7RUFDTixLQUFLLEVBQUUsS0FBSztFQUNaLE9BQU8sRUFBRSxDQUFDLEdBQ1g7O0FBR0gsQUFDRSxvQkFEa0IsQ0FDbEIscUJBQXFCLENBQUM7RUFDcEIsVUFBVSxFQUFFLFVBQVU7RUFDdEIsS0FBSyxFQUFFLGlCQUFpQixHQUN6Qjs7QUFKSCxBQU1FLG9CQU5rQixDQU1sQixpQkFBaUIsQ0FBQztFQUNoQixLQUFLLEVBQUUsQ0FBQyxHQUNUOztBQUdILEFBQUEsYUFBYSxBQUFBLDRCQUE0QixHQUFHLEtBQUssRUFBRSxhQUFhLEFBQUEsNEJBQTRCLEdBQUcsS0FBSyxFQUFFLGFBQWEsQUFBQSw0QkFBNEIsR0FBRyxLQUFLLEVBQUUsYUFBYSxBQUFBLDRCQUE0QixHQUFHLEtBQUssQ0FBQztFQUN6TSxnQkFBZ0IsRUEvR1QsT0FBTyxHQWdIZjs7QUFFRCxBQUFBLGFBQWEsR0FBRyxVQUFVLENBQUM7RUFDekIsZ0JBQWdCLEVBQUUsNkVBQTZFLEVBQUUsdUNBQXFELEdBQ3ZKOztBQUVELEFBQUEsYUFBYSxBQUFBLElBQUssQ0FBQSw0QkFBNEIsQ0FBQyxJQUFLLENBQUEsNEJBQTRCLElBQUksT0FBTyxFQUFFLGFBQWEsQUFBQSxJQUFLLENBQUEsNEJBQTRCLENBQUMsSUFBSyxDQUFBLDRCQUE0QixJQUFJLE9BQU8sQ0FBQztFQUN2TCxnQkFBZ0IsRUFBRSxJQUFJO0VBQ3RCLFlBQVksRUFBRSxJQUFJO0VBQ2xCLElBQUksRUFBRSxJQUFJLEdBQ1g7O0FBRUQsQUFBQSw4QkFBOEIsQUFBQSxXQUFXLENBQUMscUJBQXFCLEVBQUUsOEJBQThCLEFBQUEsU0FBUyxDQUFDLHFCQUFxQixFQUFFLDhCQUE4QixBQUFBLGdCQUFnQixDQUFDLHFCQUFxQixDQUFDO0VBQ25NLEtBQUssRUFBRSxtQkFBbUIsR0FDM0I7O0FBRUQsQUFBQSxtQkFBbUIsQ0FBQztFQUNsQixLQUFLLEVBQUUsSUFBSSxHQUNaOztBQUVELEFBQUEsY0FBYyxDQUFDO0VBQ2IsT0FBTyxFQUFFLEtBQUssR0FDZjs7QUFFRCxBQUFBLG1CQUFtQixDQUFDLGVBQWUsQ0FBQyxxQkFBcUIsQUFBQSxNQUFNLENBQUM7RUFDOUQsZ0JBQWdCLEVBQUUsT0FBcUIsR0FDeEM7O0FBRUQsQUFBQSxtQkFBbUIsQ0FBQztFQUNsQixZQUFZLEVBQUUsQ0FBQyxHQUNoQjs7QUFFRCxBQUFBLEVBQUUsQUFBQSxlQUFlLENBQUM7RUFDaEIsTUFBTSxFQUFFLENBQUM7RUFDVCxPQUFPLEVBQUUsQ0FBQztFQUNWLFVBQVUsRUFBRSxJQUFJLEdBU2pCO0VBWkQsQUFLRSxFQUxBLEFBQUEsZUFBZSxDQUtmLHVCQUF1QixHQUFHLENBQUMsQUFBQSxxQkFBcUIsQ0FBQztJQUMvQyxLQUFLLEVBQUUsSUFBSSxHQUNaO0VBUEgsQUFTRSxFQVRBLEFBQUEsZUFBZSxDQVNmLFNBQVMsQ0FBQztJQUNSLFdBQVcsRUFBRSxJQUFJLEdBQ2xCOztBQUdILEFBQ0UsaUJBRGUsQ0FDZixHQUFHLENBQUM7RUFDRixNQUFNLEVBQUUsSUFBSSxHQUNiOztBQUdILEFBQUEsS0FBSyxBQUFBLGlCQUFpQixDQUFDO0VBQ3JCLGtCQUFrQixFQUFFLDBCQUEwQixHQUMvQzs7QUFFRCxBQUFBLGFBQWEsQ0FBQztFQUNaLFVBQVUsRUFBRSxLQUFLLEdBQ2xCOztBQUVELEFBQUEsU0FBUyxDQUFDO0VBQ1IsT0FBTyxFQUFFLElBQUksR0FDZDs7QUFFRCxBQUNFLGFBRFcsQ0FDWCxFQUFFLENBQUM7RUFDRCxTQUFTLEVBQUUsS0FBSyxHQUNqQjs7QUFISCxBQUtFLGFBTFcsQ0FLWCxHQUFHLENBQUM7RUFDRixNQUFNLEVBQUUsT0FBTyxHQUNoQjs7QUFHSCxBQUFBLGdCQUFnQixDQUFDO0VBQ2YsTUFBTSxFQUFFLElBQUk7RUFDWixnQkFBZ0IsRUFBRSxJQUFJO0VBQ3RCLE9BQU8sRUFBRSxJQUFJLEdBS2Q7RUFSRCxBQUtFLGdCQUxjLENBS2QsQ0FBQyxDQUFDO0lBQ0EsV0FBVyxFQUFFLGNBQWMsR0FDNUI7O0FBR0gsQUFBQSxhQUFhLENBQUM7RUFDWixLQUFLLEVBQUUsSUFBSTtFQUNYLE1BQU0sRUFBRSxHQUFHLEdBQ1o7O0FBRUQsQUFBQSxlQUFlLENBQUM7RUFDZCxhQUFhLEVBQUUsSUFBSSxHQUNwQjs7QUFFRCxBQUFBLFFBQVEsQUFBQSxxQkFBcUIsQ0FBQztFQUM1QixNQUFNLEVBQUUsR0FBRyxDQUFDLEtBQUssQ0FBQyxtQkFBbUIsR0FDdEMifQ== */
