/**
 * Variables
 */

/* Breakpoints */

/* Specific breakpoint for global & dropdown navigation */

:root {

  /* Brand colors */

  /* Filters - Used for adjusting icon color. Generated using `npm run color-to-filter -- <options>`. */

  /* Typography */ /* 32px */ /* 24px */ /* 20px */ /* 18px - Lede */ /* 16px - Body */ /* 14px */ /* 12px - Sub, Caption */ /* 48px - Headline */ /* 40px - H1 */ /* 32px - H2 */ /* 24px - H3 */ /* 18px - H4 */ /* 16px - H5 */ /* 14px - H6 */ /* 1.6 x font size */ /* 1.2 x font size */ /* 14px always */

  /* Spacing */ /* 4px */ /* 8px */ /* 12px */ /* 16px */ /* 24px */ /* 32px */ /* 40px */ /* 48px */ /* 56px */ /* 64px */ /* 72px */ /* 80px */ /* 88px */

  /* Layout */

  /* Ratios */ /* 100%:56.25% = 16:9 */

  /* Utility */
}

@media (max-width: 719px) {
  :root { /* 24px */ /* 20px */ /* 18px */ /* 16px - Lede */ /* 14px - Body */ /* 12px */ /* 10px - Sub, Caption */ /* 36px - Headline */ /* 30px - H1 */ /* 24px - H2 */ /* 20px - H3 */ /* 18px - H4 */ /* 16px - H5 */ /* 14px - H6 */
  }
}

:root {

  /* Brand colors */

  /* Alert Colors */

  /* Design */

  /* Typography */ /* 10px */ /* 40px */

  /* Form */

  /* Header */

  /* Spacing Extra */

  /* Heading Sizes Extra */ /* 20px - H3 Tiles large to x-large */

  /* Tiles */

  /* Tabs */

  /* Grid */

  /* Print */
}

/**
 * Form
 *
 * Style guide: form
 */

.form__item {
  margin-bottom: 1.5rem;
}

/**
 * Text Input
 *
 * .error - Error state
 * .success - Success state
 *
 * Markup: input-text.twig
 *
 * Style guide: form.text-input
 */

.input__text {
  max-width: 100%;
  min-width: 100%;
  padding: calc(1rem - 0.25rem) 1rem;
  border: 2px solid rgb(127, 127, 127);
  border-radius: 3px;
  font-size: 1rem;
  color: rgb(0, 0, 0);
  line-height: 0.9rem
}

@media (max-width: 719px) {

  .input__text {
  font-size: 0.875rem;
  }
}

@media (max-width: 719px) {

  .input__text {
  font-size: 0.875rem;
  }
}

[type="text"] {
  max-width: 100%;
  min-width: 100%;
  padding: calc(1rem - 0.25rem) 1rem;
  border: 2px solid rgb(127, 127, 127);
  border-radius: 3px;
  font-size: 1rem;
  color: rgb(0, 0, 0);
  line-height: 0.9rem
}

@media (max-width: 719px) {

  [type="text"] {
  font-size: 0.875rem;
  }
}

@media (max-width: 719px) {

  [type="text"] {
  font-size: 0.875rem;
  }
}

[type="search"] {
  max-width: 100%;
  min-width: 100%;
  padding: calc(1rem - 0.25rem) 1rem;
  border: 2px solid rgb(127, 127, 127);
  border-radius: 3px;
  font-size: 1rem;
  color: rgb(0, 0, 0);
  line-height: 0.9rem
}

@media (max-width: 719px) {

  [type="search"] {
  font-size: 0.875rem;
  }
}

@media (max-width: 719px) {

  [type="search"] {
  font-size: 0.875rem;
  }
}

[type="tel"] {
  max-width: 100%;
  min-width: 100%;
  padding: calc(1rem - 0.25rem) 1rem;
  border: 2px solid rgb(127, 127, 127);
  border-radius: 3px;
  font-size: 1rem;
  color: rgb(0, 0, 0);
  line-height: 0.9rem
}

@media (max-width: 719px) {

  [type="tel"] {
  font-size: 0.875rem;
  }
}

@media (max-width: 719px) {

  [type="tel"] {
  font-size: 0.875rem;
  }
}

[type="url"] {
  max-width: 100%;
  min-width: 100%;
  padding: calc(1rem - 0.25rem) 1rem;
  border: 2px solid rgb(127, 127, 127);
  border-radius: 3px;
  font-size: 1rem;
  color: rgb(0, 0, 0);
  line-height: 0.9rem
}

@media (max-width: 719px) {

  [type="url"] {
  font-size: 0.875rem;
  }
}

@media (max-width: 719px) {

  [type="url"] {
  font-size: 0.875rem;
  }
}

[type="email"] {
  max-width: 100%;
  min-width: 100%;
  padding: calc(1rem - 0.25rem) 1rem;
  border: 2px solid rgb(127, 127, 127);
  border-radius: 3px;
  font-size: 1rem;
  color: rgb(0, 0, 0);
  line-height: 0.9rem
}

@media (max-width: 719px) {

  [type="email"] {
  font-size: 0.875rem;
  }
}

@media (max-width: 719px) {

  [type="email"] {
  font-size: 0.875rem;
  }
}

[type="password"] {
  max-width: 100%;
  min-width: 100%;
  padding: calc(1rem - 0.25rem) 1rem;
  border: 2px solid rgb(127, 127, 127);
  border-radius: 3px;
  font-size: 1rem;
  color: rgb(0, 0, 0);
  line-height: 0.9rem
}

@media (max-width: 719px) {

  [type="password"] {
  font-size: 0.875rem;
  }
}

@media (max-width: 719px) {

  [type="password"] {
  font-size: 0.875rem;
  }
}

[type="date"] {
  max-width: 100%;
  min-width: 100%;
  padding: calc(1rem - 0.25rem) 1rem;
  border: 2px solid rgb(127, 127, 127);
  border-radius: 3px;
  font-size: 1rem;
  color: rgb(0, 0, 0);
  line-height: 0.9rem
}

@media (max-width: 719px) {

  [type="date"] {
  font-size: 0.875rem;
  }
}

@media (max-width: 719px) {

  [type="date"] {
  font-size: 0.875rem;
  }
}

[type="time"] {
  max-width: 100%;
  min-width: 100%;
  padding: calc(1rem - 0.25rem) 1rem;
  border: 2px solid rgb(127, 127, 127);
  border-radius: 3px;
  font-size: 1rem;
  color: rgb(0, 0, 0);
  line-height: 0.9rem
}

@media (max-width: 719px) {

  [type="time"] {
  font-size: 0.875rem;
  }
}

@media (max-width: 719px) {

  [type="time"] {
  font-size: 0.875rem;
  }
}

[type="number"] {
  max-width: 100%;
  min-width: 100%;
  padding: calc(1rem - 0.25rem) 1rem;
  border: 2px solid rgb(127, 127, 127);
  border-radius: 3px;
  font-size: 1rem;
  color: rgb(0, 0, 0);
  line-height: 0.9rem
}

@media (max-width: 719px) {

  [type="number"] {
  font-size: 0.875rem;
  }
}

@media (max-width: 719px) {

  [type="number"] {
  font-size: 0.875rem;
  }
}

select {
  max-width: 100%;
  min-width: 100%;
  padding: calc(1rem - 0.25rem) 1rem;
  border: 2px solid rgb(127, 127, 127);
  border-radius: 3px;
  font-size: 1rem;
  color: rgb(0, 0, 0);
  line-height: 0.9rem
}

@media (max-width: 719px) {

  select {
  font-size: 0.875rem;
  }
}

@media (max-width: 719px) {

  select {
  font-size: 0.875rem;
  }
}

@media (min-width: 720px) {

.input__text,
[type="text"],
[type="search"],
[type="tel"],
[type="url"],
[type="email"],
[type="password"],
[type="date"],
[type="time"],
[type="number"],
select {
    min-width: 50%
}
  }

.input__text:focus {
    border-color: rgb(37, 97, 232);
    outline: none;
  }

[type="text"]:focus {
    border-color: rgb(37, 97, 232);
    outline: none;
  }

[type="search"]:focus {
    border-color: rgb(37, 97, 232);
    outline: none;
  }

[type="tel"]:focus {
    border-color: rgb(37, 97, 232);
    outline: none;
  }

[type="url"]:focus {
    border-color: rgb(37, 97, 232);
    outline: none;
  }

[type="email"]:focus {
    border-color: rgb(37, 97, 232);
    outline: none;
  }

[type="password"]:focus {
    border-color: rgb(37, 97, 232);
    outline: none;
  }

[type="date"]:focus {
    border-color: rgb(37, 97, 232);
    outline: none;
  }

[type="time"]:focus {
    border-color: rgb(37, 97, 232);
    outline: none;
  }

[type="number"]:focus {
    border-color: rgb(37, 97, 232);
    outline: none;
  }

select:focus {
    border-color: rgb(37, 97, 232);
    outline: none;
  }

.input__text::-moz-placeholder {
    color: rgb(128, 128, 128);
  }

[type="text"]::-moz-placeholder {
    color: rgb(128, 128, 128);
  }

[type="search"]::-moz-placeholder {
    color: rgb(128, 128, 128);
  }

[type="tel"]::-moz-placeholder {
    color: rgb(128, 128, 128);
  }

[type="url"]::-moz-placeholder {
    color: rgb(128, 128, 128);
  }

[type="email"]::-moz-placeholder {
    color: rgb(128, 128, 128);
  }

[type="password"]::-moz-placeholder {
    color: rgb(128, 128, 128);
  }

[type="date"]::-moz-placeholder {
    color: rgb(128, 128, 128);
  }

[type="time"]::-moz-placeholder {
    color: rgb(128, 128, 128);
  }

[type="number"]::-moz-placeholder {
    color: rgb(128, 128, 128);
  }

select::-moz-placeholder {
    color: rgb(128, 128, 128);
  }

.input__text::placeholder {
    color: rgb(128, 128, 128);
  }

[type="text"]::placeholder {
    color: rgb(128, 128, 128);
  }

[type="search"]::placeholder {
    color: rgb(128, 128, 128);
  }

[type="tel"]::placeholder {
    color: rgb(128, 128, 128);
  }

[type="url"]::placeholder {
    color: rgb(128, 128, 128);
  }

[type="email"]::placeholder {
    color: rgb(128, 128, 128);
  }

[type="password"]::placeholder {
    color: rgb(128, 128, 128);
  }

[type="date"]::placeholder {
    color: rgb(128, 128, 128);
  }

[type="time"]::placeholder {
    color: rgb(128, 128, 128);
  }

[type="number"]::placeholder {
    color: rgb(128, 128, 128);
  }

select::placeholder {
    color: rgb(128, 128, 128);
  }

.input__text.error {
    padding-right: 2.5rem;
    border-color: rgb(198, 40, 40);
    background-image: url(
      "data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='rgb(198, 40, 40)'%3E%3Cpath d='M8 0C3.6 0 0 3.6 0 8s3.6 8 8 8 8-3.6 8-8-3.6-8-8-8zm3.5 10.1l-1.4 1.4L8 9.4l-2.1 2.1-1.4-1.4L6.6 8 4.5 5.9l1.4-1.4L8 6.6l2.1-2.1 1.4 1.4L9.4 8l2.1 2.1z'/%3E%3C/svg%3E"
    );
    background-repeat: no-repeat;
    background-position: right 0.5rem center
  }

[type="text"].error {
    padding-right: 2.5rem;
    border-color: rgb(198, 40, 40);
    background-image: url(
      "data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='rgb(198, 40, 40)'%3E%3Cpath d='M8 0C3.6 0 0 3.6 0 8s3.6 8 8 8 8-3.6 8-8-3.6-8-8-8zm3.5 10.1l-1.4 1.4L8 9.4l-2.1 2.1-1.4-1.4L6.6 8 4.5 5.9l1.4-1.4L8 6.6l2.1-2.1 1.4 1.4L9.4 8l2.1 2.1z'/%3E%3C/svg%3E"
    );
    background-repeat: no-repeat;
    background-position: right 0.5rem center
  }

[type="search"].error {
    padding-right: 2.5rem;
    border-color: rgb(198, 40, 40);
    background-image: url(
      "data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='rgb(198, 40, 40)'%3E%3Cpath d='M8 0C3.6 0 0 3.6 0 8s3.6 8 8 8 8-3.6 8-8-3.6-8-8-8zm3.5 10.1l-1.4 1.4L8 9.4l-2.1 2.1-1.4-1.4L6.6 8 4.5 5.9l1.4-1.4L8 6.6l2.1-2.1 1.4 1.4L9.4 8l2.1 2.1z'/%3E%3C/svg%3E"
    );
    background-repeat: no-repeat;
    background-position: right 0.5rem center
  }

[type="tel"].error {
    padding-right: 2.5rem;
    border-color: rgb(198, 40, 40);
    background-image: url(
      "data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='rgb(198, 40, 40)'%3E%3Cpath d='M8 0C3.6 0 0 3.6 0 8s3.6 8 8 8 8-3.6 8-8-3.6-8-8-8zm3.5 10.1l-1.4 1.4L8 9.4l-2.1 2.1-1.4-1.4L6.6 8 4.5 5.9l1.4-1.4L8 6.6l2.1-2.1 1.4 1.4L9.4 8l2.1 2.1z'/%3E%3C/svg%3E"
    );
    background-repeat: no-repeat;
    background-position: right 0.5rem center
  }

[type="url"].error {
    padding-right: 2.5rem;
    border-color: rgb(198, 40, 40);
    background-image: url(
      "data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='rgb(198, 40, 40)'%3E%3Cpath d='M8 0C3.6 0 0 3.6 0 8s3.6 8 8 8 8-3.6 8-8-3.6-8-8-8zm3.5 10.1l-1.4 1.4L8 9.4l-2.1 2.1-1.4-1.4L6.6 8 4.5 5.9l1.4-1.4L8 6.6l2.1-2.1 1.4 1.4L9.4 8l2.1 2.1z'/%3E%3C/svg%3E"
    );
    background-repeat: no-repeat;
    background-position: right 0.5rem center
  }

[type="email"].error {
    padding-right: 2.5rem;
    border-color: rgb(198, 40, 40);
    background-image: url(
      "data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='rgb(198, 40, 40)'%3E%3Cpath d='M8 0C3.6 0 0 3.6 0 8s3.6 8 8 8 8-3.6 8-8-3.6-8-8-8zm3.5 10.1l-1.4 1.4L8 9.4l-2.1 2.1-1.4-1.4L6.6 8 4.5 5.9l1.4-1.4L8 6.6l2.1-2.1 1.4 1.4L9.4 8l2.1 2.1z'/%3E%3C/svg%3E"
    );
    background-repeat: no-repeat;
    background-position: right 0.5rem center
  }

[type="password"].error {
    padding-right: 2.5rem;
    border-color: rgb(198, 40, 40);
    background-image: url(
      "data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='rgb(198, 40, 40)'%3E%3Cpath d='M8 0C3.6 0 0 3.6 0 8s3.6 8 8 8 8-3.6 8-8-3.6-8-8-8zm3.5 10.1l-1.4 1.4L8 9.4l-2.1 2.1-1.4-1.4L6.6 8 4.5 5.9l1.4-1.4L8 6.6l2.1-2.1 1.4 1.4L9.4 8l2.1 2.1z'/%3E%3C/svg%3E"
    );
    background-repeat: no-repeat;
    background-position: right 0.5rem center
  }

[type="date"].error {
    padding-right: 2.5rem;
    border-color: rgb(198, 40, 40);
    background-image: url(
      "data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='rgb(198, 40, 40)'%3E%3Cpath d='M8 0C3.6 0 0 3.6 0 8s3.6 8 8 8 8-3.6 8-8-3.6-8-8-8zm3.5 10.1l-1.4 1.4L8 9.4l-2.1 2.1-1.4-1.4L6.6 8 4.5 5.9l1.4-1.4L8 6.6l2.1-2.1 1.4 1.4L9.4 8l2.1 2.1z'/%3E%3C/svg%3E"
    );
    background-repeat: no-repeat;
    background-position: right 0.5rem center
  }

[type="time"].error {
    padding-right: 2.5rem;
    border-color: rgb(198, 40, 40);
    background-image: url(
      "data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='rgb(198, 40, 40)'%3E%3Cpath d='M8 0C3.6 0 0 3.6 0 8s3.6 8 8 8 8-3.6 8-8-3.6-8-8-8zm3.5 10.1l-1.4 1.4L8 9.4l-2.1 2.1-1.4-1.4L6.6 8 4.5 5.9l1.4-1.4L8 6.6l2.1-2.1 1.4 1.4L9.4 8l2.1 2.1z'/%3E%3C/svg%3E"
    );
    background-repeat: no-repeat;
    background-position: right 0.5rem center
  }

[type="number"].error {
    padding-right: 2.5rem;
    border-color: rgb(198, 40, 40);
    background-image: url(
      "data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='rgb(198, 40, 40)'%3E%3Cpath d='M8 0C3.6 0 0 3.6 0 8s3.6 8 8 8 8-3.6 8-8-3.6-8-8-8zm3.5 10.1l-1.4 1.4L8 9.4l-2.1 2.1-1.4-1.4L6.6 8 4.5 5.9l1.4-1.4L8 6.6l2.1-2.1 1.4 1.4L9.4 8l2.1 2.1z'/%3E%3C/svg%3E"
    );
    background-repeat: no-repeat;
    background-position: right 0.5rem center
  }

select.error {
    padding-right: 2.5rem;
    border-color: rgb(198, 40, 40);
    background-image: url(
      "data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='rgb(198, 40, 40)'%3E%3Cpath d='M8 0C3.6 0 0 3.6 0 8s3.6 8 8 8 8-3.6 8-8-3.6-8-8-8zm3.5 10.1l-1.4 1.4L8 9.4l-2.1 2.1-1.4-1.4L6.6 8 4.5 5.9l1.4-1.4L8 6.6l2.1-2.1 1.4 1.4L9.4 8l2.1 2.1z'/%3E%3C/svg%3E"
    );
    background-repeat: no-repeat;
    background-position: right 0.5rem center
  }

.input__text.error:focus {
      border-color: rgb(37, 97, 232);
    }

[type="text"].error:focus {
      border-color: rgb(37, 97, 232);
    }

[type="search"].error:focus {
      border-color: rgb(37, 97, 232);
    }

[type="tel"].error:focus {
      border-color: rgb(37, 97, 232);
    }

[type="url"].error:focus {
      border-color: rgb(37, 97, 232);
    }

[type="email"].error:focus {
      border-color: rgb(37, 97, 232);
    }

[type="password"].error:focus {
      border-color: rgb(37, 97, 232);
    }

[type="date"].error:focus {
      border-color: rgb(37, 97, 232);
    }

[type="time"].error:focus {
      border-color: rgb(37, 97, 232);
    }

[type="number"].error:focus {
      border-color: rgb(37, 97, 232);
    }

select.error:focus {
      border-color: rgb(37, 97, 232);
    }

.input__text.success {
    padding-right: 2.5rem;
    border-color: rgb(67, 160, 71);
    background-image: url(
      "data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='rgb(67, 160, 71)'%3E%3Cpath d='M8 0C3.6 0 0 3.6 0 8s3.6 8 8 8 8-3.6 8-8-3.6-8-8-8zM7 11.4L3.6 8 5 6.6l2 2 4-4L12.4 6 7 11.4z'/%3E%3C/svg%3E"
    );
    background-repeat: no-repeat;
    background-position: right 0.5rem center
  }

[type="text"].success {
    padding-right: 2.5rem;
    border-color: rgb(67, 160, 71);
    background-image: url(
      "data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='rgb(67, 160, 71)'%3E%3Cpath d='M8 0C3.6 0 0 3.6 0 8s3.6 8 8 8 8-3.6 8-8-3.6-8-8-8zM7 11.4L3.6 8 5 6.6l2 2 4-4L12.4 6 7 11.4z'/%3E%3C/svg%3E"
    );
    background-repeat: no-repeat;
    background-position: right 0.5rem center
  }

[type="search"].success {
    padding-right: 2.5rem;
    border-color: rgb(67, 160, 71);
    background-image: url(
      "data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='rgb(67, 160, 71)'%3E%3Cpath d='M8 0C3.6 0 0 3.6 0 8s3.6 8 8 8 8-3.6 8-8-3.6-8-8-8zM7 11.4L3.6 8 5 6.6l2 2 4-4L12.4 6 7 11.4z'/%3E%3C/svg%3E"
    );
    background-repeat: no-repeat;
    background-position: right 0.5rem center
  }

[type="tel"].success {
    padding-right: 2.5rem;
    border-color: rgb(67, 160, 71);
    background-image: url(
      "data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='rgb(67, 160, 71)'%3E%3Cpath d='M8 0C3.6 0 0 3.6 0 8s3.6 8 8 8 8-3.6 8-8-3.6-8-8-8zM7 11.4L3.6 8 5 6.6l2 2 4-4L12.4 6 7 11.4z'/%3E%3C/svg%3E"
    );
    background-repeat: no-repeat;
    background-position: right 0.5rem center
  }

[type="url"].success {
    padding-right: 2.5rem;
    border-color: rgb(67, 160, 71);
    background-image: url(
      "data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='rgb(67, 160, 71)'%3E%3Cpath d='M8 0C3.6 0 0 3.6 0 8s3.6 8 8 8 8-3.6 8-8-3.6-8-8-8zM7 11.4L3.6 8 5 6.6l2 2 4-4L12.4 6 7 11.4z'/%3E%3C/svg%3E"
    );
    background-repeat: no-repeat;
    background-position: right 0.5rem center
  }

[type="email"].success {
    padding-right: 2.5rem;
    border-color: rgb(67, 160, 71);
    background-image: url(
      "data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='rgb(67, 160, 71)'%3E%3Cpath d='M8 0C3.6 0 0 3.6 0 8s3.6 8 8 8 8-3.6 8-8-3.6-8-8-8zM7 11.4L3.6 8 5 6.6l2 2 4-4L12.4 6 7 11.4z'/%3E%3C/svg%3E"
    );
    background-repeat: no-repeat;
    background-position: right 0.5rem center
  }

[type="password"].success {
    padding-right: 2.5rem;
    border-color: rgb(67, 160, 71);
    background-image: url(
      "data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='rgb(67, 160, 71)'%3E%3Cpath d='M8 0C3.6 0 0 3.6 0 8s3.6 8 8 8 8-3.6 8-8-3.6-8-8-8zM7 11.4L3.6 8 5 6.6l2 2 4-4L12.4 6 7 11.4z'/%3E%3C/svg%3E"
    );
    background-repeat: no-repeat;
    background-position: right 0.5rem center
  }

[type="date"].success {
    padding-right: 2.5rem;
    border-color: rgb(67, 160, 71);
    background-image: url(
      "data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='rgb(67, 160, 71)'%3E%3Cpath d='M8 0C3.6 0 0 3.6 0 8s3.6 8 8 8 8-3.6 8-8-3.6-8-8-8zM7 11.4L3.6 8 5 6.6l2 2 4-4L12.4 6 7 11.4z'/%3E%3C/svg%3E"
    );
    background-repeat: no-repeat;
    background-position: right 0.5rem center
  }

[type="time"].success {
    padding-right: 2.5rem;
    border-color: rgb(67, 160, 71);
    background-image: url(
      "data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='rgb(67, 160, 71)'%3E%3Cpath d='M8 0C3.6 0 0 3.6 0 8s3.6 8 8 8 8-3.6 8-8-3.6-8-8-8zM7 11.4L3.6 8 5 6.6l2 2 4-4L12.4 6 7 11.4z'/%3E%3C/svg%3E"
    );
    background-repeat: no-repeat;
    background-position: right 0.5rem center
  }

[type="number"].success {
    padding-right: 2.5rem;
    border-color: rgb(67, 160, 71);
    background-image: url(
      "data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='rgb(67, 160, 71)'%3E%3Cpath d='M8 0C3.6 0 0 3.6 0 8s3.6 8 8 8 8-3.6 8-8-3.6-8-8-8zM7 11.4L3.6 8 5 6.6l2 2 4-4L12.4 6 7 11.4z'/%3E%3C/svg%3E"
    );
    background-repeat: no-repeat;
    background-position: right 0.5rem center
  }

select.success {
    padding-right: 2.5rem;
    border-color: rgb(67, 160, 71);
    background-image: url(
      "data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='rgb(67, 160, 71)'%3E%3Cpath d='M8 0C3.6 0 0 3.6 0 8s3.6 8 8 8 8-3.6 8-8-3.6-8-8-8zM7 11.4L3.6 8 5 6.6l2 2 4-4L12.4 6 7 11.4z'/%3E%3C/svg%3E"
    );
    background-repeat: no-repeat;
    background-position: right 0.5rem center
  }

.input__text.success:focus {
      border-color: rgb(37, 97, 232);
    }

[type="text"].success:focus {
      border-color: rgb(37, 97, 232);
    }

[type="search"].success:focus {
      border-color: rgb(37, 97, 232);
    }

[type="tel"].success:focus {
      border-color: rgb(37, 97, 232);
    }

[type="url"].success:focus {
      border-color: rgb(37, 97, 232);
    }

[type="email"].success:focus {
      border-color: rgb(37, 97, 232);
    }

[type="password"].success:focus {
      border-color: rgb(37, 97, 232);
    }

[type="date"].success:focus {
      border-color: rgb(37, 97, 232);
    }

[type="time"].success:focus {
      border-color: rgb(37, 97, 232);
    }

[type="number"].success:focus {
      border-color: rgb(37, 97, 232);
    }

select.success:focus {
      border-color: rgb(37, 97, 232);
    }

/**
 * Text Input with Icon
 *
 * .error - Error state
 * .success - Success state
 *
 * Markup: input-text-icon.twig
 *
 * Style guide: form.text-input-icon
 */

.input__text--icon {
  display: inline-block;
  max-width: 100%;
  min-width: 100%;
  border-radius: 3px;
  background-color: rgb(255, 255, 255);
  background-position: 1rem center
}

@media (min-width: 720px) {

.input__text--icon {
    min-width: 50%
}
  }

.input__text--icon input {
    width: 100%;
    padding-left: 2.5rem;
    background-color: transparent;
  }

/**
 * Text Input with Inline Button
 *
 * Markup: input-text-inline-submit.twig
 *
 * Style guide: form.text-input-inline-submit
 */

.input__text--inline {
  position: relative;
  display: inline-block;
  max-width: 100%;
  min-width: 100%;
  border-radius: 3px;
  background-color: rgb(255, 255, 255);
  background-position: 1rem center
}

@media (min-width: 720px) {

.input__text--inline {
    min-width: 50%
}
  }

.input__text--inline [type="text"] {
    width: 100%;
    padding-left: 2.5rem;
    padding-right: 6rem;
    background-color: transparent;
  }

.input__text--inline [type="submit"] {
    position: absolute;
    top: 0.25rem;
    right: 0.25rem;
    border: 0;
    border-radius: 3px;
  }

/**
 * Label
 *
 * The form `label` element must be present for all form elements, and have a `for` attribute that matches the `id` of the
 * associated form element.
 *
 * .label--inline - Inline label.
 * 
 * Markup: label.twig
 *
 * Style guide: form.label
 */

label {
  display: block;
  margin-bottom: 0.5rem;
  font-size: 1rem;
  color: rgb(0, 0, 0)
}

@media (max-width: 719px) {

  label {
  font-size: 0.875rem;
  }
}

@media (max-width: 719px) {

  label {
  font-size: 0.875rem;
  }
}

legend {
  display: block;
  margin-bottom: 0.5rem;
  font-size: 1rem;
  color: rgb(0, 0, 0)
}

@media (max-width: 719px) {

  legend {
  font-size: 0.875rem;
  }
}

@media (max-width: 719px) {

  legend {
  font-size: 0.875rem;
  }
}

label.label--inline {
    display: inline-block;
    margin-bottom: 0;
    margin-right: 0.5rem;
  }

legend.label--inline {
    display: inline-block;
    margin-bottom: 0;
    margin-right: 0.5rem;
  }

/** 
 * Checkbox (multiple)
 *
 * The standard `input[type="checkbox"]` element, using a fieldset and legend as
 * the accessible way to group and label multiple checkbox inputs.
 *
 * Optionally a tooltip can be used by using the `aria-describedby` attribute
 * on the fieldset itself.
 *
 * Markup: input-checkbox.twig
 *
 * Style guide: form.checkbox-multiple
 */

/**
 * Checkbox (single)
 *
 * Used for things like accepting terms and conditions and opting in to
 * communications.
 *
 * Markup: input-checkbox-single.twig
 *
 * Style guide: form.checkbox-single
 */

/**
 * Radios (multiple)
 *
 * The standard `input[type="radio"]` element, using a fieldset and legend as
 * the accessible way to group and label multiple radio inputs.
 *
 * Optionally a tooltip can be used by using the `aria-describedby` attribute
 * on the fieldset itself.
 *
 * Markup: input-radio.twig
 *
 * Style guide: form.radios
 */

.form__radio {
  margin: 0 0 0.5rem;
  padding: 0 1.5rem;
  border-bottom: 0 none;
  position: relative
}

.form__checkbox {
  margin: 0 0 0.5rem;
  padding: 0 1.5rem;
  border-bottom: 0 none;
  position: relative
}

.form__radio label, .form__checkbox label {
    cursor: pointer;
  }

.form__radio [type="radio"] {
    position: absolute;
    left: 0;
    top: 0.25rem;
    margin: 0;
  }

.form__radio [type="checkbox"] {
    position: absolute;
    left: 0;
    top: 0.25rem;
    margin: 0;
  }

.form__checkbox [type="radio"] {
    position: absolute;
    left: 0;
    top: 0.25rem;
    margin: 0;
  }

.form__checkbox [type="checkbox"] {
    position: absolute;
    left: 0;
    top: 0.25rem;
    margin: 0;
  }

/**
 * Textarea
 *
 * A textarea field is used for multiple lines of text input.
 *
 * Markup: textarea.twig
 *
 * Style guide: form.textarea
 */

%textarea {
  padding: 1rem;
  height: calc(4 * 2.5rem);
  width: 100%;
  border: 2px solid rgb(127, 127, 127);
  border-radius: 3px;
  font-size: 1rem;
  color: rgb(0, 0, 0)
}

@media (max-width: 719px) {

  %textarea {
  font-size: 0.875rem;
  }
}

@media (max-width: 719px) {

  %textarea {
  font-size: 0.875rem;
  }
}

textarea {
  padding: 1rem;
  height: calc(4 * 2.5rem);
  width: 100%;
  border: 2px solid rgb(127, 127, 127);
  border-radius: 3px;
  font-size: 1rem;
  color: rgb(0, 0, 0)
}

@media (max-width: 719px) {

  textarea {
  font-size: 0.875rem;
  }
}

@media (max-width: 719px) {

  textarea {
  font-size: 0.875rem;
  }
}

@media (min-width: 720px) {

%textarea,
textarea {
    width: 50%
}
  }

%textarea:focus {
    border-color: rgb(37, 97, 232);
    outline: none;
  }

textarea:focus {
    border-color: rgb(37, 97, 232);
    outline: none;
  }

/**
 * Fieldset
 *
 * The fieldset element is used for grouping form elements. See the [Checkbox (multiple)](/section-form.html#kssref-form-checkbox-multiple)
 * and [Radios (multiple)](/section-form.html#kssref-form-radios) components for how it is best used.
 *
 * Markup: fieldset.twig
 *
 * Style guide: form.fieldset
 */

fieldset {
  border: 2px solid rgb(127, 127, 127);
  border-radius: 3px;
  padding: 1rem;
  margin: 0 0 1rem;
  min-width: 0
}

fieldset legend {
    font-size: 1rem;
    margin-bottom: 1rem;
    padding: 0 1rem;
  }

@media (max-width: 719px) {

  fieldset legend {
    font-size: 0.875rem;
  }
}

@media (max-width: 719px) {

  fieldset legend {
    font-size: 0.875rem;
  }
}

/**
 * Description
 *
 * Text that describes a form field. The form element must have an `aria-describedby` attribute that points to the
 * `id` of the description text.
 *
 * Markup: form-description.twig
 *
 * Style guide: form.description
 */

.form__description {
  margin: 1rem 0;
  font-size: 0.75rem;
}

@media (max-width: 719px) {

  .form__description {
  font-size: 0.75rem;
  }
}

/**
 * Error message
 *
 * The error state with a red border and message.
 *
 * Markup: form-error.twig
 *
 * Style guide: form.error
 */

.form__error-message {
  margin: 1rem 0;
  font-size: 0.75rem;
  color: rgb(0, 0, 0);
  padding-left: 1.5rem;
  background-image: url(
    "data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='rgb(198, 40, 40)'%3E%3Cpath d='M8 0C3.6 0 0 3.6 0 8s3.6 8 8 8 8-3.6 8-8-3.6-8-8-8zm3.5 10.1l-1.4 1.4L8 9.4l-2.1 2.1-1.4-1.4L6.6 8 4.5 5.9l1.4-1.4L8 6.6l2.1-2.1 1.4 1.4L9.4 8l2.1 2.1z'/%3E%3C/svg%3E"
  );
  background-repeat: no-repeat;
  background-position: left center;
}

@media (max-width: 719px) {

  .form__error-message {
  font-size: 0.75rem;
  }
}

/**
 * Select
 *
 * The select field, used to choose a single option from a list. If multiple options can be selected at the same time,
 * consider using the [Checkbox (multiple)](/section-form.html#kssref-form-checkbox-multiple) component instead.
 *
 * .select--small - A smaller variant of the select field.
 *
 * Markup: select.twig
 *
 * Style guide: form.select
 */

select {
  cursor: pointer;
  background-color: rgb(255, 255, 255);
  line-height: 1.2;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-image: url(
    "data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='rgb(0, 0, 0)'%3E%3Cpath d='M8 11.4L2.6 6 4 4.6l4 4 4-4L13.4 6z'/%3E%3C/svg%3E"
  );
  background-repeat: no-repeat;
  background-position: right 1rem center
}

select[multiple] {
    height: auto;
    background-image: none;
  }

.select--small {
  line-height: 0.9;
  border-width: 1px;
}

.select--wide {
  width: 100%;
}

/**
 * Form
 *
 * Style guide: form
 */

/**
 * Text Input
 *
 * .error - Error state
 * .success - Success state
 *
 * Markup: input-text.twig
 *
 * Style guide: form.text-input
 */

[type='date'] {
  font-family: "Public Sans", Helvetica, Arial, sans-serif;
  font-size: 1rem;
  border-color: rgb(127, 127, 127);
  text-overflow: ellipsis
}

[type='datetime-local'] {
  font-family: "Public Sans", Helvetica, Arial, sans-serif;
  font-size: 1rem;
  border-color: rgb(127, 127, 127);
  text-overflow: ellipsis
}

[type='email'] {
  font-family: "Public Sans", Helvetica, Arial, sans-serif;
  font-size: 1rem;
  border-color: rgb(127, 127, 127);
  text-overflow: ellipsis
}

[type='file'] {
  font-family: "Public Sans", Helvetica, Arial, sans-serif;
  font-size: 1rem;
  border-color: rgb(127, 127, 127);
  text-overflow: ellipsis
}

[type='month'] {
  font-family: "Public Sans", Helvetica, Arial, sans-serif;
  font-size: 1rem;
  border-color: rgb(127, 127, 127);
  text-overflow: ellipsis
}

[type='number'] {
  font-family: "Public Sans", Helvetica, Arial, sans-serif;
  font-size: 1rem;
  border-color: rgb(127, 127, 127);
  text-overflow: ellipsis
}

[type='password'] {
  font-family: "Public Sans", Helvetica, Arial, sans-serif;
  font-size: 1rem;
  border-color: rgb(127, 127, 127);
  text-overflow: ellipsis
}

[type='search'] {
  font-family: "Public Sans", Helvetica, Arial, sans-serif;
  font-size: 1rem;
  border-color: rgb(127, 127, 127);
  text-overflow: ellipsis
}

[type='tel'] {
  font-family: "Public Sans", Helvetica, Arial, sans-serif;
  font-size: 1rem;
  border-color: rgb(127, 127, 127);
  text-overflow: ellipsis
}

[type='text'] {
  font-family: "Public Sans", Helvetica, Arial, sans-serif;
  font-size: 1rem;
  border-color: rgb(127, 127, 127);
  text-overflow: ellipsis
}

[type='time'] {
  font-family: "Public Sans", Helvetica, Arial, sans-serif;
  font-size: 1rem;
  border-color: rgb(127, 127, 127);
  text-overflow: ellipsis
}

[type='url'] {
  font-family: "Public Sans", Helvetica, Arial, sans-serif;
  font-size: 1rem;
  border-color: rgb(127, 127, 127);
  text-overflow: ellipsis
}

[type='week'] {
  font-family: "Public Sans", Helvetica, Arial, sans-serif;
  font-size: 1rem;
  border-color: rgb(127, 127, 127);
  text-overflow: ellipsis
}

textarea {
  font-family: "Public Sans", Helvetica, Arial, sans-serif;
  font-size: 1rem;
  border-color: rgb(127, 127, 127);
  text-overflow: ellipsis
}

[type='date']:hover {
    border-color: rgb(74, 78, 87);
  }

[type='datetime-local']:hover {
    border-color: rgb(74, 78, 87);
  }

[type='email']:hover {
    border-color: rgb(74, 78, 87);
  }

[type='file']:hover {
    border-color: rgb(74, 78, 87);
  }

[type='month']:hover {
    border-color: rgb(74, 78, 87);
  }

[type='number']:hover {
    border-color: rgb(74, 78, 87);
  }

[type='password']:hover {
    border-color: rgb(74, 78, 87);
  }

[type='search']:hover {
    border-color: rgb(74, 78, 87);
  }

[type='tel']:hover {
    border-color: rgb(74, 78, 87);
  }

[type='text']:hover {
    border-color: rgb(74, 78, 87);
  }

[type='time']:hover {
    border-color: rgb(74, 78, 87);
  }

[type='url']:hover {
    border-color: rgb(74, 78, 87);
  }

[type='week']:hover {
    border-color: rgb(74, 78, 87);
  }

textarea:hover {
    border-color: rgb(74, 78, 87);
  }

[type='date']:focus {
    border-color: rgb(37, 97, 232);
  }

[type='datetime-local']:focus {
    border-color: rgb(37, 97, 232);
  }

[type='email']:focus {
    border-color: rgb(37, 97, 232);
  }

[type='file']:focus {
    border-color: rgb(37, 97, 232);
  }

[type='month']:focus {
    border-color: rgb(37, 97, 232);
  }

[type='number']:focus {
    border-color: rgb(37, 97, 232);
  }

[type='password']:focus {
    border-color: rgb(37, 97, 232);
  }

[type='search']:focus {
    border-color: rgb(37, 97, 232);
  }

[type='tel']:focus {
    border-color: rgb(37, 97, 232);
  }

[type='text']:focus {
    border-color: rgb(37, 97, 232);
  }

[type='time']:focus {
    border-color: rgb(37, 97, 232);
  }

[type='url']:focus {
    border-color: rgb(37, 97, 232);
  }

[type='week']:focus {
    border-color: rgb(37, 97, 232);
  }

textarea:focus {
    border-color: rgb(37, 97, 232);
  }

select {
  padding-right: 2.25rem;
  font-family: "Public Sans", Helvetica, Arial, sans-serif;
}

/**
 * Text Input with Icon
 *
 * .error - Error state
 * .success - Success state
 *
 * Markup: input-text-icon.twig
 *
 * Style guide: form.text-input-icon
 */

.input__text--inline.icon--search .form__item--textfield {
    margin-bottom: 0;
  }

/**
 * Text Input with Inline Button
 *
 * Markup: input-text-inline-submit.twig
 *
 * Style guide: form.text-input-inline-submit
 */

.input__text--inline [type='submit'] {
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    margin-bottom: 0;
    bottom: 0.25rem;

    /* to get this to sit nicely inside the input box in iOS, chrome, IE, FF we need to use exact units 100% - .5rem does not work */
    max-height: calc(49px - .5rem);
  }

/**
 * Label
 *
 * The form `label` element must be present for all form elements, and have a `for` attribute that matches the `id` of the
 * associated form element.
 *
 * .label--inline - Inline label.
 *
 * Markup: label.twig
 *
 * Style guide: form.label
 */

/**
 * Checkbox (multiple)
 *
 * The standard `input[type="checkbox"]` element, using a fieldset and legend as
 * the accessible way to group and label multiple checkbox inputs.
 *
 * Optionally a tooltip can be used by using the `aria-describedby` attribute
 * on the fieldset itself.
 *
 * Markup: input-checkbox.twig
 *
 * Style guide: form.checkbox-multiple
 */

/**
 * Checkbox (single)
 *
 * Used for things like accepting terms and conditions and opting in to
 * communications.
 *
 * .form__checkbox--primary - Primary
 * .form__checkbox--secondary - Secondary
 * .form__checkbox--small - Small
 *
 * Markup: input-checkbox-single.twig
 *
 * Style guide: form.checkbox-single
 */

.form__checkbox [type='checkbox'] {
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    display: inline-block;
    position: absolute;
    top: 4px;
    width: 18px;
    height: 18px;
    border: 2px solid rgb(127, 127, 127);
    border-radius: 3px;
  }

.form__checkbox [type='checkbox']:checked {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='rgb(127, 127, 127)'%3E%3Cpath d='M5.6 9.6L2.4 6.4 0 8.8l5.6 5.6L16 4l-2.4-2.4z'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-size: .75rem;
    background-position: center;
  }

.form__checkbox [type='checkbox']:focus {
    border-color: rgb(37, 97, 232);
  }

.form__checkbox [type='checkbox']:disabled {
    background-image: none;
    border-color: rgb(127, 127, 127);
    background-color: rgb(230, 230, 230);
  }

.form__checkbox [type='checkbox']:disabled:checked {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='rgb(127, 127, 127)'%3E%3Cpath d='M5.6 9.6L2.4 6.4 0 8.8l5.6 5.6L16 4l-2.4-2.4z'/%3E%3C/svg%3E");
  }

.form__checkbox--primary [type='checkbox']:checked {
    background-color: rgb(1, 33, 105);
    border-color: rgb(1, 33, 105);
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='rgb(255, 255, 255)'%3E%3Cpath d='M5.6 9.6L2.4 6.4 0 8.8l5.6 5.6L16 4l-2.4-2.4z'/%3E%3C/svg%3E");
  }

.form__checkbox--secondary [type='checkbox']:checked {
    background-color: rgb(1, 33, 105);
    border-color: rgb(1, 33, 105);
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='rgb(255, 255, 255)'%3E%3Cpath d='M5.6 9.6L2.4 6.4 0 8.8l5.6 5.6L16 4l-2.4-2.4z'/%3E%3C/svg%3E");
  }

.form__checkbox--small {
  margin-bottom: 1rem
}

.form__checkbox--small [type='checkbox'] {
    width: 0.875rem;
    height: 0.875rem;
  }

@media (max-width: 719px) {

  .form__checkbox--small [type='checkbox'] {
    height: 0.75rem;
  }
}

@media (max-width: 719px) {

  .form__checkbox--small [type='checkbox'] {
    width: 0.75rem;
  }
}

.form__checkbox--small [type='checkbox']:checked {
    background-size: .5rem;
  }

.form__checkbox--small label {
    font-size: 0.875rem;
  }

@media (max-width: 719px) {

  .form__checkbox--small label {
    font-size: 0.75rem;
  }
}

/**
 * Radios (multiple)
 *
 * The standard `input[type="radio"]` element, using a fieldset and legend as
 * the accessible way to group and label multiple radio inputs.
 *
 * Optionally a tooltip can be used by using the `aria-describedby` attribute
 * on the fieldset itself.
 *
 * .form__radio--primary - Primary
 * .form__radio--secondary - Secondary
 * .form__radio--small - Small
 *
 * Markup: input-radio.twig
 *
 * Style guide: form.radios
 */

.form__radio [type='radio'] {
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    display: inline-block;
    position: absolute;
    top: 2px;
    width: 18px;
    height: 18px;
    border: 2px solid rgb(127, 127, 127);
    border-radius: 50%;
  }

.form__radio [type='radio']:checked::after {
    content: '';
    position: absolute;
    width: 10px;
    height: 10px;
    top: 2px;
    left: 2px;
    border-radius: 50%;
    background-color: rgb(127, 127, 127);
  }

.form__radio [type='radio']:focus {
    outline: 1px solid rgb(37, 97, 232);
  }

.form__radio [type='radio']:disabled {
    border-color: rgb(127, 127, 127);
    background-color: rgb(230, 230, 230);
  }

.form__radio [type='radio']:disabled:checked::after {
    background-color: rgb(230, 230, 230);
  }

.form__radio--primary [type='radio'] {
    border-color: rgb(1, 33, 105);
  }

.form__radio--primary [type='radio']:checked::after {
    background-color: rgb(1, 33, 105);
  }

.form__radio--secondary [type='radio'] {
    border-color: rgb(1, 33, 105);
  }

.form__radio--secondary [type='radio']:checked::after {
    background-color: rgb(1, 33, 105);
  }

.form__radio--small [type='radio'] {
    top: 3px;
    width: 16px;
    height: 16px;
  }

.form__radio--small [type='radio']:checked::after {
    width: 8px;
    height: 8px;
  }

.form__radio--small label {
    font-size: 0.875rem;
  }

@media (max-width: 719px) {

  .form__radio--small label {
    font-size: 0.75rem;
  }
}

/**
 * Textarea
 *
 * A textarea field is used for multiple lines of text input.
 *
 * Markup: textarea.twig
 *
 * Style guide: form.textarea
 */

/**
 * Fieldset
 *
 * The fieldset element is used for grouping form elements. See the [Checkbox (multiple)](/section-form.html#kssref-form-checkbox-multiple)
 * and [Radios (multiple)](/section-form.html#kssref-form-radios) components for how it is best used.
 *
 * Markup: fieldset.twig
 *
 * Style guide: form.fieldset
 */

/**
 * Description
 *
 * Text that describes a form field. The form element must have an `aria-describedby` attribute that points to the
 * `id` of the description text.
 *
 * Markup: form-description.twig
 *
 * Style guide: form.description
 */

/**
 * Error message
 *
 * The error state with a red border and message.
 *
 * Markup: form-error.twig
 *
 * Style guide: form.error
 */

.form__description {
  margin: 0.5rem 0;
}

.form__error-message {
  margin: 0.5rem 0;
}

/**
 * Drupal selectors.
 */

.user-login-form,
.user-register-form,
.user-pass {
  max-width: 500px;
  margin: 50px auto;
}

.input--hidden-label label {
  display: none;
}

.form__item.form__item--label-inline {
    display: block;
    max-width: calc(100vw - 3rem)
  }

@media (min-width: 540px) {

.form__item.form__item--label-inline {
      display: flex;
      align-items: center;
      justify-content: flex-start
  }
    }

/**
 * Place the popover trigger inside the input field for inline form combo's
 */

.input__text--inline .popover__wrapper {
  position: absolute;
  top: 0.25rem;
  right: 0.25rem;
  margin-top: 1px;
}

@media (max-width: 719px) {
  .input__text--inline {
    width: 100%;
  }

  .input__text--inline .popover {
    min-width: calc(100vw - 3.5rem);
  }
}

/**
 * Print stylesheet
 */

@media print {
  form {
    display: none;
  }
}

/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AcG54LW1peHRhcGUvY29uc3RhbnRzL3NyYy9jb25zdGFudHMuY3NzIiwiLi4vLi4vLi4vc3JjL192YXJpYWJsZXMuY3NzIiwiLi4vLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0BwbngtbWl4dGFwZS9mb3JtL3NyYy9fZm9ybS5jc3MiLCIuLi8uLi8uLi9zcmMvZm9ybS9mb3JtLmNzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7RUFFRTs7QUFFRixnQkFBZ0I7O0FBb0JoQix5REFBeUQ7O0FBSXpEOztFQXlCRSxpQkFBaUI7O0VBYWpCLHFHQUFxRzs7RUFnQnJHLGVBQWUsRUFLUyxTQUFTLEVBQ1IsU0FBUyxFQUNULFNBQVMsRUFDVCxnQkFBZ0IsRUFDcEIsZ0JBQWdCLEVBQ1osU0FBUyxFQUNULHdCQUF3QixFQUV2QixvQkFBb0IsRUFDbkIsY0FBYyxFQUNqQixjQUFjLEVBQ1osY0FBYyxFQUNaLGNBQWMsRUFDakIsY0FBYyxFQUNULGNBQWMsRUFFeEIsb0JBQW9CLEVBQ2xCLG9CQUFvQixFQUNoQixnQkFBZ0I7O0VBTzFDLFlBQVksRUFDWSxRQUFRLEVBQ1YsUUFBUSxFQUNOLFNBQVMsRUFDZCxTQUFTLEVBQ1AsU0FBUyxFQUNYLFNBQVMsRUFDTixTQUFTLEVBQ1YsU0FBUyxFQUNOLFNBQVMsRUFDVixTQUFTLEVBQ1YsU0FBUyxFQUNWLFNBQVMsRUFDTixTQUFTOztFQU1qQyxXQUFXOztFQU9YLFdBQVcsRUFDa0IsdUJBQXVCOztFQUVwRCxZQUFZO0FBR2Q7O0FBRUE7RUFDRSxRQUM0QixTQUFTLEVBQ1QsU0FBUyxFQUNULFNBQVMsRUFDZCxnQkFBZ0IsRUFDWixnQkFBZ0IsRUFDakIsU0FBUyxFQUNQLHdCQUF3QixFQUVyQixvQkFBb0IsRUFDcEIsY0FBYyxFQUNqQixjQUFjLEVBQ2IsY0FBYyxFQUNiLGNBQWMsRUFDakIsY0FBYyxFQUNULGNBQWM7RUFDOUM7QUFDRjs7QUMz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dEM7O0FBRkE7SUFDRSx5QkFBb0M7RUFDdEM7O0FBRkE7SUFDRSx5QkFBb0M7RUFDdEM7O0FBRkE7SUFDRSx5QkFBb0M7RUFDdEM7O0FBRkE7SUFDRSx5QkFBb0M7RUFDdEM7O0FBRkE7SUFDRSx5QkFBb0M7RUFDdEM7O0FBRkE7SUFDRSx5QkFBb0M7RUFDdEM7O0FBRkE7SUFDRSx5QkFBb0M7RUFDdEM7O0FBRkE7SUFDRSx5QkFBb0M7RUFDdEM7O0FBRkE7SUFDRSx5QkFBb0M7RUFDdEM7O0FBRkE7SUFDRSx5QkFBb0M7RUFDdEM7O0FBRkE7SUFDRSx5QkFBb0M7RUFDdEM7O0FBRkE7SUFDRSx5QkFBb0M7RUFDdEM7O0FBRkE7SUFDRSx5QkFBb0M7RUFDdEM7O0FBRUE7SUFDRSxxQkFBZ0M7SUFDaEMsOEJBQXFDO0lBQ3JDOztLQUdDO0lBQ0QsNEJBQTRCO0lBQzVCO0VBS0Y7O0FBYkE7SUFDRSxxQkFBZ0M7SUFDaEMsOEJBQXFDO0lBQ3JDOztLQUdDO0lBQ0QsNEJBQTRCO0lBQzVCO0VBS0Y7O0FBYkE7SUFDRSxxQkFBZ0M7SUFDaEMsOEJBQXFDO0lBQ3JDOztLQUdDO0lBQ0QsNEJBQTRCO0lBQzVCO0VBS0Y7O0FBYkE7SUFDRSxxQkFBZ0M7SUFDaEMsOEJBQXFDO0lBQ3JDOztLQUdDO0lBQ0QsNEJBQTRCO0lBQzVCO0VBS0Y7O0FBYkE7SUFDRSxxQkFBZ0M7SUFDaEMsOEJBQXFDO0lBQ3JDOztLQUdDO0lBQ0QsNEJBQTRCO0lBQzVCO0VBS0Y7O0FBYkE7SUFDRSxxQkFBZ0M7SUFDaEMsOEJBQXFDO0lBQ3JDOztLQUdDO0lBQ0QsNEJBQTRCO0lBQzVCO0VBS0Y7O0FBYkE7SUFDRSxxQkFBZ0M7SUFDaEMsOEJBQXFDO0lBQ3JDOztLQUdDO0lBQ0QsNEJBQTRCO0lBQzVCO0VBS0Y7O0FBYkE7SUFDRSxxQkFBZ0M7SUFDaEMsOEJBQXFDO0lBQ3JDOztLQUdDO0lBQ0QsNEJBQTRCO0lBQzVCO0VBS0Y7O0FBYkE7SUFDRSxxQkFBZ0M7SUFDaEMsOEJBQXFDO0lBQ3JDOztLQUdDO0lBQ0QsNEJBQTRCO0lBQzVCO0VBS0Y7O0FBYkE7SUFDRSxxQkFBZ0M7SUFDaEMsOEJBQXFDO0lBQ3JDOztLQUdDO0lBQ0QsNEJBQTRCO0lBQzVCO0VBS0Y7O0FBYkE7SUFDRSxxQkFBZ0M7SUFDaEMsOEJBQXFDO0lBQ3JDOztLQUdDO0lBQ0QsNEJBQTRCO0lBQzVCO0VBS0Y7O0FBSEU7TUFDRSw4QkFBNEM7SUFDOUM7O0FBRkE7TUFDRSw4QkFBNEM7SUFDOUM7O0FBRkE7TUFDRSw4QkFBNEM7SUFDOUM7O0FBRkE7TUFDRSw4QkFBNEM7SUFDOUM7O0FBRkE7TUFDRSw4QkFBNEM7SUFDOUM7O0FBRkE7TUFDRSw4QkFBNEM7SUFDOUM7O0FBRkE7TUFDRSw4QkFBNEM7SUFDOUM7O0FBRkE7TUFDRSw4QkFBNEM7SUFDOUM7O0FBRkE7TUFDRSw4QkFBNEM7SUFDOUM7O0FBRkE7TUFDRSw4QkFBNEM7SUFDOUM7O0FBRkE7TUFDRSw4QkFBNEM7SUFDOUM7O0FBR0Y7SUFDRSxxQkFBZ0M7SUFDaEMsOEJBQXVDO0lBQ3ZDOztLQUdDO0lBQ0QsNEJBQTRCO0lBQzVCO0VBS0Y7O0FBYkE7SUFDRSxxQkFBZ0M7SUFDaEMsOEJBQXVDO0lBQ3ZDOztLQUdDO0lBQ0QsNEJBQTRCO0lBQzVCO0VBS0Y7O0FBYkE7SUFDRSxxQkFBZ0M7SUFDaEMsOEJBQXVDO0lBQ3ZDOztLQUdDO0lBQ0QsNEJBQTRCO0lBQzVCO0VBS0Y7O0FBYkE7SUFDRSxxQkFBZ0M7SUFDaEMsOEJBQXVDO0lBQ3ZDOztLQUdDO0lBQ0QsNEJBQTRCO0lBQzVCO0VBS0Y7O0FBYkE7SUFDRSxxQkFBZ0M7SUFDaEMsOEJBQXVDO0lBQ3ZDOztLQUdDO0lBQ0QsNEJBQTRCO0lBQzVCO0VBS0Y7O0FBYkE7SUFDRSxxQkFBZ0M7SUFDaEMsOEJBQXVDO0lBQ3ZDOztLQUdDO0lBQ0QsNEJBQTRCO0lBQzVCO0VBS0Y7O0FBYkE7SUFDRSxxQkFBZ0M7SUFDaEMsOEJBQXVDO0lBQ3ZDOztLQUdDO0lBQ0QsNEJBQTRCO0lBQzVCO0VBS0Y7O0FBYkE7SUFDRSxxQkFBZ0M7SUFDaEMsOEJBQXVDO0lB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QUFJQTtJQUNFLDZCQUFnQztFQUNsQzs7QUFFQTtJQUNFLGlDQUFvQztFQUN0Qzs7QUFJQTtJQUNFLDZCQUFnQztFQUNsQzs7QUFFQTtJQUNFLGlDQUFvQztFQUN0Qzs7QUFJQTtJQUNFLFFBQVE7SUFDUixXQUFXO0lBQ1gsWUFBWTtFQUNkOztBQUVBO0lBQ0UsVUFBVTtJQUNWLFdBQVc7RUFDYjs7QUFFQTtJQUNFLG1CQUE2QjtFQUMvQjs7QUg1SUY7O0VHMElFO0lBQ0U7RUFDRjtBSDFIRjs7QUc2SEE7Ozs7Ozs7O0VBUUU7O0FBRUY7Ozs7Ozs7OztFQVNFOztBQUVGOzs7Ozs7Ozs7RUFTRTs7QUFFRjs7Ozs7Ozs7RUFRRTs7QUFFRjtFQUVFLGdCQUEyQjtBQUM3Qjs7QUFIQTtFQUVFLGdCQUEyQjtBQUM3Qjs7QUFFQTs7RUFFRTs7QUFDRjs7O0VBR0UsZ0JBQWdCO0VBQ2hCLGlCQUFpQjtBQUNuQjs7QUFFQTtFQUNFLGFBQWE7QUFDZjs7QUFHRTtJQUNFLGNBQWM7SUFDZDtFQU9GOztBQUxFOztBQUpGO01BS0ksYUFBYTtNQUNiLG1CQUFtQjtNQUNuQjtFQUVKO0lBREU7O0FBSUo7O0VBRUU7O0FBQ0Y7RUFDRSxrQkFBa0I7RUFDbEIsWUFBdUI7RUFDdkIsY0FBeUI7RUFDekIsZUFBZTtBQUNqQjs7QUFFQTtFQUNFO0lBQ0UsV0FBVztFQUNiOztFQUVBO0lBQ0UsK0JBQStCO0VBQ2pDO0FBQ0Y7O0FBRUE7O0VBRUU7O0FBRUY7RUFDRTtJQUNFLGFBQWE7RUFDZjtBQUNGIiwiZmlsZSI6ImZvcm0uY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBWYXJpYWJsZXNcbiAqL1xuXG4vKiBCcmVha3BvaW50cyAqL1xuQGN1c3RvbS1tZWRpYSAtLXgtc21hbGwtdXAgKHdpZHRoID49IDQyMHB4KTtcbkBjdXN0b20tbWVkaWEgLS14LXNtYWxsLWRvd24gKHdpZHRoIDwgNDIwcHgpO1xuQGN1c3RvbS1tZWRpYSAtLXgtc21hbGwtdG8tc21hbGwgKDQyMHB4IDw9IHdpZHRoIDwgNTQwcHgpO1xuXG5AY3VzdG9tLW1lZGlhIC0tc21hbGwtdXAgKHdpZHRoID49IDU0MHB4KTtcbkBjdXN0b20tbWVkaWEgLS1zbWFsbC1kb3duICh3aWR0aCA8IDU0MHB4KTtcbkBjdXN0b20tbWVkaWEgLS1zbWFsbC10by1tZWRpdW0gKDU0MHB4IDw9IHdpZHRoIDwgNzIwcHgpO1xuXG5AY3VzdG9tLW1lZGlhIC0tbWVkaXVtLXVwICh3aWR0aCA+PSA3MjBweCk7XG5AY3VzdG9tLW1lZGlhIC0tbWVkaXVtLWRvd24gKHdpZHRoIDwgNzIwcHgpO1xuQGN1c3RvbS1tZWRpYSAtLW1lZGl1bS10by1sYXJnZSAoNzIwcHggPD0gd2lkdGggPCA5NDZweCk7XG5cbkBjdXN0b20tbWVkaWEgLS1sYXJnZS11cCAod2lkdGggPj0gOTQ2cHgpO1xuQGN1c3RvbS1tZWRpYSAtLWxhcmdlLWRvd24gKHdpZHRoIDwgOTQ2cHgpO1xuQGN1c3RvbS1tZWRpYSAtLWxhcmdlLXRvLXgtbGFyZ2UgKDk0NnB4IDw9IHdpZHRoIDwgMTEwMHB4KTtcblxuQGN1c3RvbS1tZWRpYSAtLXgtbGFyZ2UtdXAgKHdpZHRoID49IDExMDBweCk7XG5AY3VzdG9tLW1lZGlhIC0teC1sYXJnZS1kb3duICh3aWR0aCA8IDExMDBweCk7XG5cbi8qIFNwZWNpZmljIGJyZWFrcG9pbnQgZm9yIGdsb2JhbCAmIGRyb3Bkb3duIG5hdmlnYXRpb24gKi9cbkBjdXN0b20tbWVkaWEgLS1nbG9iYWwtbmF2LXVwICh3aWR0aCA+PSA3MjBweCk7XG5AY3VzdG9tLW1lZGlhIC0tZ2xvYmFsLW5hdi1kb3duICh3aWR0aCA8IDcyMHB4KTtcblxuOnJvb3Qge1xuICAtLXdoaXRlOiByZ2IoMjU1LCAyNTUsIDI1NSk7XG4gIC0tZ3JleS0wNTogcmdiKDI0MiwgMjQyLCAyNDMpO1xuICAtLWdyZXktMTA6IHJnYigyMzAsIDIzMCwgMjMwKTtcbiAgLS1ncmV5LTI1OiByZ2IoMTk0LCAxOTYsIDE5OSk7XG4gIC0tZ3JleS01MDogcmdiKDEyOCwgMTI4LCAxMjgpO1xuICAtLWdyZXktNzU6IHJnYig3NSwgNzksIDg4KTtcbiAgLS1ibGFjazogcmdiKDAsIDAsIDApO1xuICAtLWJsdWU6IHJnYigwLCA5MiwgMjUwKTtcbiAgLS1ibHVlLTUwOiByZ2IoOTksIDE4MSwgMjIyKTtcbiAgLS1ibHVlLTEwOiByZ2IoMjI5LCAyMzksIDI1NSk7XG4gIC0tYmx1ZS0wNTogcmdiKDIyOSwgMjM5LCAyNTUpO1xuICAtLW9yYW5nZTogcmdiKDI0NywgMTQzLCAyOSk7XG4gIC0tb3JhbmdlLTEwOiByZ2IoMjU0LCAyNDMsIDIzMik7XG4gIC0tZ3JlZW46IHJnYig2OCwgMTYyLCA3Mik7XG4gIC0tZ3JlZW4tMTA6IHJnYigyMzgsIDI0NiwgMjM4KTtcbiAgLS1yZWQ6IHJnYigxOTgsIDQwLCA0MCk7XG4gIC0tcmVkLTEwOiByZ2IoMjQ5LCAyMzMsIDIzMyk7XG4gIC0teWVsbG93OiByZ2IoMjQ5LCAyMTIsIDApO1xuICAtLXllbGxvdy0xMDogcmdiKDI1NCwgMjUwLCAyMjkpO1xuICAtLXB1cnBsZTogcmdiKDEzNiwgNDcsIDExNSk7XG4gIC0tcHVycGxlLTEwOiByZ2IoMjQzLCAyMzQsIDI0MSk7XG4gIC0tb3ZlcmxheS1saWdodDogcmdiYSgyNTUsIDI1NSwgMjU1LCAuNSk7XG4gIC0tb3ZlcmxheS1kYXJrOiByZ2JhKDAsIDAsIDAsIC41KTtcblxuICAvKiBCcmFuZCBjb2xvcnMgKi9cbiAgLS1icmFuZC1wcmltYXJ5OiB2YXIoLS1wdXJwbGUpO1xuICAtLWJyYW5kLXByaW1hcnktbGlnaHQ6IHZhcigtLXB1cnBsZS0xMCk7XG4gIC0tYnJhbmQtc2Vjb25kYXJ5OiB2YXIoLS15ZWxsb3cpO1xuICAtLWJyYW5kLXNlY29uZGFyeS1saWdodDogdmFyKC0teWVsbG93LTEwKTtcbiAgLS1icmFuZC10ZXJ0aWFyeTogdmFyKC0tYmx1ZSk7XG4gIC0tYnJhbmQtdGVydGlhcnktbGlnaHQ6IHZhcigtLWJsdWUtMTApO1xuICAtLWJyYW5kLXJldmVyc2U6IHZhcigtLXdoaXRlKTtcbiAgLS1icmFuZC10ZXh0OiB2YXIoLS1ibGFjayk7XG4gIC0tYnJhbmQtbGluazogdmFyKC0tYnJhbmQtcHJpbWFyeSk7XG4gIC0tYnJhbmQtbGluay1ob3ZlcjogdmFyKC0tYnJhbmQtdGVydGlhcnkpO1xuICAtLWJyYW5kLWJvcmRlcjogdmFyKC0tZ3JleS0xMCk7XG5cbiAgLyogRmlsdGVycyAtIFVzZWQgZm9yIGFkanVzdGluZyBpY29uIGNvbG9yLiBHZW5lcmF0ZWQgdXNpbmcgYG5wbSBydW4gY29sb3ItdG8tZmlsdGVyIC0tIDxvcHRpb25zPmAuICovXG4gIC0tZmlsdGVyLWJsYWNrOiBpbnZlcnQoMCUpIHNlcGlhKDQlKSBzYXR1cmF0ZSgwJSkgaHVlLXJvdGF0ZSg1M2RlZykgYnJpZ2h0bmVzcyg5NCUpIGNvbnRyYXN0KDEwMiUpO1xuICAtLWZpbHRlci13aGl0ZTogaW52ZXJ0KDg5JSkgc2VwaWEoNjAlKSBzYXR1cmF0ZSgwJSkgaHVlLXJvdGF0ZSgzNDFkZWcpIGJyaWdodG5lc3MoMTA0JSkgY29udHJhc3QoMTA3JSk7XG4gIC0tZmlsdGVyLWJyYW5kLXByaW1hcnk6IGludmVydCgyMyUpIHNlcGlhKDg3JSkgc2F0dXJhdGUoMTAyNCUpIGh1ZS1yb3RhdGUoMjc3ZGVnKSBicmlnaHRuZXNzKDg4JSkgY29udHJhc3QoOTElKTtcbiAgLS1maWx0ZXItYnJhbmQtc2Vjb25kYXJ5OiBpbnZlcnQoNzglKSBzZXBpYSg5MSUpIHNhdHVyYXRlKDIwMDUlKSBodWUtcm90YXRlKDM1N2RlZykgYnJpZ2h0bmVzcyg5NSUpIGNvbnRyYXN0KDEwNiUpO1xuICAtLWZpbHRlci1icmFuZC10ZXJ0aWFyeTogaW52ZXJ0KDI4JSkgc2VwaWEoNTklKSBzYXR1cmF0ZSg3MDU2JSkgaHVlLXJvdGF0ZSgyMTVkZWcpIGJyaWdodG5lc3MoOTglKSBjb250cmFzdCgxMDMlKTtcbiAgLS1maWx0ZXItYnJhbmQtbGluazogdmFyKC0tZmlsdGVyLWJyYW5kLXByaW1hcnkpO1xuICAtLWZpbHRlci1icmFuZC1saW5rLWhvdmVyOiB2YXIoLS1maWx0ZXItYnJhbmQtdGVydGlhcnkpO1xuICAtLWZpbHRlci1icmFuZC1yZXZlcnNlOiB2YXIoLS1maWx0ZXItd2hpdGUpO1xuICAtLWZpbHRlci1icmFuZC10ZXh0OiB2YXIoLS1maWx0ZXItYmxhY2spO1xuICAtLWZpbHRlci1ncmV5LTUwOiBpbnZlcnQoNTElKSBzZXBpYSgxJSkgc2F0dXJhdGUoMCUpIGh1ZS1yb3RhdGUoMTA2ZGVnKSBicmlnaHRuZXNzKDk5JSkgY29udHJhc3QoODclKTtcbiAgLS1maWx0ZXItcmVkOiBpbnZlcnQoMjElKSBzZXBpYSg4MyUpIHNhdHVyYXRlKDIzMzMlKSBodWUtcm90YXRlKDM0M2RlZykgYnJpZ2h0bmVzcyg5MSUpIGNvbnRyYXN0KDk2JSk7XG4gIC0tZmlsdGVyLWJsdWU6IGludmVydCgyOSUpIHNlcGlhKDYzJSkgc2F0dXJhdGUoNDYxMiUpIGh1ZS1yb3RhdGUoMjExZGVnKSBicmlnaHRuZXNzKDkyJSkgY29udHJhc3QoMTE1JSk7XG4gIC0tZmlsdGVyLWdyZWVuOiBpbnZlcnQoNDAlKSBzZXBpYSg4JSkgc2F0dXJhdGUoMzc3NCUpIGh1ZS1yb3RhdGUoNzNkZWcpIGJyaWdodG5lc3MoMTMyJSkgY29udHJhc3QoNzQlKTtcbiAgLS1maWx0ZXItb3JhbmdlOiBpbnZlcnQoNjklKSBzZXBpYSgzNSUpIHNhdHVyYXRlKDUwMzUlKSBodWUtcm90YXRlKDM0OWRlZykgYnJpZ2h0bmVzcygxMDMlKSBjb250cmFzdCg5NCUpO1xuXG4gIC8qIFR5cG9ncmFwaHkgKi9cbiAgLS1mb250LWZhbWlseTogXCJJbnRlclwiLCBoZWx2ZXRpY2EsIGFyaWFsLCBzYW5zLXNlcmlmO1xuICAtLWZvbnQtZmFtaWx5LXZhcmlhYmxlOiBcIkludGVyIHZhclwiLCBoZWx2ZXRpY2EsIGFyaWFsLCBzYW5zLXNlcmlmO1xuICAtLWZvbnQtZmFtaWx5LWhlYWRpbmc6IHZhcigtLWZvbnQtZmFtaWx5KTtcblxuICAtLWZvbnQtc2l6ZS14eHhsOiAycmVtOyAvKiAzMnB4ICovXG4gIC0tZm9udC1zaXplLXh4bDogMS41cmVtOyAvKiAyNHB4ICovXG4gIC0tZm9udC1zaXplLXhsOiAxLjI1cmVtOyAvKiAyMHB4ICovXG4gIC0tZm9udC1zaXplLWw6IDEuMTI1cmVtOyAvKiAxOHB4IC0gTGVkZSAqL1xuICAtLWZvbnQtc2l6ZS1tOiAxcmVtOyAvKiAxNnB4IC0gQm9keSAqL1xuICAtLWZvbnQtc2l6ZS1zOiAwLjg3NXJlbTsgLyogMTRweCAqL1xuICAtLWZvbnQtc2l6ZS14czogMC43NXJlbTsgLyogMTJweCAtIFN1YiwgQ2FwdGlvbiAqL1xuXG4gIC0taGVhZGluZy1zaXplLXh4bDogM3JlbTsgLyogNDhweCAtIEhlYWRsaW5lICovXG4gIC0taGVhZGluZy1zaXplLXhsOiAyLjVyZW07IC8qIDQwcHggLSBIMSAqL1xuICAtLWhlYWRpbmctc2l6ZS1sOiAycmVtOyAvKiAzMnB4IC0gSDIgKi9cbiAgLS1oZWFkaW5nLXNpemUtbTogMS41cmVtOyAvKiAyNHB4IC0gSDMgKi9cbiAgLS1oZWFkaW5nLXNpemUtczogMS4xMjVyZW07IC8qIDE4cHggLSBINCAqL1xuICAtLWhlYWRpbmctc2l6ZS14czogMXJlbTsgLyogMTZweCAtIEg1ICovXG4gIC0taGVhZGluZy1zaXplLXh4czogMC44NzVyZW07IC8qIDE0cHggLSBINiAqL1xuXG4gIC0tbGluZS1oZWlnaHQ6IDEuNjsgLyogMS42IHggZm9udCBzaXplICovXG4gIC0tbGluZS1oZWlnaHQtaDogMS4yOyAvKiAxLjIgeCBmb250IHNpemUgKi9cbiAgLS1saW5lLWhlaWdodC11aTogMC45cmVtOyAvKiAxNHB4IGFsd2F5cyAqL1xuXG4gIC0tZm9udC13ZWlnaHQtbm9ybWFsOiA0MDA7XG4gIC0tZm9udC13ZWlnaHQtYm9sZDogNzAwO1xuICAtLWZvbnQtd2VpZ2h0LWhlYXZ5OiA4MDA7XG4gIC0tZm9udC13ZWlnaHQtaGVhZGluZzogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG5cbiAgLyogU3BhY2luZyAqL1xuICAtLXNwYWNpbmcteHhzOiAwLjI1cmVtOyAvKiA0cHggKi9cbiAgLS1zcGFjaW5nLXhzOiAwLjVyZW07IC8qIDhweCAqL1xuICAtLXNwYWNpbmcteHNzOiAwLjc1cmVtOyAvKiAxMnB4ICovXG4gIC0tc3BhY2luZy1zOiAxcmVtOyAvKiAxNnB4ICovXG4gIC0tc3BhY2luZy1tOiAxLjVyZW07IC8qIDI0cHggKi9cbiAgLS1zcGFjaW5nLWw6IDJyZW07IC8qIDMycHggKi9cbiAgLS1zcGFjaW5nLXhsOiAyLjVyZW07IC8qIDQwcHggKi9cbiAgLS1zcGFjaW5nLXh4bDogM3JlbTsgLyogNDhweCAqL1xuICAtLXNwYWNpbmcteHh4bDogMy41cmVtOyAvKiA1NnB4ICovXG4gIC0tc3BhY2luZy14eHh4bDogNHJlbTsgLyogNjRweCAqL1xuICAtLXNwYWNpbmctdWw6IDQuNXJlbTsgLyogNzJweCAqL1xuICAtLXNwYWNpbmctdXVsOiA1cmVtOyAvKiA4MHB4ICovXG4gIC0tc3BhY2luZy11dXVsOiA1LjVyZW07IC8qIDg4cHggKi9cblxuICAtLW91dGxpbmUtd2lkdGg6IDJweDtcbiAgLS1vdXRsaW5lLW9mZnNldDogMDtcbiAgLS1vdXRsaW5lLWNvbG9yOiB2YXIoLS1icmFuZC10ZXJ0aWFyeSk7XG5cbiAgLyogTGF5b3V0ICovXG4gIC0tY29udGFpbmVyLW1heC13aWR0aC1uYXJyb3c6IDU4MHB4O1xuICAtLWNvbnRhaW5lci1tYXgtd2lkdGgtYWxpZ25lZDogNzc2cHg7XG4gIC0tY29udGFpbmVyLW1heC13aWR0aDogMTE4MHB4O1xuICAtLWdyaWQtZ2FwOiB2YXIoLS1zcGFjaW5nLW0pO1xuICAtLWdyaWQtZ2FwLWxhcmdlOiB2YXIoLS1zcGFjaW5nLWwpO1xuXG4gIC8qIFJhdGlvcyAqL1xuICAtLXJhdGlvLWhlaWdodC0xNi05OiA1Ni4yNSU7IC8qIDEwMCU6NTYuMjUlID0gMTY6OSAqL1xuXG4gIC8qIFV0aWxpdHkgKi9cbiAgLS1ib3gtc2hhZG93OiAwIDAgdmFyKC0tc3BhY2luZy14cykgcmdiYSgwLCAwLCAwLCAwLjI1KTtcbiAgLS1ib3JkZXItcmFkaXVzOiAzcHg7XG59XG5cbkBtZWRpYSAoLS1tZWRpdW0tZG93bikge1xuICA6cm9vdCB7XG4gICAgLS1mb250LXNpemUteHh4bDogMS41cmVtOyAvKiAyNHB4ICovXG4gICAgLS1mb250LXNpemUteHhsOiAxLjI1cmVtOyAvKiAyMHB4ICovXG4gICAgLS1mb250LXNpemUteGw6IDEuMTI1cmVtOyAvKiAxOHB4ICovXG4gICAgLS1mb250LXNpemUtbDogMXJlbTsgLyogMTZweCAtIExlZGUgKi9cbiAgICAtLWZvbnQtc2l6ZS1tOiAwLjg3NXJlbTsgLyogMTRweCAtIEJvZHkgKi9cbiAgICAtLWZvbnQtc2l6ZS1zOiAwLjc1cmVtOyAvKiAxMnB4ICovXG4gICAgLS1mb250LXNpemUteHM6IDAuNjI1cmVtOyAvKiAxMHB4IC0gU3ViLCBDYXB0aW9uICovXG5cbiAgICAtLWhlYWRpbmctc2l6ZS14eGw6IDIuMjVyZW07IC8qIDM2cHggLSBIZWFkbGluZSAqL1xuICAgIC0taGVhZGluZy1zaXplLXhsOiAxLjg3NXJlbTsgLyogMzBweCAtIEgxICovXG4gICAgLS1oZWFkaW5nLXNpemUtbDogMS41cmVtOyAvKiAyNHB4IC0gSDIgKi9cbiAgICAtLWhlYWRpbmctc2l6ZS1tOiAxLjI1cmVtOyAvKiAyMHB4IC0gSDMgKi9cbiAgICAtLWhlYWRpbmctc2l6ZS1zOiAxLjEyNXJlbTsgLyogMThweCAtIEg0ICovXG4gICAgLS1oZWFkaW5nLXNpemUteHM6IDFyZW07IC8qIDE2cHggLSBINSAqL1xuICAgIC0taGVhZGluZy1zaXplLXh4czogMC44NzVyZW07IC8qIDE0cHggLSBINiAqL1xuICB9XG59XG4iLCJAaW1wb3J0ICdAcG54LW1peHRhcGUvY29uc3RhbnRzL3NyYy9jb25zdGFudHMuY3NzJztcbkBpbXBvcnQgJ0BwbngtbWl4dGFwZS9nbG9iYWwvc3JjL192YXJzLmNzcyc7XG5AaW1wb3J0IFwiQHBueC1taXh0YXBlL2Zvcm0vc3JjL192YXJzLmNzc1wiO1xuQGltcG9ydCBcIkBwbngtbWl4dGFwZS90aWxlcy9zcmMvX3ZhcnMuY3NzXCI7XG5cbkBjdXN0b20tbWVkaWEgLS1zaXRlLW1heC13aWR0aC11cCAod2lkdGggPiAxMjI4cHgpO1xuQGN1c3RvbS1tZWRpYSAtLXNpdGUtbWF4LXdpZHRoLWRvd24gKHdpZHRoIDw9IDEyMjhweCk7XG5AY3VzdG9tLW1lZGlhIC0tc21hbGwtdG8tbGFyZ2UgKDU0MHB4IDw9IHdpZHRoIDwgOTQ2cHgpO1xuXG46cm9vdCB7XG4gIC0tcHJpbWFyeS0xMDA6IHJnYigxLCAzMywgMTA1KTtcbiAgLS1wcmltYXJ5LTUwOiByZ2IoNjEsIDEwNSwgMTUyKTtcbiAgLS1wcmltYXJ5LTIwOiByZ2IoMTk3LCAyMTAsIDIyMik7XG4gIC0tcHJpbWFyeS0xMDogcmdiKDIzMCwgMjM2LCAyNDEpO1xuICAtLXNlY29uZGFyeS0xMDA6IHJnYig0OCwgMTE2LCAxMTYpO1xuICAtLXNlY29uZGFyeS01MDogcmdiKDc0LCAxNzksIDE3OSk7XG4gIC0tc2Vjb25kYXJ5LTEwOiByZ2IoMjQ0LCAyNDgsIDI0OCk7XG4gIC0tZ3JleXNjYWxlLTEwMDogcmdiKDEzLCAxOCwgMzEpO1xuICAtLWdyZXlzY2FsZS03NTogcmdiKDc0LCA3OCwgODcpO1xuICAtLWdyZXlzY2FsZS01MDogcmdiKDEyNywgMTI3LCAxMjcpO1xuICAtLWdyZXlzY2FsZS0yNTogcmdiKDE5NCwgMTk2LCAxOTkpO1xuICAtLWdyZXlzY2FsZS0xMDogcmdiKDIzMCwgMjMwLCAyMzApO1xuICAtLWdyZXlzY2FsZS0wNTogcmdiKDI0MywgMjQzLCAyNDQpO1xuICAtLXdoaXRlOiByZ2IoMjU1LCAyNTUsIDI1NSk7XG4gIC0tc3VjY2Vzcy0xMDA6IHJnYig2NywgMTYwLCA3MSk7XG4gIC0tc3VjY2Vzcy0xMDogcmdiKDIzNywgMjQ2LCAyMzcpO1xuICAtLWVycm9yLTEwMDogcmdiKDE5OCwgNDAsIDQwKTtcbiAgLS1lcnJvci0xMDogcmdiKDI0OSwgMjMzLCAyMzMpO1xuICAtLXdhcm5pbmctMTAwOiByZ2IoMjQ3LCAxNDMsIDMwKTtcbiAgLS13YXJuaW5nLTEwOiByZ2IoMjU0LCAyNDMsIDIzMik7XG4gIC0tZm9jdXMtMTAwOiByZ2IoMzcsIDk3LCAyMzIpO1xuICAtLWZvY3VzLTEwOiByZ2IoMjQwLCAyNDUsIDI0OSk7XG4gIC0tYmx1ZS0xMDA6IHJnYigwLCAxMTQsIDIwNik7XG4gIC0tYmx1ZS01MDogI2QwZThmMztcbiAgLS1yZWQtMTAwOiByZ2IoMTM3LCAxMiwgODgpO1xuICAtLXllbGxvdy0xMDA6IHJnYigyNDEsIDE4MCwgNTIpO1xuICAtLXBhZ2UtYmc6IHJnYigyNDcgMjQ5IDI1MCk7XG4gIC0tYmxhY2stdHJhbnNwYXJlbnQ6IHJnYmEoMCwgMCwgMCwgLjEpO1xuICAtLWhpZ2hsaWdodC0wMTogdmFyKC0tYmx1ZS0xMDApO1xuICAtLWhpZ2hsaWdodC0wMjogdmFyKC0tcmVkLTEwMCk7XG4gIC0taGlnaGxpZ2h0LTAzOiB2YXIoLS15ZWxsb3ctMTAwKTtcbiAgLS10cmFuc3BhcmVudC13aGl0ZTogcmdiYSgyNTUsIDI1NSwgMjU1LCAwKTtcbiAgLS1zZW1pLXRyYW5zcGFyZW50LXdoaXRlOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC4yKTtcbiAgLS10cmFuc3BhcmVudC1icmFuZC1wcmltYXJ5LWxpZ2h0OiByZ2JhKDIzMCwgMjM2LCAyNDEsIDApO1xuXG4gIC8qIEJyYW5kIGNvbG9ycyAqL1xuICAtLWJyYW5kLXByaW1hcnk6IHZhcigtLXByaW1hcnktMTAwKTtcbiAgLS1icmFuZC1wcmltYXJ5LW1pZC1kYXJrOiByZ2IoMCwgNDMsIDEzOSk7XG4gIC0tYnJhbmQtcHJpbWFyeS1taWQ6IHZhcigtLXByaW1hcnktNTApO1xuICAtLWJyYW5kLXByaW1hcnktbWlkLWxpZ2h0OiB2YXIoLS1wcmltYXJ5LTIwKTtcbiAgLS1icmFuZC1wcmltYXJ5LWxpZ2h0OiByZ2IoMjQwLCAyNDUsIDI0OSk7XG4gIC0tYnJhbmQtc2Vjb25kYXJ5OiByZ2IoMTAyLCAyMDksIDE5Myk7XG4gIC0tYnJhbmQtc2Vjb25kYXJ5LW1pZDogdmFyKC0tcHJpbWFyeS01MCk7XG4gIC0tYnJhbmQtc2Vjb25kYXJ5LWxpZ2h0OiByZ2IoMjMxLCAyNDcsIDI0NCk7XG4gIC0tYnJhbmQtc2Vjb25kYXJ5LXRleHQ6IHJnYigwLCAzNiwgMzApO1xuICAtLWJyYW5kLXJldmVyc2U6IHZhcigtLXdoaXRlKTtcbiAgLS1icmFuZC1idXR0b246IHJnYigzNywgOTcsIDIzMik7XG4gIC0tYnJhbmQtYnV0dG9uLWhvdmVyOiByZ2IoMTYsIDU4LCAxNTEpO1xuICAtLWJyYW5kLWJ1dHRvbi1hY3RpdmU6IHJnYigxMSwgNDAsIDEwNSk7XG4gIC0tYnJhbmQtdGV4dDogcmdiKDE4LCAyMSwgMjMpO1xuICAtLWJyYW5kLWhlYWRpbmc6IHJnYigxLCAyNiwgODUpO1xuICAtLWJyYW5kLWxpbms6IHJnYigwLCA3MSwgMjU1KTtcbiAgLS1icmFuZC1zbGF0ZS1ncmV5OiAjOThhNGFlO1xuICAtLWJyYW5kLWRlZXAtZ3JleTogIzI1Mzc0NjtcbiAgLS1icmFuZC1jb2JhbHQ6IHZhcigtLWJsdWUtMTAwKTtcblxuICAvKiBBbGVydCBDb2xvcnMgKi9cbiAgLS1hbGVydC1zdWNjZXNzLTEwMDogdmFyKC0tc3VjY2Vzcy0xMDApO1xuICAtLWFsZXJ0LXN1Y2Nlc3MtMTA6IHZhcigtLXN1Y2Nlc3MtMTApO1xuICAtLWFsZXJ0LWVycm9yLTEwMDogdmFyKC0tZXJyb3ItMTAwKTtcbiAgLS1hbGVydC1lcnJvci0xMDogdmFyKC0tZXJyb3ItMTApO1xuICAtLWFsZXJ0LXdhcm5pbmctMTAwOiB2YXIoLS13YXJuaW5nLTEwMCk7XG4gIC0tYWxlcnQtd2FybmluZy0xMDogdmFyKC0td2FybmluZy0xMCk7XG5cbiAgLyogRGVzaWduICovXG4gIC0tYm9yZGVyLXdpZHRoOiAycHg7XG4gIC0tYm9yZGVyLXJhZGl1czogM3B4O1xuICAtLWJvcmRlci1yYWRpdXMtbGFyZ2U6IDZweDtcbiAgLS1ib3gtc2hhZG93OiAwIDAgMTBweCB2YXIoLS1ibGFjay10cmFuc3BhcmVudCk7XG4gIC0tY29sb3VyLWJhY2tncm91bmQtcmV2ZXJzZTogdmFyKC0tYmxhY2spO1xuICAtLWNvbG91ci1mb3JlZ3JvdW5kLXJldmVyc2U6IHZhcigtLXdoaXRlKTtcblxuICAvKiBUeXBvZ3JhcGh5ICovXG4gIC0tZm9udC1mYW1pbHk6IFwiUHVibGljIFNhbnNcIiwgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgLS1mb250LWZhbWlseS1oZWFkaW5nOiBcIlB1YmxpYyBTYW5zXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG5cbiAgLS1oZWFkaW5nLXNpemUteGw6IDIuM3JlbTtcblxuICAtLWZvbnQtc2l6ZS14eHM6IDAuNjI1cmVtOyAvKiAxMHB4ICovXG4gIC0tZm9udC1zaXplLXh4eHhsOiAyLjVyZW07IC8qIDQwcHggKi9cblxuICAtLWZvbnQtd2VpZ2h0LW5vcm1hbDogNDAwO1xuICAtLWZvbnQtd2VpZ2h0LWJvbGQ6IDUwMDtcbiAgLS1mb250LXdlaWdodC1oZWF2eTogNjAwO1xuXG4gIC8qIEZvcm0gKi9cbiAgLS1mb3JtLXNwYWNpbmc6IHZhcigtLXNwYWNpbmctcyk7XG4gIC0tZm9ybS1lbGVtZW50LWhlaWdodDogdmFyKC0tc3BhY2luZy14bCk7XG5cbiAgLS1mb3JtLXRleHQtc2l6ZTogdmFyKC0tZm9udC1zaXplLW0pO1xuICAtLWZvcm0tZGVzY3JpcHRpb24tc2l6ZTogdmFyKC0tZm9udC1zaXplLXhzKTtcbiAgLS1mb3JtLXRleHQtY29sb3I6IHZhcigtLWJsYWNrKTtcbiAgLS1mb3JtLXBsYWNlaG9sZGVyLWNvbG9yOiB2YXIoLS1ncmV5LTUwKTtcbiAgLS1mb3JtLWNvbG9yLXN1Y2Nlc3M6IHZhcigtLXN1Y2Nlc3MtMTAwKTtcbiAgLS1mb3JtLWNvbG9yLWVycm9yOiB2YXIoLS1lcnJvci0xMDApO1xuXG4gIC0tZm9ybS1ib3JkZXItY29sb3I6IHZhcigtLWdyZXlzY2FsZS01MCk7XG4gIC0tZm9ybS1ib3JkZXItY29sb3ItaG92ZXI6IHZhcigtLWdyZXlzY2FsZS03NSk7XG4gIC0tZm9ybS1ib3JkZXItY29sb3ItZm9jdXM6IHZhcigtLWZvY3VzLTEwMCk7XG4gIC0tZm9ybS1ib3JkZXItd2lkdGg6IDJweDtcbiAgLS1mb3JtLWJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xuXG4gIC8qIEhlYWRlciAqL1xuICAtLXN0YWNrZWQtYmc6IHZhcigtLWJyYW5kLXByaW1hcnktbGlnaHQpO1xuICAtLXN0YWNrZWQtbW9iaWxlOiB2YXIoLS13aGl0ZSk7XG5cbiAgLyogU3BhY2luZyBFeHRyYSAqL1xuICAtLXNwYWNpbmctc3g6IC43NXJlbTtcbiAgLS1zcGFjaW5nLXNtOiAxLjI1cmVtO1xuICAtLXNwYWNpbmcteGxsOiAxLjc1cmVtO1xuXG4gIC8qIEhlYWRpbmcgU2l6ZXMgRXh0cmEgKi9cbiAgLS1oZWFkaW5nLXNpemUtc206IDEuMjVyZW07IC8qIDIwcHggLSBIMyBUaWxlcyBsYXJnZSB0byB4LWxhcmdlICovXG5cbiAgLyogVGlsZXMgKi9cbiAgLS10aWxlLXRleHQtaG92ZXI6IHZhcigtLXdoaXRlKTtcbiAgLS10aWxlLWJnOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHZhcigtLWJyYW5kLXByaW1hcnkpLCB2YXIoLS1icmFuZC1wcmltYXJ5LW1pZCkpO1xuICAtLXRpbGUtYmctaG92ZXI6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgdmFyKC0tYnJhbmQtcHJpbWFyeS1taWQpLCB2YXIoLS1icmFuZC1wcmltYXJ5LW1pZCkpO1xuXG4gIC8qIFRhYnMgKi9cbiAgLS10YWJzLW1pbi13aWR0aDogMDtcblxuICAvKiBHcmlkICovXG4gIC0tZ2FwLXM6IDE2cHg7XG4gIC0tZ2FwOiAyNHB4O1xuICAtLWdhcC1sOiAzMnB4O1xuICAtLWdhcC14bDogNDBweDtcblxuICAvKiBQcmludCAqL1xuICAtLXByaW50LXBhZGRpbmc6IDJyZW07XG4gIC0tcHJpbnQtZm9yZWdyb3VuZDogdmFyKC0tcHJpbWFyeS0xMDApO1xuICAtLXByaW50LWJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xufVxuXG5AbWVkaWEgKC0tbWVkaXVtLWRvd24pIHtcbiAgOnJvb3Qge1xuICAgIC0taGVhZGluZy1zaXplLXh4bDogMnJlbTtcbiAgICAtLWhlYWRpbmctc2l6ZS14bDogMS44cmVtO1xuICB9XG59XG4iLCIvKipcbiAqIEZvcm1cbiAqXG4gKiBTdHlsZSBndWlkZTogZm9ybVxuICovXG5cbi5mb3JtX19pdGVtIHtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy1tKTtcbn1cblxuLyoqXG4gKiBUZXh0IElucHV0XG4gKlxuICogLmVycm9yIC0gRXJyb3Igc3RhdGVcbiAqIC5zdWNjZXNzIC0gU3VjY2VzcyBzdGF0ZVxuICpcbiAqIE1hcmt1cDogaW5wdXQtdGV4dC50d2lnXG4gKlxuICogU3R5bGUgZ3VpZGU6IGZvcm0udGV4dC1pbnB1dFxuICovXG5cbi5pbnB1dF9fdGV4dCxcblt0eXBlPVwidGV4dFwiXSxcblt0eXBlPVwic2VhcmNoXCJdLFxuW3R5cGU9XCJ0ZWxcIl0sXG5bdHlwZT1cInVybFwiXSxcblt0eXBlPVwiZW1haWxcIl0sXG5bdHlwZT1cInBhc3N3b3JkXCJdLFxuW3R5cGU9XCJkYXRlXCJdLFxuW3R5cGU9XCJ0aW1lXCJdLFxuW3R5cGU9XCJudW1iZXJcIl0sXG5zZWxlY3Qge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1pbi13aWR0aDogMTAwJTtcbiAgcGFkZGluZzogY2FsYyh2YXIoLS1mb3JtLXNwYWNpbmcpIC0gdmFyKC0tc3BhY2luZy14eHMpKSB2YXIoLS1mb3JtLXNwYWNpbmcpO1xuICBib3JkZXI6IHZhcigtLWZvcm0tYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1mb3JtLWJvcmRlci1jb2xvcik7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWZvcm0tYm9yZGVyLXJhZGl1cyk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9ybS10ZXh0LXNpemUpO1xuICBjb2xvcjogdmFyKC0tZm9ybS10ZXh0LWNvbG9yKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXVpKTtcblxuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgbWluLXdpZHRoOiA1MCU7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWZvcm0tYm9yZGVyLWNvbG9yLWZvY3VzKTtcbiAgICBvdXRsaW5lOiBub25lO1xuICB9XG5cbiAgJjo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiB2YXIoLS1mb3JtLXBsYWNlaG9sZGVyLWNvbG9yKTtcbiAgfVxuXG4gICYuZXJyb3Ige1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXNwYWNpbmcteGwpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tZm9ybS1jb2xvci1lcnJvcik7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogc3ZnLWxvYWQoXG4gICAgICBcIi4uL2Rpc3QvaW1hZ2VzL2Zvcm0tZXJyb3Iuc3ZnXCIsXG4gICAgICBmaWxsPXZhcigtLWZvcm0tY29sb3ItZXJyb3IpXG4gICAgKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IHZhcigtLXNwYWNpbmcteHMpIGNlbnRlcjtcblxuICAgICY6Zm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1mb3JtLWJvcmRlci1jb2xvci1mb2N1cyk7XG4gICAgfVxuICB9XG5cbiAgJi5zdWNjZXNzIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zcGFjaW5nLXhsKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWZvcm0tY29sb3Itc3VjY2Vzcyk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogc3ZnLWxvYWQoXG4gICAgICBcIi4uL2Rpc3QvaW1hZ2VzL2Zvcm0tc3VjY2Vzcy5zdmdcIixcbiAgICAgIGZpbGw9dmFyKC0tZm9ybS1jb2xvci1zdWNjZXNzKVxuICAgICk7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCB2YXIoLS1zcGFjaW5nLXhzKSBjZW50ZXI7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tZm9ybS1ib3JkZXItY29sb3ItZm9jdXMpO1xuICAgIH1cbiAgfVxufVxuXG4vKipcbiAqIFRleHQgSW5wdXQgd2l0aCBJY29uXG4gKlxuICogLmVycm9yIC0gRXJyb3Igc3RhdGVcbiAqIC5zdWNjZXNzIC0gU3VjY2VzcyBzdGF0ZVxuICpcbiAqIE1hcmt1cDogaW5wdXQtdGV4dC1pY29uLnR3aWdcbiAqXG4gKiBTdHlsZSBndWlkZTogZm9ybS50ZXh0LWlucHV0LWljb25cbiAqL1xuXG4uaW5wdXRfX3RleHQtLWljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWluLXdpZHRoOiAxMDAlO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1mb3JtLWJvcmRlci1yYWRpdXMpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13aGl0ZSk7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHZhcigtLXNwYWNpbmctcykgY2VudGVyO1xuXG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBtaW4td2lkdGg6IDUwJTtcbiAgfVxuXG4gICYgaW5wdXQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2luZy14bCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cbn1cblxuLyoqXG4gKiBUZXh0IElucHV0IHdpdGggSW5saW5lIEJ1dHRvblxuICpcbiAqIE1hcmt1cDogaW5wdXQtdGV4dC1pbmxpbmUtc3VibWl0LnR3aWdcbiAqXG4gKiBTdHlsZSBndWlkZTogZm9ybS50ZXh0LWlucHV0LWlubGluZS1zdWJtaXRcbiAqL1xuXG4uaW5wdXRfX3RleHQtLWlubGluZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1pbi13aWR0aDogMTAwJTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tZm9ybS1ib3JkZXItcmFkaXVzKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2hpdGUpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB2YXIoLS1zcGFjaW5nLXMpIGNlbnRlcjtcblxuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgbWluLXdpZHRoOiA1MCU7XG4gIH1cblxuICAmIFt0eXBlPVwidGV4dFwiXSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zcGFjaW5nLXhsKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiA2cmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG5cbiAgJiBbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogdmFyKC0tc3BhY2luZy14eHMpO1xuICAgIHJpZ2h0OiB2YXIoLS1zcGFjaW5nLXh4cyk7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgfVxufVxuXG4vKipcbiAqIExhYmVsXG4gKlxuICogVGhlIGZvcm0gYGxhYmVsYCBlbGVtZW50IG11c3QgYmUgcHJlc2VudCBmb3IgYWxsIGZvcm0gZWxlbWVudHMsIGFuZCBoYXZlIGEgYGZvcmAgYXR0cmlidXRlIHRoYXQgbWF0Y2hlcyB0aGUgYGlkYCBvZiB0aGVcbiAqIGFzc29jaWF0ZWQgZm9ybSBlbGVtZW50LlxuICpcbiAqIC5sYWJlbC0taW5saW5lIC0gSW5saW5lIGxhYmVsLlxuICogXG4gKiBNYXJrdXA6IGxhYmVsLnR3aWdcbiAqXG4gKiBTdHlsZSBndWlkZTogZm9ybS5sYWJlbFxuICovXG5cbmxhYmVsLFxubGVnZW5kIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmcteHMpO1xuICBmb250LXNpemU6IHZhcigtLWZvcm0tdGV4dC1zaXplKTtcbiAgY29sb3I6IHZhcigtLWZvcm0tdGV4dC1jb2xvcik7XG5cbiAgJi5sYWJlbC0taW5saW5lIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNpbmcteHMpO1xuICB9XG59XG5cbi8qKiBcbiAqIENoZWNrYm94IChtdWx0aXBsZSlcbiAqXG4gKiBUaGUgc3RhbmRhcmQgYGlucHV0W3R5cGU9XCJjaGVja2JveFwiXWAgZWxlbWVudCwgdXNpbmcgYSBmaWVsZHNldCBhbmQgbGVnZW5kIGFzXG4gKiB0aGUgYWNjZXNzaWJsZSB3YXkgdG8gZ3JvdXAgYW5kIGxhYmVsIG11bHRpcGxlIGNoZWNrYm94IGlucHV0cy5cbiAqXG4gKiBPcHRpb25hbGx5IGEgdG9vbHRpcCBjYW4gYmUgdXNlZCBieSB1c2luZyB0aGUgYGFyaWEtZGVzY3JpYmVkYnlgIGF0dHJpYnV0ZVxuICogb24gdGhlIGZpZWxkc2V0IGl0c2VsZi5cbiAqXG4gKiBNYXJrdXA6IGlucHV0LWNoZWNrYm94LnR3aWdcbiAqXG4gKiBTdHlsZSBndWlkZTogZm9ybS5jaGVja2JveC1tdWx0aXBsZVxuICovXG5cbi8qKlxuICogQ2hlY2tib3ggKHNpbmdsZSlcbiAqXG4gKiBVc2VkIGZvciB0aGluZ3MgbGlrZSBhY2NlcHRpbmcgdGVybXMgYW5kIGNvbmRpdGlvbnMgYW5kIG9wdGluZyBpbiB0b1xuICogY29tbXVuaWNhdGlvbnMuXG4gKlxuICogTWFya3VwOiBpbnB1dC1jaGVja2JveC1zaW5nbGUudHdpZ1xuICpcbiAqIFN0eWxlIGd1aWRlOiBmb3JtLmNoZWNrYm94LXNpbmdsZVxuICovXG5cbi8qKlxuICogUmFkaW9zIChtdWx0aXBsZSlcbiAqXG4gKiBUaGUgc3RhbmRhcmQgYGlucHV0W3R5cGU9XCJyYWRpb1wiXWAgZWxlbWVudCwgdXNpbmcgYSBmaWVsZHNldCBhbmQgbGVnZW5kIGFzXG4gKiB0aGUgYWNjZXNzaWJsZSB3YXkgdG8gZ3JvdXAgYW5kIGxhYmVsIG11bHRpcGxlIHJhZGlvIGlucHV0cy5cbiAqXG4gKiBPcHRpb25hbGx5IGEgdG9vbHRpcCBjYW4gYmUgdXNlZCBieSB1c2luZyB0aGUgYGFyaWEtZGVzY3JpYmVkYnlgIGF0dHJpYnV0ZVxuICogb24gdGhlIGZpZWxkc2V0IGl0c2VsZi5cbiAqXG4gKiBNYXJrdXA6IGlucHV0LXJhZGlvLnR3aWdcbiAqXG4gKiBTdHlsZSBndWlkZTogZm9ybS5yYWRpb3NcbiAqL1xuXG4uZm9ybV9fcmFkaW8sXG4uZm9ybV9fY2hlY2tib3gge1xuICBtYXJnaW46IDAgMCB2YXIoLS1zcGFjaW5nLXhzKTtcbiAgcGFkZGluZzogMCB2YXIoLS1zcGFjaW5nLW0pO1xuICBib3JkZXItYm90dG9tOiAwIG5vbmU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAmIGxhYmVsIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cblxuICAmIFt0eXBlPVwicmFkaW9cIl0sXG4gICYgW3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiB2YXIoLS1zcGFjaW5nLXh4cyk7XG4gICAgbWFyZ2luOiAwO1xuICB9XG59XG5cbi8qKlxuICogVGV4dGFyZWFcbiAqXG4gKiBBIHRleHRhcmVhIGZpZWxkIGlzIHVzZWQgZm9yIG11bHRpcGxlIGxpbmVzIG9mIHRleHQgaW5wdXQuXG4gKlxuICogTWFya3VwOiB0ZXh0YXJlYS50d2lnXG4gKlxuICogU3R5bGUgZ3VpZGU6IGZvcm0udGV4dGFyZWFcbiAqL1xuXG4ldGV4dGFyZWEsXG50ZXh0YXJlYSB7XG4gIHBhZGRpbmc6IHZhcigtLWZvcm0tc3BhY2luZyk7XG4gIGhlaWdodDogY2FsYyg0ICogdmFyKC0tZm9ybS1lbGVtZW50LWhlaWdodCkpO1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyOiB2YXIoLS1mb3JtLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tZm9ybS1ib3JkZXItY29sb3IpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1mb3JtLWJvcmRlci1yYWRpdXMpO1xuICBmb250LXNpemU6IHZhcigtLWZvcm0tdGV4dC1zaXplKTtcbiAgY29sb3I6IHZhcigtLWZvcm0tdGV4dC1jb2xvcik7XG5cbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWZvcm0tYm9yZGVyLWNvbG9yLWZvY3VzKTtcbiAgICBvdXRsaW5lOiBub25lO1xuICB9XG59XG5cbi8qKlxuICogRmllbGRzZXRcbiAqXG4gKiBUaGUgZmllbGRzZXQgZWxlbWVudCBpcyB1c2VkIGZvciBncm91cGluZyBmb3JtIGVsZW1lbnRzLiBTZWUgdGhlIFtDaGVja2JveCAobXVsdGlwbGUpXSgvc2VjdGlvbi1mb3JtLmh0bWwja3NzcmVmLWZvcm0tY2hlY2tib3gtbXVsdGlwbGUpXG4gKiBhbmQgW1JhZGlvcyAobXVsdGlwbGUpXSgvc2VjdGlvbi1mb3JtLmh0bWwja3NzcmVmLWZvcm0tcmFkaW9zKSBjb21wb25lbnRzIGZvciBob3cgaXQgaXMgYmVzdCB1c2VkLlxuICpcbiAqIE1hcmt1cDogZmllbGRzZXQudHdpZ1xuICpcbiAqIFN0eWxlIGd1aWRlOiBmb3JtLmZpZWxkc2V0XG4gKi9cblxuZmllbGRzZXQge1xuICBib3JkZXI6IHZhcigtLWZvcm0tYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1mb3JtLWJvcmRlci1jb2xvcik7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWZvcm0tYm9yZGVyLXJhZGl1cyk7XG4gIHBhZGRpbmc6IHZhcigtLWZvcm0tc3BhY2luZyk7XG4gIG1hcmdpbjogMCAwIHZhcigtLWZvcm0tc3BhY2luZyk7XG4gIG1pbi13aWR0aDogMDtcblxuICAmIGxlZ2VuZCB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb3JtLXRleHQtc2l6ZSk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tZm9ybS1zcGFjaW5nKTtcbiAgICBwYWRkaW5nOiAwIHZhcigtLWZvcm0tc3BhY2luZyk7XG4gIH1cbn1cblxuLyoqXG4gKiBEZXNjcmlwdGlvblxuICpcbiAqIFRleHQgdGhhdCBkZXNjcmliZXMgYSBmb3JtIGZpZWxkLiBUaGUgZm9ybSBlbGVtZW50IG11c3QgaGF2ZSBhbiBgYXJpYS1kZXNjcmliZWRieWAgYXR0cmlidXRlIHRoYXQgcG9pbnRzIHRvIHRoZVxuICogYGlkYCBvZiB0aGUgZGVzY3JpcHRpb24gdGV4dC5cbiAqXG4gKiBNYXJrdXA6IGZvcm0tZGVzY3JpcHRpb24udHdpZ1xuICpcbiAqIFN0eWxlIGd1aWRlOiBmb3JtLmRlc2NyaXB0aW9uXG4gKi9cblxuLmZvcm1fX2Rlc2NyaXB0aW9uIHtcbiAgbWFyZ2luOiB2YXIoLS1mb3JtLXNwYWNpbmcpIDA7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9ybS1kZXNjcmlwdGlvbi1zaXplKTtcbn1cblxuLyoqXG4gKiBFcnJvciBtZXNzYWdlXG4gKlxuICogVGhlIGVycm9yIHN0YXRlIHdpdGggYSByZWQgYm9yZGVyIGFuZCBtZXNzYWdlLlxuICpcbiAqIE1hcmt1cDogZm9ybS1lcnJvci50d2lnXG4gKlxuICogU3R5bGUgZ3VpZGU6IGZvcm0uZXJyb3JcbiAqL1xuXG4uZm9ybV9fZXJyb3ItbWVzc2FnZSB7XG4gIG1hcmdpbjogdmFyKC0tZm9ybS1zcGFjaW5nKSAwO1xuICBmb250LXNpemU6IHZhcigtLWZvcm0tZGVzY3JpcHRpb24tc2l6ZSk7XG4gIGNvbG9yOiB2YXIoLS1mb3JtLXRleHQtY29sb3IpO1xuICBwYWRkaW5nLWxlZnQ6IHZhcigtLXNwYWNpbmctbSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHN2Zy1sb2FkKFxuICAgIFwiLi4vZGlzdC9pbWFnZXMvZm9ybS1lcnJvci5zdmdcIixcbiAgICBmaWxsPXZhcigtLWZvcm0tY29sb3ItZXJyb3IpXG4gICk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgY2VudGVyO1xufVxuXG4vKipcbiAqIFNlbGVjdFxuICpcbiAqIFRoZSBzZWxlY3QgZmllbGQsIHVzZWQgdG8gY2hvb3NlIGEgc2luZ2xlIG9wdGlvbiBmcm9tIGEgbGlzdC4gSWYgbXVsdGlwbGUgb3B0aW9ucyBjYW4gYmUgc2VsZWN0ZWQgYXQgdGhlIHNhbWUgdGltZSxcbiAqIGNvbnNpZGVyIHVzaW5nIHRoZSBbQ2hlY2tib3ggKG11bHRpcGxlKV0oL3NlY3Rpb24tZm9ybS5odG1sI2tzc3JlZi1mb3JtLWNoZWNrYm94LW11bHRpcGxlKSBjb21wb25lbnQgaW5zdGVhZC5cbiAqXG4gKiAuc2VsZWN0LS1zbWFsbCAtIEEgc21hbGxlciB2YXJpYW50IG9mIHRoZSBzZWxlY3QgZmllbGQuXG4gKlxuICogTWFya3VwOiBzZWxlY3QudHdpZ1xuICpcbiAqIFN0eWxlIGd1aWRlOiBmb3JtLnNlbGVjdFxuICovXG5cbnNlbGVjdCB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2hpdGUpO1xuICBsaW5lLWhlaWdodDogMS4yO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYmFja2dyb3VuZC1pbWFnZTogc3ZnLWxvYWQoXG4gICAgXCIuLi9kaXN0L2ltYWdlcy9mb3JtLWNoZXZyb24tZG93bi5zdmdcIixcbiAgICBmaWxsPXZhcigtLWZvcm0tc2VsZWN0LWljb24pXG4gICk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IHZhcigtLXNwYWNpbmctcykgY2VudGVyO1xuXG4gICZbbXVsdGlwbGVdIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgfVxufVxuXG4uc2VsZWN0LS1zbWFsbCB7XG4gIGxpbmUtaGVpZ2h0OiAwLjk7XG4gIGJvcmRlci13aWR0aDogMXB4O1xufVxuXG4uc2VsZWN0LS13aWRlIHtcbiAgd2lkdGg6IDEwMCU7XG59XG4iLCJAaW1wb3J0IFwiLi4vX3ZhcmlhYmxlcy5jc3NcIjtcbkBpbXBvcnQgXCJAcG54LW1peHRhcGUvZm9ybS9zcmMvX2Zvcm0uY3NzXCI7XG5cbi8qKlxuICogRm9ybVxuICpcbiAqIFN0eWxlIGd1aWRlOiBmb3JtXG4gKi9cblxuLyoqXG4gKiBUZXh0IElucHV0XG4gKlxuICogLmVycm9yIC0gRXJyb3Igc3RhdGVcbiAqIC5zdWNjZXNzIC0gU3VjY2VzcyBzdGF0ZVxuICpcbiAqIE1hcmt1cDogaW5wdXQtdGV4dC50d2lnXG4gKlxuICogU3R5bGUgZ3VpZGU6IGZvcm0udGV4dC1pbnB1dFxuICovXG5cblt0eXBlPSdkYXRlJ10sXG5bdHlwZT0nZGF0ZXRpbWUtbG9jYWwnXSxcblt0eXBlPSdlbWFpbCddLFxuW3R5cGU9J2ZpbGUnXSxcblt0eXBlPSdtb250aCddLFxuW3R5cGU9J251bWJlciddLFxuW3R5cGU9J3Bhc3N3b3JkJ10sXG5bdHlwZT0nc2VhcmNoJ10sXG5bdHlwZT0ndGVsJ10sXG5bdHlwZT0ndGV4dCddLFxuW3R5cGU9J3RpbWUnXSxcblt0eXBlPSd1cmwnXSxcblt0eXBlPSd3ZWVrJ10sXG50ZXh0YXJlYSB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseSk7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1mb3JtLWJvcmRlci1jb2xvcik7XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuXG4gICY6aG92ZXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tZm9ybS1ib3JkZXItY29sb3ItaG92ZXIpO1xuICB9XG5cbiAgJjpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1mb3JtLWJvcmRlci1jb2xvci1mb2N1cyk7XG4gIH1cbn1cblxuc2VsZWN0IHtcbiAgcGFkZGluZy1yaWdodDogMi4yNXJlbTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZmFtaWx5KTtcbn1cblxuLyoqXG4gKiBUZXh0IElucHV0IHdpdGggSWNvblxuICpcbiAqIC5lcnJvciAtIEVycm9yIHN0YXRlXG4gKiAuc3VjY2VzcyAtIFN1Y2Nlc3Mgc3RhdGVcbiAqXG4gKiBNYXJrdXA6IGlucHV0LXRleHQtaWNvbi50d2lnXG4gKlxuICogU3R5bGUgZ3VpZGU6IGZvcm0udGV4dC1pbnB1dC1pY29uXG4gKi9cbi5pbnB1dF9fdGV4dC0taW5saW5lLmljb24tLXNlYXJjaCB7XG4gICYgLmZvcm1fX2l0ZW0tLXRleHRmaWVsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4vKipcbiAqIFRleHQgSW5wdXQgd2l0aCBJbmxpbmUgQnV0dG9uXG4gKlxuICogTWFya3VwOiBpbnB1dC10ZXh0LWlubGluZS1zdWJtaXQudHdpZ1xuICpcbiAqIFN0eWxlIGd1aWRlOiBmb3JtLnRleHQtaW5wdXQtaW5saW5lLXN1Ym1pdFxuICovXG5cbi5pbnB1dF9fdGV4dC0taW5saW5lIHtcbiAgJiBbdHlwZT0nc3VibWl0J10ge1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBib3R0b206IHZhcigtLXNwYWNpbmcteHhzKTtcblxuICAgIC8qIHRvIGdldCB0aGlzIHRvIHNpdCBuaWNlbHkgaW5zaWRlIHRoZSBpbnB1dCBib3ggaW4gaU9TLCBjaHJvbWUsIElFLCBGRiB3ZSBuZWVkIHRvIHVzZSBleGFjdCB1bml0cyAxMDAlIC0gLjVyZW0gZG9lcyBub3Qgd29yayAqL1xuICAgIG1heC1oZWlnaHQ6IGNhbGMoNDlweCAtIC41cmVtKTtcbiAgfVxufVxuXG4vKipcbiAqIExhYmVsXG4gKlxuICogVGhlIGZvcm0gYGxhYmVsYCBlbGVtZW50IG11c3QgYmUgcHJlc2VudCBmb3IgYWxsIGZvcm0gZWxlbWVudHMsIGFuZCBoYXZlIGEgYGZvcmAgYXR0cmlidXRlIHRoYXQgbWF0Y2hlcyB0aGUgYGlkYCBvZiB0aGVcbiAqIGFzc29jaWF0ZWQgZm9ybSBlbGVtZW50LlxuICpcbiAqIC5sYWJlbC0taW5saW5lIC0gSW5saW5lIGxhYmVsLlxuICpcbiAqIE1hcmt1cDogbGFiZWwudHdpZ1xuICpcbiAqIFN0eWxlIGd1aWRlOiBmb3JtLmxhYmVsXG4gKi9cblxuLyoqXG4gKiBDaGVja2JveCAobXVsdGlwbGUpXG4gKlxuICogVGhlIHN0YW5kYXJkIGBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl1gIGVsZW1lbnQsIHVzaW5nIGEgZmllbGRzZXQgYW5kIGxlZ2VuZCBhc1xuICogdGhlIGFjY2Vzc2libGUgd2F5IHRvIGdyb3VwIGFuZCBsYWJlbCBtdWx0aXBsZSBjaGVja2JveCBpbnB1dHMuXG4gKlxuICogT3B0aW9uYWxseSBhIHRvb2x0aXAgY2FuIGJlIHVzZWQgYnkgdXNpbmcgdGhlIGBhcmlhLWRlc2NyaWJlZGJ5YCBhdHRyaWJ1dGVcbiAqIG9uIHRoZSBmaWVsZHNldCBpdHNlbGYuXG4gKlxuICogTWFya3VwOiBpbnB1dC1jaGVja2JveC50d2lnXG4gKlxuICogU3R5bGUgZ3VpZGU6IGZvcm0uY2hlY2tib3gtbXVsdGlwbGVcbiAqL1xuXG4vKipcbiAqIENoZWNrYm94IChzaW5nbGUpXG4gKlxuICogVXNlZCBmb3IgdGhpbmdzIGxpa2UgYWNjZXB0aW5nIHRlcm1zIGFuZCBjb25kaXRpb25zIGFuZCBvcHRpbmcgaW4gdG9cbiAqIGNvbW11bmljYXRpb25zLlxuICpcbiAqIC5mb3JtX19jaGVja2JveC0tcHJpbWFyeSAtIFByaW1hcnlcbiAqIC5mb3JtX19jaGVja2JveC0tc2Vjb25kYXJ5IC0gU2Vjb25kYXJ5XG4gKiAuZm9ybV9fY2hlY2tib3gtLXNtYWxsIC0gU21hbGxcbiAqXG4gKiBNYXJrdXA6IGlucHV0LWNoZWNrYm94LXNpbmdsZS50d2lnXG4gKlxuICogU3R5bGUgZ3VpZGU6IGZvcm0uY2hlY2tib3gtc2luZ2xlXG4gKi9cblxuLmZvcm1fX2NoZWNrYm94IHtcbiAgJiBbdHlwZT0nY2hlY2tib3gnXSB7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNHB4O1xuICAgIHdpZHRoOiAxOHB4O1xuICAgIGhlaWdodDogMThweDtcbiAgICBib3JkZXI6IHZhcigtLWZvcm0tYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1mb3JtLWJvcmRlci1jb2xvcik7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tZm9ybS1ib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gICYgW3R5cGU9J2NoZWNrYm94J106Y2hlY2tlZCB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogc3ZnLWxvYWQoXCIuLi9jb21wb25lbnRzL2ljb24vaW1hZ2VzL3RpY2suc3ZnXCIsIGZpbGw9dmFyKC0tZm9ybS1ib3JkZXItY29sb3IpKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogLjc1cmVtO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgfVxuXG4gICYgW3R5cGU9J2NoZWNrYm94J106Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tZm9ybS1ib3JkZXItY29sb3ItZm9jdXMpO1xuICB9XG5cbiAgJiBbdHlwZT0nY2hlY2tib3gnXTpkaXNhYmxlZCB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWdyZXlzY2FsZS01MCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ3JleXNjYWxlLTEwKTtcbiAgfVxuXG4gICYgW3R5cGU9J2NoZWNrYm94J106ZGlzYWJsZWQ6Y2hlY2tlZCB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogc3ZnLWxvYWQoXCIuLi9jb21wb25lbnRzL2ljb24vaW1hZ2VzL3RpY2suc3ZnXCIsIGZpbGw9dmFyKC0tZ3JleXNjYWxlLTUwKSk7XG4gIH1cbn1cblxuLmZvcm1fX2NoZWNrYm94LS1wcmltYXJ5IHtcbiAgJiBbdHlwZT0nY2hlY2tib3gnXTpjaGVja2VkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1wcmltYXJ5LTEwMCk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1wcmltYXJ5LTEwMCk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogc3ZnLWxvYWQoXCIuLi9jb21wb25lbnRzL2ljb24vaW1hZ2VzL3RpY2suc3ZnXCIsIGZpbGw9dmFyKC0td2hpdGUpKTtcbiAgfVxufVxuXG4uZm9ybV9fY2hlY2tib3gtLXNlY29uZGFyeSB7XG4gICYgW3R5cGU9J2NoZWNrYm94J106Y2hlY2tlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcHJpbWFyeS0xMDApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tcHJpbWFyeS0xMDApO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHN2Zy1sb2FkKFwiLi4vY29tcG9uZW50cy9pY29uL2ltYWdlcy90aWNrLnN2Z1wiLCBmaWxsPXZhcigtLXdoaXRlKSk7XG4gIH1cbn1cblxuLmZvcm1fX2NoZWNrYm94LS1zbWFsbCB7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmctcyk7XG5cbiAgJiBbdHlwZT0nY2hlY2tib3gnXSB7XG4gICAgd2lkdGg6IHZhcigtLWZvbnQtc2l6ZS1zKTtcbiAgICBoZWlnaHQ6IHZhcigtLWZvbnQtc2l6ZS1zKTtcbiAgfVxuXG4gICYgW3R5cGU9J2NoZWNrYm94J106Y2hlY2tlZCB7XG4gICAgYmFja2dyb3VuZC1zaXplOiAuNXJlbTtcbiAgfVxuXG4gICYgbGFiZWwge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXMpO1xuICB9XG59XG5cbi8qKlxuICogUmFkaW9zIChtdWx0aXBsZSlcbiAqXG4gKiBUaGUgc3RhbmRhcmQgYGlucHV0W3R5cGU9XCJyYWRpb1wiXWAgZWxlbWVudCwgdXNpbmcgYSBmaWVsZHNldCBhbmQgbGVnZW5kIGFzXG4gKiB0aGUgYWNjZXNzaWJsZSB3YXkgdG8gZ3JvdXAgYW5kIGxhYmVsIG11bHRpcGxlIHJhZGlvIGlucHV0cy5cbiAqXG4gKiBPcHRpb25hbGx5IGEgdG9vbHRpcCBjYW4gYmUgdXNlZCBieSB1c2luZyB0aGUgYGFyaWEtZGVzY3JpYmVkYnlgIGF0dHJpYnV0ZVxuICogb24gdGhlIGZpZWxkc2V0IGl0c2VsZi5cbiAqXG4gKiAuZm9ybV9fcmFkaW8tLXByaW1hcnkgLSBQcmltYXJ5XG4gKiAuZm9ybV9fcmFkaW8tLXNlY29uZGFyeSAtIFNlY29uZGFyeVxuICogLmZvcm1fX3JhZGlvLS1zbWFsbCAtIFNtYWxsXG4gKlxuICogTWFya3VwOiBpbnB1dC1yYWRpby50d2lnXG4gKlxuICogU3R5bGUgZ3VpZGU6IGZvcm0ucmFkaW9zXG4gKi9cblxuLmZvcm1fX3JhZGlvIHtcbiAgJiBbdHlwZT0ncmFkaW8nXSB7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMnB4O1xuICAgIHdpZHRoOiAxOHB4O1xuICAgIGhlaWdodDogMThweDtcbiAgICBib3JkZXI6IHZhcigtLWZvcm0tYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1mb3JtLWJvcmRlci1jb2xvcik7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICB9XG5cbiAgJiBbdHlwZT0ncmFkaW8nXTpjaGVja2VkOjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMHB4O1xuICAgIGhlaWdodDogMTBweDtcbiAgICB0b3A6IDJweDtcbiAgICBsZWZ0OiAycHg7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWZvcm0tYm9yZGVyLWNvbG9yKTtcbiAgfVxuXG4gICYgW3R5cGU9J3JhZGlvJ106Zm9jdXMge1xuICAgIG91dGxpbmU6IDFweCBzb2xpZCB2YXIoLS1mb2N1cy0xMDApO1xuICB9XG5cbiAgJiBbdHlwZT0ncmFkaW8nXTpkaXNhYmxlZCB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ncmV5c2NhbGUtNTApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdyZXlzY2FsZS0xMCk7XG4gIH1cblxuICAmIFt0eXBlPSdyYWRpbyddOmRpc2FibGVkOmNoZWNrZWQ6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ncmV5c2NhbGUtMTApO1xuICB9XG59XG5cbi5mb3JtX19yYWRpby0tcHJpbWFyeSB7XG4gICYgW3R5cGU9J3JhZGlvJ10ge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tcHJpbWFyeS0xMDApO1xuICB9XG5cbiAgJiBbdHlwZT0ncmFkaW8nXTpjaGVja2VkOjphZnRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcHJpbWFyeS0xMDApO1xuICB9XG59XG5cbi5mb3JtX19yYWRpby0tc2Vjb25kYXJ5IHtcbiAgJiBbdHlwZT0ncmFkaW8nXSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1wcmltYXJ5LTEwMCk7XG4gIH1cblxuICAmIFt0eXBlPSdyYWRpbyddOmNoZWNrZWQ6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1wcmltYXJ5LTEwMCk7XG4gIH1cbn1cblxuLmZvcm1fX3JhZGlvLS1zbWFsbCB7XG4gICYgW3R5cGU9J3JhZGlvJ10ge1xuICAgIHRvcDogM3B4O1xuICAgIHdpZHRoOiAxNnB4O1xuICAgIGhlaWdodDogMTZweDtcbiAgfVxuXG4gICYgW3R5cGU9J3JhZGlvJ106Y2hlY2tlZDo6YWZ0ZXIge1xuICAgIHdpZHRoOiA4cHg7XG4gICAgaGVpZ2h0OiA4cHg7XG4gIH1cblxuICAmIGxhYmVsIHtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zKTtcbiAgfVxufVxuXG4vKipcbiAqIFRleHRhcmVhXG4gKlxuICogQSB0ZXh0YXJlYSBmaWVsZCBpcyB1c2VkIGZvciBtdWx0aXBsZSBsaW5lcyBvZiB0ZXh0IGlucHV0LlxuICpcbiAqIE1hcmt1cDogdGV4dGFyZWEudHdpZ1xuICpcbiAqIFN0eWxlIGd1aWRlOiBmb3JtLnRleHRhcmVhXG4gKi9cblxuLyoqXG4gKiBGaWVsZHNldFxuICpcbiAqIFRoZSBmaWVsZHNldCBlbGVtZW50IGlzIHVzZWQgZm9yIGdyb3VwaW5nIGZvcm0gZWxlbWVudHMuIFNlZSB0aGUgW0NoZWNrYm94IChtdWx0aXBsZSldKC9zZWN0aW9uLWZvcm0uaHRtbCNrc3NyZWYtZm9ybS1jaGVja2JveC1tdWx0aXBsZSlcbiAqIGFuZCBbUmFkaW9zIChtdWx0aXBsZSldKC9zZWN0aW9uLWZvcm0uaHRtbCNrc3NyZWYtZm9ybS1yYWRpb3MpIGNvbXBvbmVudHMgZm9yIGhvdyBpdCBpcyBiZXN0IHVzZWQuXG4gKlxuICogTWFya3VwOiBmaWVsZHNldC50d2lnXG4gKlxuICogU3R5bGUgZ3VpZGU6IGZvcm0uZmllbGRzZXRcbiAqL1xuXG4vKipcbiAqIERlc2NyaXB0aW9uXG4gKlxuICogVGV4dCB0aGF0IGRlc2NyaWJlcyBhIGZvcm0gZmllbGQuIFRoZSBmb3JtIGVsZW1lbnQgbXVzdCBoYXZlIGFuIGBhcmlhLWRlc2NyaWJlZGJ5YCBhdHRyaWJ1dGUgdGhhdCBwb2ludHMgdG8gdGhlXG4gKiBgaWRgIG9mIHRoZSBkZXNjcmlwdGlvbiB0ZXh0LlxuICpcbiAqIE1hcmt1cDogZm9ybS1kZXNjcmlwdGlvbi50d2lnXG4gKlxuICogU3R5bGUgZ3VpZGU6IGZvcm0uZGVzY3JpcHRpb25cbiAqL1xuXG4vKipcbiAqIEVycm9yIG1lc3NhZ2VcbiAqXG4gKiBUaGUgZXJyb3Igc3RhdGUgd2l0aCBhIHJlZCBib3JkZXIgYW5kIG1lc3NhZ2UuXG4gKlxuICogTWFya3VwOiBmb3JtLWVycm9yLnR3aWdcbiAqXG4gKiBTdHlsZSBndWlkZTogZm9ybS5lcnJvclxuICovXG5cbi5mb3JtX19kZXNjcmlwdGlvbixcbi5mb3JtX19lcnJvci1tZXNzYWdlIHtcbiAgbWFyZ2luOiB2YXIoLS1zcGFjaW5nLXhzKSAwO1xufVxuXG4vKipcbiAqIERydXBhbCBzZWxlY3RvcnMuXG4gKi9cbi51c2VyLWxvZ2luLWZvcm0sXG4udXNlci1yZWdpc3Rlci1mb3JtLFxuLnVzZXItcGFzcyB7XG4gIG1heC13aWR0aDogNTAwcHg7XG4gIG1hcmdpbjogNTBweCBhdXRvO1xufVxuXG4uaW5wdXQtLWhpZGRlbi1sYWJlbCBsYWJlbCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5mb3JtX19pdGVtIHtcbiAgJi5mb3JtX19pdGVtLS1sYWJlbC1pbmxpbmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1heC13aWR0aDogY2FsYygxMDB2dyAtIDNyZW0pO1xuXG4gICAgQG1lZGlhICgtLXNtYWxsLXVwKSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICB9XG4gIH1cbn1cblxuLyoqXG4gKiBQbGFjZSB0aGUgcG9wb3ZlciB0cmlnZ2VyIGluc2lkZSB0aGUgaW5wdXQgZmllbGQgZm9yIGlubGluZSBmb3JtIGNvbWJvJ3NcbiAqL1xuLmlucHV0X190ZXh0LS1pbmxpbmUgLnBvcG92ZXJfX3dyYXBwZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogdmFyKC0tc3BhY2luZy14eHMpO1xuICByaWdodDogdmFyKC0tc3BhY2luZy14eHMpO1xuICBtYXJnaW4tdG9wOiAxcHg7XG59XG5cbkBtZWRpYSAoLS1tZWRpdW0tZG93bikge1xuICAuaW5wdXRfX3RleHQtLWlubGluZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAuaW5wdXRfX3RleHQtLWlubGluZSAucG9wb3ZlciB7XG4gICAgbWluLXdpZHRoOiBjYWxjKDEwMHZ3IC0gMy41cmVtKTtcbiAgfVxufVxuXG4vKipcbiAqIFByaW50IHN0eWxlc2hlZXRcbiAqL1xuXG5AbWVkaWEgcHJpbnQge1xuICBmb3JtIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4iXX0= */