@keyframes fadeInAnimation {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

.fallback-animation {
  animation-name: fadeInAnimation;
  animation-duration: 0.3s;
  animation-delay: 1s;
  animation-fill-mode: forwards;
  animation-iteration-count: 1;
  animation-timing-function: linear; }

/* ==========================================================================
   Media Queries
   ========================================================================== */
/* http://meyerweb.com/eric/tools/css/reset/
   v2.0 | 20110126
   License: none (public domain)
*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline; }

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block; }

body {
  line-height: 1; }

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

*,
*:before,
*:after {
  /* Inherit box-sizing to make it easier to change the property for components that leverage other behavior; see https://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
  box-sizing: inherit; }

html {
  box-sizing: border-box; }

button,
input[type="button"],
input[type="reset"],
input[type="submit"],
.button {
  background: transparent;
  border: 2px solid transparent;
  border-radius: 0px;
  cursor: pointer;
  padding: 1rem 2rem;
  transition: all 0.5s ease-out;
  color: #FFFFFF;
  font-family: "Inter", sans-serif;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1;
  text-decoration: none;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center; }
  button:hover,
  input[type="button"]:hover,
  input[type="reset"]:hover,
  input[type="submit"]:hover,
  .button:hover {
    color: #FFFFFF;
    background: #232E48; }
  button:active, button:focus,
  input[type="button"]:active,
  input[type="button"]:focus,
  input[type="reset"]:active,
  input[type="reset"]:focus,
  input[type="submit"]:active,
  input[type="submit"]:focus,
  .button:active,
  .button:focus {
    border-color: transparent;
    outline: none; }
  button.button--white,
  input[type="button"].button--white,
  input[type="reset"].button--white,
  input[type="submit"].button--white,
  .button.button--white {
    background-color: #FFFFFF;
    background: white; }
  button.button--black,
  input[type="button"].button--black,
  input[type="reset"].button--black,
  input[type="submit"].button--black,
  .button.button--black {
    background-color: #000000;
    background: #1a1a1a; }
  button.button--primary,
  input[type="button"].button--primary,
  input[type="reset"].button--primary,
  input[type="submit"].button--primary,
  .button.button--primary {
    background-color: #2E7ADD;
    background: #5a96e4; }
  button.button--secondary,
  input[type="button"].button--secondary,
  input[type="reset"].button--secondary,
  input[type="submit"].button--secondary,
  .button.button--secondary {
    background-color: #E9515E;
    background: #ef7e88; }

.button--link, .text-link {
  color: #2E7ADD;
  font-weight: 600;
  font-size: 14px;
  line-height: 20px;
  border-bottom: 1px solid rgba(35, 46, 72, 0);
  position: relative;
  transition: background-color .3s, color .3s, border-bottom .3s;
  padding: 0;
  margin-right: 2.375rem; }
  .button--link:last-child, .text-link:last-child {
    margin-right: 0; }
  .button--link:hover, .text-link:hover {
    background-color: transparent;
    color: #2E7ADD;
    border-bottom: 1px solid #2E7ADD; }
  .button--link::after, .text-link::after {
    content: '';
    position: absolute;
    top: 55%;
    transform: translateY(-50%);
    right: calc( -23px - 7px);
    width: 23px;
    height: 17px;
    background-image: url("../img/icon_arrow-right--primary.svg"); }

.button--link-black {
  color: #232E48; }
  .button--link-black::after {
    filter: brightness(0.1); }

.button--link-white {
  color: #FFFFFF !important; }
  .button--link-white::after {
    filter: brightness(10); }
  .button--link-white:hover {
    color: #FFFFFF;
    border-bottom: 1px solid #FFFFFF !important; }

.button--outline, .cta-outline {
  color: #232E48;
  background-color: transparent;
  border: 2px solid #232E48;
  z-index: 1;
  overflow: hidden;
  border-radius: 30px;
  font-size: 0.875rem;
  line-height: 1.25rem;
  padding: 0.625rem 1.5625rem; }
  .button--outline:before, .cta-outline:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    background-color: #232E48;
    width: 100%;
    height: 100%;
    transform: translateX(-110%) skew(-25deg);
    transition: transform .3s linear;
    z-index: -1; }
  .button--outline:hover, .cta-outline:hover {
    color: #FFFFFF;
    background-color: transparent; }
    .button--outline:hover:before, .cta-outline:hover:before {
      transform: translateX(0%) skew(-25deg) scale(1.05); }

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
optgroup,
select,
textarea {
  border: 1px solid #000000;
  border-radius: 0.1875rem;
  padding: 0.1875rem;
  width: 100%;
  color: #000000;
  font-family: "Inter", sans-serif;
  font-size: 1rem;
  line-height: 1; }
  input[type="text"]:focus,
  input[type="email"]:focus,
  input[type="url"]:focus,
  input[type="password"]:focus,
  input[type="search"]:focus,
  input[type="number"]:focus,
  input[type="tel"]:focus,
  input[type="range"]:focus,
  input[type="date"]:focus,
  input[type="month"]:focus,
  input[type="week"]:focus,
  input[type="time"]:focus,
  input[type="datetime"]:focus,
  input[type="datetime-local"]:focus,
  input[type="color"]:focus,
  optgroup:focus,
  select:focus,
  textarea:focus {
    color: #000000; }

/* --- Stylesheet for Pardot Footer Form --- */
.pardot-form {
  font-family: 'Inter', sans-serif;
  overflow: hidden;
  position: relative; }
  .pardot-form .field-label {
    font-size: 14px;
    color: white;
    position: absolute;
    margin: 0;
    top: 4px;
    left: 3px; }
  .pardot-form .form-field input {
    color: white;
    width: 100%;
    height: 33px;
    background: transparent;
    border: none;
    border-bottom: 1.5px solid white;
    border-radius: 0;
    padding-bottom: 12px; }
  .pardot-form .form-field input:-ms-input-placeholder {
    color: white;
    font-size: 14px;
    line-height: 20px;
    letter-spacing: -0.2px; }
  .pardot-form .form-field input::placeholder {
    color: white;
    font-size: 14px;
    line-height: 20px;
    letter-spacing: -0.2px; }
  .pardot-form .form-field input:active,
  .pardot-form .form-field input:focus {
    outline: none; }
  .pardot-form .floating--ready label {
    position: absolute;
    top: 6px;
    left: 0px; }
  .pardot-form .floating--floating label {
    color: #E9515E;
    font-weight: bold;
    font-size: 10px;
    line-height: 20px;
    letter-spacing: -0.1px;
    top: -5px;
    transition: .3s; }
  .pardot-form .floating--floating input,
  .pardot-form .floating--floating textarea,
  .pardot-form .floating--floating select {
    outline: none;
    padding-top: 20px;
    transition: .3s;
    color: #646464; }
  .pardot-form .submit {
    display: inline;
    position: absolute;
    top: 0;
    right: 35px;
    margin: 0;
    padding-bottom: 12px;
    height: 100%; }
  .pardot-form .submit input {
    font-size: 14px;
    line-height: 20px;
    width: 100%;
    background: none;
    border: none;
    padding: 0;
    color: #FBB31B;
    cursor: pointer;
    padding-bottom: 2px; }
    .pardot-form .submit input:hover {
      border-bottom: 0.8px solid #FBB31B; }
  .pardot-form .errors {
    width: 100%;
    padding-left: 1em;
    color: #E9515E;
    margin-bottom: 1.5em;
    display: none; }
  .pardot-form .error.no-label {
    display: inline-block;
    margin: .5em 0;
    padding-left: 1em;
    color: #E9515E; }
  .pardot-form .error input {
    border: 1px solid #E9515E; }

.icon-arrow {
  width: 20px;
  height: 2px;
  background-color: #FBB31B;
  position: absolute;
  top: 10px;
  right: 6px;
  border-radius: 4px; }

.icon-arrow::before {
  content: '';
  width: 10px;
  height: 2px;
  border-radius: 4px;
  background-color: #FBB31B;
  transform: rotate(45deg);
  position: absolute;
  right: -2px;
  bottom: 3px; }

.icon-arrow::after {
  content: '';
  width: 10px;
  height: 2px;
  border-radius: 4px;
  background-color: #FBB31B;
  transform: rotate(-45deg);
  position: absolute;
  right: -2px;
  bottom: -3px; }

/* --- Stylesheet for Pardot Contact Page --- */
.pardot-form-contact, .pardot-form-header {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-pack: justify;
      justify-content: space-between;
  position: relative;
  padding-bottom: 55px; }
  .pardot-form-contact__footer, .pardot-form-header__footer {
    width: 100%; }
    .pardot-form-contact__footer__required, .pardot-form-header__footer__required {
      font-size: 13px;
      color: #939FAB;
      line-height: 28px;
      font-style: italic;
      position: absolute;
      bottom: 10px;
      right: 10px; }
  .pardot-form-contact input,
  .pardot-form-contact textarea, .pardot-form-header input,
  .pardot-form-header textarea {
    background-color: rgba(204, 212, 220, 0.2);
    border: none;
    border-radius: 30px;
    padding-left: 25px;
    transition: .3s;
    line-height: 24px; }
  .pardot-form-contact input:-ms-input-placeholder,
  .pardot-form-contact textarea:-ms-input-placeholder,
  .pardot-form-contact label, .pardot-form-header input:-ms-input-placeholder,
  .pardot-form-header textarea:-ms-input-placeholder,
  .pardot-form-header label {
    color: #939FAB;
    font-size: 16px;
    line-height: 24px;
    letter-spacing: -0.2px; }
  .pardot-form-contact input::placeholder,
  .pardot-form-contact textarea::placeholder,
  .pardot-form-contact label, .pardot-form-header input::placeholder,
  .pardot-form-header textarea::placeholder,
  .pardot-form-header label {
    color: #939FAB;
    font-size: 16px;
    line-height: 24px;
    letter-spacing: -0.2px; }
  .pardot-form-contact label, .pardot-form-header label {
    font-family: 'Inter', sans-serif;
    transition: .3s; }
  .pardot-form-contact input, .pardot-form-header input {
    height: 55px;
    color: #646464; }
  .pardot-form-contact textarea, .pardot-form-header textarea {
    height: 150px;
    color: #646464;
    padding-top: 10px; }
  .pardot-form-contact select, .pardot-form-header select {
    -webkit-appearance: none;
    -moz-appearance: none;
    text-indent: 1px;
    text-overflow: '';
    height: 55px;
    color: #646464;
    border-color: #939FAB;
    border-radius: 30px;
    padding-left: 25px;
    transition: .3s;
    line-height: 24px;
    background: url(../img/select-box-dropdown.svg) center right no-repeat; }
    .pardot-form-contact select::-ms-expand, .pardot-form-header select::-ms-expand {
      display: none; }
  .pardot-form-contact .floating--ready label, .pardot-form-header .floating--ready label {
    position: absolute;
    top: 16px;
    left: 25px; }
  .pardot-form-contact .floating--floating label, .pardot-form-header .floating--floating label {
    color: #E9515E;
    font-weight: bold;
    font-size: 10px;
    line-height: 20px;
    letter-spacing: -0.1px;
    top: 6px;
    left: 27px;
    transition: .3s; }
  .pardot-form-contact .floating--floating input,
  .pardot-form-contact .floating--floating textarea,
  .pardot-form-contact .floating--floating select, .pardot-form-header .floating--floating input,
  .pardot-form-header .floating--floating textarea,
  .pardot-form-header .floating--floating select {
    outline: none;
    border: 1px solid #CCD4DC;
    padding-top: 20px;
    transition: .3s;
    color: #646464; }
  .pardot-form-contact .submit, .pardot-form-header .submit {
    position: absolute;
    bottom: 0;
    color: #232E48;
    background-color: transparent;
    border: 2px solid  #232E48;
    z-index: 1;
    overflow: hidden;
    border-radius: 30px;
    font-size: 14px;
    line-height: 20px; }
  .pardot-form-contact .submit input[type="submit"], .pardot-form-header .submit input[type="submit"] {
    border: none;
    background-color: transparent;
    color: #232E48;
    height: 41px;
    padding: 10px 37px; }
    @media (max-width: 767px) {
      .pardot-form-contact .submit input[type="submit"], .pardot-form-header .submit input[type="submit"] {
        width: 100%; } }
  .pardot-form-contact .submit:before, .pardot-form-header .submit:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    background-color: #232E48;
    width: 100%;
    height: 100%;
    transform: translateX(-110%) skew(-25deg);
    transition: transform .3s linear, background-color .3s linear;
    z-index: -1; }
  .pardot-form-contact .submit:hover, .pardot-form-header .submit:hover {
    color: white;
    background-color: transparent; }
  .pardot-form-contact .submit:hover::before, .pardot-form-header .submit:hover::before {
    transform: translateX(0%) skew(-25deg) scale(1.05);
    background-color: #232E48; }
  .pardot-form-contact .submit:hover input[type="submit"], .pardot-form-header .submit:hover input[type="submit"] {
    color: white;
    background-color: #232E48; }
  .pardot-form-contact .form-modal__container .submit, .pardot-form-header .form-modal__container .submit {
    position: relative;
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content; }
  .pardot-form-contact .form-field, .pardot-form-header .form-field {
    position: relative;
    margin-bottom: 15px;
    display: inline-block;
    width: 100%; }
    .pardot-form-contact .form-field.half, .pardot-form-header .form-field.half {
      width: 47%; }
    .pardot-form-contact .form-field.required label::after, .pardot-form-header .form-field.required label::after {
      content: '*';
      margin-left: 1px; }
  .pardot-form-contact .errors, .pardot-form-header .errors {
    width: 100%;
    padding-left: 1em;
    color: #E9515E;
    margin-bottom: 1.5em; }
  .pardot-form-contact .error.no-label, .pardot-form-header .error.no-label {
    display: inline-block;
    margin: .5em 0;
    padding-left: 1em;
    color: #E9515E; }

.pardot-form-header .submit {
  left: 50%;
  transform: translateX(-50%); }

/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm1peGlucy9fbWl4aW5zLW1hc3Rlci5zY3NzIiwibWl4aW5zL19tZWRpYV9xdWVyaWVzLnNjc3MiLCJfcmVzZXQuc2NzcyIsInBhcmRvdC1mb3JtLnNjc3MiLCJlbGVtZW50cy9fYnV0dG9ucy5zY3NzIiwibWl4aW5zL19yZW1fY2FsYy5zY3NzIiwiX3ZhcnMuc2NzcyIsImVsZW1lbnRzL19mb3Jtcy5zY3NzIiwibW9kdWxlcy9fcGFyZG90LWZvcm0uc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFvRkE7RUFDQztJQUNDLFdBQVUsRUFBQTtFQUVYO0lBQ0MsV0FBVSxFQUFBLEVBQUE7O0FBSVo7RUFDQyxnQ0FBK0I7RUFDL0IseUJBQXdCO0VBQ3hCLG9CQUFtQjtFQUNuQiw4QkFBNkI7RUFDN0IsNkJBQTRCO0VBQzVCLGtDQUFpQyxFQUNqQzs7QUNwR0Q7O2dGQUVnRjtBQ0ZoRjs7O0VBR0U7QUFFRjs7Ozs7Ozs7Ozs7OztFQWFDLFVBQVM7RUFDVCxXQUFVO0VBQ1YsVUFBUztFQUNULGdCQUFlO0VBQ2YsY0FBYTtFQUNiLHlCQUF3QixFQUN4Qjs7QUFDRCxpREFBaUQ7QUFDakQ7O0VBRUMsZUFBYyxFQUNkOztBQUNEO0VBQ0MsZUFBYyxFQUNkOztBQUNEO0VBQ0MsaUJBQWdCLEVBQ2hCOztBQUNEO0VBQ0MsYUFBWSxFQUNaOztBQUNEOztFQUVDLFlBQVc7RUFDWCxjQUFhLEVBQ2I7O0FBQ0Q7RUFDQywwQkFBeUI7RUFDekIsa0JBQWlCLEVBQ2pCOztBQzNDRDs7O0VBRVUsdU1BQXVNO0VBQ2hOLG9CQUFtQixFQUNuQjs7QUFFRDtFQUNDLHVCQUFzQixFQUN0Qjs7QUNERDs7Ozs7RUFLQyx3QkFiK0M7RUFjL0MsOEJBQXlEO0VBQ3pELG1CQVhvQztFQVlwQyxnQkFBZTtFQUNmLG1CQ1VzRDtFRFR0RCw4QkUyRW9DO0VGekVwQyxlRXZCYztFRndCZCxpQ0VrRHlCO0VGakR6QixnQkNLc0Q7RURKdEQsaUJFZ0VlO0VGL0RmLGVBQWM7RUFDZCxzQkFB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VTtJQUNWLGlCQUFnQjtJQUNoQixvQkFBbUI7SUFDbkIsZ0JBQWU7SUFDZixrQkFBaUIsRUFDZDtFQXJITDtJQXVIUSxhQUFZO0lBQ1osOEJBQTZCO0lBQzdCLGVBQWU7SUFDZixhQUFZO0lBQ1osbUJBQWtCLEVBTXJCO0lBSEc7TUE5SFI7UUErSFksWUFBVyxFQUVsQixFQUFBO0VBaklMO0lBbUlRLFlBQVc7SUFDWCxtQkFBa0I7SUFDbEIsT0FBTTtJQUNOLFFBQU87SUFDUCwwQkFBMEI7SUFDMUIsWUFBVztJQUNYLGFBQVk7SUFDWiwwQ0FBeUM7SUFDekMsOERBQTZEO0lBQzdELFlBQVcsRUFDZDtFQTdJTDtJQStJUSxhQUFZO0lBQ1osOEJBQTZCLEVBQ2hDO0VBakpMO0lBbUpRLG1EQUFrRDtJQUNsRCwwQkFBMEIsRUFDN0I7RUFySkw7SUF1SlEsYUFBYTtJQUNiLDBCQUF5QixFQUM1QjtFQXpKTDtJQTJKUSxtQkFBa0I7SUFDbEIsMkJBQWtCO0lBQWxCLHdCQUFrQjtJQUFsQixtQkFBa0IsRUFDckI7RUE3Skw7SUFpS1EsbUJBQWtCO0lBQ2xCLG9CQUFtQjtJQUNuQixzQkFBcUI7SUFDckIsWUFBVyxFQVdkO0lBL0tMO01Bc0tZLFdBQVUsRUFDYjtJQXZLVDtNQTJLZ0IsYUFBWTtNQUNaLGlCQUFnQixFQUNuQjtFQTdLYjtJQWlMUSxZQUFXO0lBQ1gsa0JBQWlCO0lBQ2pCLGVGelNXO0lFMFNYLHFCQUFvQixFQUN2QjtFQXJMTDtJQXVMUSxzQkFBcUI7SUFDckIsZUFBYztJQUNkLGtCQUFpQjtJQUNqQixlRmhUVyxFRWlUZDs7QUFHTDtFQUVRLFVBQVM7RUFDVCw0QkFBMkIsRUFDOUIiLCJmaWxlIjoicGFyZG90LWZvcm0uY3NzIiwic291cmNlc0NvbnRlbnQiOlsiQG1peGluIGFic29sdXRlLWNlbnRlcntcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IDUwJTtcblx0bGVmdDogNTAlO1xuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZSggLTUwJSwgLTUwJSApO1xufVxuXG5AbWl4aW4gYWJzb2x1dGUtY2VudGVyLWhvcml6b250YWx7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0bGVmdDogNTAlO1xuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoIC01MCUgKTtcbn1cblxuQG1peGluIGFic29sdXRlLWNlbnRlci12ZXJ0aWNhbHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IDUwJTtcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKCAtNTAlICk7XG59XG5cbkBtaXhpbiBhYnNvbHV0ZS1mdWxse1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHRvcDogMDtcblx0cmlnaHQ6IDA7XG5cdGJvdHRvbTogMDtcblx0bGVmdDogMDtcbn1cblxuLy8gQ2VudGVyIGJsb2NrXG5AbWl4aW4gY2VudGVyLWJsb2NrIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdG1hcmdpbi1sZWZ0OiBhdXRvO1xuXHRtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG5cbi8vIENsZWFyZml4XG5AbWl4aW4gY2xlYXJmaXgoKSB7XG5cdGNvbnRlbnQ6IFwiXCI7XG5cdGRpc3BsYXk6IHRhYmxlO1xuXHR0YWJsZS1sYXlvdXQ6IGZpeGVkO1xufVxuXG4vLyBDbGVhciBhZnRlciAobm90IGFsbCBjbGVhcmZpeCBuZWVkIHRoaXMgYWxzbylcbkBtaXhpbiBjbGVhcmZpeC1hZnRlcigpIHtcblx0Y2xlYXI6IGJvdGg7XG59XG5cbkBtaXhpbiBpbWFnZU9iamVjdEZpdCgkZml0OiBjb3Zlcikge1xuXHRAaWYgKCRmaXQgPT0gXCJjb250YWluXCIpIHtcblx0XHRoZWlnaHQ6IGF1dG87XG5cdFx0bGVmdDogMDtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiA1MCU7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuXHRcdHdpZHRoOiAxMDAlO1xuXG5cdFx0QHN1cHBvcnRzIChvYmplY3QtZml0OiBjb250YWluKSB7XG5cdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHRsZWZ0OiAwO1xuXHRcdFx0b2JqZWN0LWZpdDogY29udGFpbjtcblx0XHRcdG9iamVjdC1wb3NpdGlvbjogY2VudGVyO1xuXHRcdFx0dG9wOiAwO1xuXHRcdFx0dHJhbnNmb3JtOiBub25lO1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0fVxuXHR9IEBlbHNlIHtcblx0XHRoZWlnaHQ6IGF1dG87XG5cdFx0bGVmdDogMDtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiA1MCU7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuXHRcdHdpZHRoOiAxMDAlO1xuXG5cdFx0QHN1cHBvcnRzIChvYmplY3QtZml0OiBjb3Zlcikge1xuXHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0bGVmdDogMDtcblx0XHRcdG9iamVjdC1maXQ6IGNvdmVyO1xuXHRcdFx0b2JqZWN0LXBvc2l0aW9uOiBjZW50ZXI7XG5cdFx0XHR0b3A6IDA7XG5cdFx0XHR0cmFuc2Zvcm06IG5vbmU7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHR9XG5cdH1cbn1cblxuQGtleWZyYW1lcyBmYWRlSW5BbmltYXRpb24ge1xuXHQwJSB7XG5cdFx0b3BhY2l0eTogMDtcblx0fVxuXHQxMDAlIHtcblx0XHRvcGFjaXR5OiAxO1xuXHR9XG59XG5cbi5mYWxsYmFjay1hbmltYXRpb257XG5cdGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5BbmltYXRpb247XG5cdGFuaW1hdGlvbi1kdXJhdGlvbjogMC4zcztcblx0YW5pbWF0aW9uLWRlbGF5OiAxcztcblx0YW5pbWF0aW9uLWZpbGwtbW9kZTogZm9yd2FyZHM7XG5cdGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IDE7XG5cdGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbn1cblxuQGltcG9ydCBcIm1lZGlhX3F1ZXJpZXNcIjtcbkBpbXBvcnQgXCJyZW1fY2FsY1wiO1xuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIE1lZGlhIFF1ZXJpZXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbkBtaXhpbiByZXNwb25kLXRvKCRicCkge1xuXHRAaWYgbWFwLWhhcy1rZXkoJGdyaWQtYnJlYWtwb2ludHMsICRicCkge1xuXHRcdCRicDogbWFwLWdldCggJGdyaWQtYnJlYWtwb2ludHMsICRicCApO1xuXHR9XG5cdEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGJwIC0gMSkge1xuXHRcdEBjb250ZW50O1xuXHR9XG59XG5AbWl4aW4gcmVzcG9uZC1hYm92ZSgkYnApIHtcblx0QGlmIG1hcC1oYXMta2V5KCRncmlkLWJyZWFrcG9pbnRzLCAkYnApIHtcblx0XHQkYnA6IG1hcC1nZXQoICRncmlkLWJyZWFrcG9pbnRzLCAkYnAgKTtcblx0fVxuXHRAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRicCkge1xuXHRcdEBjb250ZW50O1xuXHR9XG59XG5AbWl4aW4gcmVzcG9uZC1iZXR3ZWVuKCRicDEsICRicDIpIHtcblx0QGlmIG1hcC1oYXMta2V5KCRncmlkLWJyZWFrcG9pbnRzLCAkYnAxKSB7XG5cdFx0JGJwMTogbWFwLWdldCggJGdyaWQtYnJlYWtwb2ludHMsICRicDEgKTtcblx0fVxuXHRAaWYgbWFwLWhhcy1rZXkoJGdyaWQtYnJlYWtwb2ludHMsICRicDIpIHtcblx0XHQkYnAyOiBtYXAtZ2V0KCAkZ3JpZC1icmVha3BvaW50cywgJGJwMiApO1xuXHR9XG5cdEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJGJwMSkgYW5kIChtYXgtd2lkdGg6ICRicDIgLSAxKSB7XG5cdFx0QGNvbnRlbnQ7XG5cdH1cbn1cbkBtaXhpbiByZXNwb25kLXRvLWhlaWdodCgkYnApIHtcblx0QG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LWhlaWdodDogJGJwIC0gMSkge1xuXHRcdEBjb250ZW50O1xuXHR9XG59XG5AbWl4aW4gcmVzcG9uZC1hYm92ZS1oZWlnaHQoJGJwKSB7XG5cdEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi1oZWlnaHQ6ICRicCkge1xuXHRcdEBjb250ZW50O1xuXHR9XG59XG5AbWl4aW4gcmVzcG9uZC1iZXR3ZWVuLWhlaWdodCgkYnAxLCAkYnAyKSB7XG5cdEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi1oZWlnaHQ6ICRicDEpIGFuZCAobWF4LWhlaWdodDogJGJwMiAtIDEpIHtcblx0XHRAY29udGVudDtcblx0fVxufVxuXG5AbWl4aW4gcmV0aW5hKCkge1xuXHRAbWVkaWEgb25seSBzY3JlZW4gYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLFxuXHRcdG9ubHkgc2NyZWVuIGFuZCAobWluLS1tb3otZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSxcblx0XHRvbmx5IHNjcmVlbiBhbmQgKC1vLW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIvMSksXG5cdFx0b25seSBzY3JlZW4gYW5kIChtaW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSxcblx0XHRvbmx5IHNjcmVlbiBhbmQgKG1pbi1yZXNvbHV0aW9uOiAxOTJkcGkpLFxuXHRcdG9ubHkgc2NyZWVuIGFuZCAobWluLXJlc29sdXRpb246IDJkcHB4KSB7XG5cdFx0QGNvbnRlbnQ7XG5cdH1cbn1cblxuLy8gSUUgMTArIE1lZGlhIFF1ZXJ5IChkb2VzIG5vdCBhZmZlY3QgRWRnZSlcbkBtaXhpbiBpZSgpIHtcblx0QG1lZGlhIGFsbCBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpIHtcblx0XHRAY29udGVudDtcblx0fVxufVxuIiwiLyogaHR0cDovL21leWVyd2ViLmNvbS9lcmljL3Rvb2xzL2Nzcy9yZXNldC9cbiAgIHYyLjAgfCAyMDExMDEyNlxuICAgTGljZW5zZTogbm9uZSAocHVibGljIGRvbWFpbilcbiovXG5cbmh0bWwsIGJvZHksIGRpdiwgc3BhbiwgYXBwbGV0LCBvYmplY3QsIGlmcmFtZSxcbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsIHAsIGJsb2NrcXVvdGUsIHByZSxcbmEsIGFiYnIsIGFjcm9ueW0sIGFkZHJlc3MsIGJpZywgY2l0ZSwgY29kZSxcbmRlbCwgZGZuLCBlbSwgaW1nLCBpbnMsIGtiZCwgcSwgcywgc2FtcCxcbnNtYWxsLCBzdHJpa2UsIHN0cm9uZywgc3ViLCBzdXAsIHR0LCB2YXIsXG5iLCB1LCBpLCBjZW50ZXIsXG5kbCwgZHQsIGRkLCBvbCwgdWwsIGxpLFxuZmllbGRzZXQsIGZvcm0sIGxhYmVsLCBsZWdlbmQsXG50YWJsZSwgY2FwdGlvbiwgdGJvZHksIHRmb290LCB0aGVhZCwgdHIsIHRoLCB0ZCxcbmFydGljbGUsIGFzaWRlLCBjYW52YXMsIGRldGFpbHMsIGVtYmVkLFxuZmlndXJlLCBmaWdjYXB0aW9uLCBmb290ZXIsIGhlYWRlciwgaGdyb3VwLFxubWVudSwgbmF2LCBvdXRwdXQsIHJ1YnksIHNlY3Rpb24sIHN1bW1hcnksXG50aW1lLCBtYXJrLCBhdWRpbywgdmlkZW8ge1xuXHRtYXJnaW46IDA7XG5cdHBhZGRpbmc6IDA7XG5cdGJvcmRlcjogMDtcblx0Zm9udC1zaXplOiAxMDAlO1xuXHRmb250OiBpbmhlcml0O1xuXHR2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG4vKiBIVE1MNSBkaXNwbGF5LXJvbGUgcmVzZXQgZm9yIG9sZGVyIGJyb3dzZXJzICovXG5hcnRpY2xlLCBhc2lkZSwgZGV0YWlscywgZmlnY2FwdGlvbiwgZmlndXJlLFxuZm9vdGVyLCBoZWFkZXIsIGhncm91cCwgbWVudSwgbmF2LCBzZWN0aW9uIHtcblx0ZGlzcGxheTogYmxvY2s7XG59XG5ib2R5IHtcblx0bGluZS1oZWlnaHQ6IDE7XG59XG5vbCwgdWwge1xuXHRsaXN0LXN0eWxlOiBub25lO1xufVxuYmxvY2txdW90ZSwgcSB7XG5cdHF1b3Rlczogbm9uZTtcbn1cbmJsb2NrcXVvdGU6YmVmb3JlLCBibG9ja3F1b3RlOmFmdGVyLFxucTpiZWZvcmUsIHE6YWZ0ZXIge1xuXHRjb250ZW50OiAnJztcblx0Y29udGVudDogbm9uZTtcbn1cbnRhYmxlIHtcblx0Ym9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcblx0Ym9yZGVyLXNwYWNpbmc6IDA7XG59XG4iLCJAaW1wb3J0IFwidmFyc1wiO1xuQGltcG9ydCBcIm1peGlucy9taXhpbnMtbWFzdGVyXCI7XG5AaW1wb3J0IFwicmVzZXRcIjtcblxuKixcbio6YmVmb3JlLFxuKjphZnRlciB7IC8qIEluaGVyaXQgYm94LXNpemluZyB0byBtYWtlIGl0IGVhc2llciB0byBjaGFuZ2UgdGhlIHByb3BlcnR5IGZvciBjb21wb25lbnRzIHRoYXQgbGV2ZXJhZ2Ugb3RoZXIgYmVoYXZpb3I7IHNlZSBodHRwczovL2Nzcy10cmlja3MuY29tL2luaGVyaXRpbmctYm94LXNpemluZy1wcm9iYWJseS1zbGlnaHRseS1iZXR0ZXItYmVzdC1wcmFjdGljZS8gKi9cblx0Ym94LXNpemluZzogaW5oZXJpdDtcbn1cblxuaHRtbCB7XG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbkBpbXBvcnQgXCJlbGVtZW50cy9idXR0b25zXCI7XG5AaW1wb3J0IFwiZWxlbWVudHMvZm9ybXNcIjtcbkBpbXBvcnQgXCJtb2R1bGVzL3BhcmRvdC1mb3JtXCI7IiwiJGVsZW1lbnRfX2J1dHRvbl9fcGVyY2VudGFnZTogMTAlICFkZWZhdWx0O1xuJGVsZW1lbnRfX2J1dHRvbl9fYm9yZGVyX19jb2xvcjogdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kZWxlbWVudF9fYnV0dG9uX19ib3JkZXJfX3dpZHRoOiAycHggIWRlZmF1bHQ7XG4kZWxlbWVudF9fYnV0dG9uX19iYWNrZ3JvdW5kX19jb2xvcjogdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kZWxlbWVudF9fYnV0dG9uX19iYWNrZ3JvdW5kX19jb2xvcl9faG92ZXI6IGxpZ2h0ZW4oICRlbGVtZW50X19idXR0b25fX2JhY2tncm91bmRfX2NvbG9yLCAkZWxlbWVudF9fYnV0dG9uX19wZXJjZW50YWdlICkgIWRlZmF1bHQ7XG4kZWxlbWVudF9fYnV0dG9uX19iYWNrZ3JvdW5kX19jb2xvcl9fZm9jdXM6IGxpZ2h0ZW4oICRlbGVtZW50X19idXR0b25fX2JhY2tncm91bmRfX2NvbG9yLCAkZWxlbWVudF9fYnV0dG9uX19wZXJjZW50YWdlICkgIWRlZmF1bHQ7XG4kZWxlbWVudF9fYnV0dG9uX190cmFuc2l0aW9uOiAkZ2xvYmFsLXRyYW5zaXRpb24gIWRlZmF1bHQ7XG4kZWxlbWVudF9fYnV0dG9uX19ib3JkZXJfX3JhZGl1czogMHB4ICFkZWZhdWx0O1xuJGVsZW1lbnRfX2J1dHRvbl9fZm9udF9fc2l6ZTogcmVtLWNhbGMoIDE2ICkgIWRlZmF1bHQ7XG4kZWxlbWVudF9fYnV0dG9uX19wYWRkaW5nOiByZW0tY2FsYyggMTYgMzIgKSAhZGVmYXVsdDtcblxuYnV0dG9uLFxuaW5wdXRbdHlwZT1cImJ1dHRvblwiXSxcbmlucHV0W3R5cGU9XCJyZXNldFwiXSxcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0sXG4uYnV0dG9uIHtcblx0YmFja2dyb3VuZDogJGVsZW1lbnRfX2J1dHRvbl9fYmFja2dyb3VuZF9fY29sb3I7XG5cdGJvcmRlcjogJGVsZW1lbnRfX2J1dHRvbl9fYm9yZGVyX193aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcblx0Ym9yZGVyLXJhZGl1czogJGVsZW1lbnRfX2J1dHRvbl9fYm9yZGVyX19yYWRpdXM7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0cGFkZGluZzogJGVsZW1lbnRfX2J1dHRvbl9fcGFkZGluZztcblx0dHJhbnNpdGlvbjogJGVsZW1lbnRfX2J1dHRvbl9fdHJhbnNpdGlvbjtcblxuXHRjb2xvcjogJHdoaXRlO1xuXHRmb250LWZhbWlseTogJGZvbnQ7XG5cdGZvbnQtc2l6ZTogJGVsZW1lbnRfX2J1dHRvbl9fZm9udF9fc2l6ZTtcblx0Zm9udC13ZWlnaHQ6IG1hcC1nZXQoICRmb250LXdlaWdodHMgLCAnc2VtaWJvbGQnICk7XG5cdGxpbmUtaGVpZ2h0OiAxO1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cblx0ZGlzcGxheTogaW5saW5lLWZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG5cblx0Jjpob3ZlciB7XG5cdFx0Y29sb3I6ICR3aGl0ZTtcblx0XHRiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRiYWNrZ3JvdW5kLWNvbG9ycyAsICduYXZ5JyApO1xuXHR9XG5cblx0JjphY3RpdmUsXG5cdCY6Zm9jdXMge1xuXHRcdGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdFx0b3V0bGluZTogbm9uZTtcblx0fVxuXG5cdEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGJ1dHRvbi1jb2xvcnN7XG5cdFx0Ji5idXR0b24tLSN7JG5hbWV9e1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuXHRcdFx0YmFja2dyb3VuZDogbGlnaHRlbiggJGNvbG9yLCAkZWxlbWVudF9fYnV0dG9uX19wZXJjZW50YWdlIClcblx0XHR9XG5cdH1cbn1cblxuLmJ1dHRvbiB7XG5cblx0Ji0tbGluayB7XG5cdFx0Y29sb3I6ICRwcmltYXJ5O1xuXHRcdGZvbnQtd2VpZ2h0OiBtYXAtZ2V0KCRmb250LXdlaWdodHMgLCAnc2VtaWJvbGQnICk7XG5cdFx0Zm9udC1zaXplOiAxNHB4O1xuXHRcdGxpbmUtaGVpZ2h0OiAyMHB4O1xuXHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKCRibHVlLWRhcmssICRhbHBoYTogMCk7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjNzLCBjb2xvciAuM3MsIGJvcmRlci1ib3R0b20gLjNzO1xuXHRcdHBhZGRpbmc6IDA7XG5cdFx0bWFyZ2luLXJpZ2h0OiByZW0tY2FsYygzOCk7XG5cblx0XHQmOmxhc3QtY2hpbGQge1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiByZW0tY2FsYygwKTtcblx0XHR9XG5cdFxuXHRcdCY6aG92ZXIge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdFx0XHRjb2xvcjogJHByaW1hcnk7XG5cdFx0XHRib3JkZXItYm90dG9tOiAxcHggc29saWQgJHByaW1hcnk7XG5cdFx0fVxuXHRcblx0XHQmOjphZnRlciB7XG5cdFx0XHQkYXJyb3dXaWR0aDogMjNweDtcblx0XHRcdGNvbnRlbnQ6ICcnO1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0dG9wOiA1NSU7XG5cdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG5cdFx0XHRyaWdodDogY2FsYyggLSN7JGFycm93V2lkdGh9IC0gN3B4KTtcblx0XHRcdHdpZHRoOiAkYXJyb3dXaWR0aDsgXG5cdFx0XHRoZWlnaHQ6IDE3cHg7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9pY29uX2Fycm93LXJpZ2h0LS1wcmltYXJ5LnN2ZycpO1xuXHRcdH1cblx0fVxuXG5cdCYtLWxpbmstYmxhY2sge1xuXHRcdGNvbG9yOiAkYmx1ZS1kYXJrO1xuXHRcdCY6OmFmdGVyIHtcblx0XHRcdGZpbHRlcjogYnJpZ2h0bmVzcyguMSk7XG5cdFx0fVxuXHR9XG5cblx0Ji0tbGluay13aGl0ZSB7XG5cdFx0Y29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xuXG5cdFx0Jjo6YWZ0ZXIge1xuXHRcdFx0ZmlsdGVyOiBicmlnaHRuZXNzKDEwKTtcblx0XHR9XG5cblx0XHQmOmhvdmVyIHtcblx0XHRcdGNvbG9yOiAkd2hpdGU7XG5cdFx0XHRib3JkZXItYm90dG9tOiAxcHggc29saWQgJHdoaXRlICFpbXBvcnRhbnQ7XG5cdFx0fVxuXHR9XG5cblx0Ly8gJi0tb3V0bGluZXtcblx0Ly8gXHRiYWNrZ3JvdW5kOiAkZWxlbWVudF9fYnV0dG9uX19iYWNrZ3JvdW5kX19jb2xvcjtcblx0Ly8gXHRib3JkZXI6ICRlbGVtZW50X19idXR0b25fX2JvcmRlcl9fd2lkdGggc29saWQgJHdoaXRlO1xuXHQvLyBcdGJvcmRlci1yYWRpdXM6IDIwcHg7XG5cdC8vIFx0Y29sb3I6ICR3aGl0ZTtcblx0Ly8gXHRwYWRkaW5nOiAxMHB4IDI1cHg7XG5cdC8vIFx0Zm9udC13ZWlnaHQ6IG1hcC1nZXQoJGZvbnQtd2VpZ2h0cywgJ3NlbWlib2xkJyApO1xuXHQvLyBcdGZvbnQtc2l6ZTogIDE0cHg7XG5cdC8vIFx0bGluZS1oZWlnaHQ6IDIwcHg7XG5cblx0Ly8gXHQmOmhvdmVye1xuXHQvLyBcdFx0Y29sb3I6ICRibHVlLWRhcms7XG5cdC8vIFx0XHRiYWNrZ3JvdW5kOiAkd2hpdGU7XG5cdC8vIFx0fVxuXG5cdC8vIFx0QGVhY2ggJG5hbWUsICRjb2xvciBpbiAkYnV0dG9uLWNvbG9yc3tcblxuXHQvLyBcdFx0Ji5idXR0b24tLSN7JG5hbWV9e1xuXHQvLyBcdFx0XHRiYWNrZ3JvdW5kOiAkd2hpdGU7XG5cdC8vIFx0XHRcdGJvcmRlcjogJGVsZW1lbnRfX2J1dHRvbl9fYm9yZGVyX193aWR0aCBzb2xpZCAkY29sb3I7XG5cdC8vIFx0XHRcdGNvbG9yOiAkY29sb3I7XG5cdC8vIFx0XHRcdCY6aG92ZXJ7XG5cdC8vIFx0XHRcdFx0Y29sb3I6ICRjb2xvcjtcblx0Ly8gXHRcdFx0fVxuXHQvLyBcdFx0fVxuXG5cdC8vIFx0fVxuXHQvLyB9XG5cblx0Ji0tb3V0bGluZSB7XG5cdFx0Y29sb3I6ICRibHVlLWRhcms7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdFx0Ym9yZGVyOiAycHggc29saWQgJGJsdWUtZGFyaztcblx0XHR6LWluZGV4OiAxO1xuXHRcdG92ZXJmbG93OiBoaWRkZW47XG5cdFx0Ym9yZGVyLXJhZGl1czogMzBweDtcblx0XHRmb250LXNpemU6IHJlbS1jYWxjKCAxNCApO1xuXHRcdGxpbmUtaGVpZ2h0OiByZW0tY2FsYyggMjAgKTtcblx0XHRwYWRkaW5nOiByZW0tY2FsYyggMTAgMjUgKTtcblxuXHRcdCY6YmVmb3JlIHtcblx0XHRcdGNvbnRlbnQ6ICcnO1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0dG9wOiAwO1xuXHRcdFx0bGVmdDogMDtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRibHVlLWRhcms7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTEwJSkgc2tldygtMjVkZWcpO1xuXHRcdFx0dHJhbnNpdGlvbjogdHJhbnNmb3JtIC4zcyBsaW5lYXI7XG5cdFx0XHR6LWluZGV4OiAtMTtcblx0XHR9XG5cblx0XHQmOmhvdmVyIHtcblx0XHRcdGNvbG9yOiAkd2hpdGU7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblxuXHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpIHNrZXcoLTI1ZGVnKSBzY2FsZSgxLjA1KTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxufVxuXG4udGV4dC1saW5rIHtcblx0QGV4dGVuZCAuYnV0dG9uLS1saW5rO1xufVxuLmN0YS1vdXRsaW5lIHtcblx0QGV4dGVuZCAuYnV0dG9uLS1vdXRsaW5lO1xufSIsIi8vLyBSZW1vdmVzIHRoZSB1bml0IChlLmcuIHB4LCBlbSwgcmVtKSBmcm9tIGEgdmFsdWUsIHJldHVybmluZyB0aGUgbnVtYmVyIG9ubHkuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG51bSAtIE51bWJlciB0byBzdHJpcCB1bml0IGZyb20uXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBUaGUgc2FtZSBudW1iZXIsIHNhbnMgdW5pdC5cbkBmdW5jdGlvbiBzdHJpcC11bml0KCRudW0pIHtcblx0QHJldHVybiAkbnVtIC8gKCRudW0gKiAwICsgMSk7XG59XG5cbi8vLyBDb252ZXJ0cyBhIHBpeGVsIHZhbHVlIHRvIG1hdGNoaW5nIHJlbSB2YWx1ZS4gKkFueSogdmFsdWUgcGFzc2VkLCByZWdhcmRsZXNzIG9mIHVuaXQsIGlzIGFzc3VtZWQgdG8gYmUgYSBwaXhlbCB2YWx1ZS4gQnkgZGVmYXVsdCwgdGhlIGJhc2UgcGl4ZWwgdmFsdWUgdXNlZCB0byBjYWxjdWxhdGUgdGhlIHJlbSB2YWx1ZSBpcyB0YWtlbiBmcm9tIHRoZSBgJGdsb2JhbC1mb250LXNpemVgIHZhcmlhYmxlLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR2YWx1ZSAtIFBpeGVsIHZhbHVlIHRvIGNvbnZlcnQuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYXNlIFtudWxsXSAtIEJhc2UgZm9yIHBpeGVsIGNvbnZlcnNpb24uXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBBIG51bWJlciBpbiByZW1zLCBjYWxjdWxhdGVkIGJhc2VkIG9uIHRoZSBnaXZlbiB2YWx1ZSBhbmQgdGhlIGJhc2UgcGl4ZWwgdmFsdWUuIHJlbSB2YWx1ZXMgYXJlIHBhc3NlZCB0aHJvdWdoIGFzIGlzLlxuQGZ1bmN0aW9uIC10by1yZW0oJHZhbHVlLCAkYmFzZTogbnVsbCkge1xuXHQvLyBDaGVjayBpZiB0aGUgdmFsdWUgaXMgYSBudW1iZXJcblx0QGlmIHR5cGUtb2YoJHZhbHVlKSAhPSBcIm51bWJlclwiIHtcblx0XHRAd2FybiBpbnNwZWN0KCR2YWx1ZSkgKyAnIHdhcyBwYXNzZWQgdG8gcmVtLWNhbGMoKSwgd2hpY2ggaXMgbm90IGEgbnVtYmVyLic7XG5cdFx0QHJldHVybiAkdmFsdWU7XG5cdH1cblxuXHQvLyBUcmFuc2Zvcm0gZW0gaW50byByZW0gaWYgc29tZW9uZSBoYW5kcyBvdmVyICdlbSdzXG5cdEBpZiB1bml0KCR2YWx1ZSkgPT0gXCJlbVwiIHtcblx0XHQkdmFsdWU6IHN0cmlwLXVuaXQoJHZhbHVlKSAqIDFyZW07XG5cdH1cblxuXHQvLyBDYWxjdWxhdGUgcmVtIGlmIHVuaXRzIGZvciAkdmFsdWUgaXMgbm90IHJlbSBvciBlbVxuXHRAaWYgdW5pdCgkdmFsdWUpICE9IFwicmVtXCIge1xuXHRcdCR2YWx1ZTogc3RyaXAtdW5pdCgkdmFsdWUpIC8gc3RyaXAtdW5pdCgkYmFzZSkgKiAxcmVtO1xuXHR9XG5cblx0Ly8gVHVybiAwcmVtIGludG8gMFxuXHRAaWYgJHZhbHVlID09IDByZW0ge1xuXHRcdCR2YWx1ZTogMDtcblx0fVxuXG5cdEByZXR1cm4gJHZhbHVlO1xufVxuXG4vLy8gQ29udmVydHMgb25lIG9yIG1vcmUgcGl4ZWwgdmFsdWVzIGludG8gbWF0Y2hpbmcgcmVtIHZhbHVlcy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICR2YWx1ZXMgLSBPbmUgb3IgbW9yZSB2YWx1ZXMgdG8gY29udmVydC4gQmUgc3VyZSB0byBzZXBhcmF0ZSB0aGVtIHdpdGggc3BhY2VzIGFuZCBub3QgY29tbWFzLiBJZiB5b3UgbmVlZCB0byBjb252ZXJ0IGEgY29tbWEtc2VwYXJhdGVkIGxpc3QsIHdyYXAgdGhlIGxpc3QgaW4gcGFyZW50aGVzZXMuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYXNlIFtudWxsXSAtIFRoZSBiYXNlIHZhbHVlIHRvIHVzZSB3aGVuIGNhbGN1bGF0aW5nIHRoZSBgcmVtYC4gSWYgeW91J3JlIHVzaW5nIEZvdW5kYXRpb24gb3V0IG9mIHRoZSBib3gsIHRoaXMgaXMgMTZweC4gSWYgdGhpcyBwYXJhbWV0ZXIgaXMgYG51bGxgLCB0aGUgZnVuY3Rpb24gd2lsbCByZWZlcmVuY2UgdGhlIGAkYmFzZS1mb250LXNpemVgIHZhcmlhYmxlIGFzIHRoZSBiYXNlLlxuLy8vXG4vLy8gQHJldHVybnMge0xpc3R9IEEgbGlzdCBvZiBjb252ZXJ0ZWQgdmFsdWVzLlxuQGZ1bmN0aW9uIHJlbS1jYWxjKCR2YWx1ZXMsICRiYXNlOiBudWxsKSB7XG5cdCRyZW0tdmFsdWVzOiAoKTtcblx0JGNvdW50OiBsZW5ndGgoJHZhbHVlcyk7XG5cblx0Ly8gSWYgbm8gYmFzZSBpcyBkZWZpbmVkLCBkZWZlciB0byB0aGUgZ2xvYmFsIGZvbnQgc2l6ZVxuXHRAaWYgJGJhc2UgPT0gbnVsbCB7XG5cdFx0JGJhc2U6ICRnbG9iYWwtZm9udC1zaXplO1xuXHR9XG5cblx0Ly8gSWYgdGhlIGJhc2UgZm9udCBzaXplIGlzIGEgJSwgdGhlbiBtdWx0aXBseSBpdCBieSAxNnB4XG5cdC8vIFRoaXMgaXMgYmVjYXVzZSAxMDAlIGZvbnQgc2l6ZSA9IDE2cHggaW4gbW9zdCBhbGwgYnJvd3NlcnNcblx0QGlmIHVuaXQoJGJhc2UpID09IFwiJVwiIHtcblx0XHQkYmFzZTogKCRiYXNlIC8gMTAwJSkgKiAxNnB4O1xuXHR9XG5cblx0Ly8gVXNpbmcgcmVtIGFzIGJhc2UgYWxsb3dzIGNvcnJlY3Qgc2NhbGluZ1xuXHRAaWYgdW5pdCgkYmFzZSkgPT0gXCJyZW1cIiB7XG5cdFx0JGJhc2U6IHN0cmlwLXVuaXQoJGJhc2UpICogMTZweDtcblx0fVxuXG5cdEBpZiAkY291bnQgPT0gMSB7XG5cdFx0QHJldHVybiAtdG8tcmVtKCR2YWx1ZXMsICRiYXNlKTtcblx0fVxuXG5cdEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGNvdW50IHtcblx0XHQkcmVtLXZhbHVlczogYXBwZW5kKCRyZW0tdmFsdWVzLCAtdG8tcmVtKG50aCgkdmFsdWVzLCAkaSksICRiYXNlKSk7XG5cdH1cblxuXHRAcmV0dXJuICRyZW0tdmFsdWVzO1xufVxuIiwiJHdoaXRlOiAjRkZGRkZGO1xuJHdoaXRlLTI6ICAjRjVGNkY4O1xuJGJsYWNrOiAjMDAwMDAwO1xuXG4kcHJpbWFyeTogIzJFN0FERDtcbiRibHVlLWxpZ2h0OiAjRUZGM0ZCO1xuJGJsdWUtcmVndWxhcjogIzVhOTZlNDtcbiRibHVlLWRhcms6ICMyMzJFNDg7XG4kYmx1ZS1oZWF2eTogIzI5MzM1MztcbiRzZWNvbmRhcnktYmx1ZS1kYXJrOiAjMzkzRDZFO1xuJHN0cm9uZy1ibHVlLWRhcms6ICMyOTMzNTM7XG4kc2Vjb25kYXJ5OiAjRTk1MTVFO1xuJHNlY29uZGFyeS1kYXJrOiAjRTUxNjM2O1xuJHNlY29uZGFyeS1kYXJrLTI6ICAjQkYxRTJEO1xuJGdvbGQ6ICNGQkIzMUI7XG5cbiRncmV5czogKFxuXHQnbGlnaHQnOiAjOTM5RkFCLFxuXHQnbGlnaHQtMic6ICNBOUIxQkUsXG5cdCdsaWdodC0zJzogI0NDRDREQyxcblx0J3JlZ3VsYXInOiAjODA4MDgwLFxuXHQnZGFyayc6ICM4NDgzOEEsXG5cdCdkYXJrLTInOiAjNzQ3QjgzLFxuXHQnZGFyay0zJzogIzNBNDI0QSxcblx0J2xlZ2FsJzogI0MyQzJDMixcblx0J21lZ2EtcG9zdCc6ICMzRjNBNEMsXG5cdCdtZWdhLW92ZXJ2aWV3JzogIzI1MjUyQixcblx0J2Zvcm0taW5wdXQnOiAjNjQ2NDY0XG4pO1xuJGdyYXlzOiAkZ3JleXM7XG5cbiRibGFja3M6IChcblx0J2xpZ2h0JzogIzI1MjUyQixcblx0J2xpZ2h0LTInOiAjMzAyRTM5LFxuKTtcblxuJGJhY2tncm91bmQtY29sb3JzOiAoXG5cdCd3aGl0ZSc6ICR3aGl0ZSxcblx0J2JsYWNrJzogJGJsYWNrLFxuXHQncHJpbWFyeSc6ICRwcmltYXJ5LFxuXHQnc2Vjb25kYXJ5JzogJHNlY29uZGFyeSxcblx0J3NlY29uZGFyeS1kYXJrJzogJHNlY29uZGFyeS1kYXJrLFxuXHQnc2Vjb25kYXJ5LWRhcmstMic6ICRzZWNvbmRhcnktZGFyay0yLFxuXHQnbmF2eSc6ICRibHVlLWRhcmssXG5cdCdibHVlLWxpZ2h0JzogJGJsdWUtbGlnaHQsXG5cdCdibHVlLW9mZndoaXRlJzogJHdoaXRlLTIsXG5cdCdnb2xkJzogJGdvbGQsXG5cdCdsaWdodC1ncmF5JzogI0QzRDNEMyxcblx0J2dyYXknOiAjODA4MDgwLFxuXHQnZGFyay1ncmF5JzogI0E5QTlBOVxuKTtcblxuJGJhY2tncm91bmQtZm9udC1jb2xvcnM6IChcblx0J3doaXRlJzogJHByaW1hcnksXG5cdCdibGFjayc6ICR3aGl0ZSxcblx0J3ByaW1hcnknOiAkd2hpdGUsXG5cdCdzZWNvbmRhcnknOiAkd2hpdGVcbik7XG5cbiRpY29uLWNvbG9yczogKFxuXHQnd2hpdGUnOiAkd2hpdGUsXG5cdCdibGFjayc6ICRibGFjayxcblx0J3ByaW1hcnknOiAkcHJpbWFyeSxcblx0J3NlY29uZGFyeSc6ICRzZWNvbmRhcnlcbik7XG5cbiRidXR0b24tY29sb3JzOiAoXG5cdCd3aGl0ZSc6ICR3aGl0ZSxcblx0J2JsYWNrJzogJGJsYWNrLFxuXHQncHJpbWFyeSc6ICRwcmltYXJ5LFxuXHQnc2Vjb25kYXJ5JzogJHNlY29uZGFyeVxuKTtcblxuJGdsb2JhbC1mb250LXNpemU6IDE2cHg7XG4kZm9udDogJ0ludGVyJywgc2Fucy1zZXJpZjtcbiRmb250LS1oZWFkaW5nOiAnSW50ZXInLCBzYW5zLXNlcmlmO1xuJGZvbnQtc2hvbmU6IChcblx0J2J1Y2gnOiAnU2hvbmUgQnVjaCcsXG5cdCdkcmVpdmVyJzogJ1Nob25lIERyZWl2aWVydGVsZmV0dCcsXG5cdCdoYWxiZmV0dCc6ICdTaG9uZSBIYWxiZmV0dCcsXG5cdCdrcmFmdGlnJzogJ1Nob25lIEtyYcyIZnRpZycsXG5cdCdsZWljaHQnOiAnU2hvbmUgTGVpY2h0Jyxcbik7XG5cbiRmb250LXdlaWdodHM6IChcblx0J2V4dHJhbGlnaHQnOiAxMDAsXG5cdCd0aGluJzogMjAwLFxuXHQnbGlnaHQnOiAzMDAsXG5cdCdyZWd1bGFyJzogNDAwLFxuXHQnbWVkaXVtJzogNTAwLFxuXHQnc2VtaWJvbGQnOiA2MDAsXG5cdCdib2xkJzogNzAwLFxuXHQnZXh0cmFib2xkJzogODAwLFxuXHQnYmxhY2snOiA5MDAsXG4pO1xuXG4kZ2xvYmFsLXRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2Utb3V0O1xuXG4kY29udGFpbmVyLW1heC13aWR0aHM6IChcblx0c206IDU0MHB4LFxuXHRtZDogNzIwcHgsXG5cdGxnOiA5NjBweCxcblx0eGw6IDEwODBweFxuKTtcblxuJGdyaWQtZ3V0dGVyLXdpZHRoOiAyNnB4OyAvL2Fyb3VuZCBlYWNoIGNvbCAoZ2V0cyBkaXZpZGVkIGJ5IDIpXG4kbW9iaWxlLW91dHNpZGUtZ3V0dGVyLXdpZHRoOiAzMHB4OyAvL29uIGVhY2ggc2lkZSAoYm90aCBzaWRlcyBoYXZlIHRoaXMgbXVjaClcblxuJHBhZGRpbmctb3B0aW9uczogKFxuXHQnbm9uZSc6IDAsXG5cdCdzbWFsbCc6IDM1cHgsXG5cdCdkZWZhdWx0JzogNjBweCxcblx0J2xhcmdlJzogOTBweCxcbik7XG5cbiIsIiRlbGVtZW50X19mb3Jtc19fYm9yZGVyX19jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuJGVsZW1lbnRfX2Zvcm1zX19ib3JkZXJfX3JhZGl1czogcmVtLWNhbGMoIDNweCApICFkZWZhdWx0O1xuJGVsZW1lbnRfX2Zvcm1zX19ib3JkZXJfX3dpZHRoOiAxcHggIWRlZmF1bHQ7XG4kZWxlbWVudF9fZm9ybXNfX2NvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG4kZWxlbWVudF9fZm9ybXNfX2NvbG9yX19mb2N1czogJGJsYWNrICFkZWZhdWx0O1xuJGVsZW1lbnRfX2Zvcm1zX19mb250OiAkZm9udCAhZGVmYXVsdDtcbiRlbGVtZW50X19mb3Jtc19fZm9udF9fc2l6ZTogcmVtLWNhbGMoIDE2ICkgIWRlZmF1bHQ7XG4kZWxlbWVudF9fZm9ybXNfX3BhZGRpbmc6IHJlbS1jYWxjKCAzICkgIWRlZmF1bHQ7XG5cbmlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuaW5wdXRbdHlwZT1cInVybFwiXSxcbmlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSxcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0sXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdLFxuaW5wdXRbdHlwZT1cInRlbFwiXSxcbmlucHV0W3R5cGU9XCJyYW5nZVwiXSxcbmlucHV0W3R5cGU9XCJkYXRlXCJdLFxuaW5wdXRbdHlwZT1cIm1vbnRoXCJdLFxuaW5wdXRbdHlwZT1cIndlZWtcIl0sXG5pbnB1dFt0eXBlPVwidGltZVwiXSxcbmlucHV0W3R5cGU9XCJkYXRldGltZVwiXSxcbmlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXSxcbmlucHV0W3R5cGU9XCJjb2xvclwiXSxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuXHRib3JkZXI6ICRlbGVtZW50X19mb3Jtc19fYm9yZGVyX193aWR0aCBzb2xpZCAkZWxlbWVudF9fZm9ybXNfX2JvcmRlcl9fY29sb3I7XG5cdGJvcmRlci1yYWRpdXM6ICRlbGVtZW50X19mb3Jtc19fYm9yZGVyX19yYWRpdXM7XG5cdHBhZGRpbmc6ICRlbGVtZW50X19mb3Jtc19fcGFkZGluZztcblx0d2lkdGg6IDEwMCU7XG5cblx0Y29sb3I6ICRlbGVtZW50X19mb3Jtc19fY29sb3JfX2ZvY3VzO1xuXHRmb250LWZhbWlseTogJGVsZW1lbnRfX2Zvcm1zX19mb250O1xuXHRmb250LXNpemU6ICRlbGVtZW50X19mb3Jtc19fZm9udF9fc2l6ZTtcblx0bGluZS1oZWlnaHQ6IDE7XG5cblx0Jjpmb2N1cyB7XG5cdFx0Y29sb3I6ICRlbGVtZW50X19mb3Jtc19fY29sb3JfX2ZvY3VzO1xuXHR9XG59XG4iLCIvKiAtLS0gU3R5bGVzaGVldCBmb3IgUGFyZG90IEZvb3RlciBGb3JtIC0tLSAqL1xuLnBhcmRvdC1mb3JtIHtcbiAgICBmb250LWZhbWlseTogJ0ludGVyJywgc2Fucy1zZXJpZjtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIC5maWVsZC1sYWJlbCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgdG9wOiA0cHg7XG4gICAgICAgIGxlZnQ6IDNweDtcbiAgICB9XG4gICAgLmZvcm0tZmllbGQgaW5wdXQge1xuICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgIHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDMzcHg7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXI6IG5vbmU7IGJvcmRlci1ib3R0b206IDEuNXB4IHNvbGlkIHdoaXRlO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTJweDtcbiAgICB9XG4gICAgLmZvcm0tZmllbGQgaW5wdXQ6OnBsYWNlaG9sZGVyIHtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMnB4O1xuICAgIH1cbiAgICAuZm9ybS1maWVsZCBpbnB1dDphY3RpdmUsXG4gICAgLmZvcm0tZmllbGQgaW5wdXQ6Zm9jdXMge1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgIH1cblxuICAgIC5mbG9hdGluZy0tcmVhZHl7XG4gICAgICAgIGxhYmVse1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiA2cHg7XG4gICAgICAgICAgICBsZWZ0OiAwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZmxvYXRpbmctLWZsb2F0aW5ne1xuICAgICAgICBsYWJlbHtcbiAgICAgICAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICBmb250LXNpemU6IDEwcHg7IFxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogIC0wLjFweDtcbiAgICAgICAgICAgIHRvcDogLTVweDtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IC4zcztcbiAgICAgICAgfVxuXG4gICAgICAgIGlucHV0LFxuICAgICAgICB0ZXh0YXJlYSxcbiAgICAgICAgc2VsZWN0IHtcbiAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMjBweDtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IC4zcztcbiAgICAgICAgICAgIGNvbG9yOiAjNjQ2NDY0O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnN1Ym1pdCB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOyB0b3A6IDA7IHJpZ2h0OiAzNXB4O1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxMnB4O1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuICAgIC5zdWJtaXQgaW5wdXQge1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBjb2xvcjogJGdvbGQ7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDJweDtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDAuOHB4IHNvbGlkICRnb2xkO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5lcnJvcnN7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDFlbTtcbiAgICAgICAgY29sb3I6ICRzZWNvbmRhcnk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEuNWVtO1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAuZXJyb3Iubm8tbGFiZWwge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbjogLjVlbSAwO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDFlbTtcbiAgICAgICAgY29sb3I6ICRzZWNvbmRhcnk7XG4gICAgfVxuICAgIC5lcnJvcntcbiAgICAgICAgaW5wdXR7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkc2Vjb25kYXJ5O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uaWNvbi1hcnJvdyB7XG4gICAgd2lkdGg6IDIwcHg7IGhlaWdodDogMnB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGQkIzMUI7XG4gICAgcG9zaXRpb246IGFic29sdXRlOyB0b3A6IDEwcHg7IHJpZ2h0OiA2cHg7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xufVxuLmljb24tYXJyb3c6OmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgd2lkdGg6IDEwcHg7IGhlaWdodDogMnB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkJCMzFCO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7IHJpZ2h0OiAtMnB4OyBib3R0b206IDNweDtcbn1cbi5pY29uLWFycm93OjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgd2lkdGg6IDEwcHg7IGhlaWdodDogMnB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAgI0ZCQjMxQjtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgcmlnaHQ6IC0ycHg7IGJvdHRvbTogLTNweDtcbn1cblxuXG4vKiAtLS0gU3R5bGVzaGVldCBmb3IgUGFyZG90IENvbnRhY3QgUGFnZSAtLS0gKi9cbi5wYXJkb3QtZm9ybS1jb250YWN0LCAucGFyZG90LWZvcm0taGVhZGVyIHtcblxuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1ib3R0b206IDU1cHg7XG5cbiAgICAmX19mb290ZXJ7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAmX19yZXF1aXJlZHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgICAgIGNvbG9yOiAjOTM5RkFCO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gICAgICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBib3R0b206IDEwcHg7XG4gICAgICAgICAgICByaWdodDogMTBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIElucHV0ICsgVGV4dCBBcmVhXG4gICAgaW5wdXQsXG4gICAgdGV4dGFyZWF7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yOiAjQ0NENERDLCAkYWxwaGE6IC4yKTtcbiAgICAgICAgYm9yZGVyOiBub25lOyBcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMzBweDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyNXB4OyBcbiAgICAgICAgdHJhbnNpdGlvbjogLjNzO1xuICAgICAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICB9XG5cbiAgICBpbnB1dDo6cGxhY2Vob2xkZXIsXG4gICAgdGV4dGFyZWE6OnBsYWNlaG9sZGVyLFxuICAgIGxhYmVsIHtcbiAgICAgICAgY29sb3I6ICM5MzlGQUI7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4ycHg7XG4gICAgfVxuXG4gICAgbGFiZWwge1xuICAgICAgICBmb250LWZhbWlseTogJ0ludGVyJywgc2Fucy1zZXJpZjtcbiAgICAgICAgdHJhbnNpdGlvbjogLjNzO1xuICAgIH1cblxuICAgIGlucHV0IHtcbiAgICAgICAgaGVpZ2h0OiA1NXB4O1xuICAgICAgICBjb2xvcjogIzY0NjQ2NDtcbiAgICB9XG4gICAgdGV4dGFyZWEge1xuICAgICAgICBoZWlnaHQ6IDE1MHB4O1xuICAgICAgICBjb2xvcjogIzY0NjQ2NDtcbiAgICAgICAgcGFkZGluZy10b3A6IDEwcHg7XG4gICAgfVxuXG4gICAgc2VsZWN0e1xuICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgdGV4dC1pbmRlbnQ6IDFweDtcbiAgICAgICAgdGV4dC1vdmVyZmxvdzogJyc7XG4gICAgICAgIGhlaWdodDogNTVweDtcbiAgICAgICAgY29sb3I6ICM2NDY0NjQ7XG4gICAgICAgIGJvcmRlci1jb2xvcjogbWFwLWdldCggJGdyZXlzLCAnbGlnaHQnICk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDMwcHg7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMjVweDsgXG4gICAgICAgIHRyYW5zaXRpb246IC4zcztcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybCggLi4vaW1nL3NlbGVjdC1ib3gtZHJvcGRvd24uc3ZnKSBjZW50ZXIgcmlnaHQgbm8tcmVwZWF0O1xuICAgICAgICBcbiAgICAgICAgJjo6LW1zLWV4cGFuZCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmZsb2F0aW5nLS1yZWFkeXtcbiAgICAgICAgbGFiZWx7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDE2cHg7XG4gICAgICAgICAgICBsZWZ0OiAyNXB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmZsb2F0aW5nLS1mbG9hdGluZ3tcbiAgICAgICAgbGFiZWx7XG4gICAgICAgICAgICBjb2xvcjogI0U5NTE1RTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxMHB4OyBcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6ICAtMC4xcHg7XG4gICAgICAgICAgICB0b3A6IDZweDtcbiAgICAgICAgICAgIGxlZnQ6IDI3cHg7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiAuM3M7XG4gICAgICAgIH1cblxuICAgICAgICBpbnB1dCxcbiAgICAgICAgdGV4dGFyZWEsXG4gICAgICAgIHNlbGVjdCB7XG4gICAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI0NDRDREQztcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogLjNzO1xuICAgICAgICAgICAgY29sb3I6ICM2NDY0NjQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTdWJtaXQgQnV0dG9uXG4gICAgLnN1Ym1pdCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgYm90dG9tOiAwO1xuICAgICAgICBjb2xvcjogICMyMzJFNDg7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdFx0Ym9yZGVyOiAycHggc29saWQgICMyMzJFNDg7XG5cdFx0ei1pbmRleDogMTtcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHRcdGJvcmRlci1yYWRpdXM6IDMwcHg7XG5cdFx0Zm9udC1zaXplOiAxNHB4O1xuXHRcdGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgIH1cbiAgICAuc3VibWl0IGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBjb2xvcjogICMyMzJFNDg7XG4gICAgICAgIGhlaWdodDogNDFweDtcbiAgICAgICAgcGFkZGluZzogMTBweCAzN3B4O1xuXG4gICAgICAgIC8vIE1vYmlsZSBcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuc3VibWl0OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogICMyMzJFNDg7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTEwJSkgc2tldygtMjVkZWcpO1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjNzIGxpbmVhciwgYmFja2dyb3VuZC1jb2xvciAuM3MgbGluZWFyO1xuICAgICAgICB6LWluZGV4OiAtMTtcbiAgICB9XG4gICAgLnN1Ym1pdDpob3ZlciB7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICAgIC5zdWJtaXQ6aG92ZXI6OmJlZm9yZSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSkgc2tldygtMjVkZWcpIHNjYWxlKDEuMDUpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAgIzIzMkU0ODsgXG4gICAgfVxuICAgIC5zdWJtaXQ6aG92ZXIgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgICAgIGNvbG9yOiAgd2hpdGU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyMzJFNDg7IFxuICAgIH1cbiAgICAuZm9ybS1tb2RhbF9fY29udGFpbmVyIC5zdWJtaXQge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHdpZHRoOiBtYXgtY29udGVudDtcbiAgICB9XG5cbiAgICAvLyBGb3JtIEZpZWxkICsgTGFiZWxzICsgUGxhY2Vob2xkZXJzXG4gICAgLmZvcm0tZmllbGQge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICYuaGFsZntcbiAgICAgICAgICAgIHdpZHRoOiA0NyU7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgICYucmVxdWlyZWR7XG4gICAgICAgICAgICBsYWJlbDo6YWZ0ZXJ7XG4gICAgICAgICAgICAgICAgY29udGVudDogJyonO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmVycm9yc3tcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMWVtO1xuICAgICAgICBjb2xvcjogJHNlY29uZGFyeTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS41ZW07XG4gICAgfVxuICAgIC5lcnJvci5uby1sYWJlbCB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luOiAuNWVtIDA7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMWVtO1xuICAgICAgICBjb2xvcjogJHNlY29uZGFyeTtcbiAgICB9XG59XG5cbi5wYXJkb3QtZm9ybS1oZWFkZXJ7XG4gICAgLnN1Ym1pdHtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgfVxufSJdLCJzb3VyY2VSb290IjoiL3NvdXJjZS8ifQ== */
