/*
** NOTE: This file is generated by Gulp and should not be edited directly!
** Any changes made directly to this file will be overwritten next time its asset group is processed by Gulp.
*/

@charset "UTF-8";
/**
 * MAIN CSS
 */
/* VARIABLES */
/* VENDOR */
.align-baseline {
  vertical-align: baseline !important;
}

.align-top {
  vertical-align: top !important;
}

.align-middle {
  vertical-align: middle !important;
}

.align-bottom {
  vertical-align: bottom !important;
}

.align-text-bottom {
  vertical-align: text-bottom !important;
}

.align-text-top {
  vertical-align: text-top !important;
}

.bg-primary {
  background-color: #007bff !important;
}

a.bg-primary:hover, a.bg-primary:focus,
button.bg-primary:hover,
button.bg-primary:focus {
  background-color: rgb(0, 98.4, 204) !important;
}

.bg-secondary {
  background-color: #6c757d !important;
}

a.bg-secondary:hover, a.bg-secondary:focus,
button.bg-secondary:hover,
button.bg-secondary:focus {
  background-color: rgb(84.3605150215, 91.3905579399, 97.6394849785) !important;
}

.bg-success {
  background-color: #28a745 !important;
}

a.bg-success:hover, a.bg-success:focus,
button.bg-success:hover,
button.bg-success:focus {
  background-color: rgb(30.1449275362, 125.8550724638, 52) !important;
}

.bg-info {
  background-color: #17a2b8 !important;
}

a.bg-info:hover, a.bg-info:focus,
button.bg-info:hover,
button.bg-info:focus {
  background-color: rgb(17.3333333333, 122.0869565217, 138.6666666667) !important;
}

.bg-warning {
  background-color: #ffc107 !important;
}

a.bg-warning:hover, a.bg-warning:focus,
button.bg-warning:hover,
button.bg-warning:focus {
  background-color: rgb(211, 158.25, 0) !important;
}

.bg-danger {
  background-color: #dc3545 !important;
}

a.bg-danger:hover, a.bg-danger:focus,
button.bg-danger:hover,
button.bg-danger:focus {
  background-color: rgb(189.2151898734, 32.7848101266, 47.7721518987) !important;
}

.bg-light {
  background-color: #f8f9fa !important;
}

a.bg-light:hover, a.bg-light:focus,
button.bg-light:hover,
button.bg-light:focus {
  background-color: rgb(218.25, 223.5, 228.75) !important;
}

.bg-dark {
  background-color: #343a40 !important;
}

a.bg-dark:hover, a.bg-dark:focus,
button.bg-dark:hover,
button.bg-dark:focus {
  background-color: rgb(29.1379310345, 32.5, 35.8620689655) !important;
}

.bg-cat-yellow {
  background-color: #fcc32a !important;
}

a.bg-cat-yellow:hover, a.bg-cat-yellow:focus,
button.bg-cat-yellow:hover,
button.bg-cat-yellow:focus {
  background-color: rgb(239.625, 175.5, 3.375) !important;
}

.bg-black {
  background-color: #202020 !important;
}

a.bg-black:hover, a.bg-black:focus,
button.bg-black:hover,
button.bg-black:focus {
  background-color: rgb(6.5, 6.5, 6.5) !important;
}

.bg-white {
  background-color: #fff !important;
}

.bg-transparent {
  background-color: transparent !important;
}

.border {
  border: 1px solid #dee2e6 !important;
}

.border-top {
  border-top: 1px solid #dee2e6 !important;
}

.border-right {
  border-right: 1px solid #dee2e6 !important;
}

.border-bottom {
  border-bottom: 1px solid #dee2e6 !important;
}

.border-left {
  border-left: 1px solid #dee2e6 !important;
}

.border-0 {
  border: 0 !important;
}

.border-top-0 {
  border-top: 0 !important;
}

.border-right-0 {
  border-right: 0 !important;
}

.border-bottom-0 {
  border-bottom: 0 !important;
}

.border-left-0 {
  border-left: 0 !important;
}

.border-primary {
  border-color: #007bff !important;
}

.border-secondary {
  border-color: #6c757d !important;
}

.border-success {
  border-color: #28a745 !important;
}

.border-info {
  border-color: #17a2b8 !important;
}

.border-warning {
  border-color: #ffc107 !important;
}

.border-danger {
  border-color: #dc3545 !important;
}

.border-light {
  border-color: #f8f9fa !important;
}

.border-dark {
  border-color: #343a40 !important;
}

.border-cat-yellow {
  border-color: #fcc32a !important;
}

.border-black {
  border-color: #202020 !important;
}

.border-white {
  border-color: #fff !important;
}

.rounded-sm {
  border-radius: 0.2rem !important;
}

.rounded {
  border-radius: 0.25rem !important;
}

.rounded-top {
  border-top-left-radius: 0.25rem !important;
  border-top-right-radius: 0.25rem !important;
}

.rounded-right {
  border-top-right-radius: 0.25rem !important;
  border-bottom-right-radius: 0.25rem !important;
}

.rounded-bottom {
  border-bottom-right-radius: 0.25rem !important;
  border-bottom-left-radius: 0.25rem !important;
}

.rounded-left {
  border-top-left-radius: 0.25rem !important;
  border-bottom-left-radius: 0.25rem !important;
}

.rounded-lg {
  border-radius: 0.3rem !important;
}

.rounded-circle {
  border-radius: 50% !important;
}

.rounded-pill {
  border-radius: 50rem !important;
}

.rounded-0 {
  border-radius: 0 !important;
}

.clearfix::after {
  display: block;
  clear: both;
  content: "";
}

.d-none {
  display: none !important;
}

.d-inline {
  display: inline !important;
}

.d-inline-block {
  display: inline-block !important;
}

.d-block {
  display: block !important;
}

.d-table {
  display: table !important;
}

.d-table-row {
  display: table-row !important;
}

.d-table-cell {
  display: table-cell !important;
}

.d-flex {
  display: flex !important;
}

.d-inline-flex {
  display: inline-flex !important;
}

@media (min-width: 640px) {
  .d-sm-none {
    display: none !important;
  }
  .d-sm-inline {
    display: inline !important;
  }
  .d-sm-inline-block {
    display: inline-block !important;
  }
  .d-sm-block {
    display: block !important;
  }
  .d-sm-table {
    display: table !important;
  }
  .d-sm-table-row {
    display: table-row !important;
  }
  .d-sm-table-cell {
    display: table-cell !important;
  }
  .d-sm-flex {
    display: flex !important;
  }
  .d-sm-inline-flex {
    display: inline-flex !important;
  }
}
@media (min-width: 768px) {
  .d-md-none {
    display: none !important;
  }
  .d-md-inline {
    display: inline !important;
  }
  .d-md-inline-block {
    display: inline-block !important;
  }
  .d-md-block {
    display: block !important;
  }
  .d-md-table {
    display: table !important;
  }
  .d-md-table-row {
    display: table-row !important;
  }
  .d-md-table-cell {
    display: table-cell !important;
  }
  .d-md-flex {
    display: flex !important;
  }
  .d-md-inline-flex {
    display: inline-flex !important;
  }
}
@media (min-width: 1024px) {
  .d-lg-none {
    display: none !important;
  }
  .d-lg-inline {
    display: inline !important;
  }
  .d-lg-inline-block {
    display: inline-block !important;
  }
  .d-lg-block {
    display: block !important;
  }
  .d-lg-table {
    display: table !important;
  }
  .d-lg-table-row {
    display: table-row !important;
  }
  .d-lg-table-cell {
    display: table-cell !important;
  }
  .d-lg-flex {
    display: flex !important;
  }
  .d-lg-inline-flex {
    display: inline-flex !important;
  }
}
@media (min-width: 1500px) {
  .d-xl-none {
    display: none !important;
  }
  .d-xl-inline {
    display: inline !important;
  }
  .d-xl-inline-block {
    display: inline-block !important;
  }
  .d-xl-block {
    display: block !important;
  }
  .d-xl-table {
    display: table !important;
  }
  .d-xl-table-row {
    display: table-row !important;
  }
  .d-xl-table-cell {
    display: table-cell !important;
  }
  .d-xl-flex {
    display: flex !important;
  }
  .d-xl-inline-flex {
    display: inline-flex !important;
  }
}
@media print {
  .d-print-none {
    display: none !important;
  }
  .d-print-inline {
    display: inline !important;
  }
  .d-print-inline-block {
    display: inline-block !important;
  }
  .d-print-block {
    display: block !important;
  }
  .d-print-table {
    display: table !important;
  }
  .d-print-table-row {
    display: table-row !important;
  }
  .d-print-table-cell {
    display: table-cell !important;
  }
  .d-print-flex {
    display: flex !important;
  }
  .d-print-inline-flex {
    display: inline-flex !important;
  }
}
.embed-responsive {
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  overflow: hidden;
}
.embed-responsive::before {
  display: block;
  content: "";
}
.embed-responsive .embed-responsive-item,
.embed-responsive iframe,
.embed-responsive embed,
.embed-responsive object,
.embed-responsive video {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

.embed-responsive-21by9::before {
  padding-top: 42.85714286%;
}

.embed-responsive-16by9::before {
  padding-top: 56.25%;
}

.embed-responsive-4by3::before {
  padding-top: 75%;
}

.embed-responsive-1by1::before {
  padding-top: 100%;
}

.flex-row {
  flex-direction: row !important;
}

.flex-column {
  flex-direction: column !important;
}

.flex-row-reverse {
  flex-direction: row-reverse !important;
}

.flex-column-reverse {
  flex-direction: column-reverse !important;
}

.flex-wrap {
  flex-wrap: wrap !important;
}

.flex-nowrap {
  flex-wrap: nowrap !important;
}

.flex-wrap-reverse {
  flex-wrap: wrap-reverse !important;
}

.flex-fill {
  flex: 1 1 auto !important;
}

.flex-grow-0 {
  flex-grow: 0 !important;
}

.flex-grow-1 {
  flex-grow: 1 !important;
}

.flex-shrink-0 {
  flex-shrink: 0 !important;
}

.flex-shrink-1 {
  flex-shrink: 1 !important;
}

.justify-content-start {
  justify-content: flex-start !important;
}

.justify-content-end {
  justify-content: flex-end !important;
}

.justify-content-center {
  justify-content: center !important;
}

.justify-content-between {
  justify-content: space-between !important;
}

.justify-content-around {
  justify-content: space-around !important;
}

.align-items-start {
  align-items: flex-start !important;
}

.align-items-end {
  align-items: flex-end !important;
}

.align-items-center {
  align-items: center !important;
}

.align-items-baseline {
  align-items: baseline !important;
}

.align-items-stretch {
  align-items: stretch !important;
}

.align-content-start {
  align-content: flex-start !important;
}

.align-content-end {
  align-content: flex-end !important;
}

.align-content-center {
  align-content: center !important;
}

.align-content-between {
  align-content: space-between !important;
}

.align-content-around {
  align-content: space-around !important;
}

.align-content-stretch {
  align-content: stretch !important;
}

.align-self-auto {
  align-self: auto !important;
}

.align-self-start {
  align-self: flex-start !important;
}

.align-self-end {
  align-self: flex-end !important;
}

.align-self-center {
  align-self: center !important;
}

.align-self-baseline {
  align-self: baseline !important;
}

.align-self-stretch {
  align-self: stretch !important;
}

@media (min-width: 640px) {
  .flex-sm-row {
    flex-direction: row !important;
  }
  .flex-sm-column {
    flex-direction: column !important;
  }
  .flex-sm-row-reverse {
    flex-direction: row-reverse !important;
  }
  .flex-sm-column-reverse {
    flex-direction: column-reverse !important;
  }
  .flex-sm-wrap {
    flex-wrap: wrap !important;
  }
  .flex-sm-nowrap {
    flex-wrap: nowrap !important;
  }
  .flex-sm-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
  .flex-sm-fill {
    flex: 1 1 auto !important;
  }
  .flex-sm-grow-0 {
    flex-grow: 0 !important;
  }
  .flex-sm-grow-1 {
    flex-grow: 1 !important;
  }
  .flex-sm-shrink-0 {
    flex-shrink: 0 !important;
  }
  .flex-sm-shrink-1 {
    flex-shrink: 1 !important;
  }
  .justify-content-sm-start {
    justify-content: flex-start !important;
  }
  .justify-content-sm-end {
    justify-content: flex-end !important;
  }
  .justify-content-sm-center {
    justify-content: center !important;
  }
  .justify-content-sm-between {
    justify-content: space-between !important;
  }
  .justify-content-sm-around {
    justify-content: space-around !important;
  }
  .align-items-sm-start {
    align-items: flex-start !important;
  }
  .align-items-sm-end {
    align-items: flex-end !important;
  }
  .align-items-sm-center {
    align-items: center !important;
  }
  .align-items-sm-baseline {
    align-items: baseline !important;
  }
  .align-items-sm-stretch {
    align-items: stretch !important;
  }
  .align-content-sm-start {
    align-content: flex-start !important;
  }
  .align-content-sm-end {
    align-content: flex-end !important;
  }
  .align-content-sm-center {
    align-content: center !important;
  }
  .align-content-sm-between {
    align-content: space-between !important;
  }
  .align-content-sm-around {
    align-content: space-around !important;
  }
  .align-content-sm-stretch {
    align-content: stretch !important;
  }
  .align-self-sm-auto {
    align-self: auto !important;
  }
  .align-self-sm-start {
    align-self: flex-start !important;
  }
  .align-self-sm-end {
    align-self: flex-end !important;
  }
  .align-self-sm-center {
    align-self: center !important;
  }
  .align-self-sm-baseline {
    align-self: baseline !important;
  }
  .align-self-sm-stretch {
    align-self: stretch !important;
  }
}
@media (min-width: 768px) {
  .flex-md-row {
    flex-direction: row !important;
  }
  .flex-md-column {
    flex-direction: column !important;
  }
  .flex-md-row-reverse {
    flex-direction: row-reverse !important;
  }
  .flex-md-column-reverse {
    flex-direction: column-reverse !important;
  }
  .flex-md-wrap {
    flex-wrap: wrap !important;
  }
  .flex-md-nowrap {
    flex-wrap: nowrap !important;
  }
  .flex-md-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
  .flex-md-fill {
    flex: 1 1 auto !important;
  }
  .flex-md-grow-0 {
    flex-grow: 0 !important;
  }
  .flex-md-grow-1 {
    flex-grow: 1 !important;
  }
  .flex-md-shrink-0 {
    flex-shrink: 0 !important;
  }
  .flex-md-shrink-1 {
    flex-shrink: 1 !important;
  }
  .justify-content-md-start {
    justify-content: flex-start !important;
  }
  .justify-content-md-end {
    justify-content: flex-end !important;
  }
  .justify-content-md-center {
    justify-content: center !important;
  }
  .justify-content-md-between {
    justify-content: space-between !important;
  }
  .justify-content-md-around {
    justify-content: space-around !important;
  }
  .align-items-md-start {
    align-items: flex-start !important;
  }
  .align-items-md-end {
    align-items: flex-end !important;
  }
  .align-items-md-center {
    align-items: center !important;
  }
  .align-items-md-baseline {
    align-items: baseline !important;
  }
  .align-items-md-stretch {
    align-items: stretch !important;
  }
  .align-content-md-start {
    align-content: flex-start !important;
  }
  .align-content-md-end {
    align-content: flex-end !important;
  }
  .align-content-md-center {
    align-content: center !important;
  }
  .align-content-md-between {
    align-content: space-between !important;
  }
  .align-content-md-around {
    align-content: space-around !important;
  }
  .align-content-md-stretch {
    align-content: stretch !important;
  }
  .align-self-md-auto {
    align-self: auto !important;
  }
  .align-self-md-start {
    align-self: flex-start !important;
  }
  .align-self-md-end {
    align-self: flex-end !important;
  }
  .align-self-md-center {
    align-self: center !important;
  }
  .align-self-md-baseline {
    align-self: baseline !important;
  }
  .align-self-md-stretch {
    align-self: stretch !important;
  }
}
@media (min-width: 1024px) {
  .flex-lg-row {
    flex-direction: row !important;
  }
  .flex-lg-column {
    flex-direction: column !important;
  }
  .flex-lg-row-reverse {
    flex-direction: row-reverse !important;
  }
  .flex-lg-column-reverse {
    flex-direction: column-reverse !important;
  }
  .flex-lg-wrap {
    flex-wrap: wrap !important;
  }
  .flex-lg-nowrap {
    flex-wrap: nowrap !important;
  }
  .flex-lg-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
  .flex-lg-fill {
    flex: 1 1 auto !important;
  }
  .flex-lg-grow-0 {
    flex-grow: 0 !important;
  }
  .flex-lg-grow-1 {
    flex-grow: 1 !important;
  }
  .flex-lg-shrink-0 {
    flex-shrink: 0 !important;
  }
  .flex-lg-shrink-1 {
    flex-shrink: 1 !important;
  }
  .justify-content-lg-start {
    justify-content: flex-start !important;
  }
  .justify-content-lg-end {
    justify-content: flex-end !important;
  }
  .justify-content-lg-center {
    justify-content: center !important;
  }
  .justify-content-lg-between {
    justify-content: space-between !important;
  }
  .justify-content-lg-around {
    justify-content: space-around !important;
  }
  .align-items-lg-start {
    align-items: flex-start !important;
  }
  .align-items-lg-end {
    align-items: flex-end !important;
  }
  .align-items-lg-center {
    align-items: center !important;
  }
  .align-items-lg-baseline {
    align-items: baseline !important;
  }
  .align-items-lg-stretch {
    align-items: stretch !important;
  }
  .align-content-lg-start {
    align-content: flex-start !important;
  }
  .align-content-lg-end {
    align-content: flex-end !important;
  }
  .align-content-lg-center {
    align-content: center !important;
  }
  .align-content-lg-between {
    align-content: space-between !important;
  }
  .align-content-lg-around {
    align-content: space-around !important;
  }
  .align-content-lg-stretch {
    align-content: stretch !important;
  }
  .align-self-lg-auto {
    align-self: auto !important;
  }
  .align-self-lg-start {
    align-self: flex-start !important;
  }
  .align-self-lg-end {
    align-self: flex-end !important;
  }
  .align-self-lg-center {
    align-self: center !important;
  }
  .align-self-lg-baseline {
    align-self: baseline !important;
  }
  .align-self-lg-stretch {
    align-self: stretch !important;
  }
}
@media (min-width: 1500px) {
  .flex-xl-row {
    flex-direction: row !important;
  }
  .flex-xl-column {
    flex-direction: column !important;
  }
  .flex-xl-row-reverse {
    flex-direction: row-reverse !important;
  }
  .flex-xl-column-reverse {
    flex-direction: column-reverse !important;
  }
  .flex-xl-wrap {
    flex-wrap: wrap !important;
  }
  .flex-xl-nowrap {
    flex-wrap: nowrap !important;
  }
  .flex-xl-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
  .flex-xl-fill {
    flex: 1 1 auto !important;
  }
  .flex-xl-grow-0 {
    flex-grow: 0 !important;
  }
  .flex-xl-grow-1 {
    flex-grow: 1 !important;
  }
  .flex-xl-shrink-0 {
    flex-shrink: 0 !important;
  }
  .flex-xl-shrink-1 {
    flex-shrink: 1 !important;
  }
  .justify-content-xl-start {
    justify-content: flex-start !important;
  }
  .justify-content-xl-end {
    justify-content: flex-end !important;
  }
  .justify-content-xl-center {
    justify-content: center !important;
  }
  .justify-content-xl-between {
    justify-content: space-between !important;
  }
  .justify-content-xl-around {
    justify-content: space-around !important;
  }
  .align-items-xl-start {
    align-items: flex-start !important;
  }
  .align-items-xl-end {
    align-items: flex-end !important;
  }
  .align-items-xl-center {
    align-items: center !important;
  }
  .align-items-xl-baseline {
    align-items: baseline !important;
  }
  .align-items-xl-stretch {
    align-items: stretch !important;
  }
  .align-content-xl-start {
    align-content: flex-start !important;
  }
  .align-content-xl-end {
    align-content: flex-end !important;
  }
  .align-content-xl-center {
    align-content: center !important;
  }
  .align-content-xl-between {
    align-content: space-between !important;
  }
  .align-content-xl-around {
    align-content: space-around !important;
  }
  .align-content-xl-stretch {
    align-content: stretch !important;
  }
  .align-self-xl-auto {
    align-self: auto !important;
  }
  .align-self-xl-start {
    align-self: flex-start !important;
  }
  .align-self-xl-end {
    align-self: flex-end !important;
  }
  .align-self-xl-center {
    align-self: center !important;
  }
  .align-self-xl-baseline {
    align-self: baseline !important;
  }
  .align-self-xl-stretch {
    align-self: stretch !important;
  }
}
.float-left {
  float: left !important;
}

.float-right {
  float: right !important;
}

.float-none {
  float: none !important;
}

@media (min-width: 640px) {
  .float-sm-left {
    float: left !important;
  }
  .float-sm-right {
    float: right !important;
  }
  .float-sm-none {
    float: none !important;
  }
}
@media (min-width: 768px) {
  .float-md-left {
    float: left !important;
  }
  .float-md-right {
    float: right !important;
  }
  .float-md-none {
    float: none !important;
  }
}
@media (min-width: 1024px) {
  .float-lg-left {
    float: left !important;
  }
  .float-lg-right {
    float: right !important;
  }
  .float-lg-none {
    float: none !important;
  }
}
@media (min-width: 1500px) {
  .float-xl-left {
    float: left !important;
  }
  .float-xl-right {
    float: right !important;
  }
  .float-xl-none {
    float: none !important;
  }
}
.user-select-all {
  user-select: all !important;
}

.user-select-auto {
  user-select: auto !important;
}

.user-select-none {
  user-select: none !important;
}

.overflow-auto {
  overflow: auto !important;
}

.overflow-hidden {
  overflow: hidden !important;
}

.position-static {
  position: static !important;
}

.position-relative {
  position: relative !important;
}

.position-absolute {
  position: absolute !important;
}

.position-fixed {
  position: fixed !important;
}

.position-sticky {
  position: sticky !important;
}

.fixed-top {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1030;
}

.fixed-bottom {
  position: fixed;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1030;
}

@supports (position: sticky) {
  .sticky-top {
    position: sticky;
    top: 0;
    z-index: 1020;
  }
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.sr-only-focusable:active, .sr-only-focusable:focus {
  position: static;
  width: auto;
  height: auto;
  overflow: visible;
  clip: auto;
  white-space: normal;
}

.shadow-sm {
  box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important;
}

.shadow {
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}

.shadow-lg {
  box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.175) !important;
}

.shadow-none {
  box-shadow: none !important;
}

.w-25 {
  width: 25% !important;
}

.w-50 {
  width: 50% !important;
}

.w-75 {
  width: 75% !important;
}

.w-100 {
  width: 100% !important;
}

.w-auto {
  width: auto !important;
}

.h-25 {
  height: 25% !important;
}

.h-50 {
  height: 50% !important;
}

.h-75 {
  height: 75% !important;
}

.h-100 {
  height: 100% !important;
}

.h-auto {
  height: auto !important;
}

.mw-100 {
  max-width: 100% !important;
}

.mh-100 {
  max-height: 100% !important;
}

.min-vw-100 {
  min-width: 100vw !important;
}

.min-vh-100 {
  min-height: 100vh !important;
}

.vw-100 {
  width: 100vw !important;
}

.vh-100 {
  height: 100vh !important;
}

.m-0 {
  margin: 0 !important;
}

.mt-0,
.my-0 {
  margin-top: 0 !important;
}

.mr-0,
.mx-0 {
  margin-right: 0 !important;
}

.mb-0,
.my-0 {
  margin-bottom: 0 !important;
}

.ml-0,
.mx-0 {
  margin-left: 0 !important;
}

.m-1 {
  margin: 0.25rem !important;
}

.mt-1,
.my-1 {
  margin-top: 0.25rem !important;
}

.mr-1,
.mx-1 {
  margin-right: 0.25rem !important;
}

.mb-1,
.my-1 {
  margin-bottom: 0.25rem !important;
}

.ml-1,
.mx-1 {
  margin-left: 0.25rem !important;
}

.m-2 {
  margin: 0.5rem !important;
}

.mt-2,
.my-2 {
  margin-top: 0.5rem !important;
}

.mr-2,
.mx-2 {
  margin-right: 0.5rem !important;
}

.mb-2,
.my-2 {
  margin-bottom: 0.5rem !important;
}

.ml-2,
.mx-2 {
  margin-left: 0.5rem !important;
}

.m-3 {
  margin: 1rem !important;
}

.mt-3,
.my-3 {
  margin-top: 1rem !important;
}

.mr-3,
.mx-3 {
  margin-right: 1rem !important;
}

.mb-3,
.my-3 {
  margin-bottom: 1rem !important;
}

.ml-3,
.mx-3 {
  margin-left: 1rem !important;
}

.m-4 {
  margin: 1.5rem !important;
}

.mt-4,
.my-4 {
  margin-top: 1.5rem !important;
}

.mr-4,
.mx-4 {
  margin-right: 1.5rem !important;
}

.mb-4,
.my-4 {
  margin-bottom: 1.5rem !important;
}

.ml-4,
.mx-4 {
  margin-left: 1.5rem !important;
}

.m-5 {
  margin: 3rem !important;
}

.mt-5,
.my-5 {
  margin-top: 3rem !important;
}

.mr-5,
.mx-5 {
  margin-right: 3rem !important;
}

.mb-5,
.my-5 {
  margin-bottom: 3rem !important;
}

.ml-5,
.mx-5 {
  margin-left: 3rem !important;
}

.m-6 {
  margin: 4rem !important;
}

.mt-6,
.my-6 {
  margin-top: 4rem !important;
}

.mr-6,
.mx-6 {
  margin-right: 4rem !important;
}

.mb-6,
.my-6 {
  margin-bottom: 4rem !important;
}

.ml-6,
.mx-6 {
  margin-left: 4rem !important;
}

.m-7 {
  margin: 5rem !important;
}

.mt-7,
.my-7 {
  margin-top: 5rem !important;
}

.mr-7,
.mx-7 {
  margin-right: 5rem !important;
}

.mb-7,
.my-7 {
  margin-bottom: 5rem !important;
}

.ml-7,
.mx-7 {
  margin-left: 5rem !important;
}

.m-8 {
  margin: 6rem !important;
}

.mt-8,
.my-8 {
  margin-top: 6rem !important;
}

.mr-8,
.mx-8 {
  margin-right: 6rem !important;
}

.mb-8,
.my-8 {
  margin-bottom: 6rem !important;
}

.ml-8,
.mx-8 {
  margin-left: 6rem !important;
}

.p-0 {
  padding: 0 !important;
}

.pt-0,
.py-0 {
  padding-top: 0 !important;
}

.pr-0,
.px-0 {
  padding-right: 0 !important;
}

.pb-0,
.py-0 {
  padding-bottom: 0 !important;
}

.pl-0,
.px-0 {
  padding-left: 0 !important;
}

.p-1 {
  padding: 0.25rem !important;
}

.pt-1,
.py-1 {
  padding-top: 0.25rem !important;
}

.pr-1,
.px-1 {
  padding-right: 0.25rem !important;
}

.pb-1,
.py-1 {
  padding-bottom: 0.25rem !important;
}

.pl-1,
.px-1 {
  padding-left: 0.25rem !important;
}

.p-2 {
  padding: 0.5rem !important;
}

.pt-2,
.py-2 {
  padding-top: 0.5rem !important;
}

.pr-2,
.px-2 {
  padding-right: 0.5rem !important;
}

.pb-2,
.py-2 {
  padding-bottom: 0.5rem !important;
}

.pl-2,
.px-2 {
  padding-left: 0.5rem !important;
}

.p-3 {
  padding: 1rem !important;
}

.pt-3,
.py-3 {
  padding-top: 1rem !important;
}

.pr-3,
.px-3 {
  padding-right: 1rem !important;
}

.pb-3,
.py-3 {
  padding-bottom: 1rem !important;
}

.pl-3,
.px-3 {
  padding-left: 1rem !important;
}

.p-4 {
  padding: 1.5rem !important;
}

.pt-4,
.py-4 {
  padding-top: 1.5rem !important;
}

.pr-4,
.px-4 {
  padding-right: 1.5rem !important;
}

.pb-4,
.py-4 {
  padding-bottom: 1.5rem !important;
}

.pl-4,
.px-4 {
  padding-left: 1.5rem !important;
}

.p-5 {
  padding: 3rem !important;
}

.pt-5,
.py-5 {
  padding-top: 3rem !important;
}

.pr-5,
.px-5 {
  padding-right: 3rem !important;
}

.pb-5,
.py-5 {
  padding-bottom: 3rem !important;
}

.pl-5,
.px-5 {
  padding-left: 3rem !important;
}

.p-6 {
  padding: 4rem !important;
}

.pt-6,
.py-6 {
  padding-top: 4rem !important;
}

.pr-6,
.px-6 {
  padding-right: 4rem !important;
}

.pb-6,
.py-6 {
  padding-bottom: 4rem !important;
}

.pl-6,
.px-6 {
  padding-left: 4rem !important;
}

.p-7 {
  padding: 5rem !important;
}

.pt-7,
.py-7 {
  padding-top: 5rem !important;
}

.pr-7,
.px-7 {
  padding-right: 5rem !important;
}

.pb-7,
.py-7 {
  padding-bottom: 5rem !important;
}

.pl-7,
.px-7 {
  padding-left: 5rem !important;
}

.p-8 {
  padding: 6rem !important;
}

.pt-8,
.py-8 {
  padding-top: 6rem !important;
}

.pr-8,
.px-8 {
  padding-right: 6rem !important;
}

.pb-8,
.py-8 {
  padding-bottom: 6rem !important;
}

.pl-8,
.px-8 {
  padding-left: 6rem !important;
}

.m-n1 {
  margin: -0.25rem !important;
}

.mt-n1,
.my-n1 {
  margin-top: -0.25rem !important;
}

.mr-n1,
.mx-n1 {
  margin-right: -0.25rem !important;
}

.mb-n1,
.my-n1 {
  margin-bottom: -0.25rem !important;
}

.ml-n1,
.mx-n1 {
  margin-left: -0.25rem !important;
}

.m-n2 {
  margin: -0.5rem !important;
}

.mt-n2,
.my-n2 {
  margin-top: -0.5rem !important;
}

.mr-n2,
.mx-n2 {
  margin-right: -0.5rem !important;
}

.mb-n2,
.my-n2 {
  margin-bottom: -0.5rem !important;
}

.ml-n2,
.mx-n2 {
  margin-left: -0.5rem !important;
}

.m-n3 {
  margin: -1rem !important;
}

.mt-n3,
.my-n3 {
  margin-top: -1rem !important;
}

.mr-n3,
.mx-n3 {
  margin-right: -1rem !important;
}

.mb-n3,
.my-n3 {
  margin-bottom: -1rem !important;
}

.ml-n3,
.mx-n3 {
  margin-left: -1rem !important;
}

.m-n4 {
  margin: -1.5rem !important;
}

.mt-n4,
.my-n4 {
  margin-top: -1.5rem !important;
}

.mr-n4,
.mx-n4 {
  margin-right: -1.5rem !important;
}

.mb-n4,
.my-n4 {
  margin-bottom: -1.5rem !important;
}

.ml-n4,
.mx-n4 {
  margin-left: -1.5rem !important;
}

.m-n5 {
  margin: -3rem !important;
}

.mt-n5,
.my-n5 {
  margin-top: -3rem !important;
}

.mr-n5,
.mx-n5 {
  margin-right: -3rem !important;
}

.mb-n5,
.my-n5 {
  margin-bottom: -3rem !important;
}

.ml-n5,
.mx-n5 {
  margin-left: -3rem !important;
}

.m-n6 {
  margin: -4rem !important;
}

.mt-n6,
.my-n6 {
  margin-top: -4rem !important;
}

.mr-n6,
.mx-n6 {
  margin-right: -4rem !important;
}

.mb-n6,
.my-n6 {
  margin-bottom: -4rem !important;
}

.ml-n6,
.mx-n6 {
  margin-left: -4rem !important;
}

.m-n7 {
  margin: -5rem !important;
}

.mt-n7,
.my-n7 {
  margin-top: -5rem !important;
}

.mr-n7,
.mx-n7 {
  margin-right: -5rem !important;
}

.mb-n7,
.my-n7 {
  margin-bottom: -5rem !important;
}

.ml-n7,
.mx-n7 {
  margin-left: -5rem !important;
}

.m-n8 {
  margin: -6rem !important;
}

.mt-n8,
.my-n8 {
  margin-top: -6rem !important;
}

.mr-n8,
.mx-n8 {
  margin-right: -6rem !important;
}

.mb-n8,
.my-n8 {
  margin-bottom: -6rem !important;
}

.ml-n8,
.mx-n8 {
  margin-left: -6rem !important;
}

.m-auto {
  margin: auto !important;
}

.mt-auto,
.my-auto {
  margin-top: auto !important;
}

.mr-auto,
.mx-auto {
  margin-right: auto !important;
}

.mb-auto,
.my-auto {
  margin-bottom: auto !important;
}

.ml-auto,
.mx-auto {
  margin-left: auto !important;
}

@media (min-width: 640px) {
  .m-sm-0 {
    margin: 0 !important;
  }
  .mt-sm-0,
  .my-sm-0 {
    margin-top: 0 !important;
  }
  .mr-sm-0,
  .mx-sm-0 {
    margin-right: 0 !important;
  }
  .mb-sm-0,
  .my-sm-0 {
    margin-bottom: 0 !important;
  }
  .ml-sm-0,
  .mx-sm-0 {
    margin-left: 0 !important;
  }
  .m-sm-1 {
    margin: 0.25rem !important;
  }
  .mt-sm-1,
  .my-sm-1 {
    margin-top: 0.25rem !important;
  }
  .mr-sm-1,
  .mx-sm-1 {
    margin-right: 0.25rem !important;
  }
  .mb-sm-1,
  .my-sm-1 {
    margin-bottom: 0.25rem !important;
  }
  .ml-sm-1,
  .mx-sm-1 {
    margin-left: 0.25rem !important;
  }
  .m-sm-2 {
    margin: 0.5rem !important;
  }
  .mt-sm-2,
  .my-sm-2 {
    margin-top: 0.5rem !important;
  }
  .mr-sm-2,
  .mx-sm-2 {
    margin-right: 0.5rem !important;
  }
  .mb-sm-2,
  .my-sm-2 {
    margin-bottom: 0.5rem !important;
  }
  .ml-sm-2,
  .mx-sm-2 {
    margin-left: 0.5rem !important;
  }
  .m-sm-3 {
    margin: 1rem !important;
  }
  .mt-sm-3,
  .my-sm-3 {
    margin-top: 1rem !important;
  }
  .mr-sm-3,
  .mx-sm-3 {
    margin-right: 1rem !important;
  }
  .mb-sm-3,
  .my-sm-3 {
    margin-bottom: 1rem !important;
  }
  .ml-sm-3,
  .mx-sm-3 {
    margin-left: 1rem !important;
  }
  .m-sm-4 {
    margin: 1.5rem !important;
  }
  .mt-sm-4,
  .my-sm-4 {
    margin-top: 1.5rem !important;
  }
  .mr-sm-4,
  .mx-sm-4 {
    margin-right: 1.5rem !important;
  }
  .mb-sm-4,
  .my-sm-4 {
    margin-bottom: 1.5rem !important;
  }
  .ml-sm-4,
  .mx-sm-4 {
    margin-left: 1.5rem !important;
  }
  .m-sm-5 {
    margin: 3rem !important;
  }
  .mt-sm-5,
  .my-sm-5 {
    margin-top: 3rem !important;
  }
  .mr-sm-5,
  .mx-sm-5 {
    margin-right: 3rem !important;
  }
  .mb-sm-5,
  .my-sm-5 {
    margin-bottom: 3rem !important;
  }
  .ml-sm-5,
  .mx-sm-5 {
    margin-left: 3rem !important;
  }
  .m-sm-6 {
    margin: 4rem !important;
  }
  .mt-sm-6,
  .my-sm-6 {
    margin-top: 4rem !important;
  }
  .mr-sm-6,
  .mx-sm-6 {
    margin-right: 4rem !important;
  }
  .mb-sm-6,
  .my-sm-6 {
    margin-bottom: 4rem !important;
  }
  .ml-sm-6,
  .mx-sm-6 {
    margin-left: 4rem !important;
  }
  .m-sm-7 {
    margin: 5rem !important;
  }
  .mt-sm-7,
  .my-sm-7 {
    margin-top: 5rem !important;
  }
  .mr-sm-7,
  .mx-sm-7 {
    margin-right: 5rem !important;
  }
  .mb-sm-7,
  .my-sm-7 {
    margin-bottom: 5rem !important;
  }
  .ml-sm-7,
  .mx-sm-7 {
    margin-left: 5rem !important;
  }
  .m-sm-8 {
    margin: 6rem !important;
  }
  .mt-sm-8,
  .my-sm-8 {
    margin-top: 6rem !important;
  }
  .mr-sm-8,
  .mx-sm-8 {
    margin-right: 6rem !important;
  }
  .mb-sm-8,
  .my-sm-8 {
    margin-bottom: 6rem !important;
  }
  .ml-sm-8,
  .mx-sm-8 {
    margin-left: 6rem !important;
  }
  .p-sm-0 {
    padding: 0 !important;
  }
  .pt-sm-0,
  .py-sm-0 {
    padding-top: 0 !important;
  }
  .pr-sm-0,
  .px-sm-0 {
    padding-right: 0 !important;
  }
  .pb-sm-0,
  .py-sm-0 {
    padding-bottom: 0 !important;
  }
  .pl-sm-0,
  .px-sm-0 {
    padding-left: 0 !important;
  }
  .p-sm-1 {
    padding: 0.25rem !important;
  }
  .pt-sm-1,
  .py-sm-1 {
    padding-top: 0.25rem !important;
  }
  .pr-sm-1,
  .px-sm-1 {
    padding-right: 0.25rem !important;
  }
  .pb-sm-1,
  .py-sm-1 {
    padding-bottom: 0.25rem !important;
  }
  .pl-sm-1,
  .px-sm-1 {
    padding-left: 0.25rem !important;
  }
  .p-sm-2 {
    padding: 0.5rem !important;
  }
  .pt-sm-2,
  .py-sm-2 {
    padding-top: 0.5rem !important;
  }
  .pr-sm-2,
  .px-sm-2 {
    padding-right: 0.5rem !important;
  }
  .pb-sm-2,
  .py-sm-2 {
    padding-bottom: 0.5rem !important;
  }
  .pl-sm-2,
  .px-sm-2 {
    padding-left: 0.5rem !important;
  }
  .p-sm-3 {
    padding: 1rem !important;
  }
  .pt-sm-3,
  .py-sm-3 {
    padding-top: 1rem !important;
  }
  .pr-sm-3,
  .px-sm-3 {
    padding-right: 1rem !important;
  }
  .pb-sm-3,
  .py-sm-3 {
    padding-bottom: 1rem !important;
  }
  .pl-sm-3,
  .px-sm-3 {
    padding-left: 1rem !important;
  }
  .p-sm-4 {
    padding: 1.5rem !important;
  }
  .pt-sm-4,
  .py-sm-4 {
    padding-top: 1.5rem !important;
  }
  .pr-sm-4,
  .px-sm-4 {
    padding-right: 1.5rem !important;
  }
  .pb-sm-4,
  .py-sm-4 {
    padding-bottom: 1.5rem !important;
  }
  .pl-sm-4,
  .px-sm-4 {
    padding-left: 1.5rem !important;
  }
  .p-sm-5 {
    padding: 3rem !important;
  }
  .pt-sm-5,
  .py-sm-5 {
    padding-top: 3rem !important;
  }
  .pr-sm-5,
  .px-sm-5 {
    padding-right: 3rem !important;
  }
  .pb-sm-5,
  .py-sm-5 {
    padding-bottom: 3rem !important;
  }
  .pl-sm-5,
  .px-sm-5 {
    padding-left: 3rem !important;
  }
  .p-sm-6 {
    padding: 4rem !important;
  }
  .pt-sm-6,
  .py-sm-6 {
    padding-top: 4rem !important;
  }
  .pr-sm-6,
  .px-sm-6 {
    padding-right: 4rem !important;
  }
  .pb-sm-6,
  .py-sm-6 {
    padding-bottom: 4rem !important;
  }
  .pl-sm-6,
  .px-sm-6 {
    padding-left: 4rem !important;
  }
  .p-sm-7 {
    padding: 5rem !important;
  }
  .pt-sm-7,
  .py-sm-7 {
    padding-top: 5rem !important;
  }
  .pr-sm-7,
  .px-sm-7 {
    padding-right: 5rem !important;
  }
  .pb-sm-7,
  .py-sm-7 {
    padding-bottom: 5rem !important;
  }
  .pl-sm-7,
  .px-sm-7 {
    padding-left: 5rem !important;
  }
  .p-sm-8 {
    padding: 6rem !important;
  }
  .pt-sm-8,
  .py-sm-8 {
    padding-top: 6rem !important;
  }
  .pr-sm-8,
  .px-sm-8 {
    padding-right: 6rem !important;
  }
  .pb-sm-8,
  .py-sm-8 {
    padding-bottom: 6rem !important;
  }
  .pl-sm-8,
  .px-sm-8 {
    padding-left: 6rem !important;
  }
  .m-sm-n1 {
    margin: -0.25rem !important;
  }
  .mt-sm-n1,
  .my-sm-n1 {
    margin-top: -0.25rem !important;
  }
  .mr-sm-n1,
  .mx-sm-n1 {
    margin-right: -0.25rem !important;
  }
  .mb-sm-n1,
  .my-sm-n1 {
    margin-bottom: -0.25rem !important;
  }
  .ml-sm-n1,
  .mx-sm-n1 {
    margin-left: -0.25rem !important;
  }
  .m-sm-n2 {
    margin: -0.5rem !important;
  }
  .mt-sm-n2,
  .my-sm-n2 {
    margin-top: -0.5rem !important;
  }
  .mr-sm-n2,
  .mx-sm-n2 {
    margin-right: -0.5rem !important;
  }
  .mb-sm-n2,
  .my-sm-n2 {
    margin-bottom: -0.5rem !important;
  }
  .ml-sm-n2,
  .mx-sm-n2 {
    margin-left: -0.5rem !important;
  }
  .m-sm-n3 {
    margin: -1rem !important;
  }
  .mt-sm-n3,
  .my-sm-n3 {
    margin-top: -1rem !important;
  }
  .mr-sm-n3,
  .mx-sm-n3 {
    margin-right: -1rem !important;
  }
  .mb-sm-n3,
  .my-sm-n3 {
    margin-bottom: -1rem !important;
  }
  .ml-sm-n3,
  .mx-sm-n3 {
    margin-left: -1rem !important;
  }
  .m-sm-n4 {
    margin: -1.5rem !important;
  }
  .mt-sm-n4,
  .my-sm-n4 {
    margin-top: -1.5rem !important;
  }
  .mr-sm-n4,
  .mx-sm-n4 {
    margin-right: -1.5rem !important;
  }
  .mb-sm-n4,
  .my-sm-n4 {
    margin-bottom: -1.5rem !important;
  }
  .ml-sm-n4,
  .mx-sm-n4 {
    margin-left: -1.5rem !important;
  }
  .m-sm-n5 {
    margin: -3rem !important;
  }
  .mt-sm-n5,
  .my-sm-n5 {
    margin-top: -3rem !important;
  }
  .mr-sm-n5,
  .mx-sm-n5 {
    margin-right: -3rem !important;
  }
  .mb-sm-n5,
  .my-sm-n5 {
    margin-bottom: -3rem !important;
  }
  .ml-sm-n5,
  .mx-sm-n5 {
    margin-left: -3rem !important;
  }
  .m-sm-n6 {
    margin: -4rem !important;
  }
  .mt-sm-n6,
  .my-sm-n6 {
    margin-top: -4rem !important;
  }
  .mr-sm-n6,
  .mx-sm-n6 {
    margin-right: -4rem !important;
  }
  .mb-sm-n6,
  .my-sm-n6 {
    margin-bottom: -4rem !important;
  }
  .ml-sm-n6,
  .mx-sm-n6 {
    margin-left: -4rem !important;
  }
  .m-sm-n7 {
    margin: -5rem !important;
  }
  .mt-sm-n7,
  .my-sm-n7 {
    margin-top: -5rem !important;
  }
  .mr-sm-n7,
  .mx-sm-n7 {
    margin-right: -5rem !important;
  }
  .mb-sm-n7,
  .my-sm-n7 {
    margin-bottom: -5rem !important;
  }
  .ml-sm-n7,
  .mx-sm-n7 {
    margin-left: -5rem !important;
  }
  .m-sm-n8 {
    margin: -6rem !important;
  }
  .mt-sm-n8,
  .my-sm-n8 {
    margin-top: -6rem !important;
  }
  .mr-sm-n8,
  .mx-sm-n8 {
    margin-right: -6rem !important;
  }
  .mb-sm-n8,
  .my-sm-n8 {
    margin-bottom: -6rem !important;
  }
  .ml-sm-n8,
  .mx-sm-n8 {
    margin-left: -6rem !important;
  }
  .m-sm-auto {
    margin: auto !important;
  }
  .mt-sm-auto,
  .my-sm-auto {
    margin-top: auto !important;
  }
  .mr-sm-auto,
  .mx-sm-auto {
    margin-right: auto !important;
  }
  .mb-sm-auto,
  .my-sm-auto {
    margin-bottom: auto !important;
  }
  .ml-sm-auto,
  .mx-sm-auto {
    margin-left: auto !important;
  }
}
@media (min-width: 768px) {
  .m-md-0 {
    margin: 0 !important;
  }
  .mt-md-0,
  .my-md-0 {
    margin-top: 0 !important;
  }
  .mr-md-0,
  .mx-md-0 {
    margin-right: 0 !important;
  }
  .mb-md-0,
  .my-md-0 {
    margin-bottom: 0 !important;
  }
  .ml-md-0,
  .mx-md-0 {
    margin-left: 0 !important;
  }
  .m-md-1 {
    margin: 0.25rem !important;
  }
  .mt-md-1,
  .my-md-1 {
    margin-top: 0.25rem !important;
  }
  .mr-md-1,
  .mx-md-1 {
    margin-right: 0.25rem !important;
  }
  .mb-md-1,
  .my-md-1 {
    margin-bottom: 0.25rem !important;
  }
  .ml-md-1,
  .mx-md-1 {
    margin-left: 0.25rem !important;
  }
  .m-md-2 {
    margin: 0.5rem !important;
  }
  .mt-md-2,
  .my-md-2 {
    margin-top: 0.5rem !important;
  }
  .mr-md-2,
  .mx-md-2 {
    margin-right: 0.5rem !important;
  }
  .mb-md-2,
  .my-md-2 {
    margin-bottom: 0.5rem !important;
  }
  .ml-md-2,
  .mx-md-2 {
    margin-left: 0.5rem !important;
  }
  .m-md-3 {
    margin: 1rem !important;
  }
  .mt-md-3,
  .my-md-3 {
    margin-top: 1rem !important;
  }
  .mr-md-3,
  .mx-md-3 {
    margin-right: 1rem !important;
  }
  .mb-md-3,
  .my-md-3 {
    margin-bottom: 1rem !important;
  }
  .ml-md-3,
  .mx-md-3 {
    margin-left: 1rem !important;
  }
  .m-md-4 {
    margin: 1.5rem !important;
  }
  .mt-md-4,
  .my-md-4 {
    margin-top: 1.5rem !important;
  }
  .mr-md-4,
  .mx-md-4 {
    margin-right: 1.5rem !important;
  }
  .mb-md-4,
  .my-md-4 {
    margin-bottom: 1.5rem !important;
  }
  .ml-md-4,
  .mx-md-4 {
    margin-left: 1.5rem !important;
  }
  .m-md-5 {
    margin: 3rem !important;
  }
  .mt-md-5,
  .my-md-5 {
    margin-top: 3rem !important;
  }
  .mr-md-5,
  .mx-md-5 {
    margin-right: 3rem !important;
  }
  .mb-md-5,
  .my-md-5 {
    margin-bottom: 3rem !important;
  }
  .ml-md-5,
  .mx-md-5 {
    margin-left: 3rem !important;
  }
  .m-md-6 {
    margin: 4rem !important;
  }
  .mt-md-6,
  .my-md-6 {
    margin-top: 4rem !important;
  }
  .mr-md-6,
  .mx-md-6 {
    margin-right: 4rem !important;
  }
  .mb-md-6,
  .my-md-6 {
    margin-bottom: 4rem !important;
  }
  .ml-md-6,
  .mx-md-6 {
    margin-left: 4rem !important;
  }
  .m-md-7 {
    margin: 5rem !important;
  }
  .mt-md-7,
  .my-md-7 {
    margin-top: 5rem !important;
  }
  .mr-md-7,
  .mx-md-7 {
    margin-right: 5rem !important;
  }
  .mb-md-7,
  .my-md-7 {
    margin-bottom: 5rem !important;
  }
  .ml-md-7,
  .mx-md-7 {
    margin-left: 5rem !important;
  }
  .m-md-8 {
    margin: 6rem !important;
  }
  .mt-md-8,
  .my-md-8 {
    margin-top: 6rem !important;
  }
  .mr-md-8,
  .mx-md-8 {
    margin-right: 6rem !important;
  }
  .mb-md-8,
  .my-md-8 {
    margin-bottom: 6rem !important;
  }
  .ml-md-8,
  .mx-md-8 {
    margin-left: 6rem !important;
  }
  .p-md-0 {
    padding: 0 !important;
  }
  .pt-md-0,
  .py-md-0 {
    padding-top: 0 !important;
  }
  .pr-md-0,
  .px-md-0 {
    padding-right: 0 !important;
  }
  .pb-md-0,
  .py-md-0 {
    padding-bottom: 0 !important;
  }
  .pl-md-0,
  .px-md-0 {
    padding-left: 0 !important;
  }
  .p-md-1 {
    padding: 0.25rem !important;
  }
  .pt-md-1,
  .py-md-1 {
    padding-top: 0.25rem !important;
  }
  .pr-md-1,
  .px-md-1 {
    padding-right: 0.25rem !important;
  }
  .pb-md-1,
  .py-md-1 {
    padding-bottom: 0.25rem !important;
  }
  .pl-md-1,
  .px-md-1 {
    padding-left: 0.25rem !important;
  }
  .p-md-2 {
    padding: 0.5rem !important;
  }
  .pt-md-2,
  .py-md-2 {
    padding-top: 0.5rem !important;
  }
  .pr-md-2,
  .px-md-2 {
    padding-right: 0.5rem !important;
  }
  .pb-md-2,
  .py-md-2 {
    padding-bottom: 0.5rem !important;
  }
  .pl-md-2,
  .px-md-2 {
    padding-left: 0.5rem !important;
  }
  .p-md-3 {
    padding: 1rem !important;
  }
  .pt-md-3,
  .py-md-3 {
    padding-top: 1rem !important;
  }
  .pr-md-3,
  .px-md-3 {
    padding-right: 1rem !important;
  }
  .pb-md-3,
  .py-md-3 {
    padding-bottom: 1rem !important;
  }
  .pl-md-3,
  .px-md-3 {
    padding-left: 1rem !important;
  }
  .p-md-4 {
    padding: 1.5rem !important;
  }
  .pt-md-4,
  .py-md-4 {
    padding-top: 1.5rem !important;
  }
  .pr-md-4,
  .px-md-4 {
    padding-right: 1.5rem !important;
  }
  .pb-md-4,
  .py-md-4 {
    padding-bottom: 1.5rem !important;
  }
  .pl-md-4,
  .px-md-4 {
    padding-left: 1.5rem !important;
  }
  .p-md-5 {
    padding: 3rem !important;
  }
  .pt-md-5,
  .py-md-5 {
    padding-top: 3rem !important;
  }
  .pr-md-5,
  .px-md-5 {
    padding-right: 3rem !important;
  }
  .pb-md-5,
  .py-md-5 {
    padding-bottom: 3rem !important;
  }
  .pl-md-5,
  .px-md-5 {
    padding-left: 3rem !important;
  }
  .p-md-6 {
    padding: 4rem !important;
  }
  .pt-md-6,
  .py-md-6 {
    padding-top: 4rem !important;
  }
  .pr-md-6,
  .px-md-6 {
    padding-right: 4rem !important;
  }
  .pb-md-6,
  .py-md-6 {
    padding-bottom: 4rem !important;
  }
  .pl-md-6,
  .px-md-6 {
    padding-left: 4rem !important;
  }
  .p-md-7 {
    padding: 5rem !important;
  }
  .pt-md-7,
  .py-md-7 {
    padding-top: 5rem !important;
  }
  .pr-md-7,
  .px-md-7 {
    padding-right: 5rem !important;
  }
  .pb-md-7,
  .py-md-7 {
    padding-bottom: 5rem !important;
  }
  .pl-md-7,
  .px-md-7 {
    padding-left: 5rem !important;
  }
  .p-md-8 {
    padding: 6rem !important;
  }
  .pt-md-8,
  .py-md-8 {
    padding-top: 6rem !important;
  }
  .pr-md-8,
  .px-md-8 {
    padding-right: 6rem !important;
  }
  .pb-md-8,
  .py-md-8 {
    padding-bottom: 6rem !important;
  }
  .pl-md-8,
  .px-md-8 {
    padding-left: 6rem !important;
  }
  .m-md-n1 {
    margin: -0.25rem !important;
  }
  .mt-md-n1,
  .my-md-n1 {
    margin-top: -0.25rem !important;
  }
  .mr-md-n1,
  .mx-md-n1 {
    margin-right: -0.25rem !important;
  }
  .mb-md-n1,
  .my-md-n1 {
    margin-bottom: -0.25rem !important;
  }
  .ml-md-n1,
  .mx-md-n1 {
    margin-left: -0.25rem !important;
  }
  .m-md-n2 {
    margin: -0.5rem !important;
  }
  .mt-md-n2,
  .my-md-n2 {
    margin-top: -0.5rem !important;
  }
  .mr-md-n2,
  .mx-md-n2 {
    margin-right: -0.5rem !important;
  }
  .mb-md-n2,
  .my-md-n2 {
    margin-bottom: -0.5rem !important;
  }
  .ml-md-n2,
  .mx-md-n2 {
    margin-left: -0.5rem !important;
  }
  .m-md-n3 {
    margin: -1rem !important;
  }
  .mt-md-n3,
  .my-md-n3 {
    margin-top: -1rem !important;
  }
  .mr-md-n3,
  .mx-md-n3 {
    margin-right: -1rem !important;
  }
  .mb-md-n3,
  .my-md-n3 {
    margin-bottom: -1rem !important;
  }
  .ml-md-n3,
  .mx-md-n3 {
    margin-left: -1rem !important;
  }
  .m-md-n4 {
    margin: -1.5rem !important;
  }
  .mt-md-n4,
  .my-md-n4 {
    margin-top: -1.5rem !important;
  }
  .mr-md-n4,
  .mx-md-n4 {
    margin-right: -1.5rem !important;
  }
  .mb-md-n4,
  .my-md-n4 {
    margin-bottom: -1.5rem !important;
  }
  .ml-md-n4,
  .mx-md-n4 {
    margin-left: -1.5rem !important;
  }
  .m-md-n5 {
    margin: -3rem !important;
  }
  .mt-md-n5,
  .my-md-n5 {
    margin-top: -3rem !important;
  }
  .mr-md-n5,
  .mx-md-n5 {
    margin-right: -3rem !important;
  }
  .mb-md-n5,
  .my-md-n5 {
    margin-bottom: -3rem !important;
  }
  .ml-md-n5,
  .mx-md-n5 {
    margin-left: -3rem !important;
  }
  .m-md-n6 {
    margin: -4rem !important;
  }
  .mt-md-n6,
  .my-md-n6 {
    margin-top: -4rem !important;
  }
  .mr-md-n6,
  .mx-md-n6 {
    margin-right: -4rem !important;
  }
  .mb-md-n6,
  .my-md-n6 {
    margin-bottom: -4rem !important;
  }
  .ml-md-n6,
  .mx-md-n6 {
    margin-left: -4rem !important;
  }
  .m-md-n7 {
    margin: -5rem !important;
  }
  .mt-md-n7,
  .my-md-n7 {
    margin-top: -5rem !important;
  }
  .mr-md-n7,
  .mx-md-n7 {
    margin-right: -5rem !important;
  }
  .mb-md-n7,
  .my-md-n7 {
    margin-bottom: -5rem !important;
  }
  .ml-md-n7,
  .mx-md-n7 {
    margin-left: -5rem !important;
  }
  .m-md-n8 {
    margin: -6rem !important;
  }
  .mt-md-n8,
  .my-md-n8 {
    margin-top: -6rem !important;
  }
  .mr-md-n8,
  .mx-md-n8 {
    margin-right: -6rem !important;
  }
  .mb-md-n8,
  .my-md-n8 {
    margin-bottom: -6rem !important;
  }
  .ml-md-n8,
  .mx-md-n8 {
    margin-left: -6rem !important;
  }
  .m-md-auto {
    margin: auto !important;
  }
  .mt-md-auto,
  .my-md-auto {
    margin-top: auto !important;
  }
  .mr-md-auto,
  .mx-md-auto {
    margin-right: auto !important;
  }
  .mb-md-auto,
  .my-md-auto {
    margin-bottom: auto !important;
  }
  .ml-md-auto,
  .mx-md-auto {
    margin-left: auto !important;
  }
}
@media (min-width: 1024px) {
  .m-lg-0 {
    margin: 0 !important;
  }
  .mt-lg-0,
  .my-lg-0 {
    margin-top: 0 !important;
  }
  .mr-lg-0,
  .mx-lg-0 {
    margin-right: 0 !important;
  }
  .mb-lg-0,
  .my-lg-0 {
    margin-bottom: 0 !important;
  }
  .ml-lg-0,
  .mx-lg-0 {
    margin-left: 0 !important;
  }
  .m-lg-1 {
    margin: 0.25rem !important;
  }
  .mt-lg-1,
  .my-lg-1 {
    margin-top: 0.25rem !important;
  }
  .mr-lg-1,
  .mx-lg-1 {
    margin-right: 0.25rem !important;
  }
  .mb-lg-1,
  .my-lg-1 {
    margin-bottom: 0.25rem !important;
  }
  .ml-lg-1,
  .mx-lg-1 {
    margin-left: 0.25rem !important;
  }
  .m-lg-2 {
    margin: 0.5rem !important;
  }
  .mt-lg-2,
  .my-lg-2 {
    margin-top: 0.5rem !important;
  }
  .mr-lg-2,
  .mx-lg-2 {
    margin-right: 0.5rem !important;
  }
  .mb-lg-2,
  .my-lg-2 {
    margin-bottom: 0.5rem !important;
  }
  .ml-lg-2,
  .mx-lg-2 {
    margin-left: 0.5rem !important;
  }
  .m-lg-3 {
    margin: 1rem !important;
  }
  .mt-lg-3,
  .my-lg-3 {
    margin-top: 1rem !important;
  }
  .mr-lg-3,
  .mx-lg-3 {
    margin-right: 1rem !important;
  }
  .mb-lg-3,
  .my-lg-3 {
    margin-bottom: 1rem !important;
  }
  .ml-lg-3,
  .mx-lg-3 {
    margin-left: 1rem !important;
  }
  .m-lg-4 {
    margin: 1.5rem !important;
  }
  .mt-lg-4,
  .my-lg-4 {
    margin-top: 1.5rem !important;
  }
  .mr-lg-4,
  .mx-lg-4 {
    margin-right: 1.5rem !important;
  }
  .mb-lg-4,
  .my-lg-4 {
    margin-bottom: 1.5rem !important;
  }
  .ml-lg-4,
  .mx-lg-4 {
    margin-left: 1.5rem !important;
  }
  .m-lg-5 {
    margin: 3rem !important;
  }
  .mt-lg-5,
  .my-lg-5 {
    margin-top: 3rem !important;
  }
  .mr-lg-5,
  .mx-lg-5 {
    margin-right: 3rem !important;
  }
  .mb-lg-5,
  .my-lg-5 {
    margin-bottom: 3rem !important;
  }
  .ml-lg-5,
  .mx-lg-5 {
    margin-left: 3rem !important;
  }
  .m-lg-6 {
    margin: 4rem !important;
  }
  .mt-lg-6,
  .my-lg-6 {
    margin-top: 4rem !important;
  }
  .mr-lg-6,
  .mx-lg-6 {
    margin-right: 4rem !important;
  }
  .mb-lg-6,
  .my-lg-6 {
    margin-bottom: 4rem !important;
  }
  .ml-lg-6,
  .mx-lg-6 {
    margin-left: 4rem !important;
  }
  .m-lg-7 {
    margin: 5rem !important;
  }
  .mt-lg-7,
  .my-lg-7 {
    margin-top: 5rem !important;
  }
  .mr-lg-7,
  .mx-lg-7 {
    margin-right: 5rem !important;
  }
  .mb-lg-7,
  .my-lg-7 {
    margin-bottom: 5rem !important;
  }
  .ml-lg-7,
  .mx-lg-7 {
    margin-left: 5rem !important;
  }
  .m-lg-8 {
    margin: 6rem !important;
  }
  .mt-lg-8,
  .my-lg-8 {
    margin-top: 6rem !important;
  }
  .mr-lg-8,
  .mx-lg-8 {
    margin-right: 6rem !important;
  }
  .mb-lg-8,
  .my-lg-8 {
    margin-bottom: 6rem !important;
  }
  .ml-lg-8,
  .mx-lg-8 {
    margin-left: 6rem !important;
  }
  .p-lg-0 {
    padding: 0 !important;
  }
  .pt-lg-0,
  .py-lg-0 {
    padding-top: 0 !important;
  }
  .pr-lg-0,
  .px-lg-0 {
    padding-right: 0 !important;
  }
  .pb-lg-0,
  .py-lg-0 {
    padding-bottom: 0 !important;
  }
  .pl-lg-0,
  .px-lg-0 {
    padding-left: 0 !important;
  }
  .p-lg-1 {
    padding: 0.25rem !important;
  }
  .pt-lg-1,
  .py-lg-1 {
    padding-top: 0.25rem !important;
  }
  .pr-lg-1,
  .px-lg-1 {
    padding-right: 0.25rem !important;
  }
  .pb-lg-1,
  .py-lg-1 {
    padding-bottom: 0.25rem !important;
  }
  .pl-lg-1,
  .px-lg-1 {
    padding-left: 0.25rem !important;
  }
  .p-lg-2 {
    padding: 0.5rem !important;
  }
  .pt-lg-2,
  .py-lg-2 {
    padding-top: 0.5rem !important;
  }
  .pr-lg-2,
  .px-lg-2 {
    padding-right: 0.5rem !important;
  }
  .pb-lg-2,
  .py-lg-2 {
    padding-bottom: 0.5rem !important;
  }
  .pl-lg-2,
  .px-lg-2 {
    padding-left: 0.5rem !important;
  }
  .p-lg-3 {
    padding: 1rem !important;
  }
  .pt-lg-3,
  .py-lg-3 {
    padding-top: 1rem !important;
  }
  .pr-lg-3,
  .px-lg-3 {
    padding-right: 1rem !important;
  }
  .pb-lg-3,
  .py-lg-3 {
    padding-bottom: 1rem !important;
  }
  .pl-lg-3,
  .px-lg-3 {
    padding-left: 1rem !important;
  }
  .p-lg-4 {
    padding: 1.5rem !important;
  }
  .pt-lg-4,
  .py-lg-4 {
    padding-top: 1.5rem !important;
  }
  .pr-lg-4,
  .px-lg-4 {
    padding-right: 1.5rem !important;
  }
  .pb-lg-4,
  .py-lg-4 {
    padding-bottom: 1.5rem !important;
  }
  .pl-lg-4,
  .px-lg-4 {
    padding-left: 1.5rem !important;
  }
  .p-lg-5 {
    padding: 3rem !important;
  }
  .pt-lg-5,
  .py-lg-5 {
    padding-top: 3rem !important;
  }
  .pr-lg-5,
  .px-lg-5 {
    padding-right: 3rem !important;
  }
  .pb-lg-5,
  .py-lg-5 {
    padding-bottom: 3rem !important;
  }
  .pl-lg-5,
  .px-lg-5 {
    padding-left: 3rem !important;
  }
  .p-lg-6 {
    padding: 4rem !important;
  }
  .pt-lg-6,
  .py-lg-6 {
    padding-top: 4rem !important;
  }
  .pr-lg-6,
  .px-lg-6 {
    padding-right: 4rem !important;
  }
  .pb-lg-6,
  .py-lg-6 {
    padding-bottom: 4rem !important;
  }
  .pl-lg-6,
  .px-lg-6 {
    padding-left: 4rem !important;
  }
  .p-lg-7 {
    padding: 5rem !important;
  }
  .pt-lg-7,
  .py-lg-7 {
    padding-top: 5rem !important;
  }
  .pr-lg-7,
  .px-lg-7 {
    padding-right: 5rem !important;
  }
  .pb-lg-7,
  .py-lg-7 {
    padding-bottom: 5rem !important;
  }
  .pl-lg-7,
  .px-lg-7 {
    padding-left: 5rem !important;
  }
  .p-lg-8 {
    padding: 6rem !important;
  }
  .pt-lg-8,
  .py-lg-8 {
    padding-top: 6rem !important;
  }
  .pr-lg-8,
  .px-lg-8 {
    padding-right: 6rem !important;
  }
  .pb-lg-8,
  .py-lg-8 {
    padding-bottom: 6rem !important;
  }
  .pl-lg-8,
  .px-lg-8 {
    padding-left: 6rem !important;
  }
  .m-lg-n1 {
    margin: -0.25rem !important;
  }
  .mt-lg-n1,
  .my-lg-n1 {
    margin-top: -0.25rem !important;
  }
  .mr-lg-n1,
  .mx-lg-n1 {
    margin-right: -0.25rem !important;
  }
  .mb-lg-n1,
  .my-lg-n1 {
    margin-bottom: -0.25rem !important;
  }
  .ml-lg-n1,
  .mx-lg-n1 {
    margin-left: -0.25rem !important;
  }
  .m-lg-n2 {
    margin: -0.5rem !important;
  }
  .mt-lg-n2,
  .my-lg-n2 {
    margin-top: -0.5rem !important;
  }
  .mr-lg-n2,
  .mx-lg-n2 {
    margin-right: -0.5rem !important;
  }
  .mb-lg-n2,
  .my-lg-n2 {
    margin-bottom: -0.5rem !important;
  }
  .ml-lg-n2,
  .mx-lg-n2 {
    margin-left: -0.5rem !important;
  }
  .m-lg-n3 {
    margin: -1rem !important;
  }
  .mt-lg-n3,
  .my-lg-n3 {
    margin-top: -1rem !important;
  }
  .mr-lg-n3,
  .mx-lg-n3 {
    margin-right: -1rem !important;
  }
  .mb-lg-n3,
  .my-lg-n3 {
    margin-bottom: -1rem !important;
  }
  .ml-lg-n3,
  .mx-lg-n3 {
    margin-left: -1rem !important;
  }
  .m-lg-n4 {
    margin: -1.5rem !important;
  }
  .mt-lg-n4,
  .my-lg-n4 {
    margin-top: -1.5rem !important;
  }
  .mr-lg-n4,
  .mx-lg-n4 {
    margin-right: -1.5rem !important;
  }
  .mb-lg-n4,
  .my-lg-n4 {
    margin-bottom: -1.5rem !important;
  }
  .ml-lg-n4,
  .mx-lg-n4 {
    margin-left: -1.5rem !important;
  }
  .m-lg-n5 {
    margin: -3rem !important;
  }
  .mt-lg-n5,
  .my-lg-n5 {
    margin-top: -3rem !important;
  }
  .mr-lg-n5,
  .mx-lg-n5 {
    margin-right: -3rem !important;
  }
  .mb-lg-n5,
  .my-lg-n5 {
    margin-bottom: -3rem !important;
  }
  .ml-lg-n5,
  .mx-lg-n5 {
    margin-left: -3rem !important;
  }
  .m-lg-n6 {
    margin: -4rem !important;
  }
  .mt-lg-n6,
  .my-lg-n6 {
    margin-top: -4rem !important;
  }
  .mr-lg-n6,
  .mx-lg-n6 {
    margin-right: -4rem !important;
  }
  .mb-lg-n6,
  .my-lg-n6 {
    margin-bottom: -4rem !important;
  }
  .ml-lg-n6,
  .mx-lg-n6 {
    margin-left: -4rem !important;
  }
  .m-lg-n7 {
    margin: -5rem !important;
  }
  .mt-lg-n7,
  .my-lg-n7 {
    margin-top: -5rem !important;
  }
  .mr-lg-n7,
  .mx-lg-n7 {
    margin-right: -5rem !important;
  }
  .mb-lg-n7,
  .my-lg-n7 {
    margin-bottom: -5rem !important;
  }
  .ml-lg-n7,
  .mx-lg-n7 {
    margin-left: -5rem !important;
  }
  .m-lg-n8 {
    margin: -6rem !important;
  }
  .mt-lg-n8,
  .my-lg-n8 {
    margin-top: -6rem !important;
  }
  .mr-lg-n8,
  .mx-lg-n8 {
    margin-right: -6rem !important;
  }
  .mb-lg-n8,
  .my-lg-n8 {
    margin-bottom: -6rem !important;
  }
  .ml-lg-n8,
  .mx-lg-n8 {
    margin-left: -6rem !important;
  }
  .m-lg-auto {
    margin: auto !important;
  }
  .mt-lg-auto,
  .my-lg-auto {
    margin-top: auto !important;
  }
  .mr-lg-auto,
  .mx-lg-auto {
    margin-right: auto !important;
  }
  .mb-lg-auto,
  .my-lg-auto {
    margin-bottom: auto !important;
  }
  .ml-lg-auto,
  .mx-lg-auto {
    margin-left: auto !important;
  }
}
@media (min-width: 1500px) {
  .m-xl-0 {
    margin: 0 !important;
  }
  .mt-xl-0,
  .my-xl-0 {
    margin-top: 0 !important;
  }
  .mr-xl-0,
  .mx-xl-0 {
    margin-right: 0 !important;
  }
  .mb-xl-0,
  .my-xl-0 {
    margin-bottom: 0 !important;
  }
  .ml-xl-0,
  .mx-xl-0 {
    margin-left: 0 !important;
  }
  .m-xl-1 {
    margin: 0.25rem !important;
  }
  .mt-xl-1,
  .my-xl-1 {
    margin-top: 0.25rem !important;
  }
  .mr-xl-1,
  .mx-xl-1 {
    margin-right: 0.25rem !important;
  }
  .mb-xl-1,
  .my-xl-1 {
    margin-bottom: 0.25rem !important;
  }
  .ml-xl-1,
  .mx-xl-1 {
    margin-left: 0.25rem !important;
  }
  .m-xl-2 {
    margin: 0.5rem !important;
  }
  .mt-xl-2,
  .my-xl-2 {
    margin-top: 0.5rem !important;
  }
  .mr-xl-2,
  .mx-xl-2 {
    margin-right: 0.5rem !important;
  }
  .mb-xl-2,
  .my-xl-2 {
    margin-bottom: 0.5rem !important;
  }
  .ml-xl-2,
  .mx-xl-2 {
    margin-left: 0.5rem !important;
  }
  .m-xl-3 {
    margin: 1rem !important;
  }
  .mt-xl-3,
  .my-xl-3 {
    margin-top: 1rem !important;
  }
  .mr-xl-3,
  .mx-xl-3 {
    margin-right: 1rem !important;
  }
  .mb-xl-3,
  .my-xl-3 {
    margin-bottom: 1rem !important;
  }
  .ml-xl-3,
  .mx-xl-3 {
    margin-left: 1rem !important;
  }
  .m-xl-4 {
    margin: 1.5rem !important;
  }
  .mt-xl-4,
  .my-xl-4 {
    margin-top: 1.5rem !important;
  }
  .mr-xl-4,
  .mx-xl-4 {
    margin-right: 1.5rem !important;
  }
  .mb-xl-4,
  .my-xl-4 {
    margin-bottom: 1.5rem !important;
  }
  .ml-xl-4,
  .mx-xl-4 {
    margin-left: 1.5rem !important;
  }
  .m-xl-5 {
    margin: 3rem !important;
  }
  .mt-xl-5,
  .my-xl-5 {
    margin-top: 3rem !important;
  }
  .mr-xl-5,
  .mx-xl-5 {
    margin-right: 3rem !important;
  }
  .mb-xl-5,
  .my-xl-5 {
    margin-bottom: 3rem !important;
  }
  .ml-xl-5,
  .mx-xl-5 {
    margin-left: 3rem !important;
  }
  .m-xl-6 {
    margin: 4rem !important;
  }
  .mt-xl-6,
  .my-xl-6 {
    margin-top: 4rem !important;
  }
  .mr-xl-6,
  .mx-xl-6 {
    margin-right: 4rem !important;
  }
  .mb-xl-6,
  .my-xl-6 {
    margin-bottom: 4rem !important;
  }
  .ml-xl-6,
  .mx-xl-6 {
    margin-left: 4rem !important;
  }
  .m-xl-7 {
    margin: 5rem !important;
  }
  .mt-xl-7,
  .my-xl-7 {
    margin-top: 5rem !important;
  }
  .mr-xl-7,
  .mx-xl-7 {
    margin-right: 5rem !important;
  }
  .mb-xl-7,
  .my-xl-7 {
    margin-bottom: 5rem !important;
  }
  .ml-xl-7,
  .mx-xl-7 {
    margin-left: 5rem !important;
  }
  .m-xl-8 {
    margin: 6rem !important;
  }
  .mt-xl-8,
  .my-xl-8 {
    margin-top: 6rem !important;
  }
  .mr-xl-8,
  .mx-xl-8 {
    margin-right: 6rem !important;
  }
  .mb-xl-8,
  .my-xl-8 {
    margin-bottom: 6rem !important;
  }
  .ml-xl-8,
  .mx-xl-8 {
    margin-left: 6rem !important;
  }
  .p-xl-0 {
    padding: 0 !important;
  }
  .pt-xl-0,
  .py-xl-0 {
    padding-top: 0 !important;
  }
  .pr-xl-0,
  .px-xl-0 {
    padding-right: 0 !important;
  }
  .pb-xl-0,
  .py-xl-0 {
    padding-bottom: 0 !important;
  }
  .pl-xl-0,
  .px-xl-0 {
    padding-left: 0 !important;
  }
  .p-xl-1 {
    padding: 0.25rem !important;
  }
  .pt-xl-1,
  .py-xl-1 {
    padding-top: 0.25rem !important;
  }
  .pr-xl-1,
  .px-xl-1 {
    padding-right: 0.25rem !important;
  }
  .pb-xl-1,
  .py-xl-1 {
    padding-bottom: 0.25rem !important;
  }
  .pl-xl-1,
  .px-xl-1 {
    padding-left: 0.25rem !important;
  }
  .p-xl-2 {
    padding: 0.5rem !important;
  }
  .pt-xl-2,
  .py-xl-2 {
    padding-top: 0.5rem !important;
  }
  .pr-xl-2,
  .px-xl-2 {
    padding-right: 0.5rem !important;
  }
  .pb-xl-2,
  .py-xl-2 {
    padding-bottom: 0.5rem !important;
  }
  .pl-xl-2,
  .px-xl-2 {
    padding-left: 0.5rem !important;
  }
  .p-xl-3 {
    padding: 1rem !important;
  }
  .pt-xl-3,
  .py-xl-3 {
    padding-top: 1rem !important;
  }
  .pr-xl-3,
  .px-xl-3 {
    padding-right: 1rem !important;
  }
  .pb-xl-3,
  .py-xl-3 {
    padding-bottom: 1rem !important;
  }
  .pl-xl-3,
  .px-xl-3 {
    padding-left: 1rem !important;
  }
  .p-xl-4 {
    padding: 1.5rem !important;
  }
  .pt-xl-4,
  .py-xl-4 {
    padding-top: 1.5rem !important;
  }
  .pr-xl-4,
  .px-xl-4 {
    padding-right: 1.5rem !important;
  }
  .pb-xl-4,
  .py-xl-4 {
    padding-bottom: 1.5rem !important;
  }
  .pl-xl-4,
  .px-xl-4 {
    padding-left: 1.5rem !important;
  }
  .p-xl-5 {
    padding: 3rem !important;
  }
  .pt-xl-5,
  .py-xl-5 {
    padding-top: 3rem !important;
  }
  .pr-xl-5,
  .px-xl-5 {
    padding-right: 3rem !important;
  }
  .pb-xl-5,
  .py-xl-5 {
    padding-bottom: 3rem !important;
  }
  .pl-xl-5,
  .px-xl-5 {
    padding-left: 3rem !important;
  }
  .p-xl-6 {
    padding: 4rem !important;
  }
  .pt-xl-6,
  .py-xl-6 {
    padding-top: 4rem !important;
  }
  .pr-xl-6,
  .px-xl-6 {
    padding-right: 4rem !important;
  }
  .pb-xl-6,
  .py-xl-6 {
    padding-bottom: 4rem !important;
  }
  .pl-xl-6,
  .px-xl-6 {
    padding-left: 4rem !important;
  }
  .p-xl-7 {
    padding: 5rem !important;
  }
  .pt-xl-7,
  .py-xl-7 {
    padding-top: 5rem !important;
  }
  .pr-xl-7,
  .px-xl-7 {
    padding-right: 5rem !important;
  }
  .pb-xl-7,
  .py-xl-7 {
    padding-bottom: 5rem !important;
  }
  .pl-xl-7,
  .px-xl-7 {
    padding-left: 5rem !important;
  }
  .p-xl-8 {
    padding: 6rem !important;
  }
  .pt-xl-8,
  .py-xl-8 {
    padding-top: 6rem !important;
  }
  .pr-xl-8,
  .px-xl-8 {
    padding-right: 6rem !important;
  }
  .pb-xl-8,
  .py-xl-8 {
    padding-bottom: 6rem !important;
  }
  .pl-xl-8,
  .px-xl-8 {
    padding-left: 6rem !important;
  }
  .m-xl-n1 {
    margin: -0.25rem !important;
  }
  .mt-xl-n1,
  .my-xl-n1 {
    margin-top: -0.25rem !important;
  }
  .mr-xl-n1,
  .mx-xl-n1 {
    margin-right: -0.25rem !important;
  }
  .mb-xl-n1,
  .my-xl-n1 {
    margin-bottom: -0.25rem !important;
  }
  .ml-xl-n1,
  .mx-xl-n1 {
    margin-left: -0.25rem !important;
  }
  .m-xl-n2 {
    margin: -0.5rem !important;
  }
  .mt-xl-n2,
  .my-xl-n2 {
    margin-top: -0.5rem !important;
  }
  .mr-xl-n2,
  .mx-xl-n2 {
    margin-right: -0.5rem !important;
  }
  .mb-xl-n2,
  .my-xl-n2 {
    margin-bottom: -0.5rem !important;
  }
  .ml-xl-n2,
  .mx-xl-n2 {
    margin-left: -0.5rem !important;
  }
  .m-xl-n3 {
    margin: -1rem !important;
  }
  .mt-xl-n3,
  .my-xl-n3 {
    margin-top: -1rem !important;
  }
  .mr-xl-n3,
  .mx-xl-n3 {
    margin-right: -1rem !important;
  }
  .mb-xl-n3,
  .my-xl-n3 {
    margin-bottom: -1rem !important;
  }
  .ml-xl-n3,
  .mx-xl-n3 {
    margin-left: -1rem !important;
  }
  .m-xl-n4 {
    margin: -1.5rem !important;
  }
  .mt-xl-n4,
  .my-xl-n4 {
    margin-top: -1.5rem !important;
  }
  .mr-xl-n4,
  .mx-xl-n4 {
    margin-right: -1.5rem !important;
  }
  .mb-xl-n4,
  .my-xl-n4 {
    margin-bottom: -1.5rem !important;
  }
  .ml-xl-n4,
  .mx-xl-n4 {
    margin-left: -1.5rem !important;
  }
  .m-xl-n5 {
    margin: -3rem !important;
  }
  .mt-xl-n5,
  .my-xl-n5 {
    margin-top: -3rem !important;
  }
  .mr-xl-n5,
  .mx-xl-n5 {
    margin-right: -3rem !important;
  }
  .mb-xl-n5,
  .my-xl-n5 {
    margin-bottom: -3rem !important;
  }
  .ml-xl-n5,
  .mx-xl-n5 {
    margin-left: -3rem !important;
  }
  .m-xl-n6 {
    margin: -4rem !important;
  }
  .mt-xl-n6,
  .my-xl-n6 {
    margin-top: -4rem !important;
  }
  .mr-xl-n6,
  .mx-xl-n6 {
    margin-right: -4rem !important;
  }
  .mb-xl-n6,
  .my-xl-n6 {
    margin-bottom: -4rem !important;
  }
  .ml-xl-n6,
  .mx-xl-n6 {
    margin-left: -4rem !important;
  }
  .m-xl-n7 {
    margin: -5rem !important;
  }
  .mt-xl-n7,
  .my-xl-n7 {
    margin-top: -5rem !important;
  }
  .mr-xl-n7,
  .mx-xl-n7 {
    margin-right: -5rem !important;
  }
  .mb-xl-n7,
  .my-xl-n7 {
    margin-bottom: -5rem !important;
  }
  .ml-xl-n7,
  .mx-xl-n7 {
    margin-left: -5rem !important;
  }
  .m-xl-n8 {
    margin: -6rem !important;
  }
  .mt-xl-n8,
  .my-xl-n8 {
    margin-top: -6rem !important;
  }
  .mr-xl-n8,
  .mx-xl-n8 {
    margin-right: -6rem !important;
  }
  .mb-xl-n8,
  .my-xl-n8 {
    margin-bottom: -6rem !important;
  }
  .ml-xl-n8,
  .mx-xl-n8 {
    margin-left: -6rem !important;
  }
  .m-xl-auto {
    margin: auto !important;
  }
  .mt-xl-auto,
  .my-xl-auto {
    margin-top: auto !important;
  }
  .mr-xl-auto,
  .mx-xl-auto {
    margin-right: auto !important;
  }
  .mb-xl-auto,
  .my-xl-auto {
    margin-bottom: auto !important;
  }
  .ml-xl-auto,
  .mx-xl-auto {
    margin-left: auto !important;
  }
}
.stretched-link::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  pointer-events: auto;
  content: "";
  background-color: rgba(0, 0, 0, 0);
}

.text-monospace {
  font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace !important;
}

.text-justify {
  text-align: justify !important;
}

.text-wrap {
  white-space: normal !important;
}

.text-nowrap {
  white-space: nowrap !important;
}

.text-truncate {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.text-left {
  text-align: left !important;
}

.text-right {
  text-align: right !important;
}

.text-center {
  text-align: center !important;
}

@media (min-width: 640px) {
  .text-sm-left {
    text-align: left !important;
  }
  .text-sm-right {
    text-align: right !important;
  }
  .text-sm-center {
    text-align: center !important;
  }
}
@media (min-width: 768px) {
  .text-md-left {
    text-align: left !important;
  }
  .text-md-right {
    text-align: right !important;
  }
  .text-md-center {
    text-align: center !important;
  }
}
@media (min-width: 1024px) {
  .text-lg-left {
    text-align: left !important;
  }
  .text-lg-right {
    text-align: right !important;
  }
  .text-lg-center {
    text-align: center !important;
  }
}
@media (min-width: 1500px) {
  .text-xl-left {
    text-align: left !important;
  }
  .text-xl-right {
    text-align: right !important;
  }
  .text-xl-center {
    text-align: center !important;
  }
}
.text-lowercase {
  text-transform: lowercase !important;
}

.text-uppercase {
  text-transform: uppercase !important;
}

.text-capitalize {
  text-transform: capitalize !important;
}

.font-weight-light {
  font-weight: 300 !important;
}

.font-weight-lighter {
  font-weight: lighter !important;
}

.font-weight-normal {
  font-weight: 400 !important;
}

.font-weight-bold {
  font-weight: 700 !important;
}

.font-weight-bolder {
  font-weight: bolder !important;
}

.font-italic {
  font-style: italic !important;
}

.text-white {
  color: #fff !important;
}

.text-primary {
  color: #007bff !important;
}

a.text-primary:hover, a.text-primary:focus {
  color: rgb(0, 86.1, 178.5) !important;
}

.text-secondary {
  color: #6c757d !important;
}

a.text-secondary:hover, a.text-secondary:focus {
  color: rgb(72.5407725322, 78.5858369099, 83.9592274678) !important;
}

.text-success {
  color: #28a745 !important;
}

a.text-success:hover, a.text-success:focus {
  color: rgb(25.2173913043, 105.2826086957, 43.5) !important;
}

.text-info {
  color: #17a2b8 !important;
}

a.text-info:hover, a.text-info:focus {
  color: rgb(14.5, 102.1304347826, 116) !important;
}

.text-warning {
  color: #ffc107 !important;
}

a.text-warning:hover, a.text-warning:focus {
  color: rgb(185.5, 139.125, 0) !important;
}

.text-danger {
  color: #dc3545 !important;
}

a.text-danger:hover, a.text-danger:focus {
  color: rgb(167.4810126582, 29.0189873418, 42.2848101266) !important;
}

.text-light {
  color: #f8f9fa !important;
}

a.text-light:hover, a.text-light:focus {
  color: rgb(203.375, 210.75, 218.125) !important;
}

.text-dark {
  color: #343a40 !important;
}

a.text-dark:hover, a.text-dark:focus {
  color: rgb(17.7068965517, 19.75, 21.7931034483) !important;
}

.text-cat-yellow {
  color: #fcc32a !important;
}

a.text-cat-yellow:hover, a.text-cat-yellow:focus {
  color: rgb(214.4791666667, 157.0833333333, 3.0208333333) !important;
}

.text-black {
  color: #202020 !important;
}

a.text-black:hover, a.text-black:focus {
  color: black !important;
}

.text-body {
  color: #212529 !important;
}

.text-muted {
  color: #6c757d !important;
}

.text-black-50 {
  color: rgba(0, 0, 0, 0.5) !important;
}

.text-white-50 {
  color: rgba(255, 255, 255, 0.5) !important;
}

.text-hide {
  font: 0/0 a;
  color: transparent;
  text-shadow: none;
  background-color: transparent;
  border: 0;
}

.text-decoration-none {
  text-decoration: none !important;
}

.text-break {
  word-break: break-word !important;
  word-wrap: break-word !important;
}

.text-reset {
  color: inherit !important;
}

.visible {
  visibility: visible !important;
}

.invisible {
  visibility: hidden !important;
}

.container,
.container-fluid,
.container-xl,
.container-lg,
.container-md,
.container-sm {
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto;
}

@media (min-width: 640px) {
  .container-sm, .container {
    max-width: 540px;
  }
}
@media (min-width: 768px) {
  .container-md, .container-sm, .container {
    max-width: 720px;
  }
}
@media (min-width: 1024px) {
  .container-lg, .container-md, .container-sm, .container {
    max-width: 960px;
  }
}
@media (min-width: 1500px) {
  .container-xl, .container-lg, .container-md, .container-sm, .container {
    max-width: 1140px;
  }
}
.row {
  display: flex;
  flex-wrap: wrap;
  margin-right: -15px;
  margin-left: -15px;
}

.no-gutters {
  margin-right: 0;
  margin-left: 0;
}
.no-gutters > .col,
.no-gutters > [class*=col-] {
  padding-right: 0;
  padding-left: 0;
}

.col-xl,
.col-xl-auto, .col-xl-12, .col-xl-11, .col-xl-10, .col-xl-9, .col-xl-8, .col-xl-7, .col-xl-6, .col-xl-5, .col-xl-4, .col-xl-3, .col-xl-2, .col-xl-1, .col-lg,
.col-lg-auto, .col-lg-12, .col-lg-11, .col-lg-10, .col-lg-9, .col-lg-8, .col-lg-7, .col-lg-6, .col-lg-5, .col-lg-4, .col-lg-3, .col-lg-2, .col-lg-1, .col-md,
.col-md-auto, .col-md-12, .col-md-11, .col-md-10, .col-md-9, .col-md-8, .col-md-7, .col-md-6, .col-md-5, .col-md-4, .col-md-3, .col-md-2, .col-md-1, .col-sm,
.col-sm-auto, .col-sm-12, .col-sm-11, .col-sm-10, .col-sm-9, .col-sm-8, .col-sm-7, .col-sm-6, .col-sm-5, .col-sm-4, .col-sm-3, .col-sm-2, .col-sm-1, .col,
.col-auto, .col-12, .col-11, .col-10, .col-9, .col-8, .col-7, .col-6, .col-5, .col-4, .col-3, .col-2, .col-1 {
  position: relative;
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
}

.col {
  flex-basis: 0;
  flex-grow: 1;
  max-width: 100%;
}

.row-cols-1 > * {
  flex: 0 0 100%;
  max-width: 100%;
}

.row-cols-2 > * {
  flex: 0 0 50%;
  max-width: 50%;
}

.row-cols-3 > * {
  flex: 0 0 33.3333333333%;
  max-width: 33.3333333333%;
}

.row-cols-4 > * {
  flex: 0 0 25%;
  max-width: 25%;
}

.row-cols-5 > * {
  flex: 0 0 20%;
  max-width: 20%;
}

.row-cols-6 > * {
  flex: 0 0 16.6666666667%;
  max-width: 16.6666666667%;
}

.col-auto {
  flex: 0 0 auto;
  width: auto;
  max-width: 100%;
}

.col-1 {
  flex: 0 0 8.33333333%;
  max-width: 8.33333333%;
}

.col-2 {
  flex: 0 0 16.66666667%;
  max-width: 16.66666667%;
}

.col-3 {
  flex: 0 0 25%;
  max-width: 25%;
}

.col-4 {
  flex: 0 0 33.33333333%;
  max-width: 33.33333333%;
}

.col-5 {
  flex: 0 0 41.66666667%;
  max-width: 41.66666667%;
}

.col-6 {
  flex: 0 0 50%;
  max-width: 50%;
}

.col-7 {
  flex: 0 0 58.33333333%;
  max-width: 58.33333333%;
}

.col-8 {
  flex: 0 0 66.66666667%;
  max-width: 66.66666667%;
}

.col-9 {
  flex: 0 0 75%;
  max-width: 75%;
}

.col-10 {
  flex: 0 0 83.33333333%;
  max-width: 83.33333333%;
}

.col-11 {
  flex: 0 0 91.66666667%;
  max-width: 91.66666667%;
}

.col-12 {
  flex: 0 0 100%;
  max-width: 100%;
}

.order-first {
  order: -1;
}

.order-last {
  order: 13;
}

.order-0 {
  order: 0;
}

.order-1 {
  order: 1;
}

.order-2 {
  order: 2;
}

.order-3 {
  order: 3;
}

.order-4 {
  order: 4;
}

.order-5 {
  order: 5;
}

.order-6 {
  order: 6;
}

.order-7 {
  order: 7;
}

.order-8 {
  order: 8;
}

.order-9 {
  order: 9;
}

.order-10 {
  order: 10;
}

.order-11 {
  order: 11;
}

.order-12 {
  order: 12;
}

.offset-1 {
  margin-left: 8.33333333%;
}

.offset-2 {
  margin-left: 16.66666667%;
}

.offset-3 {
  margin-left: 25%;
}

.offset-4 {
  margin-left: 33.33333333%;
}

.offset-5 {
  margin-left: 41.66666667%;
}

.offset-6 {
  margin-left: 50%;
}

.offset-7 {
  margin-left: 58.33333333%;
}

.offset-8 {
  margin-left: 66.66666667%;
}

.offset-9 {
  margin-left: 75%;
}

.offset-10 {
  margin-left: 83.33333333%;
}

.offset-11 {
  margin-left: 91.66666667%;
}

@media (min-width: 640px) {
  .col-sm {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }
  .row-cols-sm-1 > * {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .row-cols-sm-2 > * {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .row-cols-sm-3 > * {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }
  .row-cols-sm-4 > * {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .row-cols-sm-5 > * {
    flex: 0 0 20%;
    max-width: 20%;
  }
  .row-cols-sm-6 > * {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }
  .col-sm-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  .col-sm-1 {
    flex: 0 0 8.33333333%;
    max-width: 8.33333333%;
  }
  .col-sm-2 {
    flex: 0 0 16.66666667%;
    max-width: 16.66666667%;
  }
  .col-sm-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-sm-4 {
    flex: 0 0 33.33333333%;
    max-width: 33.33333333%;
  }
  .col-sm-5 {
    flex: 0 0 41.66666667%;
    max-width: 41.66666667%;
  }
  .col-sm-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-sm-7 {
    flex: 0 0 58.33333333%;
    max-width: 58.33333333%;
  }
  .col-sm-8 {
    flex: 0 0 66.66666667%;
    max-width: 66.66666667%;
  }
  .col-sm-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-sm-10 {
    flex: 0 0 83.33333333%;
    max-width: 83.33333333%;
  }
  .col-sm-11 {
    flex: 0 0 91.66666667%;
    max-width: 91.66666667%;
  }
  .col-sm-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .order-sm-first {
    order: -1;
  }
  .order-sm-last {
    order: 13;
  }
  .order-sm-0 {
    order: 0;
  }
  .order-sm-1 {
    order: 1;
  }
  .order-sm-2 {
    order: 2;
  }
  .order-sm-3 {
    order: 3;
  }
  .order-sm-4 {
    order: 4;
  }
  .order-sm-5 {
    order: 5;
  }
  .order-sm-6 {
    order: 6;
  }
  .order-sm-7 {
    order: 7;
  }
  .order-sm-8 {
    order: 8;
  }
  .order-sm-9 {
    order: 9;
  }
  .order-sm-10 {
    order: 10;
  }
  .order-sm-11 {
    order: 11;
  }
  .order-sm-12 {
    order: 12;
  }
  .offset-sm-0 {
    margin-left: 0;
  }
  .offset-sm-1 {
    margin-left: 8.33333333%;
  }
  .offset-sm-2 {
    margin-left: 16.66666667%;
  }
  .offset-sm-3 {
    margin-left: 25%;
  }
  .offset-sm-4 {
    margin-left: 33.33333333%;
  }
  .offset-sm-5 {
    margin-left: 41.66666667%;
  }
  .offset-sm-6 {
    margin-left: 50%;
  }
  .offset-sm-7 {
    margin-left: 58.33333333%;
  }
  .offset-sm-8 {
    margin-left: 66.66666667%;
  }
  .offset-sm-9 {
    margin-left: 75%;
  }
  .offset-sm-10 {
    margin-left: 83.33333333%;
  }
  .offset-sm-11 {
    margin-left: 91.66666667%;
  }
}
@media (min-width: 768px) {
  .col-md {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }
  .row-cols-md-1 > * {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .row-cols-md-2 > * {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .row-cols-md-3 > * {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }
  .row-cols-md-4 > * {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .row-cols-md-5 > * {
    flex: 0 0 20%;
    max-width: 20%;
  }
  .row-cols-md-6 > * {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }
  .col-md-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  .col-md-1 {
    flex: 0 0 8.33333333%;
    max-width: 8.33333333%;
  }
  .col-md-2 {
    flex: 0 0 16.66666667%;
    max-width: 16.66666667%;
  }
  .col-md-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-md-4 {
    flex: 0 0 33.33333333%;
    max-width: 33.33333333%;
  }
  .col-md-5 {
    flex: 0 0 41.66666667%;
    max-width: 41.66666667%;
  }
  .col-md-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-md-7 {
    flex: 0 0 58.33333333%;
    max-width: 58.33333333%;
  }
  .col-md-8 {
    flex: 0 0 66.66666667%;
    max-width: 66.66666667%;
  }
  .col-md-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-md-10 {
    flex: 0 0 83.33333333%;
    max-width: 83.33333333%;
  }
  .col-md-11 {
    flex: 0 0 91.66666667%;
    max-width: 91.66666667%;
  }
  .col-md-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .order-md-first {
    order: -1;
  }
  .order-md-last {
    order: 13;
  }
  .order-md-0 {
    order: 0;
  }
  .order-md-1 {
    order: 1;
  }
  .order-md-2 {
    order: 2;
  }
  .order-md-3 {
    order: 3;
  }
  .order-md-4 {
    order: 4;
  }
  .order-md-5 {
    order: 5;
  }
  .order-md-6 {
    order: 6;
  }
  .order-md-7 {
    order: 7;
  }
  .order-md-8 {
    order: 8;
  }
  .order-md-9 {
    order: 9;
  }
  .order-md-10 {
    order: 10;
  }
  .order-md-11 {
    order: 11;
  }
  .order-md-12 {
    order: 12;
  }
  .offset-md-0 {
    margin-left: 0;
  }
  .offset-md-1 {
    margin-left: 8.33333333%;
  }
  .offset-md-2 {
    margin-left: 16.66666667%;
  }
  .offset-md-3 {
    margin-left: 25%;
  }
  .offset-md-4 {
    margin-left: 33.33333333%;
  }
  .offset-md-5 {
    margin-left: 41.66666667%;
  }
  .offset-md-6 {
    margin-left: 50%;
  }
  .offset-md-7 {
    margin-left: 58.33333333%;
  }
  .offset-md-8 {
    margin-left: 66.66666667%;
  }
  .offset-md-9 {
    margin-left: 75%;
  }
  .offset-md-10 {
    margin-left: 83.33333333%;
  }
  .offset-md-11 {
    margin-left: 91.66666667%;
  }
}
@media (min-width: 1024px) {
  .col-lg {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }
  .row-cols-lg-1 > * {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .row-cols-lg-2 > * {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .row-cols-lg-3 > * {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }
  .row-cols-lg-4 > * {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .row-cols-lg-5 > * {
    flex: 0 0 20%;
    max-width: 20%;
  }
  .row-cols-lg-6 > * {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }
  .col-lg-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  .col-lg-1 {
    flex: 0 0 8.33333333%;
    max-width: 8.33333333%;
  }
  .col-lg-2 {
    flex: 0 0 16.66666667%;
    max-width: 16.66666667%;
  }
  .col-lg-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-lg-4 {
    flex: 0 0 33.33333333%;
    max-width: 33.33333333%;
  }
  .col-lg-5 {
    flex: 0 0 41.66666667%;
    max-width: 41.66666667%;
  }
  .col-lg-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-lg-7 {
    flex: 0 0 58.33333333%;
    max-width: 58.33333333%;
  }
  .col-lg-8 {
    flex: 0 0 66.66666667%;
    max-width: 66.66666667%;
  }
  .col-lg-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-lg-10 {
    flex: 0 0 83.33333333%;
    max-width: 83.33333333%;
  }
  .col-lg-11 {
    flex: 0 0 91.66666667%;
    max-width: 91.66666667%;
  }
  .col-lg-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .order-lg-first {
    order: -1;
  }
  .order-lg-last {
    order: 13;
  }
  .order-lg-0 {
    order: 0;
  }
  .order-lg-1 {
    order: 1;
  }
  .order-lg-2 {
    order: 2;
  }
  .order-lg-3 {
    order: 3;
  }
  .order-lg-4 {
    order: 4;
  }
  .order-lg-5 {
    order: 5;
  }
  .order-lg-6 {
    order: 6;
  }
  .order-lg-7 {
    order: 7;
  }
  .order-lg-8 {
    order: 8;
  }
  .order-lg-9 {
    order: 9;
  }
  .order-lg-10 {
    order: 10;
  }
  .order-lg-11 {
    order: 11;
  }
  .order-lg-12 {
    order: 12;
  }
  .offset-lg-0 {
    margin-left: 0;
  }
  .offset-lg-1 {
    margin-left: 8.33333333%;
  }
  .offset-lg-2 {
    margin-left: 16.66666667%;
  }
  .offset-lg-3 {
    margin-left: 25%;
  }
  .offset-lg-4 {
    margin-left: 33.33333333%;
  }
  .offset-lg-5 {
    margin-left: 41.66666667%;
  }
  .offset-lg-6 {
    margin-left: 50%;
  }
  .offset-lg-7 {
    margin-left: 58.33333333%;
  }
  .offset-lg-8 {
    margin-left: 66.66666667%;
  }
  .offset-lg-9 {
    margin-left: 75%;
  }
  .offset-lg-10 {
    margin-left: 83.33333333%;
  }
  .offset-lg-11 {
    margin-left: 91.66666667%;
  }
}
@media (min-width: 1500px) {
  .col-xl {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }
  .row-cols-xl-1 > * {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .row-cols-xl-2 > * {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .row-cols-xl-3 > * {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }
  .row-cols-xl-4 > * {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .row-cols-xl-5 > * {
    flex: 0 0 20%;
    max-width: 20%;
  }
  .row-cols-xl-6 > * {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }
  .col-xl-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  .col-xl-1 {
    flex: 0 0 8.33333333%;
    max-width: 8.33333333%;
  }
  .col-xl-2 {
    flex: 0 0 16.66666667%;
    max-width: 16.66666667%;
  }
  .col-xl-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-xl-4 {
    flex: 0 0 33.33333333%;
    max-width: 33.33333333%;
  }
  .col-xl-5 {
    flex: 0 0 41.66666667%;
    max-width: 41.66666667%;
  }
  .col-xl-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-xl-7 {
    flex: 0 0 58.33333333%;
    max-width: 58.33333333%;
  }
  .col-xl-8 {
    flex: 0 0 66.66666667%;
    max-width: 66.66666667%;
  }
  .col-xl-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-xl-10 {
    flex: 0 0 83.33333333%;
    max-width: 83.33333333%;
  }
  .col-xl-11 {
    flex: 0 0 91.66666667%;
    max-width: 91.66666667%;
  }
  .col-xl-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .order-xl-first {
    order: -1;
  }
  .order-xl-last {
    order: 13;
  }
  .order-xl-0 {
    order: 0;
  }
  .order-xl-1 {
    order: 1;
  }
  .order-xl-2 {
    order: 2;
  }
  .order-xl-3 {
    order: 3;
  }
  .order-xl-4 {
    order: 4;
  }
  .order-xl-5 {
    order: 5;
  }
  .order-xl-6 {
    order: 6;
  }
  .order-xl-7 {
    order: 7;
  }
  .order-xl-8 {
    order: 8;
  }
  .order-xl-9 {
    order: 9;
  }
  .order-xl-10 {
    order: 10;
  }
  .order-xl-11 {
    order: 11;
  }
  .order-xl-12 {
    order: 12;
  }
  .offset-xl-0 {
    margin-left: 0;
  }
  .offset-xl-1 {
    margin-left: 8.33333333%;
  }
  .offset-xl-2 {
    margin-left: 16.66666667%;
  }
  .offset-xl-3 {
    margin-left: 25%;
  }
  .offset-xl-4 {
    margin-left: 33.33333333%;
  }
  .offset-xl-5 {
    margin-left: 41.66666667%;
  }
  .offset-xl-6 {
    margin-left: 50%;
  }
  .offset-xl-7 {
    margin-left: 58.33333333%;
  }
  .offset-xl-8 {
    margin-left: 66.66666667%;
  }
  .offset-xl-9 {
    margin-left: 75%;
  }
  .offset-xl-10 {
    margin-left: 83.33333333%;
  }
  .offset-xl-11 {
    margin-left: 91.66666667%;
  }
}
/**
 * MIXINS
 */
/**
 * PLACEHOLDERS
 */
h1,
h2,
h3,
h4,
h5,
h6,
p,
ol,
ul,
dl,
dt,
dd,
blockquote,
figure,
body {
  margin: 0;
  padding: 0;
}

/**
 * FUNCTIONS
 */
/**
 * RESET
 */
body {
  background-color: white;
}

@-ms-viewport {
  width: device-width;
}
@-o-viewport {
  width: device-width;
}
@viewport {
  width: device-width;
}
a, abbr, acronym, address, applet, area, article, aside, audio,
b, base, basefont, bdi, bdo, big, blockquote, body, br, button,
canvas, caption, center, cite, code, col, colgroup, command,
datalist, dd, del, details, dfn, dir, div, dl, dt, em, embed,
fieldset, figcaption, figure, font, footer, form, frame,
frameset, h1, h2, h3, h4, h5, h6, head, header, hgroup, hr,
html, i, iframe, img, input, input[type], ins, kbd, keygen, label, legend,
li, link, map, mark, menu, meta, meter, nav, noframes, noscript,
object, ol, optgroup, option, output, p, param, pre, progress,
q, rp, rt, ruby, s, samp, script, section, select, small, source,
span, strike, strong, style, sub, summary, sup, table, tbody,
td, textarea, tfoot, th, thead, time, title, tr, track, tt, u,
ul, var, video, wbr {
  box-sizing: border-box;
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

a {
  -webkit-touch-callout: none;
  text-decoration: none;
  color: inherit;
}

h1,
h2,
h3,
h4,
h5,
h6,
em,
strong {
  font-weight: normal;
  font-style: normal;
}

ul,
ol {
  list-style: none;
}

img {
  /*width: 100%;*/
  height: auto;
  display: block;
  max-width: 100%;
}

i {
  font-style: normal;
}

button {
  font-size: 100%;
  font-family: inherit;
  border: 0;
  background: transparent;
  padding: 0;
  cursor: pointer;
  color: inherit;
  outline: none;
}

iframe {
  max-width: 100%;
}

select::-ms-expand {
  display: none;
}

/**
 * THEME
 *
 * For basic sites this should simply contain colour variables.
 * If a proper theme is to be applied this file should simply
 * import the theme file for each component which should be
 * contained within a theme folder.
 */
.drop-shadow,
.subnav {
  box-shadow: 0 6px 0 0 rgba(30, 0, 40, 0.08);
}

::selection {
  background-color: #7A1B72;
  color: white;
}

::-moz-election {
  background-color: #7A1B72;
  color: white;
}

.media--select.is-active, .form--selection {
  box-shadow: none;
  transition: box-shadow 200ms ease-in-out;
  transition-duration: 0s;
}
.media--select.is-active:hover, .form--selection:hover {
  box-shadow: none;
  transition-duration: 0s;
}
.is-selected.form--selection, .is-active.media--select, .is-active.form--selection {
  box-shadow: none;
}

.instagram-slider {
  box-shadow: none;
}

::-moz-selection,
::selection {
  background: #7A1B72;
}

.fade-in {
  opacity: 0;
}
.fade-in.is-visible {
  opacity: 1;
  animation: FADEIN 250ms ease-in-out;
}

@keyframes FADEIN {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
[class*=bg-].bg-image {
  position: relative;
  background-color: #7A1B72;
}
[class*=bg-].bg-image:before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: inherit;
  opacity: 0.2;
  z-index: 0;
}
[class*=bg-].bg-image > * {
  position: relative;
  z-index: 1;
}
[class*=bg-].bg-image--darker:before {
  opacity: 0.7;
}

.text-primary {
  color: #7A1B72;
}

.text-secondary {
  color: #7A1B72;
}

.blockquote:after, .blockquote:before {
  color: #7A1B72;
}

.text-orange {
  color: #7A1B72;
}

.text-blue {
  color: #c928b2;
}

.text-light-blue {
  color: #c928b2;
}

.text-green {
  color: #7A1B72;
}

.text-dark-green {
  color: #7A1B72;
}

.text-bright-green {
  color: #9fcc3f;
}

.text-yellow {
  color: #F7E313;
}

.text-red {
  color: #c928b2;
}

.text-purple {
  color: #7A1B72;
}

.text-grey {
  color: #7A1B72;
}

.text-mid-grey {
  color: #fae6fa;
}

.text-light-grey {
  color: #fae6fa;
}

.text-brand-black {
  color: #1E0028;
}

.text-light-red {
  color: #fae6fa;
}

.text-white {
  color: white;
}

.text-twitter {
  color: #7db6df;
}

.text-facebook {
  color: #3b5998;
}

.text-tint {
  color: rgba(30, 0, 40, 0.5);
}

.text-creme {
  color: rgb(255, 245, 214);
}

.text-silver-fox {
  color: #19181a;
}

.text-flamingo {
  color: #d25b5e;
}

.bg-primary {
  background-color: #7A1B72;
}

.bg-secondary {
  background-color: #7A1B72;
}

.bg-orange {
  background-color: #7A1B72;
}

.bg-blue {
  background-color: #c928b2;
}

.bg-light-blue {
  background-color: #c928b2;
}

.bg-green {
  background-color: #7A1B72;
}

.bg-dark-green {
  background-color: #7A1B72;
}

.bg-bright-green {
  background-color: #9fcc3f;
}

.bg-yellow {
  background-color: #F7E313;
}

.bg-red {
  background-color: #c928b2;
}

.bg-purple {
  background-color: #7A1B72;
}

.bg-grey {
  background-color: #7A1B72;
}

.bg-mid-grey {
  background-color: #fae6fa;
}

.blockquote {
  background-color: #fae6fa;
}

.bg-light-grey {
  background-color: #fae6fa;
}

.bg-brand-black {
  background-color: #1E0028;
}

.bg-light-red {
  background-color: #fae6fa;
}

.bg-white {
  background-color: white;
}

.bg-twitter {
  background-color: #7db6df;
}

.bg-facebook {
  background-color: #3b5998;
}

.bg-tint {
  background-color: rgba(30, 0, 40, 0.5);
}

.bg-creme {
  background-color: rgb(255, 245, 214);
}

.bg-silver-fox {
  background-color: #19181a;
}

.bg-flamingo {
  background-color: #d25b5e;
}

.bg-creme-gradient {
  /*    background: linear-gradient(180deg, rgba(255,245,214,1) 0%, rgba(239,230,214,1) 100%);*/
  background: rgb(239, 230, 214);
}

.bg-red-sunset {
  background: linear-gradient(180deg, rgb(221, 152, 100) 0%, rgb(205, 92, 93) 100%);
}

.bg-red-sunset-reverse {
  background: linear-gradient(180deg, rgb(205, 92, 93) 0%, rgb(221, 152, 100) 100%);
}

.bg-morning-tangerine {
  background: linear-gradient(180deg, rgb(221, 152, 100) 0%, rgb(239, 230, 214) 100%);
}

.bg-stone {
  background-color: #fae6fa;
  /*box-shadow:
      inset 25px 0 50px #d1d1d1,
      inset -25px 0 50px #d1d1d1;*/
}

.bg-image {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}

.bg-btn {
  background-color: #7A1B72;
  transition-duration: 0s;
}
.bg-btn.is-active, .bg-btn:hover {
  background-color: #7A1B72;
  color: white;
  transition-duration: 0s;
}

/* Make bullets white on purple background */
.bg-green a:not(.btn), .bg-blue a:not(.btn) {
  color: white !important;
}
.bg-green a:not(.btn):hover, .bg-blue a:not(.btn):hover {
  color: #7A1B72 !important;
}
.bg-green ul li:before, .bg-blue ul li:before {
  background-color: white !important;
}

.bg-blue .media--theme-alpha .media__heading, .bg-blue .media--theme-alpha .media__copy {
  color: #7A1B72 !important;
}

.bg-grey ul li:before {
  background-color: white !important;
}

.bg-pink {
  background-color: #c928b2 !important;
}

.aside {
  background-color: #fae6fa;
  padding: 30px 30px 0;
  margin-bottom: 20px;
  overflow: hidden;
}

.external-iframe {
  background-color: #1E0028;
  background-image: url(../images/base64/SVG/tail-spin.svg);
  background-repeat: no-repeat;
  background-position: center top 50px;
  background-size: 50px;
}
.external-iframe iframe {
  width: 101%;
  height: 1000px;
  border: none;
  overflow: scroll;
  display: block;
}

@keyframes HIDE-TEXT {
  0% {
    opacity: 1;
  }
  80% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
.text-temp {
  opacity: 0;
  animation-name: HIDE-TEXT;
  animation-duration: 5s;
}

.background-alternate:nth-child(odd) {
  background-color: #fae6fa;
}
.background-alternate:nth-child(odd) .btn:hover {
  background: white;
  color: #c928b2;
}

hr {
  display: block;
  width: 100%;
  border-top: 1px solid #b7b7b7;
  margin: 30px 0;
}

#sponsorCats .media--link {
  /*background: $brand-purple;*/
  /*color: $white;*/
}
#sponsorCats .media--link:hover {
  /*background: $brand-purple !important;*/
}
#sponsorCats .media--link a {
  cursor: pointer !important;
}

/**
 * THEME
 * ILLUSTRATION
 */
/* Text Colors */
.text-white:not(.site-banner) {
  color: white !important;
}
.text-white:not(.site-banner) h1, .text-white:not(.site-banner) h2, .text-white:not(.site-banner) h3, .text-white:not(.site-banner) h4, .text-white:not(.site-banner) h5, .text-white:not(.site-banner) h6 {
  color: white !important;
}

.text-brand-black {
  color: #1E0028 !important;
}
.text-brand-black h1, .text-brand-black h2, .text-brand-black h3, .text-brand-black h4, .text-brand-black h5, .text-brand-black h6 {
  color: #1E0028 !important;
}

.text-brand-pink {
  color: #c928b2 !important;
}
.text-brand-pink h1, .text-brand-pink h2, .text-brand-pink h3, .text-brand-pink h4, .text-brand-pink h5, .text-brand-pink h6 {
  color: #c928b2 !important;
}

.text-brand-purple {
  color: #7A1B72 !important;
}
.text-brand-purple h1, .text-brand-purple h2, .text-brand-purple h3, .text-brand-purple h4, .text-brand-purple h5, .text-brand-purple h6 {
  color: #7A1B72 !important;
}

.text-light-purple {
  color: #fae6fa !important;
}
.text-light-purple h1, .text-light-purple h2, .text-light-purple h3, .text-light-purple h4, .text-light-purple h5, .text-light-purple h6 {
  color: #fae6fa !important;
}

/* Backgrounds */
.bg-white {
  background-color: white !important;
}
.bg-white h1, .bg-white h2, .bg-white h3, .bg-white h4, .bg-white h5, .bg-white h6 {
  color: #1E0028 !important;
}

.bg-brand-black {
  background-color: #1E0028 !important;
}

.bg-brand-pink {
  background-color: #c928b2 !important;
}
.bg-brand-pink h1, .bg-brand-pink h2, .bg-brand-pink h3, .bg-brand-pink h4, .bg-brand-pink h5, .bg-brand-pink h6 {
  color: white !important;
}
.bg-brand-pink a {
  color: white !important;
}
.bg-brand-pink a:hover {
  color: #7A1B72 !important;
}
.bg-brand-pink .btn--secondary {
  background-color: white !important;
  color: #c928b2 !important;
}
.bg-brand-pink .btn--secondary:hover {
  background-color: #fae6fa !important;
  color: #c928b2 !important;
}
.bg-brand-pink.text-white li:before {
  background-color: white !important;
}
.bg-brand-pink.text-brand-black li:before {
  background-color: #fae6fa !important;
}
.bg-brand-pink.text-brand-purple li:before {
  background-color: #fae6fa !important;
}
.bg-brand-pink.text-light-purple li:before {
  background-color: #fae6fa !important;
}

.bg-brand-purple {
  background-color: #7A1B72 !important;
}
.bg-brand-purple a:hover {
  color: white !important;
}
.bg-brand-purple h1, .bg-brand-purple h2, .bg-brand-purple h3, .bg-brand-purple h4, .bg-brand-purple h5, .bg-brand-purple h6 {
  color: white !important;
}
.bg-brand-purple .btn {
  background-color: white !important;
  color: #7A1B72 !important;
}
.bg-brand-purple .btn:hover {
  background-color: #fae6fa !important;
  color: #7A1B72 !important;
}
.bg-brand-purple .btn--secondary {
  background-color: #c928b2 !important;
  color: white !important;
}
.bg-brand-purple.text-white li:before {
  background-color: white !important;
}
.bg-brand-purple.text-brand-black li:before {
  background-color: #fae6fa !important;
}
.bg-brand-purple.text-brand-pink li:before {
  background-color: #fae6fa !important;
}
.bg-brand-purple.text-light-purple li:before {
  background-color: #fae6fa !important;
}

.bg-light-purple {
  background-color: #fae6fa !important;
}
.bg-light-purple h1, .bg-light-purple h2, .bg-light-purple h3, .bg-light-purple h4, .bg-light-purple h5, .bg-light-purple h6 {
  color: #7A1B72 !important;
}
.bg-light-purple .btn:hover {
  background-color: white !important;
  color: #c928b2 !important;
}
.bg-light-purple .btn--secondary:hover {
  background-color: white !important;
}

.branding-purple h1, .branding-purple h2, .branding-purple h3, .branding-purple h4, .branding-purple h5, .branding-purple h6 {
  color: white !important;
}
.branding-purple {
  background-color: #7A1B72 !important;
  color: white !important;
}
.branding-purple .media__image {
  border: 0px !important;
}

.branding-pink h1, .branding-pink h2, .branding-pink h3, .branding-pink h4, .branding-pink h5, .branding-pink h6 {
  color: white !important;
}
.branding-pink {
  background-color: #c928b2 !important;
  color: white !important;
}
.branding-pink .media__image {
  border: 0px !important;
}

.light-purple h1, .light-purple h2, .light-purple h3, .light-purple h4, .light-purple h5, .light-purple h6 {
  color: #7A1B72 !important;
}
.light-purple {
  background-color: #fae6fa !important;
  color: #7A1B72 !important;
}
.light-purple .media__image {
  border: 0px !important;
}

.no-theme h1, .no-theme h2, .no-theme h3, .no-theme h4, .no-theme h5, .no-theme h6 {
  color: #7A1B72 !important;
}
.no-theme {
  background-color: white !important;
  color: #7A1B72 !important;
}
.no-theme .media__image {
  border: 0px !important;
}

.faq-branding {
  padding: 10px 16px;
  font-family: Arial, Helvetica, sans-serif;
}

.bg-white .faq-branding {
  color: white !important;
}

.bg-brand-purple .faq-branding {
  color: #7A1B72 !important;
  background-color: #fae6fa !important;
}
.bg-brand-purple .faq-a {
  color: white !important;
}

.bg-brand-pink .faq-a {
  color: white !important;
}

.bg-light-purple .faq-branding {
  color: white !important;
}

.branding-download-grid .media__caption {
  background: rgba(0, 0, 0, 0.25);
}
.branding-download-grid h2.ts-3 {
  color: white !important;
}

@font-face {
  font-family: "metrify-light";
  src: url("fonts/nanmetrifyc-Std-light.woff2") format("woff2"), url("fonts/nanmetrifyc-Std-light.woff") format("woff"); /* Pretty Modern Browsers */
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "metrify-regular";
  src: url("fonts/nanmetrifyc-Std-reg.woff2") format("woff2"), url("fonts/nanmetrifyc-Std-reg.woff") format("woff"); /* Pretty Modern Browsers */
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "metrify-bold";
  src: url("fonts/nanmetrifyc-Std-bld.woff2") format("woff2"), url("fonts/nanmetrifyc-Std-bld.woff") format("woff"); /* Pretty Modern Browsers */
  font-weight: 700;
  font-style: normal;
}
@font-face {
  font-family: "cats-headline";
  src: url("fonts/CatsHeadline-Regular.woff2") format("woff2"), url("fonts/CatsHeadline-Regular.woff") format("woff"); /* Pretty Modern Browsers */
  font-weight: normal;
  font-style: normal;
}
/* TYPESTYLES
 * BASE
 * These are the base typestyles.
 */
body {
  font-family: Arial, Helvetica, sans-serif;
  font-style: normal;
  font-weight: normal;
  color: #1E0028;
}

p,
li,
label {
  font-size: 16px;
  line-height: 25px;
}
p small,
li small,
label small {
  font-size: 15px;
}
p strong,
li strong,
label strong {
  font-weight: bold;
}
p strong em,
li strong em,
label strong em {
  font-weight: bold;
  font-style: italic;
}
p em,
li em,
label em {
  font-style: italic;
}
p em strong,
li em strong,
label em strong {
  font-weight: bold;
  font-style: italic;
}
@media only screen and (min-width: 769px) {
  p,
  li,
  label {
    font-size: 17px;
    line-height: 25px;
  }
}
p a,
li a,
label a {
  font-weight: bold;
  color: #c928b2;
  padding-bottom: 5px;
  text-decoration: underline;
  transition: color 100ms;
  transition-timing-function: ease-in-out;
  transition-duration: 0s;
}
p a:hover,
li a:hover,
label a:hover {
  color: #7A1B72;
  transition-duration: 0s;
}

.intro {
  font-family: "metrify-bold", Arial, Helvetica, sans-serif;
  font-size: 110%;
}

.text-center,
.centre-copy {
  text-align: center;
}

.font-face-basic {
  font-family: Arial, Helvetica, sans-serif !important;
}

.up {
  text-transform: uppercase;
}

[class*=date]:not([class*=text-]) {
  color: #1E0028;
}

hr {
  border: none;
  background-color: #b7b7b7;
  height: 1px;
  margin: 25px 0;
}

h5.giftaid {
  margin-bottom: 12px;
  color: #7A1B72;
}

.ts-regional {
  font-size: 20px;
  font-family: "metrify-regular", Arial, Helvetica, sans-serif;
  letter-spacing: 0.7px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: white;
  background-color: #eb533b;
  padding: 5px 20px;
  width: auto;
}
.ts-regional:before {
  content: "Regional: ";
  margin-right: 10px;
}

.link--info {
  color: #c928b2;
  font-family: "metrify-regular", Arial, Helvetica, sans-serif;
  display: inline-flex;
  align-items: center;
  transition-duration: 0s;
}
.link--info:hover {
  color: #1E0028;
  transition-duration: 0s;
}
.link--info:hover:before {
  background-color: #1E0028;
}
.link--info:before {
  content: "i";
  display: inline-block;
  margin-right: 10px;
  color: white;
  background-color: #c928b2;
  padding: 2px 8px;
  border-radius: 50%;
  font-size: 80%;
}

/**
 * TYPESTYLES
 * MASTER SET
 *
 */
.ts-0 {
  font-family: "cats-headline", Arial, Helvetica, sans-serif;
}
.ts-0 {
  font-size: 20px;
}
@media screen and (min-width: 320px) {
  .ts-0 {
    font-size: calc(20px + 26 * (100vw - 320px) / 704);
  }
}
@media screen and (min-width: 1024px) {
  .ts-0 {
    font-size: 46px;
  }
}
.ts-0 {
  line-height: 1.2;
}

.bg-white .ts-0 {
  color: #7A1B72;
}

.subhead-1,
.ts-1,
.basket-tracker__value,
.article-typestyles .h1-like,
.article-typestyles h1,
header h2:not([class]),
header h1:not([class]) {
  font-family: "cats-headline", Arial, Helvetica, sans-serif;
}
.subhead-1,
.ts-1,
.basket-tracker__value,
.article-typestyles .h1-like,
.article-typestyles h1,
header h2:not([class]),
header h1:not([class]) {
  font-size: 19px;
}
@media screen and (min-width: 320px) {
  .subhead-1,
  .ts-1,
  .basket-tracker__value,
  .article-typestyles .h1-like,
  .article-typestyles h1,
  header h2:not([class]),
  header h1:not([class]) {
    font-size: calc(19px + 27 * (100vw - 320px) / 704);
  }
}
@media screen and (min-width: 1024px) {
  .subhead-1,
  .ts-1,
  .basket-tracker__value,
  .article-typestyles .h1-like,
  .article-typestyles h1,
  header h2:not([class]),
  header h1:not([class]) {
    font-size: 46px;
  }
}
.subhead-1,
.ts-1,
.basket-tracker__value,
.article-typestyles .h1-like,
.article-typestyles h1,
header h2:not([class]),
header h1:not([class]) {
  line-height: 1.2;
}

.bg-white .subhead-1,
.bg-white .ts-1, .bg-light-grey .subhead-1,
.bg-light-grey .ts-1 {
  color: #7A1B72;
}

.bg-blue .subhead-1,
.bg-blue .ts-1, .bg-orange .subhead-1,
.bg-orange .ts-1 {
  color: white;
}

.subhead-2,
.ts-2,
.pen-card__stats h3,
.form--newsletter .form__label,
.article-typestyles .h2-like,
.article-typestyles h2,
header h3:not([class]) {
  font-family: "cats-headline", Arial, Helvetica, sans-serif;
  font-size: 31px;
  line-height: 1.2em;
  color: #7A1B72;
}

.bg-white .subhead-2,
.bg-white .ts-2, .bg-light-grey .subhead-2,
.bg-light-grey .ts-2 {
  color: #7A1B72;
}

.bg-blue .subhead-2,
.bg-blue .ts-2, .bg-orange .subhead-2,
.bg-orange .ts-2 {
  color: white;
}

.subhead-3,
.ts-3,
.site-strip .site-strip__ribbon h3,
.header-group__title,
.media__caption h5,
.form--login h3,
.login-button,
.blockquote,
.basket-tracker:after,
.article-typestyles .h3-like,
.article-typestyles h3,
header h4:not([class]) {
  font-family: "cats-headline", Arial, Helvetica, sans-serif;
  font-size: 26px;
  line-height: 29px;
  color: #7A1B72;
}

.bg-white .subhead-3,
.bg-white .ts-3, .bg-light-grey .subhead-3,
.bg-light-grey .ts-3 {
  color: #7A1B72;
}

.bg-blue .subhead-3,
.bg-blue .ts-3, .bg-orange .subhead-3,
.bg-orange .ts-3, .bg-light-blue .subhead-3,
.bg-light-blue .ts-3 {
  color: white;
}

.subhead-4,
.ts-4,
.site-strip .site-strip__title,
[class*="--tile"] .media__caption,
.article-typestyles .h4-like,
.article-typestyles h4,
header h5:not([class]) {
  font-family: "cats-headline", Arial, Helvetica, sans-serif;
  font-size: 26px;
  /*text-transform: uppercase;*/
}

.bg-white .subhead-4,
.bg-white .ts-4, .bg-light-grey .subhead-4,
.bg-light-grey .ts-4 {
  color: #7A1B72;
}

.bg-blue .subhead-4,
.bg-blue .ts-4, .bg-orange .subhead-4,
.bg-orange .ts-4 {
  color: white;
}

.subhead-5,
.ts-5,
.subnav li h4,
.subnav li span,
.site-strip .site-strip__header h2,
.poll--results h5,
.poll__question,
.mini-bio__title,
.form--main .form__label,
.article-typestyles .h5-like,
.article-typestyles h5,
header h6:not([class]) {
  font-family: "cats-headline", Arial, Helvetica, sans-serif;
  font-size: 23px;
  line-height: 29px;
}

.bg-white .subhead-5,
.bg-white .ts-5, .bg-light-grey .subhead-5,
.bg-light-grey .ts-5 {
  color: #7A1B72;
}

.bg-blue .subhead-5,
.bg-blue .ts-5, .bg-orange .subhead-5,
.bg-orange .ts-5 {
  color: white;
}

.subhead-6,
.ts-6,
.article-typestyles .h6-like,
.article-typestyles h6 {
  font-family: "metrify-light", Arial, Helvetica, sans-serif;
  font-size: 21px;
}

.bg-white .subhead-6,
.bg-white .ts-6, .bg-light-grey .subhead-6,
.bg-light-grey .ts-6 {
  color: #7A1B72;
}

.bg-blue .subhead-6,
.bg-blue .ts-6, .bg-orange .subhead-6,
.bg-orange .ts-6 {
  color: white;
}

.ts-7,
.footer h6,
.twitter-slider h3,
.facebook-slider h3,
.media--caption-cover .media__caption p,
.form__file-upload-label,
.btn--fourthly,
.btn--thirdly,
.btn--secondary,
.btn--white-black,
.btn {
  font-family: "metrify-bold", Arial, Helvetica, sans-serif;
  font-size: 20px;
  line-height: 26px;
  /*letter-spacing: 0.4px;*/
  color: #7A1B72;
}

.bg-white .ts-7, .bg-light-grey .ts-7 {
  color: #7A1B72;
}

.bg-blue .ts-7, .bg-orange .ts-7 {
  color: white;
}

.ts-8,
.community-stats__btn,
.step-btns p,
.theme-blue .media__caption .date,
.media--opp .media__caption .date,
.media--caption-hover .media__caption p,
.media__caption p:not(.btn),
.form--login p,
.form--your-details .form__label,
.btn--sm,
header p:not([class]) {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 17px;
  line-height: 24px;
  letter-spacing: 0.7px;
}

.bg-white .ts-8, .bg-light-grey .ts-8 {
  color: #7A1B72;
}

.bg-blue .ts-8, .bg-orange .ts-8 {
  color: white;
}

.ts-9,
[class*=date] {
  font-family: "metrify-light", Arial, Helvetica, sans-serif;
  font-size: 15px;
  line-height: 18px;
}

.bg-white .ts-9,
.bg-white .bg-light-grey {
  color: #7A1B72;
}

.bg-blue .ts-9, .bg-orange .ts-9 {
  color: white;
}

.ts-10 {
  font-family: "metrify-light", Arial, Helvetica, sans-serif;
  font-weight: bold;
}

.bg-white .ts-10, .bg-light-grey .ts-10 {
  color: #7A1B72;
}

.bg-blue .ts-10, .bg-orange .ts-10 {
  color: white;
}

.inherit-color {
  color: inherit;
}

.text-decoration-none {
  text-decoration: none;
}

/**
 * TYPESTYLES
 * HEADER
 * Typestyles assigned to elements inside the Header.
 */
header h1:not([class]) {
  margin-bottom: 20px;
}
header h2:not([class]) {
  margin-bottom: 20px;
}
header h3:not([class]) {
  margin-bottom: 20px;
}
header h4:not([class]) {
  margin-bottom: 20px;
}
header h5:not([class]) {
  margin-bottom: 20px;
}
header h6:not([class]) {
  margin-bottom: 20px;
}
header h1,
header h2,
header h3,
header h4,
header h5,
header h6 {
  margin-bottom: 20px;
}

/**
 * TYPESTYLES
 * ARTICLE
 * Typestyles assigned to elements inside the Article.
 */
.article-typestyles p:not([class]) {
  margin-bottom: 20px;
}
.article-typestyles a.btn + a.btn {
  margin-left: 10px;
}

/* TYPESTYLES
 * Icomoon icon set
 * Place and icons for the site here
 */
@font-face {
  font-family: "icomoon";
  src: url("../dist/fonts/icomoon.eot");
  src: url("../dist/fonts/icomoon.eot#iefix") format("embedded-opentype"), url("../dist/fonts/icomoon.woff2") format("woff2"), url("../dist/fonts/icomoon.ttf") format("truetype"), url("../dist/fonts/icomoon.woff") format("woff"), url("../dist/fonts/icomoon.svg") format("svg");
  font-weight: normal;
  font-style: normal;
}
.site-banner--cats-report .arrow-down-icon:before, .sidebar__back:before, .sidebar__close:after, .header-message-close:after, .membership-type[data-select-box=AGift]:before, .membership-type[data-select-box=ForUs]:before, .membership-type[data-select-box=ForMe]:before, .facebook-slider:before, .twitter-slider:before, .slick-prev:after, .slick-next:after, .paging__next a:after, .paging__prev a:after, .mini-bio__details li.location-icon:before, .mini-bio__details li.age-icon:before, .mini-bio__details li.male-icon:before, .mini-bio__details li.female-icon:before, .media--instagram .media__image:after, .media--video .media__image[style*=image]:after, .sidebar .main-nav li.has-subnav:after, .form__subscription-type[data-select-box=AGift]:before, .form__subscription-type[data-select-box=ForUs]:before, .form__subscription-type[data-select-box=ForMe]:before, .checkbox-results [class*=indoors]:after, .checkbox-results [class*=family]:after, .checkbox-results [class*=children]:after, .checkbox-results [class*=dog]:after, .checkbox-results [class*=cat]:after, .checkbox-results [class*=checkbox-results__]:before, .form__checkbox[class*="--indoor"]:before, .form__checkbox[class*="--children"]:before, .form__checkbox[class*="--family"]:before, .form__checkbox[class*="--dog"]:before, .form__checkbox[class*="--cat"]:before, .form__checkbox[type=checkbox]:checked ~ .form__checkbox:after, .form__checkbox[type=radio]:checked ~ .form__checkbox:after, .login-button:before, .faq-q--alt.is-active:after, .faq-q--alt:after, .faq-q.is-active:after, .faq-link.is-active:after, .faq-q:after, .faq-link:after, .ezsearch-pager .next:after, .ezsearch-pager .prev:before, .counter--comments:before, .counter--like:before, .btn--close:after, .btn--prev:before, .btn--next:after, .btn--crop-down:before, .btn--crop-up:before, .btn--crop-right:before, .btn--crop-left:before, .btn--crop-rotate:before, .btn--crop-out:before, .btn--crop-in:before, .btn--paypal:before, .btn--phone:before, .btn--mail:before, .btn--twt2:before, .btn--fbk2:before, .btn--twt:before, .btn--fbk:before, .btn--more.is-active:after, .btn--more:after, .btn--search:before, .basket-tracker:before, .pdf a:before, .icon-list .icon-list__play:before, .icon-list .icon-list__calendar:before, .icon-list .icon-list__pin2:before, .icon-list .icon-list__charity:before, .icon-list .icon-list__phone:before, .icon-list .icon-list__mail:before, .icon-list .icon-list__pin:before {
  font-family: "icomoon" !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: inherit;
  display: inline-block;
}

.giftaid-logo {
  display: inline-block;
  width: 100px;
  height: 50px;
  margin-bottom: -15px;
  background-image: url(../images/base64/SVG/giftaid-grey.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

/* TYPESTYLES
 * List styles
 */
.body-copy ul:not([class]), .body-copy ol:not([class]) {
  position: relative;
  margin: 10px 0;
  /*color: rgba($black, 0.8);*/
}
.body-copy ul:not([class]) li, .body-copy ol:not([class]) li {
  margin-bottom: 10px;
  position: relative;
  padding-left: 30px;
}
.body-copy ul:not([class]) li:before, .body-copy ol:not([class]) li:before {
  display: block;
  position: absolute;
  left: 4px;
}
.body-copy ul:not([class]) li:before {
  content: "";
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: #7A1B72;
  top: 8px;
}
.body-copy ol:not([class]) {
  counter-reset: counter;
}
.body-copy ol:not([class]) li:before {
  content: counter(counter) ".";
  counter-increment: counter;
  top: 0px;
  left: 4px;
  color: #7A1B72;
}

.bullets {
  position: relative;
}
.bullets li {
  margin-bottom: 10px;
  position: relative;
  padding-left: 30px;
}
.bullets li .link {
  cursor: pointer;
}
.bullets li:before {
  content: "";
  display: block;
  position: absolute;
  left: 4px;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: #50ad45;
  top: 8px;
}

.icon-list li {
  display: flex;
  align-items: center;
  position: relative;
  margin-bottom: 20px;
  padding-left: 54px;
}
.icon-list li a {
  color: inherit;
  text-decoration: none;
  padding-bottom: 0;
  transition-duration: 0s;
}
.icon-list li a:hover {
  color: #7A1B72;
  transition-duration: 0s;
}
.icon-list li:before {
  font-size: 33px;
  position: absolute;
  left: 0;
  line-height: inherit;
}
.icon-list .icon-list__pin:before {
  content: "\e90e";
  align-self: flex-start;
  margin-top: 6px;
}
.icon-list .icon-list__mail:before {
  content: "\e92c";
}
.icon-list .icon-list__phone:before {
  content: "\e90d";
}
.icon-list .icon-list__charity:before {
  content: "\e90f";
}
.icon-list .icon-list__pin2:before {
  content: "\e911";
}
.icon-list .icon-list__calendar:before {
  content: "\e910";
}
.icon-list .icon-list__play:before {
  content: "\e900";
}
.icon-list {
  /* Font awesome - start */
}
.icon-list .icon-list-fa:before {
  /* 
  same size as original
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  display: inline-block;
  width: 1.75em;
  height: 1.75em;
  line-height: 1.75em;
  text-align: center;
  border: 2px solid white;
  border-radius: 50%;
  color: white;
  background-color: transparent;
  font-size: 0.875em;
  */
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  display: inline-block;
  width: 2em;
  height: 2em;
  line-height: 2em;
  text-align: center;
  border: 2px solid white;
  border-radius: 50%;
  color: white;
  background-color: transparent;
  font-size: 1em;
}
.icon-list .icon-list-fa.pin:before {
  content: "\f041";
  align-self: flex-start;
}
.icon-list .icon-list-fa.mail:before {
  content: "\f0e0";
}
.icon-list .icon-list-fa.phone:before {
  content: "\f095";
}
.icon-list {
  /* Font awesome - end */
}
.icon-list[class*=large] li {
  font-size: 21px;
  font-family: "metrify-regular", Arial, Helvetica, sans-serif;
  margin-bottom: 25px;
}
.icon-list[class*=large] li:before {
  font-size: 40px;
}

.pdf {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
}
.pdf li {
  font-size: 20px;
  font-family: "metrify-regular", Arial, Helvetica, sans-serif;
  transition: color 200ms;
  transition-timing-function: ease-in-out;
  padding: 10px;
}
@media (min-width: 768px) {
  .pdf li {
    width: 50%;
  }
}
@media (min-width: 1024px) {
  .pdf li {
    width: 33.33%;
  }
}
.pdf li {
  transition-duration: 0s;
}
.pdf li:hover {
  color: #c928b2;
  transition-duration: 0s;
}
.pdf a {
  display: flex;
  align-items: center;
  color: inherit;
  text-decoration: inherit;
  padding-bottom: 0;
}
.pdf a:before {
  content: "\e912";
  padding-right: 20px;
  font-size: 35px;
  line-height: 45px;
}

.btn-list {
  margin-top: 10px;
}
.btn-list li {
  position: relative;
  height: 70px;
  margin-bottom: 10px;
  margin: 0 auto 10px;
  max-width: 500px;
  transition-duration: 0s;
}
.btn-list li:hover {
  box-shadow: 0 0 22px 4px rgba(30, 0, 40, 0.4);
  transition-duration: 0s;
}

.stat-list {
  padding: 10px 30px;
  display: flex;
  flex-wrap: wrap;
}
.stat-list li {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  font-family: "metrify-bold", Arial, Helvetica, sans-serif;
  padding: 10px 0;
}
.stat-list li:not(:nth-last-child(-n+2)) {
  border-bottom: 1px solid rgba(255, 255, 255, 0.4);
}
.stat-list li p {
  font-size: 20px;
  margin-bottom: 0;
  padding: 0 5px;
}
.stat-list li p:first-of-type:after {
  content: ":";
}
@media only screen and (min-width: 769px) {
  [class*=full] .stat-list li {
    width: 50%;
  }
}

.detail-list li {
  font-family: "metrify-regular", Arial, Helvetica, sans-serif;
  font-size: 25px;
  line-height: 30px;
}
.detail-list li strong {
  font-family: "metrify-bold", Arial, Helvetica, sans-serif;
}
.detail-list li + li {
  margin-top: 13px;
}

.opening-page-heading {
  font-family: "barmeno-bold", Arial, Helvetica, sans-serif;
  font-size: 20px;
}
@media (min-width: 1500px) {
  .opening-page-heading {
    font-size: 31px;
  }
}

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}
.slick-list:focus {
  outline: none;
}
.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
}
.slick-track:before, .slick-track:after {
  content: "";
  display: table;
}
.slick-track:after {
  clear: both;
}
.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
}
[dir=rtl] .slick-slide {
  float: right;
}
.slick-slide {
  display: none;
}
.slick-slide.dragging img {
  pointer-events: none;
}
.slick-initialized .slick-slide {
  display: block;
}
.slick-loading .slick-slide {
  visibility: hidden;
}
.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

/*!
 * Cropper.js v1.6.1
 * https://fengyuanchen.github.io/cropperjs
 *
 * Copyright 2015-present Chen Fengyuan
 * Released under the MIT license
 *
 * Date: 2023-09-17T03:44:17.565Z
 */
.cropper-container {
  direction: ltr;
  font-size: 0;
  line-height: 0;
  position: relative;
  -ms-touch-action: none;
  touch-action: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.cropper-container img {
  backface-visibility: hidden;
  display: block;
  height: 100%;
  image-orientation: 0deg;
  max-height: none !important;
  max-width: none !important;
  min-height: 0 !important;
  min-width: 0 !important;
  width: 100%;
}

.cropper-wrap-box,
.cropper-canvas,
.cropper-drag-box,
.cropper-crop-box,
.cropper-modal {
  bottom: 0;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
}

.cropper-wrap-box,
.cropper-canvas {
  overflow: hidden;
}

.cropper-drag-box {
  background-color: #fff;
  opacity: 0;
}

.cropper-modal {
  background-color: #000;
  opacity: 0.5;
}

.cropper-view-box {
  display: block;
  height: 100%;
  outline: 1px solid #39f;
  outline-color: rgba(51, 153, 255, 0.75);
  overflow: hidden;
  width: 100%;
}

.cropper-dashed {
  border: 0 dashed #eee;
  display: block;
  opacity: 0.5;
  position: absolute;
}

.cropper-dashed.dashed-h {
  border-bottom-width: 1px;
  border-top-width: 1px;
  height: 33.3333333333%;
  left: 0;
  top: 33.3333333333%;
  width: 100%;
}

.cropper-dashed.dashed-v {
  border-left-width: 1px;
  border-right-width: 1px;
  height: 100%;
  left: 33.3333333333%;
  top: 0;
  width: 33.3333333333%;
}

.cropper-center {
  display: block;
  height: 0;
  left: 50%;
  opacity: 0.75;
  position: absolute;
  top: 50%;
  width: 0;
}

.cropper-center::before,
.cropper-center::after {
  background-color: #eee;
  content: " ";
  display: block;
  position: absolute;
}

.cropper-center::before {
  height: 1px;
  left: -3px;
  top: 0;
  width: 7px;
}

.cropper-center::after {
  height: 7px;
  left: 0;
  top: -3px;
  width: 1px;
}

.cropper-face,
.cropper-line,
.cropper-point {
  display: block;
  height: 100%;
  opacity: 0.1;
  position: absolute;
  width: 100%;
}

.cropper-face {
  background-color: #fff;
  left: 0;
  top: 0;
}

.cropper-line {
  background-color: #39f;
}

.cropper-line.line-e {
  cursor: ew-resize;
  right: -3px;
  top: 0;
  width: 5px;
}

.cropper-line.line-n {
  cursor: ns-resize;
  height: 5px;
  left: 0;
  top: -3px;
}

.cropper-line.line-w {
  cursor: ew-resize;
  left: -3px;
  top: 0;
  width: 5px;
}

.cropper-line.line-s {
  bottom: -3px;
  cursor: ns-resize;
  height: 5px;
  left: 0;
}

.cropper-point {
  background-color: #39f;
  height: 5px;
  opacity: 0.75;
  width: 5px;
}

.cropper-point.point-e {
  cursor: ew-resize;
  margin-top: -3px;
  right: -3px;
  top: 50%;
}

.cropper-point.point-n {
  cursor: ns-resize;
  left: 50%;
  margin-left: -3px;
  top: -3px;
}

.cropper-point.point-w {
  cursor: ew-resize;
  left: -3px;
  margin-top: -3px;
  top: 50%;
}

.cropper-point.point-s {
  bottom: -3px;
  cursor: s-resize;
  left: 50%;
  margin-left: -3px;
}

.cropper-point.point-ne {
  cursor: nesw-resize;
  right: -3px;
  top: -3px;
}

.cropper-point.point-nw {
  cursor: nwse-resize;
  left: -3px;
  top: -3px;
}

.cropper-point.point-sw {
  bottom: -3px;
  cursor: nesw-resize;
  left: -3px;
}

.cropper-point.point-se {
  bottom: -3px;
  cursor: nwse-resize;
  height: 20px;
  opacity: 1;
  right: -3px;
  width: 20px;
}

@media (min-width: 768px) {
  .cropper-point.point-se {
    height: 15px;
    width: 15px;
  }
}
@media (min-width: 992px) {
  .cropper-point.point-se {
    height: 10px;
    width: 10px;
  }
}
@media (min-width: 1200px) {
  .cropper-point.point-se {
    height: 5px;
    opacity: 0.75;
    width: 5px;
  }
}
.cropper-point.point-se::before {
  background-color: #39f;
  bottom: -50%;
  content: " ";
  display: block;
  height: 200%;
  opacity: 0;
  position: absolute;
  right: -50%;
  width: 200%;
}

.cropper-invisible {
  opacity: 0;
}

.cropper-bg {
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQAQMAAAAlPW0iAAAAA3NCSVQICAjb4U/gAAAABlBMVEXMzMz////TjRV2AAAACXBIWXMAAArrAAAK6wGCiw1aAAAAHHRFWHRTb2Z0d2FyZQBBZG9iZSBGaXJld29ya3MgQ1M26LyyjAAAABFJREFUCJlj+M/AgBVhF/0PAH6/D/HkDxOGAAAAAElFTkSuQmCC");
}

.cropper-hide {
  display: block;
  height: 0;
  position: absolute;
  width: 0;
}

.cropper-hidden {
  display: none !important;
}

.cropper-move {
  cursor: move;
}

.cropper-crop {
  cursor: crosshair;
}

.cropper-disabled .cropper-drag-box,
.cropper-disabled .cropper-face,
.cropper-disabled .cropper-line,
.cropper-disabled .cropper-point {
  cursor: not-allowed;
}

#imageCanvas {
  height: 300px !important;
  width: 300px !important;
}

.image-cropper-popup {
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: rgba(57, 48, 112, 0.9);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 100;
  opacity: 0;
  pointer-events: none;
}

.image-cropper-popup__inner {
  padding: 20px;
  background: #fff;
  box-shadow: 0 0 20px 5px rgba(32, 32, 32, 0.2);
  max-width: 440px;
  margin-left: auto;
  margin-right: auto;
}

.image-cropper-popup__canvas {
  width: 300px;
  height: 300px;
  margin: 0 auto 20px;
}

.image-cropper-popup__buttons .btn {
  margin: 0 2px 10px;
}

.image-cropper-popup__buttons {
  display: flex;
  flex-wrap: wrap;
  align-content: center;
  justify-content: space-between;
}

.image-cropper-popup.is-active {
  opacity: 1;
  pointer-events: all;
}

[data-simplebar] {
  position: relative;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-content: flex-start;
  align-items: flex-start;
  width: inherit;
  height: inherit;
  max-width: inherit;
  max-height: inherit;
}

.simplebar-wrapper {
  overflow: hidden;
  width: inherit;
  height: inherit;
  max-width: inherit;
  max-height: inherit;
}

.simplebar-mask {
  direction: inherit;
  position: absolute;
  overflow: hidden;
  padding: 0;
  margin: 0;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  width: auto !important;
  height: auto !important;
  z-index: 0;
}

.simplebar-offset {
  direction: inherit !important;
  box-sizing: inherit !important;
  resize: none !important;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  padding: 0;
  margin: 0;
  -webkit-overflow-scrolling: touch;
}

.simplebar-content {
  direction: inherit;
  box-sizing: border-box !important;
  position: relative;
  display: block;
  height: 100%; /* Required for horizontal native scrollbar to not appear if parent is taller than natural height */
  width: auto;
  visibility: visible;
  overflow: scroll; /* Scroll on this element otherwise element can't have a padding applied properly */
  max-width: 100%; /* Not required for horizontal scroll to trigger */
  max-height: 100%; /* Needed for vertical scroll to trigger */
}

.simplebar-placeholder {
  max-height: 100%;
  max-width: 100%;
  width: 100%;
  pointer-events: none;
}

.simplebar-height-auto-observer-wrapper {
  box-sizing: inherit !important;
  height: 100%;
  width: inherit;
  max-width: 1px;
  position: relative;
  float: left;
  max-height: 1px;
  overflow: hidden;
  z-index: -1;
  padding: 0;
  margin: 0;
  pointer-events: none;
  flex-grow: inherit;
  flex-shrink: 0;
  flex-basis: 0;
}

.simplebar-height-auto-observer {
  box-sizing: inherit;
  display: block;
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
  height: 1000%;
  width: 1000%;
  min-height: 1px;
  min-width: 1px;
  overflow: hidden;
  pointer-events: none;
  z-index: -1;
}

.simplebar-track {
  z-index: 1;
  position: absolute;
  right: 0;
  bottom: 0;
  pointer-events: none;
}

.simplebar-scrollbar {
  position: absolute;
  right: 2px;
  width: 7px;
  min-height: 10px;
}

.simplebar-scrollbar:before {
  position: absolute;
  content: "";
  background: black;
  border-radius: 7px;
  left: 0;
  right: 0;
  opacity: 0;
  transition: opacity 0.2s linear;
}

.simplebar-track .simplebar-scrollbar.simplebar-visible:before {
  /* When hovered, remove all transitions from drag handle */
  opacity: 0.5;
  transition: opacity 0s linear;
}

.simplebar-track.simplebar-vertical {
  top: 0;
  width: 11px;
}

.simplebar-track.simplebar-vertical .simplebar-scrollbar:before {
  top: 2px;
  bottom: 2px;
}

.simplebar-track.simplebar-horizontal {
  left: 0;
  height: 11px;
}

.simplebar-track.simplebar-horizontal .simplebar-scrollbar:before {
  height: 100%;
  left: 2px;
  right: 2px;
}

.simplebar-track.simplebar-horizontal .simplebar-scrollbar {
  right: auto;
  left: 0;
  top: 2px;
  height: 7px;
  min-height: 0;
  min-width: 10px;
  width: auto;
}

/* Rtl support */
[data-simplebar-direction=rtl] .simplebar-track.simplebar-vertical {
  right: auto;
  left: 0;
}

.hs-dummy-scrollbar-size {
  direction: rtl;
  position: fixed;
  opacity: 0;
  visibility: hidden;
  height: 500px;
  width: 500px;
  overflow-y: hidden;
  overflow-x: scroll;
}

/**
* Swiper 11.2.10
* Most modern mobile touch slider and framework with hardware accelerated transitions
* https://swiperjs.com
*
* Copyright 2014-2025 Vladimir Kharlampidi
*
* Released under the MIT License
*
* Released on: June 28, 2025
*/
@font-face {
  font-family: swiper-icons;
  src: url("data:application/font-woff;charset=utf-8;base64, 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");
  font-weight: 400;
  font-style: normal;
}
:root {
  --swiper-theme-color: #007aff ;
}

:host {
  position: relative;
  display: block;
  margin-left: auto;
  margin-right: auto;
  z-index: 1;
}

.swiper {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  z-index: 1;
  display: block;
}

.swiper-vertical > .swiper-wrapper {
  flex-direction: column;
}

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: transform;
  transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
  box-sizing: content-box;
}

.swiper-android .swiper-slide, .swiper-ios .swiper-slide, .swiper-wrapper {
  transform: translate3d(0px, 0, 0);
}

.swiper-horizontal {
  touch-action: pan-y;
}

.swiper-vertical {
  touch-action: pan-x;
}

.swiper-slide {
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  transition-property: transform;
  display: block;
}

.swiper-slide-invisible-blank {
  visibility: hidden;
}

.swiper-autoheight, .swiper-autoheight .swiper-slide {
  height: auto;
}

.swiper-autoheight .swiper-wrapper {
  align-items: flex-start;
  transition-property: transform, height;
}

.swiper-backface-hidden .swiper-slide {
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.swiper-3d.swiper-css-mode .swiper-wrapper {
  perspective: 1200px;
}

.swiper-3d .swiper-wrapper {
  transform-style: preserve-3d;
}

.swiper-3d {
  perspective: 1200px;
}

.swiper-3d .swiper-cube-shadow, .swiper-3d .swiper-slide {
  transform-style: preserve-3d;
}

.swiper-css-mode > .swiper-wrapper {
  overflow: auto;
  scrollbar-width: none;
  -ms-overflow-style: none;
}

.swiper-css-mode > .swiper-wrapper::-webkit-scrollbar {
  display: none;
}

.swiper-css-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: start start;
}

.swiper-css-mode.swiper-horizontal > .swiper-wrapper {
  scroll-snap-type: x mandatory;
}

.swiper-css-mode.swiper-vertical > .swiper-wrapper {
  scroll-snap-type: y mandatory;
}

.swiper-css-mode.swiper-free-mode > .swiper-wrapper {
  scroll-snap-type: none;
}

.swiper-css-mode.swiper-free-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: none;
}

.swiper-css-mode.swiper-centered > .swiper-wrapper::before {
  content: "";
  flex-shrink: 0;
  order: 9999;
}

.swiper-css-mode.swiper-centered > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: center center;
  scroll-snap-stop: always;
}

.swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper > .swiper-slide:first-child {
  margin-inline-start: var(--swiper-centered-offset-before);
}

.swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper::before {
  height: 100%;
  min-height: 1px;
  width: var(--swiper-centered-offset-after);
}

.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper > .swiper-slide:first-child {
  margin-block-start: var(--swiper-centered-offset-before);
}

.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper::before {
  width: 100%;
  min-width: 1px;
  height: var(--swiper-centered-offset-after);
}

.swiper-3d .swiper-slide-shadow, .swiper-3d .swiper-slide-shadow-bottom, .swiper-3d .swiper-slide-shadow-left, .swiper-3d .swiper-slide-shadow-right, .swiper-3d .swiper-slide-shadow-top {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10;
}

.swiper-3d .swiper-slide-shadow {
  background: rgba(0, 0, 0, 0.15);
}

.swiper-3d .swiper-slide-shadow-left {
  background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-3d .swiper-slide-shadow-right {
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-3d .swiper-slide-shadow-top {
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-3d .swiper-slide-shadow-bottom {
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  transform-origin: 50%;
  box-sizing: border-box;
  border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
  border-radius: 50%;
  border-top-color: transparent;
}

.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader, .swiper:not(.swiper-watch-progress) .swiper-lazy-preloader {
  animation: swiper-preloader-spin 1s infinite linear;
}

.swiper-lazy-preloader-white {
  --swiper-preloader-color: #fff ;
}

.swiper-lazy-preloader-black {
  --swiper-preloader-color: #000 ;
}

@keyframes swiper-preloader-spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.swiper-virtual .swiper-slide {
  -webkit-backface-visibility: hidden;
  transform: translateZ(0);
}

.swiper-virtual.swiper-css-mode .swiper-wrapper::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
}

.swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper::after {
  height: 1px;
  width: var(--swiper-virtual-size);
}

.swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper::after {
  width: 1px;
  height: var(--swiper-virtual-size);
}

:root {
  --swiper-navigation-size: 44px ;
}

.swiper-button-next, .swiper-button-prev {
  position: absolute;
  top: var(--swiper-navigation-top-offset, 50%);
  width: calc(var(--swiper-navigation-size) / 44 * 27);
  height: var(--swiper-navigation-size);
  margin-top: calc(0px - var(--swiper-navigation-size) / 2);
  z-index: 10;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--swiper-navigation-color, var(--swiper-theme-color));
}

.swiper-button-next.swiper-button-disabled, .swiper-button-prev.swiper-button-disabled {
  opacity: 0.35;
  cursor: auto;
  pointer-events: none;
}

.swiper-button-next.swiper-button-hidden, .swiper-button-prev.swiper-button-hidden {
  opacity: 0;
  cursor: auto;
  pointer-events: none;
}

.swiper-navigation-disabled .swiper-button-next, .swiper-navigation-disabled .swiper-button-prev {
  display: none !important;
}

.swiper-button-next svg, .swiper-button-prev svg {
  width: 100%;
  height: 100%;
  object-fit: contain;
  transform-origin: center;
}

.swiper-rtl .swiper-button-next svg, .swiper-rtl .swiper-button-prev svg {
  transform: rotate(180deg);
}

.swiper-button-prev, .swiper-rtl .swiper-button-next {
  left: var(--swiper-navigation-sides-offset, 10px);
  right: auto;
}

.swiper-button-next, .swiper-rtl .swiper-button-prev {
  right: var(--swiper-navigation-sides-offset, 10px);
  left: auto;
}

.swiper-button-lock {
  display: none;
}

.swiper-button-next:after, .swiper-button-prev:after {
  font-family: swiper-icons;
  font-size: var(--swiper-navigation-size);
  text-transform: none !important;
  letter-spacing: 0;
  font-variant: initial;
  line-height: 1;
}

.swiper-button-prev:after, .swiper-rtl .swiper-button-next:after {
  content: "prev";
}

.swiper-button-next, .swiper-rtl .swiper-button-prev {
  right: var(--swiper-navigation-sides-offset, 10px);
  left: auto;
}

.swiper-button-next:after, .swiper-rtl .swiper-button-prev:after {
  content: "next";
}

.swiper-pagination {
  position: absolute;
  text-align: center;
  transition: 0.3s opacity;
  transform: translate3d(0, 0, 0);
  z-index: 10;
}

.swiper-pagination.swiper-pagination-hidden {
  opacity: 0;
}

.swiper-pagination-disabled > .swiper-pagination, .swiper-pagination.swiper-pagination-disabled {
  display: none !important;
}

.swiper-horizontal > .swiper-pagination-bullets, .swiper-pagination-bullets.swiper-pagination-horizontal, .swiper-pagination-custom, .swiper-pagination-fraction {
  bottom: var(--swiper-pagination-bottom, 8px);
  top: var(--swiper-pagination-top, auto);
  left: 0;
  width: 100%;
}

.swiper-pagination-bullets-dynamic {
  overflow: hidden;
  font-size: 0;
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transform: scale(0.33);
  position: relative;
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
  transform: scale(1);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
  transform: scale(1);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
  transform: scale(0.66);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
  transform: scale(0.33);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
  transform: scale(0.66);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
  transform: scale(0.33);
}

.swiper-pagination-bullet {
  width: var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 8px));
  height: var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 8px));
  display: inline-block;
  border-radius: var(--swiper-pagination-bullet-border-radius, 50%);
  background: var(--swiper-pagination-bullet-inactive-color, #000);
  opacity: var(--swiper-pagination-bullet-inactive-opacity, 0.2);
}

button.swiper-pagination-bullet {
  border: none;
  margin: 0;
  padding: 0;
  box-shadow: none;
  -webkit-appearance: none;
  appearance: none;
}

.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer;
}

.swiper-pagination-bullet:only-child {
  display: none !important;
}

.swiper-pagination-bullet-active {
  opacity: var(--swiper-pagination-bullet-opacity, 1);
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
}

.swiper-pagination-vertical.swiper-pagination-bullets, .swiper-vertical > .swiper-pagination-bullets {
  right: var(--swiper-pagination-right, 8px);
  left: var(--swiper-pagination-left, auto);
  top: 50%;
  transform: translate3d(0px, -50%, 0);
}

.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet, .swiper-vertical > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: var(--swiper-pagination-bullet-vertical-gap, 6px) 0;
  display: block;
}

.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic, .swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  top: 50%;
  transform: translateY(-50%);
  width: 8px;
}

.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet, .swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  display: inline-block;
  transition: 0.2s transform, 0.2s top;
}

.swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet, .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 var(--swiper-pagination-bullet-horizontal-gap, 4px);
}

.swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic, .swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  left: 50%;
  transform: translateX(-50%);
  white-space: nowrap;
}

.swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet, .swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: 0.2s transform, 0.2s left;
}

.swiper-horizontal.swiper-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: 0.2s transform, 0.2s right;
}

.swiper-pagination-fraction {
  color: var(--swiper-pagination-fraction-color, inherit);
}

.swiper-pagination-progressbar {
  background: var(--swiper-pagination-progressbar-bg-color, rgba(0, 0, 0, 0.25));
  position: absolute;
}

.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  transform: scale(0);
  transform-origin: left top;
}

.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  transform-origin: right top;
}

.swiper-horizontal > .swiper-pagination-progressbar, .swiper-pagination-progressbar.swiper-pagination-horizontal, .swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite, .swiper-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
  width: 100%;
  height: var(--swiper-pagination-progressbar-size, 4px);
  left: 0;
  top: 0;
}

.swiper-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite, .swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite, .swiper-pagination-progressbar.swiper-pagination-vertical, .swiper-vertical > .swiper-pagination-progressbar {
  width: var(--swiper-pagination-progressbar-size, 4px);
  height: 100%;
  left: 0;
  top: 0;
}

.swiper-pagination-lock {
  display: none;
}

.swiper-scrollbar {
  border-radius: var(--swiper-scrollbar-border-radius, 10px);
  position: relative;
  touch-action: none;
  background: var(--swiper-scrollbar-bg-color, rgba(0, 0, 0, 0.1));
}

.swiper-scrollbar-disabled > .swiper-scrollbar, .swiper-scrollbar.swiper-scrollbar-disabled {
  display: none !important;
}

.swiper-horizontal > .swiper-scrollbar, .swiper-scrollbar.swiper-scrollbar-horizontal {
  position: absolute;
  left: var(--swiper-scrollbar-sides-offset, 1%);
  bottom: var(--swiper-scrollbar-bottom, 4px);
  top: var(--swiper-scrollbar-top, auto);
  z-index: 50;
  height: var(--swiper-scrollbar-size, 4px);
  width: calc(100% - 2 * var(--swiper-scrollbar-sides-offset, 1%));
}

.swiper-scrollbar.swiper-scrollbar-vertical, .swiper-vertical > .swiper-scrollbar {
  position: absolute;
  left: var(--swiper-scrollbar-left, auto);
  right: var(--swiper-scrollbar-right, 4px);
  top: var(--swiper-scrollbar-sides-offset, 1%);
  z-index: 50;
  width: var(--swiper-scrollbar-size, 4px);
  height: calc(100% - 2 * var(--swiper-scrollbar-sides-offset, 1%));
}

.swiper-scrollbar-drag {
  height: 100%;
  width: 100%;
  position: relative;
  background: var(--swiper-scrollbar-drag-bg-color, rgba(0, 0, 0, 0.5));
  border-radius: var(--swiper-scrollbar-border-radius, 10px);
  left: 0;
  top: 0;
}

.swiper-scrollbar-cursor-drag {
  cursor: move;
}

.swiper-scrollbar-lock {
  display: none;
}

.swiper-zoom-container {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
}

.swiper-zoom-container > canvas, .swiper-zoom-container > img, .swiper-zoom-container > svg {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}

.swiper-slide-zoomed {
  cursor: move;
  touch-action: none;
}

.swiper .swiper-notification {
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
  opacity: 0;
  z-index: -1000;
}

.swiper-free-mode > .swiper-wrapper {
  transition-timing-function: ease-out;
  margin: 0 auto;
}

.swiper-grid > .swiper-wrapper {
  flex-wrap: wrap;
}

.swiper-grid-column > .swiper-wrapper {
  flex-wrap: wrap;
  flex-direction: column;
}

.swiper-fade.swiper-free-mode .swiper-slide {
  transition-timing-function: ease-out;
}

.swiper-fade .swiper-slide {
  pointer-events: none;
  transition-property: opacity;
}

.swiper-fade .swiper-slide .swiper-slide {
  pointer-events: none;
}

.swiper-fade .swiper-slide-active {
  pointer-events: auto;
}

.swiper-fade .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}

.swiper.swiper-cube {
  overflow: visible;
}

.swiper-cube .swiper-slide {
  pointer-events: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  z-index: 1;
  visibility: hidden;
  transform-origin: 0 0;
  width: 100%;
  height: 100%;
}

.swiper-cube .swiper-slide .swiper-slide {
  pointer-events: none;
}

.swiper-cube.swiper-rtl .swiper-slide {
  transform-origin: 100% 0;
}

.swiper-cube .swiper-slide-active, .swiper-cube .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}

.swiper-cube .swiper-slide-active, .swiper-cube .swiper-slide-next, .swiper-cube .swiper-slide-prev {
  pointer-events: auto;
  visibility: visible;
}

.swiper-cube .swiper-cube-shadow {
  position: absolute;
  left: 0;
  bottom: 0px;
  width: 100%;
  height: 100%;
  opacity: 0.6;
  z-index: 0;
}

.swiper-cube .swiper-cube-shadow:before {
  content: "";
  background: #000;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  filter: blur(50px);
}

.swiper-cube .swiper-slide-next + .swiper-slide {
  pointer-events: auto;
  visibility: visible;
}

.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-bottom, .swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-left, .swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-right, .swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-top {
  z-index: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.swiper.swiper-flip {
  overflow: visible;
}

.swiper-flip .swiper-slide {
  pointer-events: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  z-index: 1;
}

.swiper-flip .swiper-slide .swiper-slide {
  pointer-events: none;
}

.swiper-flip .swiper-slide-active, .swiper-flip .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}

.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-bottom, .swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-left, .swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-right, .swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-top {
  z-index: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.swiper-creative .swiper-slide {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  overflow: hidden;
  transition-property: transform, opacity, height;
}

.swiper.swiper-cards {
  overflow: visible;
}

.swiper-cards .swiper-slide {
  transform-origin: center bottom;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  overflow: hidden;
}

@media (max-width: 768px) {
  .width-md-100 {
    width: 100% !important;
  }
}
#appeals-data {
  display: flex;
  align-items: center;
  flex-direction: column-reverse;
}
@media only screen and (min-width: 769px) {
  #appeals-data {
    flex-direction: row;
    justify-content: space-between;
    /*display: flex;
    flex-direction: column;*/
  }
}
#appeals-data .appeals-totaliser {
  max-width: 60%;
}
@media only screen and (min-width: 769px) {
  #appeals-data .appeals-totaliser {
    max-width: 35%;
    align-self: start;
  }
}
#appeals-data .appeals-totaliser .js-appeals-total-pcnt {
  background: #fae6fa;
  display: inline-block;
  height: 0;
  padding-bottom: 96%;
  width: 96%;
  border-radius: 50%;
  color: #7A1B72;
  margin: 0% 2% 1em;
  position: relative;
  overflow: hidden;
  ffont-family: "cats-headline", Arial, Helvetica, sans-serif;
}
@media only screen and (min-width: 769px) {
  #appeals-data .appeals-totaliser .js-appeals-total-pcnt {
    width: 300px;
    height: 300px;
    /*margin: auto;*/
  }
}
#appeals-data .appeals-totaliser .js-appeals-total-pcnt span {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 99;
  font-size: 3em;
  padding: 0.5em 0.35em;
  background: #fae6fa;
  border-radius: 100% !important;
}
@media only screen and (min-width: 769px) {
  #appeals-data .appeals-totaliser .js-appeals-total-pcnt span {
    font-size: 4em;
  }
}
#appeals-data .appeals-totaliser .js-appeals-total-pcnt span:after {
  content: "%";
}
#appeals-data .appeals-totaliser .js-appeals-total-pcnt .js-appeals-total-pcnt-bg {
  content: "";
  background: #c928b2;
  display: inline-block;
  width: 100%;
  color: white;
  overflow: hidden;
  position: absolute;
  top: 100%;
  right: 0%;
  height: 500%;
}
@media only screen and (min-width: 769px) {
  #appeals-data .appeals-totaliser .js-appeals-total-pcnt .js-appeals-total-pcnt-bg {
    width: 300px;
  }
}
#appeals-data .appeals-totaliser .js-appeals-total-raised {
  text-align: center;
}
#appeals-data .appeals-totaliser .js-appeals-total-raised:before {
  content: "£";
  color: #7A1B72;
  font-size: 3em;
}
@media only screen and (min-width: 769px) {
  #appeals-data .appeals-totaliser .js-appeals-total-raised:before {
    font-size: 4em;
  }
}
#appeals-data .appeals-totaliser .js-appeals-total-raised span {
  color: #7A1B72;
  text-align: center;
  font-size: 3em;
}
@media only screen and (min-width: 769px) {
  #appeals-data .appeals-totaliser .js-appeals-total-raised span {
    font-size: 4em;
  }
}
#appeals-data .appeals-lb {
  min-width: 90%;
  display: flex;
  flex-direction: column;
}
@media only screen and (min-width: 769px) {
  #appeals-data .appeals-lb {
    min-width: 60%;
    max-width: 60%;
  }
}
#appeals-data .appeals-lb .appeals-lb-branch {
  display: flex;
  border-bottom: 1px solid grey;
  align-items: center;
}
#appeals-data .appeals-lb .appeals-lb-branch .appeals-lb-data {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  margin-bottom: 0.5em;
  flex-direction: column;
}
#appeals-data .appeals-lb .appeals-lb-branch .appeals-lb-data .appeals-lb-name {
  font-size: 1.4em;
  padding-top: 15px;
  font-family: "cats-headline", Arial, Helvetica, sans-serif;
}
#appeals-data .appeals-lb .appeals-lb-branch .appeals-lb-data .appeals-lb-name a {
  color: #c928b2;
  text-decoration: underline;
}
#appeals-data .appeals-lb .appeals-lb-branch .appeals-lb-data .appeals-lb-row {
  padding-top: 10px;
  padding-bottom: 10px;
  display: flex;
  align-items: center;
}
#appeals-data .appeals-lb .appeals-lb-branch .appeals-lb-data .appeals-lb-row .appeals-lb-raised {
  font-size: 1.5em;
}
#appeals-data .appeals-lb .appeals-lb-branch .appeals-lb-data .appeals-lb-row .appeals-lb-supporters {
  padding-left: 10px;
}
#appeals-data .appeals-lb .appeals-lb-branch .js-appeals-total-pcnt-branch {
  background: #c928b2;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  color: white;
  position: relative;
  overflow: hidden;
}
#appeals-data .appeals-lb .appeals-lb-branch .js-appeals-total-pcnt-branch span {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 99;
}
#appeals-data .appeals-lb .appeals-lb-branch .js-appeals-total-pcnt-branch span:after {
  content: "%";
}
#appeals-data .appeals-lb .appeals-lb-branch .js-appeals-total-pcnt-branch .js-appeals-total-pcnt-bg-branch {
  content: "";
  background: #7A1B72;
  width: 300px;
  height: 300px;
  margin: auto;
  color: white;
  position: absolute;
  top: 100%;
  right: 0%;
}
#appeals-data .active-branch {
  background-color: #7A1B72;
  padding-left: 10px;
  padding-right: 10px;
}
#appeals-data .appeals-lg-btn {
  display: none;
}
#appeals-data .appeals-md-sm-btn {
  display: inline-block;
}
#appeals-data .appeals-totaliser-fix {
  display: flex;
  width: 100%;
  max-width: 100%;
  align-items: center;
  justify-content: space-between;
}
@media only screen and (max-width: 600px) {
  #appeals-data .appeals-totaliser-fix {
    flex-direction: column;
  }
}
#appeals-data .js-appeals-total-pcnt-fix {
  max-width: 300px;
  max-height: 300px;
  height: 300px !important;
  width: 300px;
  padding-bottom: 0% !important;
  margin: 0;
  margin-bottom: 1em;
}
#appeals-data .js-appeals-total-pcnt-bg {
  content: "";
  background: #7A1B72;
  display: inline-block;
  width: 100%;
  color: white;
  overflow: hidden;
  position: absolute;
  top: 100%;
  right: 0%;
  height: 100%;
}
@media only screen and (min-width: 1024px) {
  #appeals-data .appeals-lg-btn {
    display: inline-block;
  }
  #appeals-data .appeals-md-sm-btn {
    display: none;
  }
}

/**
 * COMPONENTS
 * Basket
 */
.basket {
  display: flex;
  flex-direction: column;
  position: relative;
}

.basket__item,
.basket__summary {
  padding: 20px;
  display: block;
  justify-content: space-between;
  align-items: center;
}
@media only screen and (min-width: 1200px) {
  .basket__item,
  .basket__summary {
    padding: 20px 100px;
    display: flex;
  }
}
.basket__item .media,
.basket__summary .media {
  min-width: 200px;
  width: auto;
}
@media only screen and (min-width: 1200px) {
  .basket__item .media,
  .basket__summary .media {
    width: 200px;
  }
}
.basket__item div,
.basket__summary div {
  padding: 5px;
}
@media only screen and (min-width: 1200px) {
  .basket__item div,
  .basket__summary div {
    padding: 0 5%;
  }
}
.basket__item h3,
.basket__summary h3 {
  margin-bottom: 10px;
  margin-top: 10px;
  color: #7A1B72;
}
@media only screen and (min-width: 1200px) {
  .basket__item h3,
  .basket__summary h3 {
    margin-top: 0;
  }
}

.basket__item:nth-child(odd) {
  background-color: #fae6fa;
}
.basket__item:nth-child(even) {
  background-color: white;
}

@keyframes FLASH {
  0% {
    background-color: #7A1B72;
  }
  100% {
    background-color: #b7b7b7;
  }
}
.basket__summary {
  justify-content: flex-end;
}
.basket__summary h3 {
  width: auto;
  margin-bottom: 0;
  margin: 0 20px;
}

.basket-items {
  top: 0;
}

.basket-item-value {
  font-family: "cats-headline", Arial, Helvetica, sans-serif;
  color: #7A1B72;
  padding-bottom: 8px;
  font-size: 50px;
  vertical-align: middle;
  width: auto;
  display: flex;
  align-items: center;
  text-align: center;
  float: left;
}
@media only screen and (min-width: 1200px) {
  .basket-item-value {
    float: none;
  }
}
.basket-item-value span {
  font-size: 33%;
  white-space: nowrap;
  padding: 0 20px;
}
.basket__summary .basket-item-value {
  flex-direction: column;
  font-size: 70px;
}
.basket__summary .basket-item-value span {
  display: block;
}

.basket-item-btn {
  float: right;
}
@media only screen and (min-width: 1200px) {
  .basket-item-btn {
    float: none;
  }
}

/**
 * COMPONENTS
 * Basket Tracker
 */
.basket-tracker {
  position: relative;
  margin-right: 45px;
}
.basket-tracker:before {
  content: "\e92d";
  font-size: 45px;
  color: #7A1B72;
}
.basket-tracker:after {
  content: "pens added";
  position: absolute;
  top: 50%;
  left: 100%;
  display: block;
  color: #fff;
  font-size: 15px;
  transform: translateY(-50%);
  line-height: 1;
  padding-left: 5px;
}

.basket-tracker--sponsor {
  margin-right: 30px;
}
.basket-tracker--sponsor:before {
  font-size: 30px;
}
.basket-tracker--sponsor:after {
  display: none;
}
.basket-tracker--sponsor .basket-tracker__value {
  font-size: 15px;
  padding-top: 0.4em;
}
@media (min-width: 1200px) {
  .basket-tracker--sponsor {
    margin-right: 45px;
  }
  .basket-tracker--sponsor:before {
    font-size: 45px;
  }
  .basket-tracker--sponsor:after {
    display: block;
  }
  .basket-tracker--sponsor .basket-tracker__value {
    font-size: 24px;
    padding-top: 0.1em;
  }
}

.basket-tracker__value {
  font-size: 24px;
  padding-top: 0.1em;
  width: auto;
  position: absolute;
  color: #1E0028;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

/**
 * COMPONENTS
 * BLOCKQUOTE
 */
.blockquote {
  padding: 30px 70px 25px;
  color: #7A1B72;
}
.blockquote:before {
  content: "“";
  font-size: 130px;
  display: inline-block;
  margin-left: -57px;
  margin-bottom: 20px;
  vertical-align: bottom;
  line-height: 0;
}
.blockquote:after {
  content: "”";
  font-size: 100px;
  line-height: 0;
  padding-left: 10px;
  margin-right: -50px;
  margin-bottom: -25px;
  vertical-align: bottom;
  display: inline-block;
}

/**
 * COMPONENTS
 * BUTTONS
 * btn btn--color btn--icon btn--more
 */
.btn {
  transition: background-color 0.5s;
  cursor: pointer;
  vertical-align: middle;
  outline: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: auto;
  padding: 10px 23px;
  position: relative;
  text-decoration: none;
  text-align: center;
  border-radius: 6px;
  background-color: #7A1B72;
  color: white;
  transition-duration: 0s;
}
.btn:hover {
  background-color: #fae6fa;
  color: #7A1B72;
  transition-duration: 0s;
}
.btn.center, .btn--center {
  margin-left: auto;
  margin-right: auto;
  max-width: 250px;
}
.btn {
  /*
  // BTN STYLES WHILE SIMBITTING
  // USING DOUBLE SELECTOR FOR HIGHER SPECIFICITY
  &.is-submitting.is-submitting{
      pointer-events: none;
      color: transparent !important;
      // HIDE ARROWS
      border-color: transparent;
      // SET BACKGROUND STYLES
      background-color: $brand-black;
      background-image: url(../images/base64/SVG/tail-spin.gif);
      background-repeat: no-repeat;
      background-position: center;
      background-size: 30px;
  }

   */
}

.bg-grey .btn, .bg-green .btn {
  background-color: white;
  color: #7A1B72;
}
.bg-grey .btn:hover, .bg-green .btn:hover {
  background-color: #fae6fa;
  color: #7A1B72;
}

.bg-light-grey .btn {
  background-color: #7A1B72;
  color: white;
}
.bg-light-grey .btn:hover {
  background-color: #c928b2;
  color: white;
}
.bg-light-grey .btn.btn--white {
  background-color: white;
  color: #7A1B72;
}
.bg-light-grey .btn.btn--white:hover {
  background-color: #c928b2;
  color: white;
}

.btn--white-black {
  transition: background-color 0.5s;
  cursor: pointer;
  vertical-align: middle;
  outline: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: auto;
  padding: 10px 23px;
  position: relative;
  text-decoration: none;
  text-align: center;
  border-radius: 6px;
  background-color: #7A1B72;
  color: white;
  transition-duration: 0s;
}
.btn--white-black:hover {
  background-color: #fae6fa;
  color: #7A1B72;
  transition-duration: 0s;
}
.btn--white-black {
  background: white;
  color: #1E0028 !important;
  transition-duration: 0s;
}
.btn--white-black:hover {
  background: #fae6fa;
  color: #7A1B72;
  transition-duration: 0s;
}

.btn--secondary {
  transition: background-color 0.5s;
  cursor: pointer;
  vertical-align: middle;
  outline: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: auto;
  padding: 10px 23px;
  position: relative;
  text-decoration: none;
  text-align: center;
  border-radius: 6px;
  background-color: #7A1B72;
  color: white;
  transition-duration: 0s;
}
.btn--secondary:hover {
  background-color: #fae6fa;
  color: #7A1B72;
  transition-duration: 0s;
}
.btn--secondary {
  background: #c928b2;
  color: white;
  transition-duration: 0s;
}
.btn--secondary:hover {
  background: #fae6fa;
  color: #7A1B72;
  transition-duration: 0s;
}

.btn--thirdly {
  transition: background-color 0.5s;
  cursor: pointer;
  vertical-align: middle;
  outline: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: auto;
  padding: 10px 23px;
  position: relative;
  text-decoration: none;
  text-align: center;
  border-radius: 6px;
  background-color: #7A1B72;
  color: white;
  transition-duration: 0s;
}
.btn--thirdly:hover {
  background-color: #fae6fa;
  color: #7A1B72;
  transition-duration: 0s;
}
.btn--thirdly {
  background: #fae6fa;
  color: #7A1B72;
  transition-duration: 0s;
}
.btn--thirdly:hover {
  background-color: #7A1B72;
  color: white;
  transition-duration: 0s;
}

.btn--fourthly {
  transition: background-color 0.5s;
  cursor: pointer;
  vertical-align: middle;
  outline: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: auto;
  padding: 10px 23px;
  position: relative;
  text-decoration: none;
  text-align: center;
  border-radius: 6px;
  background-color: #7A1B72;
  color: white;
  transition-duration: 0s;
}
.btn--fourthly:hover {
  background-color: #fae6fa;
  color: #7A1B72;
  transition-duration: 0s;
}
.btn--fourthly {
  background: white !important;
  color: #c928b2 !important;
  transition-duration: 0s;
}
.btn--fourthly:hover {
  background-color: #fae6fa !important;
  color: #c928b2 !important;
  transition-duration: 0s;
}

.btn--lg {
  font-size: 26px;
  padding: 16px 30px;
}

.btn--sm {
  font-size: 14px;
  padding: 5px 15px;
}

.btn--search {
  width: 40px;
  min-width: 40px;
  height: 40px;
  justify-content: flex-start;
  padding: 0;
  overflow: hidden;
  color: #1E0028;
  background-color: transparent;
  border-radius: 2px;
}
.btn--search:before {
  content: "\e902";
  font-size: 44px;
  width: 40px;
  margin-right: 0px;
}
.btn--search {
  transition-duration: 0s;
}
.btn--search:hover, .is-active .btn--search {
  background-color: transparent;
  color: #7A1B72;
  transition-duration: 0s;
}

.btn--block {
  display: block;
}

.btn--primary {
  background-color: #7A1B72;
  color: white;
  transition-duration: 0s;
}

.btn--orange {
  background-color: #7A1B72;
  color: #1E0028;
  transition-duration: 0s;
}

.btn--blue {
  background-color: #7A1B72;
  color: white;
  transition-duration: 0s;
}

.btn--green {
  background-color: #50ad45;
  color: white;
  transition-duration: 0s;
}

.btn--dark-green {
  background-color: green;
  color: white;
  transition-duration: 0s;
}

.btn--bright-green {
  background-color: #9fcc3f;
  color: white;
  transition-duration: 0s;
}

.btn--light-blue {
  background-color: #c928b2;
  color: white;
  transition-duration: 0s;
}

.btn--yellow {
  background-color: #F7E313;
  color: #1E0028;
  transition-duration: 0s;
}

.btn--red {
  background-color: #eb533b;
  color: white;
  transition-duration: 0s;
}

.btn--purple {
  background-color: #7A1B72;
  color: white;
  transition-duration: 0s;
}

.btn--grey {
  background-color: #1E0028;
  color: white;
  transition-duration: 0s;
}

.btn--mid-grey {
  background-color: #fae6fa;
  color: white;
  transition-duration: 0s;
}

.btn--light-grey {
  background-color: #b7b7b7;
  color: #1E0028;
  transition-duration: 0s;
}

.btn--black {
  background-color: #1E0028;
  color: white;
  transition-duration: 0s;
}

.btn--white {
  background-color: white;
  color: #7A1B72;
  transition-duration: 0s;
}

.btn--twt {
  background-color: #7db6df;
  color: white;
  transition-duration: 0s;
}

.btn--fbk {
  background-color: #3b5998;
  color: white;
  transition-duration: 0s;
}

.btn--twt2 {
  background-color: white;
  color: #1E0028;
  transition-duration: 0s;
}
.btn--twt2:hover {
  background-color: #1E0028;
  color: white;
  transition-duration: 0s;
}

.btn--fbk2 {
  background-color: white;
  color: #1A006B;
  transition-duration: 0s;
}
.btn--fbk2:hover {
  background-color: #1A006B;
  color: white;
  transition-duration: 0s;
}

.btn--paypal {
  background-color: #7A1B72;
  color: white;
  transition-duration: 0s;
}

/* Fix Primary */
.btn--primary:hover {
  background-color: white;
  color: #c928b2;
}

.btn--tabs {
  white-space: nowrap;
  padding: 26px 30px;
}
.btn--tabs.is-active, .btn--tabs:hover {
  background-color: white;
  color: #1E0028;
  transition-duration: 0s;
}

.btn--edit-cat {
  margin-right: 10px;
}

.btn--more:after {
  content: "\e901";
  font-size: 24px;
  transform: translateX(50%);
}
.btn--more.is-active:after {
  content: "\e90b";
}
.btn--more[class*="--lg"]:after {
  font-size: 30px;
}
.btn--more[class*="--sm"]:after {
  font-size: 20px;
}

.btn--cover {
  display: flex;
  width: 100%;
  height: 100%;
}

.btn--fbk {
  font-size: 20px;
  min-height: 44px;
}
.btn--fbk:before {
  content: "\e909";
  transform: translateX(-35%);
  font-size: 36px;
}

.btn--twt {
  font-size: 20px;
  min-height: 44px;
}
.btn--twt:before {
  content: "\e904";
  transform: translateX(-35%);
  font-size: 36px;
}

.btn--fbk2 {
  font-size: 20px;
  min-height: 44px;
}
.btn--fbk2:before {
  content: "\e909";
  transform: translateX(-35%);
  font-size: 36px;
}

.btn--twt2 {
  font-size: 20px;
  min-height: 44px;
}
.btn--twt2:before {
  content: "\e904";
  transform: translateX(-35%);
  font-size: 36px;
}

.btn--mail {
  font-size: 20px;
  min-height: 44px;
}
.btn--mail:before {
  content: "\e92c";
  transform: translateX(-35%);
  font-size: 36px;
}

.btn--phone {
  font-size: 20px;
  min-height: 44px;
}
.btn--phone:before {
  content: "\e90d";
  transform: translateX(-35%);
  font-size: 36px;
}

.btn--paypal {
  font-size: 20px;
  min-height: 44px;
  height: auto;
}
.btn--paypal:before {
  content: "\e926";
  transform: translateX(-35%);
  font-size: 36px;
  font-size: 28px;
}

[data-reveal],
[data-toggle] {
  cursor: pointer;
}

/*
button[data-stat]{
    display: flex;
    align-items: center;
    @extend %ts-8;
    color: $brand-black;
    max-width: 180px;
    text-align: left;
    line-height: 20px;
    pointer-events: none;

    span{
        width: 40px;
        min-width: 40px;
        height: 40px;
        line-height: 40px;
        text-align: center;
        color: white;
        background-color: $brand-red;
        border-radius: 50%;
        margin-right: 10px;
    }

    &:hover{
        span{
            background-color: $brand-purple;
        }
    }
}
*/
button[data-toggle=previous-guests]:before {
  content: "View your previous sponsor cats";
}
button[data-toggle=previous-guests].is-active:before {
  content: "Close";
}

.btn[class*="--crop"] {
  font-size: 22px;
  padding: 4px 4px;
}

.btn--crop-rotate {
  font-size: 20px;
}

.btn--crop-in:before {
  content: "\e901";
}

.btn--crop-out:before {
  content: "\e90b";
}

.btn--crop-rotate:before {
  content: "\e92f";
  font-size: 22px;
}

.btn--crop-left:before {
  content: "\e905";
}

.btn--crop-right:before {
  content: "\e906";
}

.btn--crop-up:before {
  content: "\e905";
  transform: rotate(90deg);
}

.btn--crop-down:before {
  content: "\e905";
  transform: rotate(-90deg);
}

.btn--next,
.btn--prev {
  display: inline-flex;
  align-items: center;
  position: relative;
}

.btn--next {
  padding-right: 10px;
  width: 144px;
}
.btn--next:after {
  content: "\e906";
  margin-left: 10px;
}

.btn--prev {
  padding-left: 10px;
}
.btn--prev:before {
  content: "\e905";
  margin-right: 10px;
}

.btn--right {
  float: right;
}

.btn a {
  color: inherit !important;
  text-decoration: inherit !important;
  padding: 0 !important;
}
.btn[style*="text-align: right;"] {
  float: right;
}

p .btn {
  margin-bottom: 5px;
}

.btn--full-width {
  display: flex;
}

.btn--mobile-search {
  background-color: transparent;
  color: #7A1B72;
  padding: 5px;
}
.btn--mobile-search:before {
  font-size: 35px;
}

.btn--close {
  background-color: transparent;
  color: #7A1B72;
  width: 44px;
  height: 44px;
  font-size: 35px;
  margin-right: 10px;
  padding: 0;
}
.btn--close:after {
  content: "\e907";
}
.btn--close {
  transition-duration: 0s;
}
.btn--close:hover {
  color: inherit;
  background-color: transparent;
  transition-duration: 0s;
}

.btn--long {
  padding: 20px 50px;
}

/**
 * COMPONENTS
 * CAT COMMUNITY
 * Se
 */
.cats-community-container {
  max-width: 460px;
  margin: 0 auto;
}
@media (min-width: 768px) {
  .cats-community-container {
    max-width: none;
    margin: 0;
  }
}

.cat-community {
  background-color: #b7b7b7;
}

@media (min-width: 1024px) {
  .cat-community__header {
    display: flex;
    justify-content: space-between;
  }
}
.cat-community__header {
  padding-top: 10px;
  padding-bottom: 10px;
}
.cat-community__header button,
.cat-community__header .link {
  outline: none;
}
.cat-community__header .link {
  font-family: "metrify-light", Arial, Helvetica, sans-serif;
  color: #1E0028;
  position: relative;
  display: block;
  margin: 0 0 10px;
}
@media (min-width: 640px) {
  .cat-community__header .link {
    display: inline-flex;
    align-items: center;
    margin: 0 20px 0 0;
  }
}
.cat-community__header .link {
  transition-duration: 0s;
}
.cat-community__header .link:hover, .cat-community__header .link.is-active {
  text-decoration: underline;
}
@media (min-width: 768px) {
  .cat-community__header .link:hover, .cat-community__header .link.is-active {
    text-decoration: none;
  }
}
@media (min-width: 768px) {
  .cat-community__header .link:hover:after, .cat-community__header .link.is-active:after {
    content: "";
    width: 100%;
    height: 1px;
    background-color: #1E0028;
    position: absolute;
    bottom: 4px;
    left: 0;
  }
}
.cat-community__header .link.is-active {
  font-family: "metrify-regular", Arial, Helvetica, sans-serif;
  pointer-events: none;
}
@media (min-width: 768px) {
  .cat-community__header .link + .link:before {
    content: "";
    display: block;
    width: 1px;
    left: -10px;
    top: 0;
    height: 20px;
    background-color: #1E0028;
    position: absolute;
  }
}

.cats-community-heading {
  margin: 0 0 20px;
}

.cat-community__cats {
  background-color: white;
}

/**
 * COMPONENTS
 * Comments
 * These styles handle the comments section found in the sponsorship templates.
 */
.comments {
  position: relative;
  overflow-x: hidden;
  overflow-y: auto;
  height: 100%;
  /*
  .media &{
      &:after{
          content: '';
          width: 100%;
          height: 75px;
          background-color: white;
          display: block;
          position: absolute;
          bottom: 0;
          left: 0;
      }
  }

   */
}

.media .comments__header {
  display: flex;
  flex-wrap: wrap;
  margin: 0 0 1em;
}
.media .comments__header h3 {
  display: flex;
  align-items: center;
  margin-bottom: 10px;
}
.media .comments__header h3:before {
  content: "";
  display: block;
  width: 50px;
  height: 50px;
  margin-right: 5px;
  background-image: url(../images/base64/SVG/gallery-icon-yellow.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
.media .comments__header h2 {
  font-family: "metrify-bold", Arial, Helvetica, sans-serif;
  padding-top: 6px;
}
.media .comments__header h4 {
  color: #7A1B72;
  font-family: "metrify-regular", Arial, Helvetica, sans-serif;
}
.media .comments__header .user-icon {
  border-radius: 50%;
  width: 60px;
  height: 60px;
  overflow: hidden;
  box-shadow: 0 7px 12px -1px rgba(30, 0, 40, 0.2);
}
.media .comments__header .user-icon:not([class*=bg-theme]) {
  background-color: #b7b7b7;
}
.media .comments__header .user-icon[style*=background-image] {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}
.media .comments__header .user-icon[style*='background-image: url("/");']:after, .media .comments__header .user-icon[style*="background-image: url('/');"]:after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-size: 80%;
  background-position: bottom -1px center;
  background-repeat: no-repeat;
  background-image: url("../images/base64/SVG/user-icon.svg");
}
.media .comments__header .user-icon {
  float: left;
  margin-right: 10px;
}
.media .comments__header > div:nth-child(1) {
  width: 60%;
  margin-bottom: 10px;
}
.media .comments__header > div:nth-child(2) {
  width: 40%;
  text-align: right;
  margin-bottom: 10px;
}
.comments--page .comments__header {
  display: flex;
  padding-bottom: 20px;
  border-bottom: 1px solid #b7b7b7;
}
.comments--page .comments__header button,
.comments--page .comments__header .link {
  outline: none;
  white-space: nowrap;
  margin-left: 20px;
}
.comments--page .comments__header .link {
  font-family: "metrify-light", Arial, Helvetica, sans-serif;
  color: #1E0028;
  position: relative;
  font-family: "metrify-light", Arial, Helvetica, sans-serif;
  color: #1E0028;
  position: relative;
  white-space: nowrap;
  display: inline-flex;
  align-items: center;
  transition-duration: 0s;
}
.comments--page .comments__header .link:hover:after, .comments--page .comments__header .link.is-active:after {
  content: "";
  width: 100%;
  height: 1px;
  background-color: #1E0028;
  position: absolute;
  bottom: 4px;
  left: 0;
}
.comments--page .comments__header .link.is-active {
  font-family: "metrify-regular", Arial, Helvetica, sans-serif;
  pointer-events: none;
}
.comments--page .comments__header .link + .link:before {
  content: "";
  display: block;
  width: 1px;
  left: -10px;
  top: 10px;
  height: 20px;
  background-color: #1E0028;
  position: absolute;
}

.media .comments__feed {
  padding: 20px 0 50px;
  height: 100%;
  max-height: 400px;
  margin-top: 20px;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  position: relative;
}
.media .comments__feed::-webkit-scrollbar {
  display: none;
}
.comments--page .comments__feed {
  margin-top: 40px;
  clear: both;
}
.comments--page .comments__feed .btn {
  margin-top: 20px;
  float: right;
}
.comments__feed ul {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 0 10px 0 0;
}

.comments__input {
  border: none;
  padding-left: 0;
  padding-right: 0;
  padding-top: 15px;
  border-top: 1px solid #b7b7b7;
  width: 100%;
}

.comments__input-wrapper {
  position: absolute;
  z-index: 200;
  left: 20px;
  right: 20px;
  bottom: 20px;
}

.comments__helper {
  background-color: #1E0028;
  color: white;
  position: absolute;
  left: 0;
  right: 0;
  padding: 20px;
  bottom: 50px;
  transition-duration: 250ms;
  transform: translateY(100%);
  opacity: 0;
  pointer-events: none;
  z-index: 300;
}

.comments__input:focus + .comments__helper {
  transform: translateY(0%);
  opacity: 1;
  pointer-events: all;
}

.comment {
  /*
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  padding-left: 45px;
  position: relative;
  margin-bottom: 12px;
   */
}
.comment .comment__headshot {
  border-radius: 50%;
  width: 35px;
  height: 35px;
  overflow: hidden;
  box-shadow: 0 7px 12px -1px rgba(30, 0, 40, 0.2);
}
.comment .comment__headshot:not([class*=bg-theme]) {
  background-color: #b7b7b7;
}
.comment .comment__headshot[style*=background-image] {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}
.comment .comment__headshot[style*='background-image: url("/");']:after, .comment .comment__headshot[style*="background-image: url('/');"]:after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-size: 80%;
  background-position: bottom -1px center;
  background-repeat: no-repeat;
  background-image: url("../images/base64/SVG/user-icon.svg");
}
.comment .comment__headshot {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}
.comment .comment__name {
  width: auto;
  font-family: "metrify-bold", Arial, Helvetica, sans-serif;
  font-size: 18px;
  margin-bottom: 3px;
}
.comment .comment__date {
  width: auto;
  text-align: right;
}
.comments--page .comment {
  padding-left: 100px;
  margin-bottom: 30px;
  font-family: "metrify-regular", Arial, Helvetica, sans-serif;
}
.comments--page .comment p {
  font-size: 19px;
  color: #1E0028;
  opacity: 0.8;
}
.comments--page .comment .comment__headshot {
  border-radius: 50%;
  width: 60px;
  height: 60px;
  overflow: hidden;
  box-shadow: 0 7px 12px -1px rgba(30, 0, 40, 0.2);
}
.comments--page .comment .comment__headshot:not([class*=bg-theme]) {
  background-color: #b7b7b7;
}
.comments--page .comment .comment__headshot[style*=background-image] {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}
.comments--page .comment .comment__headshot[style*='background-image: url("/");']:after, .comments--page .comment .comment__headshot[style*="background-image: url('/');"]:after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-size: 80%;
  background-position: bottom -1px center;
  background-repeat: no-repeat;
  background-image: url("../images/base64/SVG/user-icon.svg");
}
.comments--page .comment .comment__date {
  color: #7A1B72;
  font-family: "metrify-regular", Arial, Helvetica, sans-serif;
  font-size: 16px;
  opacity: 1;
}
.comments--page .comment .comment__name {
  font-size: 22px;
  margin-bottom: 7px;
}
.comments--no-headshot .comment {
  padding-left: 0;
}

.comment {
  background-color: #f1f1f1;
  padding: 1em;
  margin: 0 0 1em;
  font-size: 14px;
  border-radius: 0.4em;
}

.comment__header {
  display: flex;
  margin: 0 0 0.5em;
}

.comment__copy {
  font-size: 12px;
}

.comment__date {
  font-size: 12px;
}

/**
 * COMPONENTS
 * COUNTER
 * These components are used to keep track of comment and like counts in the Cat Community Sections.
 */
.counter {
  display: inline-flex;
  width: auto;
  align-items: center;
  justify-content: flex-end;
  font-family: "metrify-bold", Arial, Helvetica, sans-serif;
  margin-bottom: 2px;
  color: #1E0028;
}
.counter:before {
  width: 30px;
  height: 30px;
  display: block;
  margin-right: 5px;
  font-size: 25px;
  line-height: 30px;
  color: #b7b7b7;
}
h3 .counter {
  font-size: 20px;
  float: right;
  margin-right: 15px;
  margin-top: 10px;
}

button.counter {
  outline: none;
}
button.counter.is-active:before {
  color: #eb533b;
}

.counter--large {
  transform: scale(1.2);
}
.counter--large + .counter--large, .counter--large + form .counter--large {
  margin-left: 24px;
}

.counter--like[data-like=true]:before {
  color: #eb533b;
}
.counter--like:before {
  content: "\e91c";
}

.counter--comments:before {
  content: "\e91b";
  font-size: 34px;
  padding-right: 4px;
}

.counter-summary {
  position: absolute;
  right: 3vw;
  display: flex;
  transform: scale(1.2);
  margin-right: 20px;
}
.counter-summary .counter {
  color: white;
}
.counter-summary .counter:before {
  color: white;
}

/**
 * COMPONENTS
 * CARD
 * 
 */
.card {
  display: block;
  padding: 20px 15px;
  position: relative;
  height: 100%;
  border: 1px solid #b7b7b7;
}
@media only screen and (min-width: 769px) {
  .card {
    padding: 30px;
  }
}

a.card.card.card.card {
  transition-duration: 0s;
}
a.card.card.card.card:hover {
  background-color: #50ad45;
  color: white;
  transition-duration: 0s;
}

.card--btn {
  padding-bottom: 70px;
}
.card--btn .btn {
  position: absolute;
  bottom: 30px;
}

/**
 * COMPONENTS
 * Cookies
 * This is an example of a component partial
 */
.cookies {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  position: fixed;
  z-index: 100;
  padding: 20px;
  top: -300px;
  background-color: white;
  transition: top 500ms 500ms;
  transition-timing-function: ease-in-out;
}
.open-notifications .cookies {
  top: 0;
}

.cookies__message {
  margin-bottom: 30px;
}

@media only screen and (min-width: 769px) {
  .cookies {
    flex-direction: row;
  }
  .cookies__message {
    margin-bottom: 0;
  }
}
/**
 * COMPONENTS
 * CROP WINDOW
 * This is the sub popup for managing image crops before upload.
 */
#crop-me {
  max-width: 100%;
}

.crop-window {
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: rgba(122, 27, 114, 0.9);
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  pointer-events: none;
}
.crop-window.is-active {
  opacity: 1;
  pointer-events: all;
}

.crop-window__inner {
  padding: 20px;
  background: white;
  box-shadow: 0 0 20px 5px rgba(30, 0, 40, 0.2);
  max-width: 440px;
  margin-left: auto;
  margin-right: auto;
}

.crop-window__canvas {
  width: 300px;
  height: 300px;
  margin: 0 auto 20px;
}

.crop-window__btns {
  display: flex;
  flex-wrap: wrap;
  align-content: center;
  justify-content: space-between;
}
.crop-window__btns .btn {
  margin: 0 2px 10px;
}

#cropResult canvas {
  width: 100%;
}

/**
 * COMPONENTS
 * CTA WALL
 * 
 */
.cta-wall {
  position: relative;
}
.cta-wall.is-active:after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-color: rgba(30, 0, 40, 0.3);
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

.cta-wall__popup {
  position: absolute;
  top: 100px;
  z-index: 1;
  color: white;
  background-color: rgba(30, 0, 40, 0.8);
  text-align: center;
  width: 100%;
  padding: 30px;
  cursor: pointer;
  display: none;
}
.cta-wall__popup h3 {
  color: white !important;
  font-size: 40px !important;
  margin-bottom: 15px;
}
.cta-wall__popup h6 {
  color: white !important;
}
.is-active .cta-wall__popup {
  display: block;
}

/**
 * COMPONENTS
 * DOTS for slick sliders
 */
.slick-dots {
  align-items: center;
  justify-content: center;
  top: 60px;
  left: 0;
  right: 0;
  list-style: none;
  text-align: center;
  margin: 0;
  width: 100%;
  padding: 0;
}
.slick-dots li:only-child {
  display: none;
}
.slick-dots li {
  position: relative;
  display: inline-block;
  height: 20px;
  width: 20px;
  margin: 0 2px;
  padding: 0;
  cursor: pointer;
}
.slick-dots li button {
  border: 0;
  background: transparent;
  display: block;
  height: inherit;
  width: inherit;
  outline: none;
  line-height: 0px;
  font-size: 0px;
  color: transparent;
  padding: 5px;
  cursor: pointer;
  transition-duration: 0s;
}
.slick-dots li button:hover, .slick-dots li button:focus {
  outline: none;
}
.slick-dots li button:hover:before, .slick-dots li button:focus:before {
  opacity: 1;
}
.slick-dots li button:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  width: inherit;
  height: inherit;
  overflow: hidden;
  line-height: 20px;
  text-align: center;
  background-color: #b7b7b7;
  opacity: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  border-radius: 50%;
  opacity: 1;
}
[class*=twitter] .slick-dots li, [class*=facebook] .slick-dots li {
  width: 12px;
  height: 12px;
}
[class*=twitter] .slick-dots li button:before, [class*=facebook] .slick-dots li button:before {
  background-color: #cccccc;
}
.slick-dots li.slick-active {
  width: 25px;
  height: 25px;
}
.slick-dots li.slick-active button {
  width: inherit;
  height: inherit;
}
.slick-dots li.slick-active button:before {
  width: inherit;
  height: inherit;
  background-color: #7A1B72;
}
[class*=twitter] .slick-dots li.slick-active, [class*=facebook] .slick-dots li.slick-active {
  width: 16px;
  height: 16px;
}
[class*=twitter] .slick-dots li.slick-active button:before, [class*=facebook] .slick-dots li.slick-active button:before {
  background-color: #7a7a7a;
}

/**
 * COMPONENTS
 * Example
 * This is an example of a component partial
 */
.example:before {
  content: " This is the ' example ' component. 🤓 HEY THERE!";
}

/**
 * COMPONENTS / LAYOUT
 * ez Search
 */
@media (min-width: 600px) {
  .ezsearch-result {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
}

.ezsearch-pager {
  width: 100%;
  padding: 0 0 40px;
  position: relative;
}
.ezsearch-pager div {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  margin: 0 0 20px;
}
.ezsearch-pager .page--link {
  text-decoration: underline;
}
.ezsearch-pager .prev {
  position: absolute;
  left: 0;
  bottom: 0;
}
.ezsearch-pager .prev:before {
  content: "\e905";
  padding-right: 10px;
  font-size: 14px;
}
.ezsearch-pager .next {
  position: absolute;
  right: 0;
  bottom: 0;
}
.ezsearch-pager .next:after {
  content: "\e906";
  padding-left: 10px;
  font-size: 14px;
}
.ezsearch-pager span.prev,
.ezsearch-pager span.next {
  display: none;
}
.ezsearch-pager .page {
  display: inline-block;
  width: 30px;
  height: 30px;
  text-align: center;
}

.ezsearch-form {
  margin-left: auto;
}

/**
 * COMPONENTS
 * FAQ
 */
.faq-q, .faq-link {
  background-color: #7A1B72;
  padding: 10px 30px;
  display: flex;
  color: #1E0028;
  text-decoration: none;
  text-indent: 0;
  transition: text-indent 200ms ease-in-out;
  margin-bottom: 10px !important;
  transition-duration: 0s;
}
.faq-q:hover, .faq-link:hover {
  color: #1E0028;
  text-indent: 5px;
  transition-duration: 0s;
}
.faq-q:after, .faq-link:after {
  content: "\e901";
  margin-top: 2px;
  margin-left: 10px;
  text-indent: 0;
}
.faq-q.is-active, .faq-link.is-active {
  text-indent: 5px;
}
.faq-q.is-active:after, .faq-link.is-active:after {
  content: "\e90b";
  text-indent: 0;
}

.faq-q--alt {
  background-color: transparent;
  padding: 30px 0;
  margin-bottom: 0;
  border-top: 1px solid #b7b7b7;
}
.faq-q--alt:after {
  content: "\e931";
  position: absolute;
  right: 15px;
}
.faq-q--alt.is-active:after {
  content: "\e931";
  transform: rotate(180deg);
}
.faq-q--alt:first-of-type {
  border-top: none;
}

.faq-link:after {
  content: "";
}
.faq-link.is-active:after {
  content: "";
}

.faq-a {
  padding: 0 0 0 0;
  margin-bottom: 0;
}
@media only screen and (min-width: 1024px) {
  .faq-a {
    padding: 0 0 0 0;
  }
}
.faq-a > p {
  margin-bottom: 15px;
}
.faq-a .faq-a {
  background-color: white;
  padding: 0 0 0 10px;
}
.faq-a .body-copy {
  margin-bottom: 0px;
}
.faq-a[style*=max-height] {
  overflow-y: auto !important;
}

.faq-a--alt {
  background-color: transparent;
  margin-bottom: 0;
  padding: 0;
}
@media only screen and (min-width: 1024px) {
  .faq-a--alt {
    padding: 0px 5px 20px 5px;
  }
}

.events_cart {
  width: 100%;
  padding: 1em 1em 0;
  display: inline-block;
}
.cart_item {
  width: 100%;
  padding: 0 0 1em;
}
@media (min-width: 768px) {
  .cart_item {
    display: flex;
  }
}

.cart_info_col {
  width: 100%;
  display: inline-block;
  min-height: 70px;
}
.cart_info_col .ts-5 {
  padding-top: 0.75em;
}

.cart_item_details {
  display: flex;
}

.cart_item_title {
  width: 100%;
}

@media (min-width: 768px) {
  .cart_item_price {
    text-align: right;
  }
}

.cart_item_quantity {
  text-align: right;
}
.cart_item_quantity .form__select {
  width: 120px;
  background-color: #fff !important;
  margin: 0.5em 0 0;
}

.cart_discount_code {
  max-width: 200px;
}

.login-button {
  color: #fff;
  display: flex;
  font-size: 15px;
  line-height: 1;
  align-items: center;
}
.login-button:before {
  content: "\e92e";
  font-size: 45px;
  display: block;
  color: #7A1B72;
}

.login-button--sponsor {
  margin-right: 30px;
}
.login-button--sponsor span {
  display: none;
}
.login-button--sponsor:before {
  font-size: 30px;
}
@media (min-width: 1200px) {
  .login-button--sponsor {
    margin: 0 20px;
  }
  .login-button--sponsor span {
    display: inline;
  }
  .login-button--sponsor:before {
    font-size: 45px;
  }
}

/* ----------------------------------------------------------------------------------------------------

Super Form Reset

A couple of things to watch out for:

- IE8: If a text input doesn't have padding on all sides or none the text won't be centered.
- The default border sizes on text inputs in all UAs seem to be slightly different. You're better off using custom borders.
- You NEED to set the font-size and family on all form elements
- Search inputs need to have their appearance reset and the box-sizing set to content-box to match other UAs
- You can style the upload button in webkit using ::-webkit-file-upload-button
- ::-webkit-file-upload-button selectors can't be used in the same selector as normal ones. FF and IE freak out.
- IE: You don't need to fake inline-block with labels and form controls in IE. They function as inline-block.
- By turning off ::-webkit-search-decoration, it removes the extra whitespace on the left on search inputs

----------------------------------------------------------------------------------------------------*/
input,
label,
select,
button,
textarea {
  margin: 0;
  border: 0;
  padding: 0;
  display: inline-block;
  vertical-align: middle;
  white-space: normal;
  background: none;
  line-height: 1;
}

/* Remove the stupid outer glow in Webkit */
input:focus {
  outline: 0;
}

/* Box Sizing Reset
-----------------------------------------------*/
/* All of our custom controls should be what we expect them to be */
input,
textarea {
  -webkit-box-sizing: content-box;
  -moz-box-sizing: content-box;
  box-sizing: content-box;
}

/* These elements are usually rendered a certain way by the browser */
button,
input[type=reset],
input[type=button],
input[type=submit],
input[type=checkbox],
input[type=radio],
select {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

/* Button Controls
-----------------------------------------------*/
input[type=checkbox],
input[type=radio] {
  width: 13px;
  height: 13px;
}

/* File Uploads
-----------------------------------------------*/
/* Search Input
-----------------------------------------------*/
/* Make webkit render the search input like a normal text field */
input[type=search] {
  -webkit-appearance: textfield;
  -webkit-box-sizing: content-box;
}

/* Turn off the recent search for webkit. It adds about 15px padding on the left */
::-webkit-search-decoration {
  display: none;
}

/* Buttons
-----------------------------------------------*/
button,
input[type=reset],
input[type=button],
input[type=submit] {
  /* Fix IE7 display bug */
  overflow: visible;
  width: auto;
}

/* IE8 and FF freak out if this rule is within another selector */
::-webkit-file-upload-button {
  padding: 0;
  border: 0;
  background: none;
}

/* Textarea
-----------------------------------------------*/
textarea {
  /* Move the label to the top */
  vertical-align: top;
  /* Turn off scroll bars in IE unless needed */
  overflow: auto;
}

/* Selects
-----------------------------------------------*/
select[multiple] {
  /* Move the label to the top */
  vertical-align: top;
}

fieldset {
  border: none;
  width: auto;
  padding: 0;
}

/**
 * COMPONENTS
 * FORM - BASE
 */
/* Text Inputs
-----------------------------------------------*/
.input,
.form__input,
.form__message,
.select,
.form__select,
.form__date {
  box-sizing: border-box;
  background-color: white;
  border: 1px solid rgba(30, 0, 40, 0);
  height: 44px;
  width: 100%;
  padding: 0 12px;
  font-size: 16px;
  resize: none;
  font-size: 16px;
  line-height: 25px;
}
.input small,
.form__input small,
.form__message small,
.select small,
.form__select small,
.form__date small {
  font-size: 15px;
}
.input strong,
.form__input strong,
.form__message strong,
.select strong,
.form__select strong,
.form__date strong {
  font-weight: bold;
}
.input strong em,
.form__input strong em,
.form__message strong em,
.select strong em,
.form__select strong em,
.form__date strong em {
  font-weight: bold;
  font-style: italic;
}
.input em,
.form__input em,
.form__message em,
.select em,
.form__select em,
.form__date em {
  font-style: italic;
}
.input em strong,
.form__input em strong,
.form__message em strong,
.select em strong,
.form__select em strong,
.form__date em strong {
  font-weight: bold;
  font-style: italic;
}
@media only screen and (min-width: 769px) {
  .input,
  .form__input,
  .form__message,
  .select,
  .form__select,
  .form__date {
    font-size: 17px;
    line-height: 25px;
  }
}
.input,
.form__input,
.form__message,
.select,
.form__select,
.form__date {
  font-family: Arial, Helvetica, sans-serif;
  /*border-radius:6px;*/
}
.input[class*=large],
.form__input[class*=large],
.form__message[class*=large],
.select[class*=large],
.form__select[class*=large],
.form__date[class*=large] {
  height: 56px;
  font-size: 18px;
}
.input[type=password],
.form__input[type=password],
.form__message[type=password],
.select[type=password],
.form__select[type=password],
.form__date[type=password] {
  letter-spacing: 2px;
}
.input[type=password]::-webkit-input-placeholder,
.form__input[type=password]::-webkit-input-placeholder,
.form__message[type=password]::-webkit-input-placeholder,
.select[type=password]::-webkit-input-placeholder,
.form__select[type=password]::-webkit-input-placeholder,
.form__date[type=password]::-webkit-input-placeholder { /* Chrome/Opera/Safari */
  letter-spacing: 0;
}
.input[type=password]::-moz-placeholder,
.form__input[type=password]::-moz-placeholder,
.form__message[type=password]::-moz-placeholder,
.select[type=password]::-moz-placeholder,
.form__select[type=password]::-moz-placeholder,
.form__date[type=password]::-moz-placeholder { /* Firefox 19+ */
  letter-spacing: 0;
}
.input[type=password]:-ms-input-placeholder,
.form__input[type=password]:-ms-input-placeholder,
.form__message[type=password]:-ms-input-placeholder,
.select[type=password]:-ms-input-placeholder,
.form__select[type=password]:-ms-input-placeholder,
.form__date[type=password]:-ms-input-placeholder { /* IE 10+ */
  letter-spacing: 0;
}
.input[type=password]:-moz-placeholder,
.form__input[type=password]:-moz-placeholder,
.form__message[type=password]:-moz-placeholder,
.select[type=password]:-moz-placeholder,
.form__select[type=password]:-moz-placeholder,
.form__date[type=password]:-moz-placeholder { /* Firefox 18- */
  letter-spacing: 0;
}

.input,
.form__input,
.form__select,
.form__message,
.form__checkbox,
.form__radio,
.form__date {
  border-radius: 6px;
  border: none !important;
  box-shadow: none !important;
  transition: box-shadow 50ms;
  transition-timing-function: ease-in-out;
}
.input:focus,
.form__input:focus,
.form__select:focus,
.form__message:focus,
.form__checkbox:focus,
.form__radio:focus,
.form__date:focus {
  outline: 0;
  background-color: white;
  /*box-shadow: 0 0 5px 2px rgba(94, 94, 94, 0.15);*/
}

.form__message {
  padding-top: 12px;
  padding-bottom: 12px;
  height: auto;
}

.input::-webkit-input-placeholder,
.form__input::-webkit-input-placeholder,
[type=text]::-webkit-input-placeholder { /* Chrome/Opera/Safari */
  color: rgba(30, 0, 40, 0.5);
}
.input::-moz-placeholder,
.form__input::-moz-placeholder,
[type=text]::-moz-placeholder { /* Firefox 19+ */
  color: rgba(30, 0, 40, 0.5);
}
.input:-ms-input-placeholder,
.form__input:-ms-input-placeholder,
[type=text]:-ms-input-placeholder { /* IE 10+ */
  color: rgba(30, 0, 40, 0.5);
}
.input:-moz-placeholder,
.form__input:-moz-placeholder,
[type=text]:-moz-placeholder { /* Firefox 18- */
  color: rgba(30, 0, 40, 0.5);
}
.input:focus::-webkit-input-placeholder,
.form__input:focus::-webkit-input-placeholder,
[type=text]:focus::-webkit-input-placeholder { /* Chrome/Opera/Safari */
  color: rgba(30, 0, 40, 0);
}
.input:focus::-moz-placeholder,
.form__input:focus::-moz-placeholder,
[type=text]:focus::-moz-placeholder { /* Firefox 19+ */
  color: rgba(30, 0, 40, 0);
}
.input:focus:-ms-input-placeholder,
.form__input:focus:-ms-input-placeholder,
[type=text]:focus:-ms-input-placeholder { /* IE 10+ */
  color: rgba(30, 0, 40, 0);
}
.input:focus:-moz-placeholder,
.form__input:focus:-moz-placeholder,
[type=text]:focus:-moz-placeholder { /* Firefox 18- */
  color: rgba(30, 0, 40, 0);
}

input[type=image] {
  width: auto;
  max-width: 100%;
}
input[type=image]:checked, input[type=image]:focus {
  border: 2px solid #7A1B72;
}

.form__input--beta {
  border: none !important;
  box-shadow: none !important;
  background-color: #fae6fa !important;
}

.form__inlinecaption {
  margin: 0 2em 0 0 !important;
}

.form__caption {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 17px;
}

.form__caption--grief-memory-wall-upload-text {
  font-size: 16px;
}

.select,
.form__select {
  background-image: url("../images/base64/PNG/select-arrow.png");
  background-size: 20px;
  background-repeat: no-repeat;
  background-position: right 18px top 13px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  cursor: pointer;
  padding-right: 60px;
  margin-bottom: 12px;
  /*max-width: 240px;*/
}
.select:focus,
.form__select:focus {
  background-color: white;
}

.form__select--narrow {
  max-width: 240px;
}

.form__radio {
  display: inline-block;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background-color: #7A1B72;
  border: 1px solid rgba(122, 27, 114, 0.25);
  box-shadow: 0 -2px 9px 3px rgba(94, 94, 94, 0.15);
  margin-right: 10px;
  cursor: pointer;
  margin-bottom: -4px;
}
.form__radio[type=radio] {
  width: 24px;
  height: 21px;
  opacity: 0;
  margin-right: -26px;
  margin-top: -12px;
  display: none;
}
.form__radio[type=radio]:checked + .form__radio:after {
  content: "";
  display: block;
  width: 12px;
  height: 12px;
  margin: 5px;
  border-radius: 50%;
  background-color: white;
}
.form__radio + .form__label,
.form__radio + .form__caption {
  cursor: pointer;
  padding-bottom: 10px;
}

.form__radio--white {
  border: 1px solid #fff;
}

.form__checkbox {
  display: inline-block;
  width: 26px;
  height: 22px;
  background-color: white;
  border-radius: 6px;
  margin-right: 10px;
  border: 1px solid #dac0d8 !important;
  box-shadow: 0 -2px 9px 3px rgba(94, 94, 94, 0.15);
  cursor: pointer;
  margin-bottom: -4px;
}
.form__checkbox:after {
  color: #50ad45;
}
.form__checkbox[type=checkbox], .form__checkbox[type=radio] {
  width: 60px;
  height: 21px;
  opacity: 0;
  margin-right: -60px;
  margin-top: -12px;
  z-index: 2;
  position: relative;
  display: none;
}
.form__checkbox[type=checkbox]:checked ~ .form__checkbox:after, .form__checkbox[type=radio]:checked ~ .form__checkbox:after {
  content: "\e903";
  font-size: 32px;
  line-height: 15px;
  color: #c928b2;
  position: absolute;
}
.form__checkbox[class*=-icon] {
  position: relative;
  margin-left: 40px;
}
.form__checkbox[class*=-icon]:before {
  font-size: 30px;
  line-height: 24px;
  top: -6px;
  left: -40px;
  position: absolute;
}
.form__checkbox[class*="--cat"]:before {
  content: "\e916";
}
.form__checkbox[class*="--dog"]:before {
  content: "\e914";
}
.form__checkbox[class*="--family"]:before {
  content: "\e913";
}
.form__checkbox[class*="--children"]:before {
  content: "\e915";
}
.form__checkbox[class*="--indoor"]:before {
  content: "\e92b";
}
.form__checkbox + .form__label,
.form__checkbox + .form__caption {
  cursor: pointer;
  padding-bottom: 9px;
}

.checkbox-results {
  display: flex;
  width: 100%;
  font-family: "metrify-regular", Arial, Helvetica, sans-serif;
  font-size: 17px;
  margin-right: 19px;
  flex-wrap: wrap;
  justify-content: center;
  margin-bottom: 20px;
}
.checkbox-results [class*=checkbox-results__] {
  position: relative;
  display: flex;
  align-items: center;
  padding-left: 40px;
  height: 40px;
  margin-left: 20px;
}
.checkbox-results [class*=checkbox-results__]:before {
  content: "\e903";
  color: #50ad45;
  font-size: 32px;
  line-height: 15px;
  display: block;
  order: 0;
}
.checkbox-results [class*=checkbox-results__]:after {
  font-size: 32px;
  line-height: 35px;
  display: block;
  position: absolute;
  left: 0;
  top: 0;
}
.checkbox-results [class*=cat]:after {
  content: "\e916";
}
.checkbox-results [class*=dog]:after {
  content: "\e914";
}
.checkbox-results [class*=children]:after {
  content: "\e915";
}
.checkbox-results [class*=family]:after {
  content: "\e913";
}
.checkbox-results [class*=indoors]:after {
  content: "\e92b";
}

.form__date {
  background-image: url("../images/base64/PNG/calendar-grey.png");
  background-size: 30px;
  background-repeat: no-repeat;
  background-position: right 13px top 6px;
  max-width: 200px;
  color: #1E0028;
}
.form__date:not(:focus) {
  color: rgba(30, 0, 40, 0.75);
}
.form__date::-webkit-inner-spin-button, .form__date::-webkit-calendar-picker-indicator {
  opacity: 0;
  cursor: pointer;
  -webkit-appearance: none;
}

.form__date--width {
  max-width: none;
}

.form__label {
  font-family: "metrify-regular", Arial, Helvetica, sans-serif;
  font-size: 17px;
}

.form__label--checkbox {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.form__label--inline {
  display: inline-block;
}

.form__label--find-a-cat {
  text-indent: 100%;
  overflow: hidden;
  background-image: url(../images/base64/svg/find-a-cat-grey.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

.form__btn {
  border-width: 0;
}

.form--ribbon {
  padding: 1em;
}
.form--ribbon .form__label,
.form--ribbon .form__btn,
.form--ribbon .form__input,
.form--ribbon .form__date {
  width: 100%;
  max-width: none;
  margin: 0 0 20px;
  box-sizing: border-box;
}
.form--ribbon .form__label--checkbox {
  width: auto;
}
@media only screen and (min-width: 1024px) {
  .form--ribbon {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding: 24px 30px;
  }
  .form--ribbon .form__label,
  .form--ribbon .form__btn,
  .form--ribbon .form__input,
  .form--ribbon .form__date {
    margin: 0;
    width: auto;
  }
  .form--ribbon .form__label {
    margin: 0 20px;
    white-space: nowrap;
    color: inherit;
  }
}

.form--inline {
  display: flex;
  align-items: center;
  justify-content: center;
}
.form--inline > h3 {
  width: auto;
  margin-left: -143px;
  margin-bottom: 0;
}
.form--inline .form__select {
  margin-bottom: 0;
}
.form--inline .form__caption {
  margin-right: 15px;
  white-space: nowrap;
}

.fieldset {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  margin-bottom: 60px;
  margin-left: -60px;
}
.fieldset > * {
  border-left: 60px solid white;
  width: 100%;
}

.form--grey .form__input,
.form--grey .form__select,
.form--grey .form__message,
.form--grey .form__checkbox {
  background-color: white;
  border: 1px solid #dac0d8 !important;
  border-color: transparent;
  box-shadow: none;
}
.form--grey .form__input:focus,
.form--grey .form__select:focus,
.form--grey .form__message:focus,
.form--grey .form__checkbox:focus {
  background-color: white;
  border-color: #b7b7b7;
  box-shadow: 0 0 5px 2px rgba(94, 94, 94, 0.15);
}
.form--grey .form__input.input-validation-error,
.form--grey .form__select.input-validation-error,
.form--grey .form__message.input-validation-error,
.form--grey .form__checkbox.input-validation-error {
  background-color: #fae6fa;
  border: 1px solid #dac0d8 !important;
}
.form--grey .form__message {
  width: 100%;
  box-sizing: border-box;
  min-height: 200px;
  resize: none;
  padding: 20px 12px;
}

.form--main .form__input,
.form--main .form__message,
.form--main .form__label {
  margin-bottom: 10px;
}
.form--main .form__checkbox + .form__caption {
  margin-bottom: 4px;
}
.form--main .field-validation-error + .form__label,
.form--main .form__input + .form__label,
.form--main .form__message + .form__label {
  margin-top: 10px;
}
.form--main .form__label + .form__label {
  margin-top: 20px;
}
.form--main .form__label {
  display: flex;
  /*flex-direction: column; - commented out to prevent required asterisk wrapping to next line */
  color: #7A1B72;
  font-family: "cats-headline", Arial, Helvetica, sans-serif;
}
.form--main .form__label .form__input,
.form--main .form__label .form__select {
  width: auto;
  margin-top: 10px;
  margin-bottom: 0;
}
.form--main .form__link {
  text-decoration: underline;
  color: #7A1B72;
  display: block;
  width: 100%;
  transition-duration: 0s;
}
.form--main .form__link:hover {
  color: #1E0028;
  text-decoration: none;
  transition-duration: 0s;
}
.form--main .form__caption {
  margin-bottom: 11px;
}
.form--main .form__label--inline {
  display: inline-block;
}

.form--map {
  height: 300px;
  padding: 1em;
}
.form--map .form__input {
  color: #1E0028;
}

.field-validation-error {
  font-family: "cats-headline", Arial, Helvetica, sans-serif;
  color: #c928b2;
  display: flex;
  align-items: center;
}
.field-validation-error:before {
  content: "* ";
  font-size: 26px;
  height: 21px;
  padding-right: 5px;
}

.form--your-details .form__label.required:after {
  content: "*";
}
.form--your-details .form__select {
  margin-bottom: 0;
}
.form--your-details .field-validation-error {
  margin-top: 5px;
}
.form--your-details p,
.form--your-details .form__caption {
  margin-bottom: 10px;
}
.form--your-details .form__item {
  margin-bottom: 15px;
}
.form--your-details .form__message {
  margin-bottom: 10px;
  min-height: 140px;
}

.cat-form--expandable {
  overflow: hidden;
  max-height: 125px;
  transition: 0.3s max-height;
}
.cat-form--expandable.is-active {
  max-height: 2000px;
}
.cat-form--expandable.is-active .cat-form__container {
  opacity: 1;
  pointer-events: auto;
}

.cat-form {
  padding: 20px;
}
@media (min-width: 1024px) {
  .cat-form {
    padding: 20px 130px;
  }
}
.cat-form:last-of-type {
  border: 0;
  margin-bottom: 0;
}
.cat-form:nth-child(odd) {
  background-color: #e7e8e6;
}
.cat-form:nth-child(odd) textarea,
.cat-form:nth-child(odd) input {
  background-color: #fff;
}

.cat-form__header {
  display: flex;
  justify-content: space-between;
  padding: 20px 0;
  align-items: center;
}

.cat-form__container {
  pointer-events: none;
  opacity: 0;
  transition: 0.3s opacity;
}

.form__file-upload {
  display: none;
}

.form__file-upload-label {
  transition: background-color 0.5s;
  cursor: pointer;
  vertical-align: middle;
  outline: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: auto;
  padding: 10px 23px;
  position: relative;
  text-decoration: none;
  text-align: center;
  border-radius: 6px;
  background-color: #7A1B72;
  color: white;
  transition-duration: 0s;
}
.form__file-upload-label:hover {
  background-color: #fae6fa;
  color: #7A1B72;
  transition-duration: 0s;
}

/* Change Autocomplete styles in Chrome*/
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
textarea:-webkit-autofill,
textarea:-webkit-autofill:hover,
textarea:-webkit-autofill:focus,
select:-webkit-autofill,
select:-webkit-autofill:hover,
select:-webkit-autofill:focus {
  border: 1px solid #dac0d8 !important;
  background-color: #fae6fa !important;
  -webkit-text-fill-color: #1E0028;
  -webkit-box-shadow: 0 0 0px 1000px #fff inset;
  transition: background-color 5000s ease-in-out 0s;
}

/**
 * COMPONENTS
 * FORM - CAT COMMUNITY
 */
.form--cat-community {
  /*
  display: flex;
  flex-wrap: wrap;
  align-items: center;

   */
  background-color: #b7b7b7;
  /*
  > div{
      display: flex;
      justify-content: space-between;
      padding: 0 100px 40px;
      width: 100%;
  }

   */
}
.form--cat-community .form__label {
  font-size: 20px;
  padding-bottom: 10px;
}
.form--cat-community .form__caption {
  font-size: 15px;
  line-height: 18px;
}
.form--cat-community .form__input {
  margin-bottom: 20px;
}
.form--cat-community .your-own-cat-header {
  background-color: white;
  width: 100%;
  background-image: url(../images/base64/SVG/cat-community.svg);
  padding: 20px;
  background-repeat: no-repeat;
  background-size: 50px;
  background-position: bottom -10px right 30px;
  margin: 0 0 10px;
}
@media (min-width: 1024px) {
  .form--cat-community .your-own-cat-header {
    background-size: 120px;
    background-position: bottom -24px right 60px;
    padding: 50px;
  }
}
.form--cat-community .form-gallery .photos {
  margin-left: -10px;
  display: flex;
  flex-wrap: wrap;
}
.form--cat-community .form-gallery .photos .media {
  padding-left: 10px;
  margin-bottom: 10px;
}
.form--cat-community .form-gallery .photos .media .media__image {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  background-color: #b7b7b7;
  background-image: url(../images/base64/SVG/cat-community-tile.png);
}
.form--cat-community .form-gallery .photos .media + .media {
  width: 33.33333%;
}
.form--cat-community .form-gallery .btn {
  width: 100% !important;
  margin-bottom: 5px;
}
.form--cat-community .cat-community-form-container {
  padding: 20px;
}
@media (min-width: 1024px) {
  .form--cat-community .cat-community-form-container {
    padding: 50px;
  }
}
.form--cat-community .form-details {
  /*
  width: 490px;
  padding-left: 50px;
  */
}
.form--cat-community .form-details .btn {
  float: right;
  margin-top: 20px;
}
.form--cat-community textarea {
  padding-top: 15px;
  height: 240px;
}

/**
 * COMPONENTS
 * FORM - BASE
 */
.form--center {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.form--center .form__input {
  text-align: center;
  margin-bottom: 20px;
  max-width: 400px;
}
/**
 * COMPONENTS
 * FORM - CONTACT
 */
@media only screen and (min-width: 769px) {
  .form--contact .form__item {
    width: 50%;
  }
}
@media only screen and (min-width: 1500px) {
  .form--contact .form__item {
    width: 33.33333%;
  }
  .form--contact .form__item--half {
    width: 50%;
  }
}
.form--contact .form__label {
  margin-bottom: 10px;
}
.form--contact .form__label.required:after {
  content: " *";
  font-family: Arial, Helvetica, sans-serif;
}
.form--contact .form__message {
  min-height: 150px;
}
.form--contact {
  /*
  .form__inline{
      display: inline-flex;
      align-items: center;
      width: auto;
      margin-bottom: 25px;
      padding-left: 30px;

      .form__caption{
          margin-bottom: 0;
          padding-bottom: 0;
      }
  }
  */
}
.form--contact .form__select {
  margin-bottom: 0;
}
.form--contact .btn {
  float: right;
  margin-bottom: 20px;
}
.form--contact .field-validation-error {
  padding: 10px 0 0;
}

/**
 * COMPONENTS
 * FORM - LOGIN
 */
.form--login {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  max-width: 820px;
  margin: 20px auto 30px;
}
.form--login h3,
.form--login p {
  max-width: 650px;
}
.form--login h3 {
  margin-bottom: 20px;
}
.form--login p {
  margin-bottom: 25px;
}
.form--login a {
  color: #7A1B72;
  text-decoration: underline;
  font-size: 80%;
}
.form--login .form__input {
  margin-bottom: 10px;
  max-width: 300px;
  text-align: center;
}
.form--login .form__btn {
  margin-bottom: 10px;
}
.form--login .form__social-login button {
  margin: 0 10px;
}

/**
 * COMPONENTS
 * FORM - leave-comment
 */
.form--leave-comment {
  overflow: hidden;
}
.form--leave-comment:not(:only-child) {
  padding-top: 26px;
}
.form--leave-comment .form__input {
  margin: 20px 0 0;
  padding: 18px;
}
.form--leave-comment textarea.form__input {
  min-height: 200px;
  margin: 20px 0 30px;
}
.form--leave-comment .form__btn {
  float: right;
}

/**
 * COMPONENTS
 * FORM - NEWSLETTER
 */
.form--newsletter {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-direction: column;
  padding-top: 24px;
  padding-bottom: 24px;
}
@media only screen and (min-width: 1024px) {
  .form--newsletter {
    flex-direction: row;
    justify-content: center;
  }
}
.form--newsletter .form__label {
  color: #7A1B72;
  text-align: center;
  margin-bottom: 15px;
}
@media only screen and (min-width: 1024px) {
  .form--newsletter .form__label {
    margin-bottom: 0;
  }
}
.form--newsletter .form__input {
  max-width: 310px;
  margin: 0 70px 15px;
}
@media only screen and (min-width: 1024px) {
  .form--newsletter .form__input {
    margin-bottom: 0;
  }
}

/**
 * COMPONENTS
 * FORM - POLL
 */
.form--poll {
  position: relative;
  padding-bottom: 44px;
}
.form--poll li {
  position: relative;
}
.form--poll .form__checkbox {
  position: absolute;
  top: 3px;
  left: 0;
}
.form--poll .form__checkbox:after {
  color: #1E0028;
}
.form--poll .form__label {
  font-size: 20px;
  line-height: 26px;
  white-space: initial;
  padding-left: 40px;
}
.form--poll .form__checkbox:checked ~ .form__label {
  font-size: 22px;
}
.form--poll .form__btn {
  position: absolute;
  right: 0;
  bottom: 0;
}

/**
 * COMPONENTS
 * FORM - PROFILE
 */
.form--profile {
  background-color: white;
  /*
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;

   */
  /*
  &:before{
      content: '';
      width: 58px;
      height: 54px;
      display: block;
      background-image: url(../images/base64/SVG/edit-icon.svg);
      @include background(contain);
      position: absolute;
      align-self: flex-start;
      right: 100px;
  }
  */
  /*
  > div{
      //padding: 0 100px;

      // Profile block image
      &:nth-child(1){
          display: flex;
          align-items: center;
          margin-bottom: 30px;
          width: 100%;
          flex-wrap: wrap;

          &:after{
              content: '';
              width: 58px;
              height: 54px;
              display: block;
              background-image: url(../images/base64/SVG/edit-icon.svg);
              @include background(contain);
              position: absolute;
              align-self: flex-start;
              right: 100px;
          }
      }

      //Visible form elements.
      &:nth-child(2){
          margin-bottom: 20px;
          width: 100%;
      }

      // Edit password reveal feilds
      // These haven't been agreed with client yet.
      // Speak to Owen/.Net
      &:nth-child(3){
         display: none;
      }

      //TsCs & Save Changes button
      &:nth-child(4){
          display: flex;
          align-items: center;

          .btn{ margin-left: 20px }
      }
  }

   */
}
.form--profile .user-icon {
  border-radius: 50%;
  width: 110px;
  height: 110px;
  overflow: hidden;
  box-shadow: 0 7px 12px -1px rgba(30, 0, 40, 0.2);
}
.form--profile .user-icon:not([class*=bg-theme]) {
  background-color: #b7b7b7;
}
.form--profile .user-icon[style*=background-image] {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}
.form--profile .user-icon[style*='background-image: url("/");']:after, .form--profile .user-icon[style*="background-image: url('/');"]:after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-size: 80%;
  background-position: bottom -1px center;
  background-repeat: no-repeat;
  background-image: url("../images/base64/SVG/user-icon.svg");
}
.form--profile .user-icon {
  min-width: 110px;
  margin-right: 25px;
}
.form--profile .form__input[type=password] {
  background-image: url(../images/base64/SVG/padlock-unlocked.svg);
  background-repeat: no-repeat;
  background-position: top 10px right 10px;
}
.form--profile .form__input[type=password].locked {
  pointer-events: none;
  border-color: white;
  box-shadow: none;
  line-height: 53px;
  background-image: url(../images/base64/SVG/padlock-locked.svg);
}
.form--profile .form__label {
  white-space: normal;
  min-width: 100px;
  font-size: 18px;
  font-family: "metrify-regular", Arial, Helvetica, sans-serif;
}
.form--profile .form__caption {
  font-size: 15px;
  font-family: "metrify-light", Arial, Helvetica, sans-serif;
  margin-top: 7px;
  margin-bottom: 7px;
}
.form--profile .grid__item {
  display: flex;
  align-items: center;
}

/**
 * COMPONENTS
 * FORM - SEARCH
 */
.btn--search:hover {
  cursor: pointer;
}

.form--search {
  position: relative;
  padding-top: 0px;
}
.form--search .form__input {
  width: 100%;
  max-width: 0;
  padding-left: 0;
  padding-right: 0;
  overflow: hidden;
  position: absolute;
  opacity: 0;
  top: -4px;
  left: 70px;
  border: none !important;
  border-radius: 6px;
  box-shadow: none !important;
  background-color: #fae6fa !important;
  transition: all 200ms;
  transition-timing-function: ease-in-out;
}
.form--search .form__btn {
  transition-duration: 0s;
}
.form--search .form__btn:hover + .form__input {
  left: 70px;
  top: -4px;
  opacity: 1;
  box-shadow: none;
  border: 0px;
  transition-duration: 0s;
}
.form--search .form__submit {
  display: none;
}
.form--search.is-active .form__input {
  width: 1000px;
  max-width: 300px;
  padding: 0 12px;
  opacity: 1;
  /*border: 1px solid rgba(94, 94, 94, 0.25);*/
  box-shadow: 0 0 9px 3px rgba(94, 94, 94, 0.15);
  background-color: #ffffff;
  border: 1px solid #dac0d8 !important;
}
.form--search.is-active {
  /*
  .form__submit{ display: flex; }
  .form__btn{ display: none; }

   */
}

.form--search-mini {
  position: relative;
  padding-top: 4px;
  display: flex;
  width: 100%;
}
.form--search-mini .form__input {
  width: 100%;
  overflow: hidden;
  border-color: white;
  top: 4px;
  right: 40px;
  color: #1E0028;
}
.form--search-mini .form__submit {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  background-color: #7A1B72;
  color: #7A1B72;
  box-shadow: 0 0 9px 3px rgba(94, 94, 94, 0.15);
  transition-duration: 0s;
}
.form--search-mini .form__submit:before {
  font-size: 36px;
  margin-left: 5px;
}
.form--search-mini .form__submit:hover {
  background-color: #b7b7b7;
  transition-duration: 0s;
}

/**
 * COMPONENTS
 * SELECTION BOX
 */
.form--selection {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  padding: 20px 15px;
  cursor: pointer;
  min-height: 300px;
}
@media only screen and (min-width: 769px) {
  .form--selection {
    padding: 40px 30px;
  }
}
.form--selection p {
  margin-top: 5px;
  margin-bottom: 15px;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .form--selection p {
    width: 100%;
  }
}
.form--selection .form__input {
  text-align: center;
  max-width: 300px;
  color: #1E0028;
}
.form--selection .form__btn {
  margin-bottom: 0;
}
.form--selection.is-selected .form__btn {
  background-color: #7A1B72;
  color: #1E0028;
}
.form--selection.is-selected .form__btn:after {
  content: "Selected";
}
.form--selection:not(.is-selected) .form__btn {
  background-color: #7A1B72;
  color: white;
}
.form--selection:not(.is-selected) .form__btn:after {
  content: "Please Select";
}
.form--selection:not(.is-selected) {
  transition-duration: 0s;
}
.form--selection:not(.is-selected):hover .form__btn {
  background-color: #7A1B72;
  color: #1E0028;
  transition-duration: 0s;
}

[data-select] {
  cursor: pointer;
  height: 100%;
}

/**
 * COMPONENTS
 * FORM - FIND A SHOP
 */
.form--find-a-cat {
  /*
  .form__input{
      text-align: center;
  }

  .form__btn{
      width: 100% !important;
  }

  > div{
      margin-bottom: 25px;
  }

  @include respond-to(medium-and-up){

      .form__input{
          margin-bottom: 40px;
      }

      > div{
          width: 20%;
          margin-bottom: 30px;
      }
  }
  */
}
.form--find-a-cat .form__input {
  border: 1px solid #dac0d8 !important;
  background: white !important;
}

.form__btn--find-a-cat {
  width: 100%;
}
.form__btn--find-a-cat:hover {
  background-color: #c928b2;
  color: white;
}

/**
 * COMPONENTS
 * FORM - FIND A SHOP
 */
.form--find-a-cat-banner {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
  padding: 20px 15px;
  margin: 0 auto;
}
.form--find-a-cat-banner .form__label--find-a-cat {
  margin-right: 20px;
  padding-top: 90px;
  width: 215px;
  height: 0;
}
.form--find-a-cat-banner .form__input {
  margin-top: 20px;
  margin-bottom: 30px;
}
.form--find-a-cat-banner .form__btn {
  margin-bottom: 20px;
  width: 100%;
}
.form--find-a-cat-banner > div {
  margin-bottom: 20px;
}
@media only screen and (min-width: 769px) {
  .form--find-a-cat-banner {
    max-width: 750px;
  }
  .form--find-a-cat-banner .form__input {
    width: 63%;
    margin-bottom: 50px;
    align-self: flex-end;
  }
  .form--find-a-cat-banner > div {
    width: 40%;
    margin-bottom: 30px;
  }
}

/**
 * COMPONENTS
 * FORM - FIND A SHOP
 */
.form--opps {
  margin-top: 20px;
  padding-top: 40px;
  padding-bottom: 40px;
}
.form--opps .form__select--narrow {
  max-width: none;
}
.form--opps .form__select,
.form--opps .form__input {
  margin-bottom: 20px;
  border: 1px solid #dac0d8 !important;
  background: white !important;
}
.form--opps .form__btn {
  width: 100%;
}
.form--opps .form__btn:hover {
  background-color: #c928b2;
  color: white;
}
@media only screen and (min-width: 1024px) {
  .form--opps {
    display: flex;
    flex-wrap: wrap;
  }
  .form--opps .form__town {
    width: 45%;
  }
  .form--opps .form__distance {
    width: 25%;
    margin-left: auto;
  }
  .form--opps .form__btn {
    width: auto;
    margin-left: auto;
  }
}
.form--opps {
  /*
  @include respond-to(wide-and-up){
      display: flex;
      flex-wrap: wrap;
      position: relative;

      > .form__input{
          width: 65%;
      }

      .form__select{
          margin-left: 5%;
          min-width: 30%;
          background-position: right 18px top 20px;
      }

      .form__btn{
          // @extend %btn-typo;
          // @extend %btn-theme-primary;
          // @extend %btn-comp-large;
          // margin-bottom: 20px;
          position: absolute;
          bottom: 40px;
          right: 0;
      }

      > div{
          width: calc(100% - 280px);
          display: flex;
          flex-wrap: wrap;

          > div{
              width: 33.33333%;
              margin-bottom: 15px;
          }
      }
  }

  @include respond-to(medium-and-up){


      > div{
          // width: 25%;
          // margin-bottom: 30px;
      }
  }

   */
}

.form--find-a-shop .form__input {
  max-width: 300px;
  margin-bottom: 20px;
  border-radius: 6px;
}
@media (min-width: 375px) {
  .form--find-a-shop .form__input {
    margin-right: 20px;
  }
}
.form--find-a-shop .form__btn {
  margin-bottom: 20px;
}

@media only screen and (min-width: 1024px) {
  .form--subscription {
    display: flex;
    align-items: center;
    justify-content: center;
  }
}
.form--subscription .form__heading {
  margin: 0 0 1em;
}
@media only screen and (min-width: 1024px) {
  .form--subscription .form__heading {
    margin: 0;
  }
}

.form__subscription-type {
  padding: 136px 20px 20px;
  background-color: #b7b7b7;
  max-width: 226px;
  margin: 0 auto 2em;
  position: relative;
}
@media only screen and (min-width: 1024px) {
  .form__subscription-type {
    display: flex;
    align-items: center;
    width: 226px;
    margin: 0 40px 0 20px;
  }
}
.form__subscription-type:before {
  content: "";
  display: block;
  width: 120px;
  height: 80px;
  color: #7A1B72;
  position: absolute;
  top: 25px;
  left: 50%;
  transform: translateX(-50%);
  font-size: 90px;
}
.form__subscription-type[data-select-box=ForMe]:before {
  content: "\e92a";
  font-size: 95px;
}
.form__subscription-type[data-select-box=ForUs]:before {
  content: "\e913";
}
.form__subscription-type[data-select-box=AGift]:before {
  content: "\e928";
}
.form__subscription-type .form__select {
  margin-bottom: 0;
  color: #1E0028;
  font-family: "metrify-bold", Arial, Helvetica, sans-serif;
  text-align: center;
  font-size: 20px;
}
.form__subscription-type .form__select:before {
  content: "Garry";
}

.sac__section {
  width: 100%;
  padding: 1em 0 0;
  border-bottom: 1px solid #b7b7b7;
}
@media only screen and (min-width: 769px) {
  .sac__section {
    padding: 4em 0;
  }
}
.sac__section .sac__title {
  font-size: 22px;
  font-weight: bold;
  margin: 1em;
}
@media only screen and (min-width: 769px) {
  .sac__section .sac__title {
    margin: 0 0 2em;
  }
}
.sac__section .sac__subtitle {
  font-size: 17px;
  font-weight: bold;
}
.sac__section .sac__wrap {
  display: block;
  align-items: center;
  justify-content: center;
}
@media only screen and (min-width: 769px) {
  .sac__section .sac__wrap {
    display: flex;
  }
}
.sac__section .sac__wrap.is-hidden {
  display: none;
}
.sac__section .sac__wrap .flex__item {
  margin-bottom: 1em;
}
.sac__section .sac__wrap .btn {
  /*margin-bottom: 1em;*/
}
.sac__section .sac__wrap .js-branch-search-postcode-btn {
  margin-left: 1em;
}
.sac__section .sac__wrap input[type=text] {
  max-width: 540px;
}
.sac__section fieldset {
  display: inline-block;
}
.sac__section .form__label {
  font-weight: normal;
  font-family: Arial, Helvetica, sans-serif;
}
.sac__section .sac__amount {
  transition: background-color 0.15s ease-in-out;
  cursor: pointer;
  vertical-align: middle;
  outline: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: auto;
  padding: 10px 23px;
  position: relative;
  text-decoration: none;
  text-align: center;
  letter-spacing: 0.03rem;
  border: 1px solid #dac0d8 !important;
  color: #fff;
  margin: 0;
  width: 32%;
  border-radius: 6px;
}
@media only screen and (min-width: 769px) {
  .sac__section .sac__amount {
    margin: 0 0.5em;
    width: auto;
  }
}
.sac__section .sac__amount.active {
  background-color: #fae6fa;
  color: #c928b2;
}
.sac__section .sac__amount--other {
  width: 100%;
}
@media only screen and (min-width: 769px) {
  .sac__section .sac__amount--other {
    width: auto;
  }
}
.sac__section .sac__amount--other:before {
  content: "£";
}
.sac__section .sac__amount--other input {
  color: #fff;
  font-size: 15px;
  margin-left: 0.5em;
  width: 188px;
}
.sac__section .sac__amount--other input::placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */
  color: #fff;
  opacity: 1; /* Firefox */
}
.sac__section .sac__amount--other.active input {
  color: #1E0028;
}
.sac__section .sac__amount--other.active input::placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */
  color: #1E0028;
}
.sac__section a:not(.btn) {
  color: #fff;
  font-weight: normal;
}
.sac__section button[type=submit] {
  margin-top: 0;
  width: 100%;
  margin-bottom: 1em;
}
@media only screen and (min-width: 769px) {
  .sac__section button[type=submit] {
    margin-top: 2em;
    width: auto;
  }
}

.sac__section--branch .btn {
  background-color: #5e5e5e;
  color: #fff;
  border: #fff 1px solid;
  font-family: Arial, Helvetica, sans-serif;
  padding: 7px 18px;
  font-size: 1em;
  transition-duration: 0s;
}
.sac__section--branch .btn:hover {
  background-color: #fff;
  color: #5e5e5e;
  transition-duration: 0s;
}
.sac__section--branch .btn--blue {
  background-color: #fff;
  color: #5e5e5e;
  border: #fff 1px solid;
  font-family: Arial, Helvetica, sans-serif;
  padding: 7px 18px;
  font-size: 1em;
}

.js-sponsor-cat-slider .slick-dots {
  bottom: 0;
  position: absolute;
  top: auto;
}
.js-sponsor-cat-slider .slick-dots li {
  height: 10px;
  width: 10px;
}

.js-sponsor-cat-slider {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.js-sponsor-cat-slider .slick-arrow {
  height: 100px;
  transform: none;
  border-radius: 0px;
  top: unset;
  background-color: #1E0028;
}
.js-sponsor-cat-slider .slick-arrow:after {
  top: unset;
}
.js-sponsor-cat-slider .slick-arrow {
  transition-duration: 0s;
}
.js-sponsor-cat-slider .slick-arrow:hover {
  background-color: #1E0028;
  transition-duration: 0s;
}
.js-sponsor-cat-slider .slick-dots {
  padding-left: 0px !important;
}
.js-sponsor-cat-slider .slick-dots .slick-active button::before {
  background-color: #1E0028;
}
.js-sponsor-cat-slider .slick-dots li {
  margin-left: 5px;
  margin-right: 5px;
}
.js-sponsor-cat-slider .slick-dots li button::before {
  background-color: #E7E7E5;
}

.sponsor-bio h3 {
  width: 100%;
  text-align: left;
}
.sponsor-bio .mini-bio {
  text-align: left;
}
.sponsor-bio p {
  text-align: left;
}
.sponsor-bio .login-bar {
  text-align: left;
}

.js-scroll-to-form {
  display: none;
}
@media only screen and (min-width: 769px) {
  .js-scroll-to-form {
    display: inline-flex;
  }
}

.js-sponsor-cat-slider-mobile {
  display: flex;
  justify-content: normal !important;
  align-items: center;
}
.js-sponsor-cat-slider-mobile .slick-arrow {
  height: 100px;
  margin-bottom: 100px;
  transform: none;
  border-radius: 0px;
  top: unset;
  background-color: #1E0028;
}
.js-sponsor-cat-slider-mobile .slick-arrow:after {
  top: unset;
}
.js-sponsor-cat-slider-mobile .slick-arrow {
  transition-duration: 0s;
}
.js-sponsor-cat-slider-mobile .slick-arrow:hover {
  background-color: #1E0028;
  transition-duration: 0s;
}
.js-sponsor-cat-slider-mobile .slick-dots {
  padding-left: 0px;
}
.js-sponsor-cat-slider-mobile .slick-dots .slick-active button::before {
  background-color: #1E0028;
}
.js-sponsor-cat-slider-mobile .slick-dots li {
  margin-left: 5px;
  margin-right: 5px;
}
.js-sponsor-cat-slider-mobile .slick-dots li button::before {
  background-color: #E7E7E5;
}

#startSponsor .radio-container {
  display: flex;
  flex-direction: row;
  padding-left: 10px;
}
#startSponsor .radio-container .sponsor-radio {
  padding-left: 10px;
  padding-right: 10px;
  display: flex;
  flex-direction: row;
  height: fit-content;
  align-items: center;
}
#startSponsor .radio-container .sponsor-radio .form__label {
  padding-bottom: 0;
}
#startSponsor .form__radio {
  background: radial-gradient(circle, rgb(122, 27, 114) 55%, rgb(94, 94, 94) 63%, rgb(94, 94, 94) 59%, rgb(255, 255, 255) 70%);
  border: none;
}
#startSponsor .form__radio:after {
  background: rgb(255, 255, 255);
  background: -moz-radial-gradient(circle, rgb(250, 230, 250) 55%, rgb(94, 94, 94) 63%, rgb(94, 94, 94) 59%, rgb(255, 255, 255) 70%);
  background: -webkit-radial-gradient(circle, rgb(250, 230, 250) 55%, rgb(94, 94, 94) 63%, rgb(94, 94, 94) 59%, rgb(255, 255, 255) 70%);
  background: radial-gradient(circle, rgb(250, 230, 250) 55%, rgb(94, 94, 94) 63%, rgb(94, 94, 94) 59%, rgb(255, 255, 255) 70%);
  height: 24px;
  width: 25px;
  margin: 0px;
}

@media only screen and (max-width: 769px) {
  .sponsor-bio h3 {
    width: 100%;
    text-align: center;
  }
  .sponsor-bio .mini-bio {
    text-align: center;
  }
  .sponsor-bio p {
    text-align: center;
  }
  .sponsor-bio .login-bar {
    text-align: center;
  }
  #startSponsor .radio-container {
    padding-left: 0;
    justify-content: center;
  }
}
.js-sponsor-cat-slider-title {
  width: 95%;
  position: absolute;
  text-align: center;
  margin-top: -10px;
}
.js-sponsor-cat-slider-title h3 {
  background: #5e5e5e;
  display: inline;
  padding: 10px 20px;
  color: #fff;
  font-family: Tahoma, Geneva, sans-serif;
  font-size: 20px;
  font-weight: 700;
}
@media only screen and (min-width: 769px) {
  .js-sponsor-cat-slider-title {
    display: none;
  }
}

.sponsor-bio {
  text-align: center;
}
@media only screen and (min-width: 769px) {
  .sponsor-bio {
    text-align: auto;
  }
}
.sponsor-bio h3 {
  display: none;
}
@media only screen and (min-width: 769px) {
  .sponsor-bio h3 {
    display: inline-block;
  }
}

.js-sponsor-cat-slider-mobile.slick-initialized {
  margin-left: 0;
}
.js-sponsor-cat-slider-mobile.slick-initialized .grid__item {
  padding-left: 0;
}

.js-sponsor-cat-slider-mobile .slick-dots {
  bottom: 0;
  position: absolute;
  top: auto;
}
.js-sponsor-cat-slider-mobile .slick-dots li {
  height: 10px;
  width: 10px;
}

#event__results_list form .view-more-regional-events {
  display: none;
}

#event__results_list form:last-of-type .view-more-regional-events {
  display: block;
}

/**
 * COMPONENTS
 * Gallery
 */
.gallery__main-image {
  margin-bottom: 7px;
}
.gallery__main-image figure:not(.is-active) {
  display: none;
}

.gallery__thumbs {
  overflow: hidden;
  display: flex;
  margin-left: -7px;
}
.gallery__thumbs .grid__item {
  min-width: 25%;
  padding-left: 7px;
}

/**
 * COMPONENTS
 * Hamburger
 * A button to toggle the sidebar
 */
.hamburger {
  width: 40px;
  height: 26px;
  cursor: pointer;
  border-top: 4px solid;
  border-bottom: 4px solid;
  border-color: #7A1B72;
  display: flex;
  align-items: center;
  transition: border-color 200ms;
  transition-timing-function: ease-in-out;
}
.hamburger:before {
  content: "";
  display: block;
  width: 100%;
  height: 0px;
  border-bottom: 4px solid;
  border-color: inherit;
}
.hamburger {
  transition-duration: 0s;
}
.hamburger:hover {
  border-color: #7A1B72;
  transition-duration: 0s;
}
@media only screen and (min-width: 1200px) {
  .hamburger {
    display: none;
  }
}

/**
 * COMPONENTS
 * Main Navigation
 * This is the sites main header navigation
 */
.header-group__nav {
  margin-right: 0px;
  margin-top: 10px;
  transition: margin 0.5s;
}

.site-header .main-nav {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.site-header .main-nav > li {
  cursor: pointer;
  color: #7A1B72;
}
.site-header .main-nav > li a {
  display: inline-block;
  color: inherit;
  text-decoration: none;
  font-family: "metrify-bold", Arial, Helvetica, sans-serif;
  font-size: 20px;
  color: inherit;
  transition: padding 0.5s;
  transition: color 200ms;
  transition-timing-function: ease-in-out;
  transition-duration: 0s;
}
.site-header .main-nav > li a:hover {
  background: #7A1B72;
  color: #fae6fa;
  border-top-left-radius: 6px;
  border-top-right-radius: 6px;
  transition-duration: 0s;
}
.site-header .main-nav > li > a {
  padding: 20px 24px;
  position: relative;
}
.site-header .main-nav > li > a:after, .site-header .main-nav > li > a:before {
  content: "";
  display: block;
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  bottom: 0;
  background: #7A1B72;
  opacity: 0;
  z-index: -1;
  color: white;
  border-top-left-radius: 6px;
  border-top-right-radius: 6px;
}
.site-header .main-nav > li {
  transition-duration: 0s;
}
.site-header .main-nav > li:hover > a {
  color: white;
  transition-duration: 0s;
}
.site-header .main-nav > li:hover > a:after {
  top: 0;
  opacity: 1;
  transition: top 200ms, opacity 200ms;
  transition-timing-function: ease-in-out;
}

/**
 * COMPONENTS
 * Main Navigation for Mobile
 * This is the site's navigation solution for mobile.
 */
.sidebar .main-nav {
  height: 100%;
  position: relative;
  opacity: 1;
  transition: all 300ms;
  transition-timing-function: ease-in-out;
}
.sidebar .main-nav li {
  color: #7A1B72;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.sidebar .main-nav li a {
  padding: 10px 12px;
  width: 100%;
  cursor: pointer;
  color: inherit;
}
.sidebar .main-nav li {
  transition-duration: 0s;
}
.sidebar .main-nav li:hover {
  background-color: #7A1B72;
  color: #7A1B72;
  transition-duration: 0s;
}
.sidebar .main-nav li.has-subnav:after {
  content: "\e901";
  color: inherit;
  font-size: 30px;
  float: right;
  min-width: 44px;
  margin-left: 10px;
  cursor: pointer;
}
.sidebar .main-nav li.has-subnav.has-subnav--open > ul {
  left: 0;
}
.sidebar .main-nav li.has-subnav.has-subnav--open:after {
  display: none;
}
.sidebar .main-nav > li ul {
  background-color: #7A1B72;
  background-attachment: fixed;
  position: absolute;
  width: 100%;
  left: 110%;
  top: 0;
  bottom: 0;
  transition: all 300ms;
  transition-timing-function: ease-in-out;
}

.mobile-nav-container {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  background-color: white;
  padding: 1em;
  z-index: 500;
  overflow: auto;
  box-shadow: 15px 0px 25px 0px #000000;
}
@media (min-width: 426px) {
  .mobile-nav-container {
    width: 320px;
    left: auto;
  }
}

.js-mobile-nav {
  transition: 0.3s transform;
  transform: translateX(100%);
}
.js-mobile-nav.is-open {
  transform: translateX(0);
}
.js-mobile-nav.is-open .mobile-nav__top-row {
  transform: translateX(0);
}

.mobile-nav__link {
  text-decoration: none;
  font-family: "metrify-bold", Arial, Helvetica, sans-serif;
  color: #7A1B72;
  font-size: 20px;
  line-height: 24px;
  transition-duration: 0s;
}
.mobile-nav__link:hover {
  color: #fae6fa;
  transition-duration: 0s;
}

.mobile-nav__top-row {
  position: relative;
  border-bottom: 2px solid #8e8093;
  transition: 0.3s transform;
  transform: translateX(100%);
}
.mobile-nav__top-row.has-children:after {
  content: "+";
  position: absolute;
  top: 18px;
  right: 0;
  font-size: 24px;
  color: #7A1B72;
}

.sub-nav {
  display: none;
}

.has-children {
  position: relative;
}
.has-children:after {
  content: "+";
  position: absolute;
  top: 18px;
  right: 0;
}
@media (min-width: 769px) {
  .has-children:after {
    top: 1vw;
  }
}
.has-children.is-active:after {
  content: "-";
  top: 16px;
  right: 4px;
}
.has-children .sub-nav--is-active {
  display: block;
}

/**
 * COMPONENTS
 * Media - BASE
 */
.media {
  position: relative;
  width: 100%;
}

@keyframes LAZYIN {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.media__image[style*=image],
.media__image[data-src],
.media__slider [data-src] {
  padding-top: 75%;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  width: 100%;
  height: 0;
  position: relative;
  background-color: #7A1B72;
}
.media__image[style*=image] img,
.media__image[data-src] img,
.media__slider [data-src] img {
  display: none;
}
.media__image[style*=image]:after,
.media__image[data-src]:after,
.media__slider [data-src]:after {
  transition: color 200ms;
  transition-timing-function: ease-in-out;
}
.media__caption {
  color: inherit;
  padding: 15px 15px 25px;
}
.media__caption h4 {
  margin: 10px 0 15px;
}
.media__caption h5 {
  margin: 10px 0 15px;
}
.media__caption h6 {
  margin: 10px 0 15px;
}
.media__caption p:not(.btn) {
  margin-bottom: 10px;
}

.media__caption--float-title {
  padding: 40px 15px 25px;
  position: relative;
}
.media__caption--float-title .heading-wrap {
  position: absolute;
  top: -15px;
  left: 0;
  width: 100%;
}
.media__caption--float-title .heading-wrap h5 {
  background: #fae6fa;
  display: inline;
  padding: 10px 20px;
  color: #7A1B72;
  font-family: Tahoma, Geneva, sans-serif;
  font-size: 20px;
  font-weight: bold;
  border-radius: 6px;
}
.media__caption--float-title p:not(.btn) {
  margin-bottom: 15px;
  font-family: Tahoma, Geneva, sans-serif;
  font-size: 16px;
  min-height: 100px;
}
.media__caption--float-title .btn {
  font-size: 1em;
}

.media--1-1 .media__image {
  padding-top: 100%;
}

.media--2-1 .media__image {
  padding-top: 50%;
}

.media--3-2 .media__image {
  padding-top: 66.6666666667%;
}

.media--4-3 .media__image {
  padding-top: 75%;
}

.media--5-3 .media__image {
  padding-top: 60%;
}

.media--5-4 .media__image {
  padding-top: 80%;
}

.media--10-9 .media__image {
  padding-top: 90%;
}

.media--10-7 .media__image {
  padding-top: 70%;
}

.media--actions-left,
.media--actions-right {
  display: flex;
  align-items: center;
}
.media--actions-left .media__actions > div,
.media--actions-right .media__actions > div {
  max-width: 600px;
}
.media--actions-left .media__actions > div p,
.media--actions-right .media__actions > div p {
  margin-bottom: 12.5px;
  font-family: "metrify-regular", Arial, Helvetica, sans-serif;
}
.media--actions-left .media__actions > div .form,
.media--actions-right .media__actions > div .form {
  max-width: 400px;
  margin-bottom: 12.5px;
  display: inline-flex;
}

.media--actions-right .media__actions {
  display: flex;
  justify-content: flex-end;
  text-align: right;
}

.media__edit {
  cursor: pointer;
  position: absolute;
  top: 4px;
  right: 4px;
  width: 32px;
  height: 46px;
  background-color: white;
  background-image: url(../images/base64/SVG/edit-icon.svg);
  background-repeat: no-repeat;
  background-position: center top 5px;
  border-radius: 3px;
  background-size: 25px;
  display: none;
  pointer-events: none;
  opacity: 0;
  transition: opacity 200ms ease-in-out;
  color: #7A1B72;
}
.media__edit:after {
  content: "EDIT";
  margin-top: 30px;
  font-size: 12px;
  display: block;
  text-align: center;
}
.media--can-edit .media__edit {
  display: block;
  pointer-events: all;
  opacity: 1;
  transition-duration: 0s;
}
.media--can-edit .media__edit:hover {
  background-color: #7A1B72;
  color: white;
  transition-duration: 0s;
}

.media__delete {
  cursor: pointer;
  position: absolute;
  top: 4px;
  right: 4px;
  width: 32px;
  height: 32px;
  background-image: url(../images/base64/SVG/trash-can.svg);
  background-size: 80%;
  background-position: center;
  background-repeat: no-repeat;
  background-color: white;
  display: none;
  pointer-events: none;
  opacity: 0;
  transition: opacity 200ms ease-in-out;
  transition-duration: 0s;
}
.media--has-image:hover .media__delete {
  display: block;
  pointer-events: all;
  opacity: 1;
  transition-duration: 0s;
}

.media--select.is-active {
  background-color: #7A1B72;
  color: white;
  transition-duration: 0s;
}
.media--select.is-active:hover {
  color: #1E0028;
  transition-duration: 0s;
}

.media__image--cat {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  background-color: #e7e8e6;
  background-image: url(../images/base64/SVG/cat-community-tile.png);
}

.existing-image {
  cursor: pointer;
}
.existing-image.is-disabled {
  pointer-events: none;
  filter: grayscale(1);
  opacity: 0.5;
}

.media__magazine-form-container {
  max-width: 300px;
  margin: 0 auto;
}

/**
 * COMPONENTS
 * Media - BASE
 */
.media--inline {
  width: auto;
  display: inline;
  margin-bottom: 25px;
}
.media--inline .media__image,
.media--inline img {
  width: auto;
  max-width: 100%;
}
.media--inline .media__caption {
  padding: 15px 20px;
  background-color: #b7b7b7;
  overflow: hidden;
  margin-bottom: 0;
}
.media--inline .media__caption p {
  font-size: 95%;
  line-height: 1.4;
  margin-bottom: 0;
  padding-bottom: 0;
}
.media--inline.media--left, .media--inline.media--right {
  max-width: 50%;
  margin-top: 6.25px;
  margin-bottom: 12.5px;
}
.media--inline.media--left {
  float: left;
  margin-right: 25px;
}
.media--inline.media--right {
  float: right;
  margin-left: 25px;
}

/**
 * COMPONENTS
 * Media - LINK
 */
.media--link,
.media--link-bold {
  text-align: center;
  overflow: hidden;
  max-width: 460px;
  margin: 0 auto;
}
@media only screen and (min-width: 1024px) {
  .media--link,
  .media--link-bold {
    max-width: none;
  }
}
.media--link > a,
.media--link-bold > a {
  width: 100%;
}
.media--link .date,
.media--link-bold .date {
  color: #c928b2;
}
.media--link .media__image,
.media--link-bold .media__image {
  transition-duration: 400ms;
}
.media--link,
.media--link-bold {
  /*
  .media__caption{
      height: 50%;
      padding-bottom: 80px;

      .btn{
          position: absolute;
          bottom: 20px;
          left: 50%;
          transform: translateX(-50%);
          white-space:nowrap;
      }
  }

   */
  transition-duration: 0s;
}
.media--link:hover,
.media--link-bold:hover {
  /*background-color: $placehold;
  color:$white;*/
  /*@extend %hover-shadow-light;*/
  /*transition-duration: 0s;*/
}
.media--link:hover .media__image,
.media--link-bold:hover .media__image {
  border-color: transparent;
}

.media--link .media__image {
  transition-duration: 400ms;
  /*border: 1px solid $placehold;*/
}
.media--link {
  transition-duration: 0s;
}
.media--link:hover .media__image {
  border-color: transparent;
  transition-duration: 0s;
}

.media__flag,
.media__region {
  width: auto;
  padding: 5px 12px;
  background-color: #eb533b;
  color: white;
  letter-spacing: 1px;
  font-size: 85%;
  line-height: 120%;
  position: absolute;
  white-space: nowrap;
}

.media__flag {
  top: 0;
  right: 0;
}

.media__region {
  bottom: 0;
  left: 50%;
  transform: translateY(50%) translateX(-50%);
}

/**
 * COMPONENTS
 * Media - LINK BOLD
 */
.media--link-bold {
  transition-duration: 0s;
  /*&:not(:hover) {*/
  background-color: #fae6fa;
  color: #1E0028;
  transition-duration: 0s;
  /*}*/
}
.media--link-bold .media__image {
  padding-top: 60%;
}
.media--link-bold .media__caption h5:after {
  content: "";
  display: block;
  width: 50%;
  max-width: 175px;
  border-bottom: 2px solid rgba(30, 0, 40, 0.5);
  margin: 20px auto 0;
}
.media--link-bold .media__caption .btn:hover {
  background: white;
  color: #c928b2;
}
.media--link-bold {
  transition-duration: 0s;
  /*&:hover {
      .media__caption h5:after {
          border-color: rgba($brand-black, 0.5);
          transition-duration: 0s;
      }
  }*/
}

/**
 * COMPONENTS
 * Media - GALLERY
 */
.media--gallery .media__image {
  padding-top: 75%;
}
@media only screen and (min-width: 1024px) {
  .media--gallery .media__image {
    padding-top: 90%;
  }
}
.media--gallery .media__image > span {
  content: "";
  width: 100px;
  height: 100px;
  background-image: url(../images/base64/svg/gallery-icon.svg);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  position: absolute;
  z-index: 1;
  bottom: 10px;
  right: 10px;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  color: white;
  font-size: 12px;
}
.media--gallery .media__image {
  transition-duration: 0s;
}
.media--gallery .media__image:hover > span {
  transform: translateY(-3%);
  transition-duration: 400ms;
}

/**
 * COMPONENTS
 * Media - LINK WIDE
 */
.media--link-wide {
  padding: 15px;
  transition-duration: 0s;
  /*&:hover {
      background-color: rgba($placehold, 0.4);
      transition-duration: 0s;
  }*/
}
.media--link-wide .media__image {
  padding-top: 60%;
}
.media--link-wide .media__caption {
  text-align: left;
  padding-left: 5px;
  padding-right: 5px;
}
.media--link-wide .media__caption p:not(.btn) {
  margin-bottom: 20px;
}
.media--link-wide:nth-of-type(even) {
  background-color: #7A1B72;
  transition-duration: 0s;
  color: white;
}
.media--link-wide:nth-of-type(even) h5 {
  color: white;
}
.media--link-wide:nth-of-type(even) .btn {
  background: #c928b2;
}
.media--link-wide:nth-of-type(even) .btn:hover {
  background: #fae6fa;
  color: #7A1B72;
}
.media--link-wide:nth-of-type(even) {
  /*&:hover {
      background-color: rgba($placehold, 0.4);
      transition-duration: 0s;
  }*/
}
@media only screen and (min-width: 769px) {
  .media--link-wide {
    padding: 35px;
  }
  .media--link-wide > a {
    display: grid;
    grid-template-columns: 50% 50%;
    grid-template-rows: auto;
  }
  @-moz-document url-prefix() {
    .media--link-wide .media__image {
      padding-top: 27vw;
    }
    @media only screen and (min-width: 769px) and (min-width: 1280px) {
      .media--link-wide .media__image {
        padding-top: 0;
        height: 393px;
      }
    }
  }
  @supports (-ms-ime-align: auto) {
    .media--link-wide .media__image {
      padding-top: 27vw;
    }
    @media only screen and (min-width: 769px) and (min-width: 1280px) {
      .media--link-wide .media__image {
        padding-top: 0;
        height: 393px;
      }
    }
  }
  .media--link-wide .media__caption {
    align-self: center;
    padding-left: 30px;
    padding-right: 0;
  }
}

@media (-ms-high-contrast: none) and (min-width: 769px), (-ms-high-contrast: active) and (min-width: 769px) {
  .media--link-wide > a {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
  }
  .media--link-wide > a > * {
    min-width: 50%;
  }
  .media--link-wide > a .media__image {
    padding-top: 30%;
  }
}
/**
 * COMPONENTS
 * Media - WIDE OVERLAP
 */
.media--wide-overlap {
  max-width: 500px;
}
@media only screen and (max-width: 768px) {
  .media--wide-overlap .media__caption {
    padding-top: 0px;
    padding-left: 10px;
    padding-right: 0;
  }
}
@media only screen and (min-width: 1500px) {
  .media--wide-overlap {
    display: grid;
    grid-template-columns: 50% 30px 50%;
    grid-template-rows: auto;
    grid-auto-flow: dense;
    max-width: 100%;
    min-height: 300px;
  }
  .media--wide-overlap .media__image {
    grid-column-start: 3;
    height: auto;
    top: -60px;
    bottom: -60px;
    padding-top: 0;
    position: absolute;
    box-shadow: 0 0 40px 0 rgba(30, 0, 40, 0.2);
  }
  .media--wide-overlap .media__caption {
    grid-column-start: 1;
    text-align: left;
    align-self: center;
  }
}

@media (-ms-high-contrast: none) and (min-width: 1500px), (-ms-high-contrast: active) and (min-width: 1500px) {
  .media--wide-overlap {
    display: -ms-grid;
    -ms-grid-columns: 50% 30px 50%;
  }
  .media--wide-overlap .media__image {
    -ms-grid-column: 3;
    width: 50%;
  }
  .media--wide-overlap .media__caption {
    -ms-grid-column: 1;
  }
}
/**
 * COMPONENTS
 * Media - LINK RESERVED - LINK PRIVATE
 */
.media--link-reserved,
.media--link-private {
  background-color: #b7b7b7;
  /*pointer-events: none;*/
  text-align: center;
}
.media--link-reserved > a,
.media--link-private > a {
  cursor: auto;
}
.media--link-reserved .media__image,
.media--link-private .media__image {
  position: relative;
}
.media--link-reserved .media__image:after,
.media--link-private .media__image:after {
  content: "";
  width: 150px;
  height: 150px;
  left: 50%;
  top: 50%;
  position: absolute;
  transform: translate(-50%, -50%) scale(0.7);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}

.media--link-reserved .media__image:after {
  background-image: url("../images/base64/SVG/reserved-icon.svg");
}

.media--link-private .media__image:after {
  background-image: url("../images/base64/SVG/private-icon.svg");
}

/**
 * COMPONENTS
 * Media - LINK EVENT
 */
.media--event .media__image > p {
  width: 85px;
  font-family: "metrify-regular", Arial, Helvetica, sans-serif;
  font-size: 22px;
  line-height: 27px;
  color: #1E0028;
  padding: 5px 15px;
  position: absolute;
  top: 0;
  right: 40px;
  background-color: rgba(255, 255, 255, 0.5);
  text-align: center;
}
.media--event .media__image > p span {
  text-transform: uppercase;
}

/**
 * COMPONENTS
 * Media - LINK VIDEO
 */
.media--video {
  width: 100%;
  height: 100%;
  max-width: 460px;
  margin: 0 auto;
}
@media only screen and (min-width: 1024px) {
  .media--video {
    max-width: none;
  }
}
.media--video .media__image[style*=image] {
  cursor: pointer;
  padding-top: 56.25%;
  height: 100%;
}
.media--video .media__image[style*=image]:after {
  content: "\e900";
  line-height: 0;
  font-size: 100px;
  color: white;
  position: absolute;
  top: 50%;
  left: 50%;
  margin-left: -50px;
}
.media--video .media__image[style*=image] {
  transition-duration: 0s;
}
.media--video .media__image[style*=image]:hover:after {
  opacity: 0.8;
  transition-duration: 0s;
}
.homepage .media--video .media__image[style*=image] {
  padding-top: 70%;
  /*@extend %set-shadow-light;*/
}

.media__video {
  width: 100%;
  height: 0;
  position: relative;
  background-color: #1E0028;
  background-image: url(../images/base64/SVG/tail-spin.svg);
  background-size: 50px;
  background-position: center;
  background-repeat: no-repeat;
}
.media__video iframe {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 1;
}
.media__video[style*=image] {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}
.media__video {
  padding-top: 56.25%;
  /*
  .popup & {
      // STANDARD YT VIDEO
      @include aspect-ratio(16,9);
  }

   */
}

/**
 * COMPONENTS
 * MEDIA - LINK SOCIAL
 */
.media__social {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  padding-top: 10px;
}
.media__social h3 {
  width: 60%;
  font-family: "metrify-regular", Arial, Helvetica, sans-serif;
}
.media__social .counter {
  padding-left: 10px;
}

.media--instagram .media__image:after {
  content: "\e917";
  display: inline-flex;
  align-items: center;
  font-size: 72px;
  color: white;
  position: absolute;
  top: 30px;
  right: 30px;
  width: 72px;
  height: 72px;
}
.media--instagram .media__image {
  transition-duration: 0s;
}
.media--instagram .media__image:hover:after {
  color: #7A1B72;
  transition-duration: 0s;
}

/**
 * COMPONENTS
 * Media - LINK COVER
 */
.media--cover {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}
.media--cover .media__image {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  padding-top: 0;
  height: auto;
}
.media--cover .media__caption {
  color: white;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: flex;
  text-align: center;
  justify-content: center;
  align-items: center;
}
.media--cover .media__caption h1,
.media--cover .media__caption h2 {
  position: relative;
  z-index: 1;
  display: block;
  align-items: center;
  justify-content: center;
  max-width: 1000px;
  /*text-shadow: 0 0 20px $black;*/
}
@media (min-width: 768px) {
  .media--cover .media__caption h1,
  .media--cover .media__caption h2 {
    display: flex;
  }
}
.media--cover .media__caption:not(:only-child) h2:after {
  content: "";
  width: 100%;
  height: 110%;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  top: -5%;
  opacity: 0.2;
  z-index: -1;
  border-radius: 100%;
  background: radial-gradient(ellipse at center, #323232 40%, rgba(255, 255, 255, 0) 70%);
  background: -ms-radial-gradient(ellipse at center, #323232 40%, rgba(255, 255, 255, 0) 70%);
}
.media--cover .media__caption--top {
  align-items: flex-start;
}
.media--cover .media__caption--bottom {
  align-items: flex-end;
}

/**
 * COMPONENTS
 * Media - LINK CAPTION COVER
 */
.media--caption-cover {
  background-color: #7A1B72;
}
.media--caption-cover:hover {
  background-color: #c928b2;
}
.media--caption-cover:hover .media__image {
  opacity: 0.75;
}
.media--caption-cover:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  background: #000000;
  opacity: 0.25;
}
.media--caption-cover .media__caption {
  color: white;
  /*background-color: rgba($brand-black, 0.6);*/
  position: absolute;
  right: 0;
  left: 0;
  padding-bottom: 15px;
  text-align: center;
  z-index: 1;
}
.media--caption-cover .media__caption p {
  margin-bottom: 0;
}
.media--caption-cover .media__caption--centre {
  top: 0;
  bottom: 0;
}
.media--caption-cover .media__caption--top {
  top: 0;
  bottom: auto;
}
.media--caption-cover .media__caption--bottom {
  bottom: 0;
  top: auto;
}

/**
 * COMPONENTS
 * Media - LINK CAPTION HOVER
 */
@keyframes BOUNCEIN {
  0% {
    bottom: 200%;
  }
  50% {
    bottom: 200%;
  }
  100% {
    bottom: 100%;
  }
}
.media__caption--float-title h5 {
  margin: 0 auto inherit;
  background: #ffd800;
}

.media--caption-hover {
  overflow: hidden;
}
.media--caption-hover .media__caption {
  color: white;
  background-color: rgba(30, 0, 40, 0.7);
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  transform: translateY(100%);
  transition-duration: 250ms;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding-top: 5px;
  padding-bottom: 15px;
  text-align: center;
}
.media--caption-hover .media__caption:before {
  content: "i";
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background-color: inherit;
  background-color: #7A1B72;
  color: #1E0028;
  position: absolute;
  bottom: 100%;
  right: 5px;
  margin-bottom: 5px;
  font-family: serif;
  font-weight: bold;
  font-style: italic;
  line-height: 40px;
}
.media--caption-hover .media__caption .btn {
  margin-bottom: 0;
}
.media--caption-hover {
  transition-duration: 0s;
}
.media--caption-hover:hover .media__caption {
  transform: translateY(0%);
  transition-duration: 0s;
}
.media--caption-hover:hover .media__caption:before {
  opacity: 0;
}

/**
 * COMPONENTS
 * Media - LINK HOVER BACKGROUND
 */
.media--hover-bg .media__image {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  padding-top: 0;
  height: auto;
}
.media--hover-bg .media__caption {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  min-height: 300px;
  background-color: white;
  position: relative;
  z-index: 1;
  transition: background-color 200ms 10ms, color 200ms;
  transition-timing-function: ease-in-out;
  transition-duration: 0s;
  background-color: #fae6fa;
}
.media--hover-bg .media__caption:hover {
  background-color: #fae6fa;
  color: white;
  transition-duration: 0s;
}
@media only screen and (min-width: 769px) {
  .media--hover-bg .media__caption {
    padding-left: 40px;
    padding-right: 40px;
  }
}
.media--hover-bg:nth-child(even) .media__caption {
  background-color: #7A1B72;
  transition-duration: 0s;
}
.media--hover-bg:nth-child(even) .media__caption:hover {
  background-color: #7A1B72;
}
.media--hover-bg:nth-child(even) .media__caption .btn {
  background: #c928b2;
  color: white;
}
.media--hover-bg:nth-child(even) .media__caption .btn:hover {
  background: #fae6fa;
  color: #7A1B72;
}

/**
 * COMPONENTS
 * Media - LINK
 */
[class*="--tile"] {
  text-align: center;
}
[class*="--tile"] .media__image {
  width: 54%;
  margin: 0 auto;
  /*@include animate;*/
}
[class*="--tile"] .media__caption {
  font-size: 16px;
  padding-bottom: 10px;
}
@media (min-width: 1024px) {
  [class*="--tile"] .media__caption {
    font-size: 24px;
  }
}
[class*="--tile"] a {
  /*@include animate;*/
  background-color: #fae6fa;
  border-radius: 12px;
  padding: 40px 0 10px;
  display: block;
  color: #7A1B72;
  font-family: "metrify-bold", Arial, Helvetica, sans-serif;
}
[class*="--tile"] {
  transition-duration: 0s;
}
[class*="--tile"]:hover {
  transition-duration: 0s;
}
[class*="--tile"]:hover a {
  background-color: #7A1B72;
  color: white;
  /*box-shadow: 0 0 20px rgba($black, 0.3);*/
}

/**
 * COMPONENTS
 * Media - OPP - OPPOTUNITY POST
 */
.media--opp .media__caption {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
}
.media--opp .media__caption > * {
  width: auto;
}
.media--opp .media__caption h5 {
  margin-bottom: 0;
}
.media--opp .media__caption h5:after {
  content: "";
  width: 40%;
  min-width: 150px;
  height: 5px;
  display: block;
  margin-top: 35px;
  margin-bottom: 40px;
  background-color: white;
}
.media--opp .media__caption h5 {
  color: white;
}
.media--opp .media__caption p:not([class]) {
  margin-bottom: 50px;
  color: white;
}
.media--opp .media__caption .date {
  color: white;
}
.media--opp .media__caption .contact {
  color: white !important;
}
.media--opp .media__caption .contact:hover {
  color: #c928b2 !important;
}
@media only screen and (min-width: 1500px) {
  .media--opp .media__caption {
    padding: 35px 70px;
  }
}

.theme-blue .media__caption h5 {
  color: #7A1B72;
}
.theme-blue .media__caption h5:after {
  background-color: #7A1B72;
}
.theme-blue .media__caption p:not([class]) {
  margin-bottom: 50px;
  color: #1E0028;
}
.theme-blue .media__caption .date {
  color: #1E0028;
}
.theme-blue .media__caption .contact {
  color: #c928b2 !important;
}
.theme-blue .media__caption .contact:hover {
  color: #7A1B72 !important;
}
.theme-blue .media__caption .btn:hover {
  background-color: white;
  color: #c928b2;
}

/**
 * COMPONENTS
 * Media - LINK WIDE
 */
.media--split {
  background-color: #b7b7b7;
}
.media--split .media__image {
  padding-top: 100%;
}
.media--split .media__caption {
  text-align: left;
  text-align: center;
}
.media--split .media__caption .form {
  margin-top: 30px;
}
@media only screen and (min-width: 769px) {
  .media--split {
    display: flex;
  }
  .media--split .media__image {
    width: 50%;
    padding-top: 50%;
  }
  .media--split .media__caption {
    width: 50%;
    align-self: center;
    padding: 30px;
  }
}
@media only screen and (min-width: 1024px) {
  .media--split .media__caption {
    padding: 60px;
  }
}

@media (-ms-high-contrast: none) and (min-width: 769px), (-ms-high-contrast: active) and (min-width: 769px) {
  .media--link-wide > a {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
  }
  .media--link-wide > a > * {
    min-width: 50%;
  }
  .media--link-wide > a .media__image {
    padding-top: 30%;
  }
}
/**
 * COMPONENTS
 * Media - SIDEBAR
 */
.media--sidebar {
  /*
  display: flex;
  width: 100%;
  height: 1000px;
  max-height: 660px;
  max-width: 1000px;
  overflow: hidden;

  .media__sidebar{
      width: 345px;
      background-color: white;
      padding: 20px;

      p:not([class]){@extend %ts-9;}
  }


   */
  /*
  &.media--10-9{
      .media__image{
          @include aspect-ratio(3,2);
          max-width: 655px;
      }
  }

   */
  /*
      .media__slider{
          width: 1000px;
          max-width: 655px;
          position: relative;
          background-color: rgba($black, 0.6);
          // background-image: url(../images/base64/SVG/tail-spin.svg);
          // background-size: 100px;
          // background-position: center;
          // background-repeat: no-repeat;

          [style*="background-image"]{
              @include cover(absolute);
              width: 100%;
              height: 100%;
              @include background(cover);
          }
      }

   */
}

/**
 * COMPONENTS - SVG
 * EDUCATION
 */
.media--svg-education .st0 {
  fill: none;
  stroke: #7A1B72;
  stroke-width: 5;
  stroke-linejoin: round;
  stroke-miterlimit: 10;
}
.media--svg-education .st1 {
  fill: none;
  stroke: #7A1B72;
  stroke-width: 5;
  stroke-linecap: round;
  stroke-miterlimit: 10;
}
.media--svg-education .st2 {
  fill: none;
  stroke: #7A1B72;
  stroke-width: 5;
  stroke-miterlimit: 10;
}
.media--svg-education .st3 {
  fill: none;
  stroke: #7A1B72;
  stroke-width: 5;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-miterlimit: 10;
}
.media--svg-education {
  transition-duration: 0s;
}
.media--svg-education:hover .st0 {
  fill: none;
  stroke: #FFFFFF;
  stroke-width: 5;
  stroke-linejoin: round;
  stroke-miterlimit: 10;
}
.media--svg-education:hover .st1 {
  fill: none;
  stroke: #FFFFFF;
  stroke-width: 5;
  stroke-linecap: round;
  stroke-miterlimit: 10;
}
.media--svg-education:hover .st2 {
  fill: none;
  stroke: #FFFFFF;
  stroke-width: 5;
  stroke-miterlimit: 10;
}
.media--svg-education:hover .st3 {
  fill: none;
  stroke: #FFFFFF;
  stroke-width: 5;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-miterlimit: 10;
}
.media--svg-education:hover {
  transition-duration: 0s;
}

/**
 * COMPONENTS - SVG
 * CONTACT
 */
.media--svg-contact .st0 {
  fill: none;
  stroke: #7A1B72;
  stroke-width: 5;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-miterlimit: 10;
}
.media--svg-contact {
  transition-duration: 0s;
}
.media--svg-contact:hover .st0 {
  fill: none;
  stroke: #FFFFFF;
  stroke-width: 5;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-miterlimit: 10;
}
.media--svg-contact:hover {
  transition-duration: 0s;
}

/**
 * COMPONENTS - SVG
 * NEUTERING
 */
.media--svg-neutering .st0 {
  fill: none;
  stroke: #7A1B72;
  stroke-width: 5;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-miterlimit: 10;
}
.media--svg-neutering {
  transition-duration: 0s;
}
.media--svg-neutering:hover .st0 {
  fill: none;
  stroke: #FFFFFF;
  stroke-width: 5;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-miterlimit: 10;
}
.media--svg-neutering:hover {
  transition-duration: 0s;
}

/**
 * COMPONENTS - SVG
 * VOLUNTEER
 */
.media--svg-volunteer .st0 {
  fill: #FFFFFF;
  stroke: #7A1B72;
  stroke-width: 5;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-miterlimit: 10;
}
.media--svg-volunteer .st1 {
  fill: none;
  stroke: #7A1B72;
  stroke-width: 5;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-miterlimit: 10;
}
.media--svg-volunteer .st2 {
  fill: none;
  stroke: #7A1B72;
  stroke-width: 5;
  stroke-linecap: round;
  stroke-miterlimit: 10;
}
.media--svg-volunteer {
  transition-duration: 0s;
}
.media--svg-volunteer:hover .st0 {
  fill: #FFFFFF;
  stroke: #FFFFFF;
  stroke-width: 5;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-miterlimit: 10;
}
.media--svg-volunteer:hover .st1 {
  fill: none;
  stroke: #FFFFFF;
  stroke-width: 5;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-miterlimit: 10;
}
.media--svg-volunteer:hover .st2 {
  fill: none;
  stroke: #FFFFFF;
  stroke-width: 5;
  stroke-linecap: round;
  stroke-miterlimit: 10;
}
.media--svg-volunteer:hover {
  transition-duration: 0s;
}

/*
*
* This partial is for setting each theme specific to the media items.
* This works independently from all other classes
*
 */
.media--theme-alpha {
  color: #7A1B72;
  background-color: #fae6fa;
  transition: scale 0.5s;
}
.media--theme-alpha .media__image {
  border: none;
}

.media--theme-beta {
  background-color: #c928b2;
  color: #fff;
  transition: scale 0.5s;
}
.media--theme-beta .media__image {
  border: none;
}
.media--theme-beta h5.media__heading {
  color: white !important;
}

.media--theme-gamma {
  background-color: #7A1B72;
  color: white;
  transition: scale 0.5s;
}
.media--theme-gamma .media__image {
  border: none;
}
.media--theme-gamma h5.media__heading {
  color: white !important;
}

.media--theme-delta {
  color: #7A1B72;
  background-color: #fae6fa;
  transition: scale 0.5s;
}
.media--theme-delta .media__image {
  border: none;
}

/**
 * COMPONENTS
 * ZOOM IMAGE ON HOVER
 */
.media--hover-scale {
  overflow: hidden;
}
.media--hover-scale .media__image {
  transition: 300ms transform;
  transition-duration: 0s;
}
.media--hover-scale .media__image:hover {
  transform: scale(1.1);
  transition-duration: 0s;
}

/**
 * COMPONENTS
 * MINI BIO
 * 
 */
.mini-bio__details {
  margin: 15px 0 0;
  display: inline-block;
}
.mini-bio__details li {
  display: inline-block;
  margin-right: 20px;
  font-size: 16px;
}
.mini-bio__details li a {
  color: inherit;
  text-decoration: none;
}
.mini-bio__details li:before {
  content: "";
  display: inline;
  vertical-align: top;
}
.mini-bio__details li.female-icon:before {
  content: "\e927";
}
.mini-bio__details li.male-icon:before {
  content: "\e929";
}
.mini-bio__details li.age-icon:before {
  content: "\e928";
}
.mini-bio__details li.location-icon:before {
  content: "\e911";
}

.login-bar {
  border-left: 2px solid #b7b7b7;
  padding-left: 5px;
  font-size: 15px;
}

/**
 * COMPONENTS
 * PAGING
 */
.paging {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 50px;
  padding-top: 20px;
  border-top: 1px solid #b7b7b7;
}

.paging__item {
  margin: 5px;
}
.paging__item a {
  padding: 5px 11px;
  text-decoration: none;
  display: inline-block;
}
.paging__item {
  transition-duration: 0s;
}
.paging__item:hover {
  background-color: #b7b7b7;
  transition-duration: 0s;
}
.paging__item.is-active {
  cursor: default;
  pointer-events: none;
  background-color: #b7b7b7;
}

.paging__next,
.paging__prev {
  margin: 5px;
  border-radius: 50%;
  transition-duration: 0s;
}
.paging__next:hover,
.paging__prev:hover {
  background-color: #b7b7b7;
  transition-duration: 0s;
}
.paging__next a,
.paging__prev a {
  text-decoration: none;
  display: inline-block;
  padding: 6px 11px;
  color: #1E0028;
}

.paging__prev a:after {
  content: "\e905";
}

.paging__next a:after {
  content: "\e906";
}

/**
 * COMPONENTS
 * PEN CARD
 */
.pen-card {
  z-index: 1;
  position: relative;
}
@media (min-width: 1024px) {
  .pen-card {
    display: flex;
    align-items: center;
  }
}
@media (min-width: 1024px) {
  .pen-card:after {
    content: "";
    background-color: #fff;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 100%;
    width: 500%;
  }
}
.pen-card:not([class*="--small"]) {
  pointer-events: none;
  background-color: white;
  opacity: 0;
  position: absolute;
  top: 0;
  width: 100%;
}
.pen-card:not([class*="--small"]).is-active {
  opacity: 1;
  transition-duration: 500ms;
  transition-timing-function: ease-out;
  pointer-events: all;
  position: relative;
}

.pen-card__image {
  width: 100%;
}
@media (min-width: 1024px) {
  .pen-card__image {
    width: 320px;
  }
}

.pen-card__stats {
  padding: 1em;
  font-family: "metrify-regular", Arial, Helvetica, sans-serif;
}
@media (min-width: 1024px) {
  .pen-card__stats {
    flex: 1;
    border-right: 1px solid #1E0028;
    margin: 0 1em 0 0;
  }
}
.pen-card__stats h3 {
  margin-bottom: 10px;
}
.pen-card__stats ul li {
  padding-bottom: 7px;
}
.pen-card__stats ul li strong {
  font-family: "metrify-bold", Arial, Helvetica, sans-serif;
}

.pen-card__summary {
  font-family: "metrify-regular", Arial, Helvetica, sans-serif;
  padding: 1em;
}
@media (min-width: 1024px) {
  .pen-card__summary {
    flex: 1;
  }
}

.pen-card__card-options {
  text-align: center;
}
@media (min-width: 425px) {
  .pen-card__card-options {
    text-align: left;
    display: flex;
    justify-content: space-between;
  }
}

.pen-card__card-options-btn {
  display: flex;
}

.pen-card__card-options-social-container {
  display: flex;
  justify-content: center;
  padding: 0 0 1em;
}
@media (min-width: 425px) {
  .pen-card__card-options-social-container {
    padding: 0;
  }
}

.pen-card__summary-copy {
  padding: 0 0 1em;
}

.pen-card--medium {
  align-items: center;
}
.pen-card--medium:nth-child(odd) {
  background-color: white;
}
.pen-card--medium .pen-card__image {
  width: 260px;
  max-width: 260px;
  min-width: 260px;
}
.pen-card--medium .pen-card__summary {
  justify-content: center;
  padding: 0 0 0 30px;
  margin: 0;
  max-width: 100%;
}
.pen-card--medium .pen-card__summary h3 {
  margin-bottom: 10px;
}
.pen-card--medium .pen-card__summary p {
  margin-top: 10px;
  max-height: 55px;
  margin-bottom: 25px;
  overflow: hidden;
}

.pen-card--small {
  padding: 23px 6vw;
  align-items: center;
  justify-content: center;
  min-height: 160px;
}
.pen-card--small:nth-of-type(odd) {
  background-color: #b7b7b7;
}
.pen-card--small .pen-card__image {
  width: 160px;
  max-width: 160px;
}
.pen-card--small .pen-card__summary {
  justify-content: center;
  padding: 0 30px;
  margin: 0;
}
.pen-card--small .pen-card__summary p {
  margin-top: 10px;
  max-height: 55px;
  overflow: hidden;
}

.pen-card--flag {
  position: relative;
}
.pen-card--flag:before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 40px;
  background-color: #7A1B72;
}
.pen-card--flag:after {
  content: "Rehomed!";
  position: absolute;
  left: 0;
  font-family: "metrify-regular", Arial, Helvetica, sans-serif;
  font-size: 28px;
  color: white;
  text-transform: uppercase;
  transform: rotate(90deg) translateY(48px);
}

/**
 * COMPONENTS
 * PIN
 */
.pin {
  display: inline-flex;
  align-items: center;
  width: auto;
  margin-bottom: 10px;
}
.pin img {
  width: 10px;
}
.pin span {
  margin: 0 10px;
}

/**
 * COMPONENTS
 * POLL
 */
.poll {
  margin: 0 auto;
  max-width: 460px;
}
@media (min-width: 1024px) {
  .poll {
    margin: 0;
    max-width: none;
  }
}
.poll:not([class*="--results"]) {
  background-color: #50ad45;
  color: white;
  padding-bottom: 60%;
}
.poll h5 {
  display: none;
}

.poll__question {
  margin-bottom: 20px;
  display: block !important;
}

.poll__answers {
  height: 100%;
  padding-bottom: 44px;
}

.poll--results {
  background-color: #b7b7b7;
}
.poll--results .poll__answers {
  padding: 0;
}
.poll--results li {
  margin: 10px 0;
}
.poll--results .form__btn {
  display: none;
}
.poll--results .form__checkbox {
  display: none;
}
.poll--results .form__result {
  display: inline-block;
  font-family: "metrify-bold", Arial, Helvetica, sans-serif;
  font-size: 21px;
  text-align: right;
  padding-right: 15px;
}
.poll--results .form__result:after {
  content: "%";
}
.poll--results .form__label {
  font-size: 18px;
  line-height: 24px;
}
.poll--results h5 {
  color: white;
  background-color: #7A1B72;
  padding: 20px;
  margin-bottom: 0;
  display: block;
}
.poll--results .poll__question:before {
  content: "RESULTS!";
  text-transform: uppercase;
  font-size: 30px;
  padding-right: 10px;
}

/**
 * COMPONENTS
 * POPUP
 */
.popup {
  background-color: rgba(30, 0, 40, 0.8);
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 9999;
  padding: 25px;
  opacity: 0;
  transform: translateY(-100%);
  transition-duration: 250ms;
  overflow-y: auto;
}
.popup.is-active {
  opacity: 1;
  transform: translateY(0);
}

.popup__inner {
  height: auto;
  opacity: 0;
  transition: opacity 300ms 150ms ease-in-out;
  position: relative;
}
.is-active .popup__inner {
  opacity: 1;
}

@media (min-width: 768px) {
  #dynamic-popup .popup__inner {
    margin: 0 auto;
  }
}

.popup__inner .close {
  cursor: pointer;
  width: 44px;
  max-width: 44px;
  height: 44px;
  background-color: #7A1B72;
  border-radius: 50%;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: -20px;
  right: -20px;
  z-index: 10000;
  transition-duration: 0s;
}
.popup__inner .close:hover {
  background-color: #c928b2;
  opacity: 1;
  transition-duration: 0s;
}
.popup__inner .close:before, .popup__inner .close:after {
  content: "";
  border-radius: 1px;
  position: absolute;
  background-color: white;
  width: 22px;
  height: 3px;
  border-radius: 1px;
  top: 50%;
  left: 12px;
}
.popup__inner .close:before {
  transform: rotate(45deg);
}
.popup__inner .close:after {
  transform: rotate(-45deg);
}
@media only screen and (min-width: 769px) {
  .popup__inner .close {
    width: 1200px;
    margin-left: auto;
    margin-right: auto;
    text-align: right;
  }
}

[data-popup] {
  cursor: pointer;
}

[data-popup-content] {
  position: relative;
  display: none !important;
}
.popup [data-popup-content] {
  display: block !important;
}

[data-popup-content=login] {
  background-color: #b7b7b7;
  padding: 20px;
}

[data-popup-content=video] {
  max-width: 100%;
  background-color: #1E0028;
  background-image: url(../images/base64/SVG/tail-spin.svg);
  background-size: 100px;
  background-position: center;
  background-repeat: no-repeat;
}

@media (min-width: 1024px) {
  .popup--login {
    display: flex;
    justify-content: center;
    align-items: center;
  }
}
.popup--login .popup__wrapper {
  max-width: 850px;
  margin: 0 auto;
}
@media (min-width: 1024px) {
  .popup--login .popup__wrapper {
    width: 850px;
    max-width: none;
    margin: 0;
  }
}

@media (min-width: 1024px) {
  .popup--slider {
    display: flex;
    justify-content: center;
    align-items: center;
  }
}
.popup--slider .popup__wrapper {
  max-width: 700px;
  margin: 0 auto;
}
@media (min-width: 1024px) {
  .popup--slider .popup__wrapper {
    width: 700px;
    max-width: none;
    margin: 0;
  }
}

@media (min-width: 1024px) and (min-height: 900px) {
  .popup--dynamic {
    display: flex;
    justify-content: center;
    align-items: center;
  }
}
.popup--dynamic .popup__wrapper {
  max-width: 1000px;
  margin: 0 auto;
}
@media (min-width: 1024px) and (min-height: 900px) {
  .popup--dynamic .popup__wrapper {
    width: 1000px;
    max-width: none;
    margin: 0;
  }
}

@media (min-width: 1024px) and (min-height: 900px) {
  .popup--profile {
    display: flex;
    justify-content: center;
    align-items: center;
  }
}
.popup--profile .popup__wrapper {
  max-width: 550px;
  margin: 0 auto;
}
@media (min-width: 1024px) and (min-height: 900px) {
  .popup--profile .popup__wrapper {
    width: 550px;
    max-width: none;
    margin: 0;
  }
}

.popup--cat-community-item .popup__wrapper {
  max-width: 1000px;
  margin: 0 auto;
}

@media (min-width: 1024px) {
  .popup--video {
    display: flex;
    justify-content: center;
    align-items: center;
  }
}
.popup--video .popup__wrapper {
  max-width: 700px;
  margin: 0 auto;
}
@media (min-width: 1024px) {
  .popup--video .popup__wrapper {
    width: 700px;
    max-width: none;
    margin: 0;
  }
}

/**
 * COMPONENTS
 * Social Icon
 * This is an example of a component partial
 */
.social__icon {
  width: 40px;
  height: 40px;
  margin: 0 0 0 5px;
  font-size: 47px;
  line-height: 0;
  color: #1E0028;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.5s;
  transition-duration: 0s;
  background-image: url("/images/social_icons.png");
}
.social__icon:hover {
  color: #7A1B72;
  /*transform: scale(125%);*/
  transition-duration: 0s;
  background-position-y: 40px;
}

.social__icon--fbk {
  background-position-x: 120px;
}

.social__icon--twt {
  background-position-x: 0px;
}

.social__icon--inst {
  background-position-x: 80px;
}

.social__icon--yout {
  background-position-x: 40px;
}

.social__icon--mobile {
  width: 23px;
  height: 25px;
  margin: 0 2px;
  font-size: 27px;
}

/**
 * COMPONENTS
 * Sliders
 * Here are the sliders for the site
 */
.slick-list,
.slick-track,
.slick-slide {
  height: 100%;
  outline: none;
}

.slick-slider {
  width: 100%;
}

.slick-track.slick-track {
  display: flex;
  align-items: center;
}

.hero-slider__caption {
  grid-area: content;
  z-index: 20;
  padding: 30px;
  max-width: 1100px;
  -ms-grid-column-align: center;
  -ms-grid-row-align: center;
  bottom: 0;
  padding: 36px 20px 0;
  margin-bottom: -1px;
  width: 100%;
}
@media (min-width: 600px) {
  .hero-slider__caption {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: #ffffff;
    height: fit-content;
    text-shadow: 0 0 20px black;
  }
}

.hero-slider__image {
  grid-area: content;
  z-index: 10;
  height: 100%;
  width: 100%;
  background-position: center;
  background-size: cover;
  max-height: 320px;
  position: relative;
}
@media (min-width: 600px) {
  .hero-slider__image {
    max-height: 415px;
  }
}
@media (min-width: 1200px) {
  .hero-slider__image {
    max-height: 665px;
  }
}
.hero-slider__image img {
  display: none;
}
.hero-slider__image:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  background: #000000;
  opacity: 0.25;
  z-index: 1;
}

.hero-slider__container {
  /*display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: 1fr;
  grid-template-areas: "content";
  position: relative;
  z-index: 10;*/
  color: #7A1B72;
  align-items: center;
  text-align: center;
  justify-items: center;
  height: 100vw;
  max-height: 320px;
}
@media (min-width: 600px) {
  .hero-slider__container {
    max-height: 415px;
  }
}
@media (min-width: 1200px) {
  .hero-slider__container {
    max-height: 665px;
  }
}

/*.hero-slider--vet-badge {
    .hero-slider__caption {
        @media (min-width: 768px) {
            display: flex;
            align-items: center;
        }
    }
}*/
.slick-arrow {
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 40px;
  height: 40px;
  background-color: #7A1B72;
  overflow: hidden;
  border-radius: 50%;
  z-index: 10;
  text-indent: 50px;
  color: transparent;
  opacity: 0.9;
  outline: none;
}
.slick-arrow:after {
  color: white;
  position: absolute;
  text-indent: 0;
  font-size: 25px;
  line-height: 0;
}
.slick-arrow {
  transition-duration: 0s;
}
.slick-arrow:hover {
  opacity: 1;
  background-color: #7A1B72;
  transition-duration: 0s;
}
.slick-arrow:hover:after {
  color: white;
}

.slick-next {
  right: 0;
  transform: translateX(150%);
}
.slick-next:after {
  content: "\e906";
  left: 9px;
  top: 21px;
}

.slick-prev {
  transform: translateX(-150%);
}
.slick-prev:after {
  content: "\e905";
  left: 6px;
  top: 21px;
}

.popup .slick-arrow {
  display: none !important;
}
@media (min-width: 900px) {
  .popup .slick-arrow {
    display: flex !important;
  }
}

.campaign-slider {
  width: auto;
  overflow: hidden;
}

.instagram-slider .slick-dots {
  position: absolute;
  top: auto;
  bottom: 30px;
}

.twitter-slider,
.facebook-slider {
  width: 100%;
  text-align: center;
  padding: 30px;
}
.twitter-slider h3,
.facebook-slider h3 {
  margin-bottom: 20px;
}
.twitter-slider .slick-dots,
.facebook-slider .slick-dots {
  margin-top: 20px;
  padding-left: 0 !important;
}
.twitter-slider:before,
.facebook-slider:before {
  font-size: 52px;
  line-height: 1;
  height: 52px;
  margin-bottom: 20px;
}
.twitter-slider .slick-slide,
.twitter-slider .slick-list,
.twitter-slider .slick-track,
.facebook-slider .slick-slide,
.facebook-slider .slick-list,
.facebook-slider .slick-track {
  height: auto;
}

.twitter-slider:before {
  content: "\e904";
  color: #7db6df;
}

.facebook-slider:before {
  content: "\e909";
  color: #3b5998;
}
.facebook-slider:after {
  content: "";
  display: flex;
  height: 1px;
  background-color: #fae6fa;
  position: absolute;
  top: 0;
  left: 30px;
  right: 30px;
}

.media-slider {
  position: relative;
}
.media-slider .slick-list,
.media-slider .slick-slide {
  width: 100% !important;
}
.media-slider .slick-next {
  transform: translateX(0);
  right: 20px;
}
.media-slider .slick-prev {
  transform: translateX(0);
  left: 20px;
}
.media-slider .slick-dots {
  position: absolute;
  top: auto;
  bottom: 30px;
}

.community-cat-gallery-slider {
  max-width: 1000px;
  background-color: rgba(30, 0, 40, 0.8);
}
@media only screen and (min-width: 1200px) {
  .community-cat-gallery-slider {
    width: 1000px;
  }
}
.community-cat-gallery-slider .slick-dots {
  position: absolute;
  width: auto;
  height: 40px;
  margin-top: 12px;
  top: 100%;
  left: 0;
}
.community-cat-gallery-slider .slick-dots li:only-child {
  display: none;
}

.cat-gallery-slider {
  background-color: rgba(30, 0, 40, 0.8);
}
@media only screen and (min-width: 769px) {
  .cat-gallery-slider {
    width: 700px;
  }
}
.cat-gallery-slider .slick-dots {
  position: absolute;
  width: auto;
  height: 40px;
  top: auto;
  left: 50%;
  bottom: 0;
  transform: translateX(-50%);
  z-index: 1000;
}
.cat-gallery-slider .slick-dots li:only-child {
  display: none;
}
.cat-gallery-slider .slick-dots li:last-child button:before {
  background-color: #7A1B72;
}
.cat-gallery-slider .slick-dots li:last-child.slick-active button:before {
  background-color: #7A1B72;
}

/**
 * COMPONENTS
 * Sponsor Poster
 *
 */
.sponsor-poster {
  max-width: 700px;
  width: 100%;
  height: 0;
  position: relative;
  padding-top: 90%;
}

.sponsor-poster--in-slider {
  max-width: none;
}
.sponsor-poster--in-slider p {
  display: none;
}
@media (min-width: 425px) {
  .sponsor-poster--in-slider p {
    display: block;
  }
}

.sponsor-poster__inner {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  padding: 30px;
  top: 0;
  position: absolute;
}
.sponsor-poster__inner h2 {
  margin-bottom: 10px;
}
.sponsor-poster__inner p {
  margin-bottom: 20px;
  max-width: 500px;
}
.sponsor-poster__inner .gallery-icon {
  width: 20vw;
  height: 20vw;
  max-width: 160px;
  max-height: 160px;
  background-image: url(../images/base64/svg/gallery-icon-white.svg);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}

/**
 * COMPONENTS
 * Stepper
 */
.stepper-container {
  max-width: 1200px;
  position: relative;
  padding: 0 20px;
  margin: 0 auto;
}

.stepper {
  display: flex;
  justify-content: space-between;
}

.stepper__stop {
  display: none;
  width: 150px;
  text-align: center;
}
@media (min-width: 1024px) {
  .stepper__stop {
    display: block;
  }
}

.stepper__stop.is-active {
  display: block;
}
.stepper__stop.is-active span {
  height: 36px;
  width: 36px;
  margin: 2px 0;
}
.stepper__stop.is-active span:before {
  content: "";
  background-color: white;
  height: 20px;
  width: 20px;
  border-radius: 100%;
  display: block;
}
.stepper__stop.is-active + .stepper__stop {
  display: block;
}

.stepper__stop span {
  height: 20px;
  width: 20px;
  background-color: #7A1B72;
  border-radius: 100%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin: 10px 0;
  position: relative;
}
.stepper__stop:last-of-type.is-active {
  width: 100%;
}
@media (min-width: 1024px) {
  .stepper__stop:last-of-type.is-active {
    width: 150px;
  }
}

.stepper-progress-bar:before {
  content: "";
  background-color: #7A1B72;
  display: block;
  position: absolute;
  height: 8px;
  left: 90px;
  right: 90px;
  top: 42px;
}

.stepper__step {
  position: relative;
}
@media only screen and (min-width: 1024px) {
  .stepper__step {
    margin: 0;
  }
}
.stepper__step {
  color: #7A1B72;
}

.stepper__heading {
  color: #7A1B72;
}

[class*=step-content] {
  transition: opacity 400ms ease-in-out, max-height 500ms ease-in-out;
}
[class*=step-content]:not(.is-active) {
  opacity: 0;
  max-height: 0px;
  overflow: hidden;
}
[class*=step-content].is-active {
  opacity: 1;
  max-height: 9999px;
}

.step-btns {
  max-width: 450px;
  margin: 0 auto;
  flex-direction: column-reverse;
  display: flex;
}
@media only screen and (min-width: 769px) {
  .step-btns {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-end;
    max-width: none;
    margin: 0;
  }
}
.step-btns p {
  margin-bottom: 20px;
  text-align: justify;
}
.step-btns:before {
  content: "";
  display: block;
  width: 100%;
  border-top: 1px solid #b7b7b7;
  margin-bottom: 30px;
}
@media only screen and (min-width: 769px) {
  .step-btns--layout-of-two {
    justify-content: space-between;
  }
}

.step-btns--center {
  justify-content: center;
}
.step-btns--center .btn:only-child {
  margin-left: 0;
}

.step-btns--thema-alpha:before {
  border-color: rgb(157.5, 157.5, 157.5);
}

.step-btns--no-border:before {
  margin: 0;
  border: 0;
}

.step-btns__btn {
  width: 100%;
  display: block;
  margin: 0 0 1em;
}
@media only screen and (min-width: 769px) {
  .step-btns__btn {
    display: inline-flex;
    margin: 0 0 0 30px;
    width: auto;
  }
}

.step-btns__back {
  width: 100%;
  display: block;
  margin: 0 0 1em;
}
@media only screen and (min-width: 769px) {
  .step-btns__back {
    display: inline-flex;
    width: auto;
  }
}

/**
 * COMPONENTS
 * Story
 * This component is found on the Bereavement Stories template
 */
.story {
  padding-left: 20px;
  display: flex;
  justify-content: center;
  flex-direction: column;
}
.story p:not([class]) {
  margin-top: 20px;
}
.story h3,
.story p {
  padding-right: 20px;
}
.story h3 {
  margin-top: 30px;
}
.story p:last-of-type {
  margin-bottom: 40px;
}

.story.story--cover {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  height: 100%;
  width: 100%;
}

.story:not([class*="--no-fade"]):after, .story:not([class*="--no-fade"]):before {
  content: "";
  height: 40px;
  left: 0;
  right: 10px;
  position: absolute;
  z-index: 1;
}
.story:not([class*="--no-fade"]):before {
  background-image: linear-gradient(#b7b7b7, transparent);
  top: 0;
}
.story:not([class*="--no-fade"]):after {
  background-image: linear-gradient(transparent, #b7b7b7);
  bottom: 0;
}

.story.bg-blue {
  background-color: #7A1B72;
  color: white;
}

.story.bg-blue:not([class*="--no-fade"]):before {
  background-image: linear-gradient(#7A1B72, transparent);
}
.story.bg-blue:not([class*="--no-fade"]):after {
  background-image: linear-gradient(transparent, #7A1B72);
}

.story.bg-green {
  background-color: #50ad45;
  color: white;
}

.story.bg-green:not([class*="--no-fade"]):before {
  background-image: linear-gradient(#50ad45, transparent);
}
.story.bg-green:not([class*="--no-fade"]):after {
  background-image: linear-gradient(transparent, #50ad45);
}

.story.bg-grey {
  background-color: #1E0028;
  color: white;
}

.story.bg-grey:not([class*="--no-fade"]):before {
  background-image: linear-gradient(#1E0028, transparent);
}
.story.bg-grey:not([class*="--no-fade"]):after {
  background-image: linear-gradient(transparent, #1E0028);
}

.story.bg-purple {
  background-color: #7A1B72;
  color: white;
}

.story.bg-purple:not([class*="--no-fade"]):before {
  background-image: linear-gradient(#7A1B72, transparent);
}
.story.bg-purple:not([class*="--no-fade"]):after {
  background-image: linear-gradient(transparent, #7A1B72);
}

.story.bg-red {
  background-color: #eb533b;
  color: white;
}

.story.bg-red:not([class*="--no-fade"]):before {
  background-image: linear-gradient(#eb533b, transparent);
}
.story.bg-red:not([class*="--no-fade"]):after {
  background-image: linear-gradient(transparent, #eb533b);
}

.story.bg-orange {
  background-color: #7A1B72;
  color: #1E0028;
}

.story.bg-orange:not([class*="--no-fade"]):before {
  background-image: linear-gradient(#7A1B72, transparent);
}
.story.bg-orange:not([class*="--no-fade"]):after {
  background-image: linear-gradient(transparent, #7A1B72);
}

.story.bg-light-blue {
  background-color: #c928b2;
  color: white;
}

.story.bg-light-blue:not([class*="--no-fade"]):before {
  background-image: linear-gradient(#c928b2, transparent);
}
.story.bg-light-blue:not([class*="--no-fade"]):after {
  background-image: linear-gradient(transparent, #c928b2);
}

.story.bg-light-grey {
  background-color: #b7b7b7;
  color: #1E0028;
}

.story.bg-light-grey:not([class*="--no-fade"]):before {
  background-image: linear-gradient(#b7b7b7, transparent);
}
.story.bg-light-grey:not([class*="--no-fade"]):after {
  background-image: linear-gradient(transparent, #b7b7b7);
}

/**
 * COMPONENTS
 * Tab
 */
@media (min-width: 425px) {
  .search-group {
    display: flex;
  }
}

.search-group__input {
  margin: 0 0 20px;
}
@media (min-width: 425px) {
  .search-group__input {
    margin: 0 10px 0 0;
    flex: 1;
    height: 46px;
  }
}

.search-group__btn {
  width: 100%;
  display: block;
}
@media (min-width: 425px) {
  .search-group__btn {
    width: auto;
  }
}

/**
 * COMPONENTS
 * 404/500 Warning Message
 */
.warning-message {
  margin: 50px auto;
  text-align: center;
}
.warning-message p {
  max-width: 650px;
  margin: 0 auto;
}

.warning-message__headline {
  margin-top: 20px;
  margin-bottom: 30px;
}

.warning-message__icon {
  max-width: 120px;
  height: 120px;
  margin: 0 auto;
  background-image: url(../images/base64/PNG/warning.png);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}

.warning-message__links {
  margin-top: 30px;
}
.warning-message__links ul {
  text-align: center;
  padding: 20px;
}
.warning-message__links ul li {
  margin-bottom: 10px;
  padding-left: 0;
  padding-bottom: 0;
}
.warning-message__links ul li:before {
  display: none;
}
@media only screen and (min-width: 769px) {
  .warning-message__links {
    display: flex;
  }
  .warning-message__links ul {
    max-width: 50%;
    text-align: right;
  }
  .warning-message__links ul + ul {
    text-align: left;
  }
}

.warning-message__steps {
  max-width: 700px;
  text-align: left;
  margin: 50px auto;
  color: #1E0028;
  font-size: 16px;
}

.mobile-sticky-bar {
  background-color: #7A1B72;
  padding: 5px 1em;
  display: none;
  justify-content: center;
  align-items: center;
  font-size: 14px;
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 50;
  border-top: 1px solid rgba(255, 255, 255, 0.25);
}
@media (min-width: 426px) {
  .mobile-sticky-bar {
    display: none;
  }
}

.mobile-sticky-bar--open {
  display: flex;
}
@media (min-width: 426px) {
  .mobile-sticky-bar--open {
    display: none;
  }
}

.mobile-sticky-bar__container {
  border-right: 1px solid rgba(255, 255, 255, 0.25);
  width: 33.33%;
  text-align: center;
  font-family: "metrify-bold", Arial, Helvetica, sans-serif;
  min-height: 54px;
  position: relative;
}
.mobile-sticky-bar__container:last-of-type {
  border: 0;
}

.mobile-sticky-bar__link {
  position: absolute;
  top: 0px;
  left: 0px;
  right: 0px;
  bottom: 0px;
  display: block;
  line-height: 54px;
  color: white;
}

.community-stats {
  display: flex;
  flex-wrap: wrap;
}

.community-stats__btn {
  display: flex;
  align-items: center;
  color: #1E0028;
  text-align: left;
  line-height: 20px;
  pointer-events: none;
  margin: 0 0 1em;
  width: 100%;
}
@media (min-width: 425px) {
  .community-stats__btn {
    width: 50%;
  }
}
@media (min-width: 768px) {
  .community-stats__btn {
    width: 33.33%;
  }
}
.community-stats__btn span {
  width: 40px;
  min-width: 40px;
  height: 40px;
  line-height: 40px;
  text-align: center;
  color: white;
  background-color: #eb533b;
  border-radius: 50%;
  margin-right: 10px;
  transition-duration: 0s;
}
.community-stats__btn span:hover {
  background-color: #7A1B72;
  transition-duration: 0s;
}

.donate-option {
  padding: 20px 15px;
  cursor: pointer;
  background-color: #7A1B72;
  font-family: "metrify-regular", Arial, Helvetica, sans-serif;
  text-align: center;
  display: flex;
  align-items: center;
  flex-direction: column;
  justify-content: space-between;
}
@media (min-width: 769px) {
  .donate-option {
    height: 345px;
    padding: 40px 30px;
  }
}
.donate-option.is-selected {
  background-color: #7A1B72;
  color: #fff;
}

.donate-option__amount {
  font-family: "metrify-bold", Arial, Helvetica, sans-serif;
  font-size: 40px;
  width: 100%;
}
@media (min-width: 768px) {
  .donate-option__amount {
    font-size: 46px;
  }
}

.donate-option__copy {
  padding: 20px 0;
  font-size: 18px;
  width: 100%;
}
@media (min-width: 1500px) {
  .donate-option__copy {
    padding: 0;
  }
}

.donation-option__input {
  margin: 20px 0;
  width: 200px;
}

.donate-option__heading {
  font-size: 32px;
  font-family: "metrify-bold", Arial, Helvetica, sans-serif;
  width: 100%;
}

.donate-option__btn {
  background-color: #c928b2 !important;
  color: white !important;
}
.donate-option__btn:hover {
  background-color: white !important;
  color: #c928b2 !important;
}
.donate-option__btn:before {
  content: "Please Select";
}
.donate-option.is-selected .donate-option__btn {
  background-color: #c928b2 !important;
  color: white !important;
}
.donate-option.is-selected .donate-option__btn:before {
  content: "Selected";
}

.donate-option--horizontal-layout {
  flex-direction: row;
}
@media (min-width: 768px) {
  .donate-option--horizontal-layout {
    flex-direction: column;
  }
}
.donate-option--horizontal-layout .donate-option__copy {
  display: none;
}
@media (min-width: 768px) {
  .donate-option--horizontal-layout .donate-option__copy {
    display: block;
  }
}

.donate-option--other-amount-horizontal-layout .donation-option__input {
  margin: 0 0 20px;
}
@media (min-width: 768px) {
  .donate-option--other-amount-horizontal-layout .donation-option__input {
    margin: 20px 0;
  }
}
.donate-option--other-amount-horizontal-layout .donate-option__heading {
  display: none;
}
@media (min-width: 768px) {
  .donate-option--other-amount-horizontal-layout .donate-option__heading {
    display: block;
  }
}

.donate-option--other {
  flex-direction: column;
}

.donate-option--mobile-theme {
  flex-direction: row;
  flex-wrap: wrap;
  padding: 12px;
}
@media (min-width: 768px) {
  .donate-option--mobile-theme {
    flex-direction: column;
    padding: 40px 30px;
  }
}
.donate-option--mobile-theme .donate-option__btn {
  width: 100%;
}
@media (min-width: 768px) {
  .donate-option--mobile-theme .donate-option__btn {
    display: block;
    background-color: #c928b2 !important;
    color: white !important;
  }
  .donate-option--mobile-theme .donate-option__btn:hover {
    background-color: white !important;
    color: #c928b2 !important;
  }
}
.donate-option--mobile-theme .donate-option__copy {
  text-align: center;
  padding: 0;
  font-size: 16px;
  padding-bottom: 8px;
}
@media (min-width: 768px) {
  .donate-option--mobile-theme .donate-option__copy {
    font-size: 18px;
  }
}
.donate-option--mobile-theme .donate-option__amount {
  font-size: 30px;
}
@media (min-width: 768px) {
  .donate-option--mobile-theme .donate-option__amount {
    font-size: 40px;
  }
}

.donate-option--other-mobile-theme .donate-option__heading {
  display: none;
}
@media (min-width: 768px) {
  .donate-option--other-mobile-theme .donate-option__heading {
    display: block;
  }
}
.donate-option--other-mobile-theme .donation-option__input {
  margin: 0 0 20px;
}
@media (min-width: 768px) {
  .donate-option--other-mobile-theme .donation-option__input {
    margin: 20px 0;
  }
}

a[href^=mailto] {
  word-break: break-word;
  color: #c928b2;
}
a[href^=mailto]:hover {
  color: #7A1B72;
}

.pagination {
  display: flex;
  flex-wrap: wrap;
}
@media (min-width: 768px) {
  .pagination {
    align-items: center;
    justify-content: space-between;
  }
}

.pagination__prev {
  width: 100%;
}
@media (min-width: 425px) {
  .pagination__prev {
    width: 50%;
  }
}
@media (min-width: 768px) {
  .pagination__prev {
    order: 1;
    width: auto;
  }
}

.pagination__prev--last-one,
.pagination__next {
  width: 100%;
}
@media (min-width: 768px) {
  .pagination__prev--last-one,
  .pagination__next {
    order: 3;
    width: auto;
  }
}

.pagination__prev + .pagination__next {
  width: 100%;
  padding: 10px 0 0;
}
@media (min-width: 425px) {
  .pagination__prev + .pagination__next {
    width: 50%;
    padding: 0 0 0 10px;
  }
}
@media (min-width: 768px) {
  .pagination__prev + .pagination__next {
    width: 140px;
    padding: 0;
  }
}

@media (min-width: 768px) {
  .pagination__next,
  .pagination__prev {
    width: 140px;
  }
}

.pagination__count {
  width: 100%;
  margin: 0 0 10px;
  text-align: center;
}
@media (min-width: 768px) {
  .pagination__count {
    width: auto;
    order: 2;
    margin: 0;
  }
}

.sort-by {
  margin: 0 0 20px;
}
@media (min-width: 450px) {
  .sort-by {
    display: flex;
    justify-content: flex-end;
    align-items: center;
  }
}

.sort-by__label {
  margin: 0 0 20px;
}
@media (min-width: 450px) {
  .sort-by__label {
    margin: 0 20px 0 0;
  }
}

.sort-by__box {
  margin: 0;
}
@media (min-width: 450px) {
  .sort-by__box {
    width: auto;
  }
}

.membership-type {
  padding: 136px 20px 20px;
  background-color: #fae6fa;
  width: 226px;
  position: relative;
  margin: 0 auto;
  border: 1px solid #dac0d8 !important;
}
.membership-type:before {
  content: "";
  display: block;
  width: 120px;
  height: 80px;
  color: #7A1B72;
  position: absolute;
  top: 25px;
  left: 50%;
  transform: translateX(-50%);
  font-size: 90px;
}
.membership-type[data-select-box=ForMe]:before {
  content: "\e92a";
  font-size: 95px;
}
.membership-type[data-select-box=ForUs]:before {
  content: "\e913";
}
.membership-type[data-select-box=AGift]:before {
  content: "\e928";
}
.membership-type .form__select {
  margin-bottom: 0;
  color: #7A1B72;
  font-family: "cats-headline", Arial, Helvetica, sans-serif;
  text-align: center;
  font-size: 20px;
}
.membership-type .form__select:before {
  content: "Garry";
}

/*
  This can be used to create general components that need fixed ratio restrictions
 */
.fixed-ratio {
  position: relative;
}
.fixed-ratio:before {
  display: block;
  content: "";
  width: 100%;
}
.fixed-ratio > .fixed-ratio__inner {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

.fixed-ratio--1-1:before {
  padding-top: 100%;
}

/*
[contenteditable]:empty:before {
  content: attr(data-placeholder);
  color: grey;
  display: inline-block;
}
*/
.submit-comment {
  position: relative;
}

.submit-comment__input {
  border: 1px solid #999;
  padding: 0.8em;
  border-radius: 2em;
  width: 100%;
  font-size: 0.7em;
  line-height: 1.7em;
  overflow-x: hidden;
  word-break: break-all;
}
.submit-comment__input:empty:before {
  content: attr(placeholder);
  display: block;
}
.submit-comment__input:focus {
  outline: none;
}
.submit-comment__input:focus + .submit-comment__button {
  opacity: 1;
}

.submit-comment__input--expanded {
  padding: 0.8em 0.8em 3em;
}

.submit-comment__button {
  position: absolute;
  right: 1em;
  bottom: 1em;
  font-size: 12px;
  opacity: 0;
  transition: opacity 0.2s;
}

.is-submitting {
  color: transparent !important;
  pointer-events: none;
  position: relative;
  background-color: #c928b2 !important;
}
.is-submitting:before {
  content: "";
  height: 1.4em;
  width: 1.4em;
  border-radius: 100%;
  display: block;
  position: absolute;
  background: linear-gradient(to left, #fff, transparent 60%);
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 10;
  animation: rotating 2s linear infinite;
}
.is-submitting:after {
  content: "";
  height: 1.2em;
  width: 1.2em;
  border-radius: 100%;
  display: block;
  position: absolute;
  background-color: #c928b2;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 20;
}
.is-submitting.js-form-submission-ajax-hidden {
  display: none;
}

@keyframes rotating {
  from {
    transform: translate(-50%, -50%) rotate(0deg);
  }
  to {
    transform: translate(-50%, -50%) rotate(360deg);
  }
}
.cookie-bar {
  font-family: arial;
  font-size: 13px;
  line-height: 1.4;
  position: fixed;
  top: auto;
  left: 0;
  right: 0;
  bottom: 0;
  display: flex;
  padding: 20px 15px 5px;
  justify-content: center;
  flex-wrap: wrap;
  z-index: 9999999;
  background-color: rgba(0, 0, 0, 0.9);
  color: white;
}

.cookie-bar__copy {
  width: 100%;
  text-align: center;
}

.cog {
  width: 20px;
  position: absolute;
  top: 50%;
  left: 10px;
  transform: translateY(-50%);
}

.cookie-bar__accept {
  position: relative;
  padding: 16px 10px;
  color: white;
  transition-duration: 0s;
}

/* .cookie-bar__accept:after{
    display: none;
} */
.cookie-bar__settings {
  color: inherit;
  text-decoration: none;
  padding: 18px 18px;
  position: relative;
  color: white;
  margin-bottom: 20px;
}

.cookie-bar__settings {
  padding-left: 37px;
  transition-duration: 0s;
}

.cookie-bar__accept:hover {
  background-color: #fff;
  color: rgba(0, 0, 0, 0.9);
  transition-duration: 0s;
}

.cookie-bar__settings:hover {
  background-color: rgba(225, 225, 225, 0.4);
  color: white;
  transition-duration: 0s;
}

@media (min-width: 600px) {
  .cookie-bar {
    justify-content: flex-start;
    flex-wrap: nowrap;
    align-items: center;
    padding-bottom: 20px;
  }
  .cookie-bar__copy {
    text-align: left;
    padding-right: 16px;
    width: auto;
    flex: 1;
    font-size: 1.1em;
  }
  .cookie-bar__settings,
  .cookie-bar__accept {
    /* padding: 16px 32px; */
    text-align: center;
    margin-left: 10px;
    margin-bottom: 0;
  }
  .cookie-bar__accept {
    border: 1px solid #fff;
  }
}
.cookie-model {
  display: flex;
  align-items: flex-start;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.8);
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s;
  transform: translateY(-100%);
  font-family: Arial, Helvetica, sans-serif;
  /* padding: 0 10px; */
  font-size: 14px;
  z-index: 99999999;
  overflow: scroll;
  -webkit-overflow-scrolling: touch; /* Lets it scroll lazy */
}

@media (min-width: 600px) {
  .cookie-model {
    align-items: center;
  }
}
.cookie-model::-webkit-scrollbar {
  display: none;
}

.cookie-model.visible {
  transform: translateY(0);
  opacity: 1;
  visibility: visible;
}

.cookie-model__window {
  background-color: #fff;
  padding: 16px;
  margin: 0 auto;
  max-width: 600px;
  opacity: 0;
  transition: opacity 0.3s 0.2s, transform 0.3s 0.2s;
}

@media (min-width: 600px) {
  .cookie-model__window {
    padding: 30px 35px 25px;
  }
}
.cookie-model__window h1 {
  font-size: 28px;
  line-height: 1;
  text-transform: none;
}

.cookie-model__window p {
  font-size: 14px;
  line-height: 22px;
}

.cookie-model.visible .cookie-model__window {
  transform: translateY(0);
  opacity: 1;
}

.cookie-model__close {
  background-color: green;
  color: #fff;
  border-radius: 4px;
  line-height: 25px;
  text-align: center;
  cursor: pointer;
  padding: 20px;
  font-size: 1.25em;
  transition-duration: 0s;
  /* border: 1px solid #7d7d7d; */
}

.cookie-model__close:hover {
  background-color: #ccc;
  color: #636363;
  transition-duration: 0s;
}

.cookie-model__close img {
  width: 10px;
}

.cookie-model h1 {
  margin: 0 0 16px;
}

.cookie-model__window > p {
  color: #848484;
  margin: 0 0 16px;
}

/*cookie option styles*/
/* .cookie-option {
} */
.cookie-option__heading {
  border-top: 1px solid #bfbfbf;
  padding-top: 18px;
  margin: 0 0 0;
  font-size: 20px;
  line-height: 1;
  text-transform: none;
}

.cookie-option__copy {
  color: #848484;
  margin: 0 0 16px;
}

.cookie-option span {
  position: relative;
  width: 50px;
  height: 25px;
  display: inline-block;
  background-color: #252525;
  border-radius: 25px;
  cursor: pointer;
}

.cookie-option span:after {
  content: "";
  position: absolute;
  top: 2px;
  left: 2px;
  width: 21px;
  height: 21px;
  display: inline-block;
  background-color: #fff;
  transition: transform 0.3s;
  border-radius: 100%;
}

.cookie-option span:before {
  content: "off";
  color: #fff;
  position: absolute;
  top: 4px;
  font-family: Arial, Helvetica, sans-serif;
  right: 7px;
}

.cookie-option input {
  display: none !important;
}

.cookie-option input:disabled + span {
  cursor: not-allowed;
  opacity: 0.5;
}

.cookie-option input:checked + span {
  background-color: green;
}

.cookie-option input:checked + span:after {
  transform: translateX(25px);
}

.cookie-option input:checked + span:before {
  content: "on";
  transform: translateX(-22px);
}

/* .cookie-option__label {
} */
@media (min-width: 400px) {
  .cookie-option__label {
    float: right;
    margin-left: 5px;
  }
}
#cogBar {
  position: fixed;
  bottom: 0;
  left: 0;
  height: 60px;
  width: 60px;
  cursor: pointer;
  z-index: 100;
}

.cogBar__inner {
  position: relative;
}

.cogBar__inner:before {
  content: "";
  height: 120px;
  width: 1px;
  display: block;
  position: absolute;
  border-left: 60px solid grey;
  border-top: 60px solid transparent;
}

#cogBar:hover .cogBar__inner:before {
  border-left-color: green;
}

.cogBar__img {
  display: block;
  position: relative;
  z-index: 1;
  top: 30px;
  left: 6px;
}

.simons-cat-banner-logo {
  max-width: 30%;
  margin: 0 auto;
}
@media (min-width: 1040px) {
  .simons-cat-banner-logo {
    width: auto;
    margin: 0;
  }
}

.simons-cat-info-box {
  background-color: #F02D29;
  color: #fff;
}

.simons-cat-info-box__content {
  padding: 2em 15px 120px;
  background-image: url("../images/simons-cat/bigcat.png");
  background-repeat: no-repeat;
  background-position: bottom -40px right 20px;
  max-width: 1200px;
  margin: 0 auto;
  background-size: 120px;
}
@media (min-width: 680px) {
  .simons-cat-info-box__content {
    padding: 2em 300px 2em 15px;
    background-size: 190px;
  }
}
@media (min-width: 1280px) {
  .simons-cat-info-box__content {
    padding: 2em 300px 2em 0;
  }
}

.simons-cat-media:nth-of-type(6n + 1) .simons-cat-media__image:after {
  background-image: url("../images/simons-cat/topleft.png");
  width: 143px;
  height: 90px;
  background-size: 160px;
  transform: translate(6px, 27px) rotate(-8deg);
}
.simons-cat-media:nth-of-type(6n + 2) .simons-cat-media__image:after {
  background-image: url("../images/simons-cat/Topcentre.png");
  width: 70px;
  height: 82px;
  transform: translate(-8px, 1px) rotate(5deg);
  background-size: 72px;
}
.simons-cat-media:nth-of-type(6n + 3) .simons-cat-media__image:after {
  background-image: url("../images/simons-cat/topright.png");
  width: 100px;
  height: 100px;
  transform: translate(24px, 27px);
}
.simons-cat-media:nth-of-type(6n + 4) .simons-cat-media__image:after {
  background-image: url("../images/simons-cat/bottomleft.png");
  width: 100px;
  height: 100px;
  background-size: 79px;
  transform: scaleX(-1) translate(1px, 36px) rotate(7deg);
}
.simons-cat-media:nth-of-type(6n + 5) .simons-cat-media__image:after {
  background-image: url("../images/simons-cat/bottommiddle.png");
  width: 100px;
  height: 100px;
  background-size: 93px;
  transform: translate(9px, 37px);
}
.simons-cat-media:nth-of-type(6n) .simons-cat-media__image:after {
  background-image: url("../images/simons-cat/bottomright.png");
  width: 100px;
  height: 100px;
  background-size: 118px;
  transform: translate(-8px, 31px) rotate(14deg);
}
.simons-cat-media .simons-cat-media__image {
  position: relative;
  overflow: hidden;
}
.simons-cat-media .simons-cat-media__image:after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  right: 0;
  z-index: 20;
  background-repeat: no-repeat;
}
.simons-cat-media .simons-cat-media__image:before {
  content: "";
  border-radius: 100%;
  background-color: #F02D29;
  height: 120px;
  width: 120px;
  display: block;
  position: absolute;
  bottom: 0;
  right: 0;
  z-index: 10;
  transform: translate(30px, 70px);
}

@font-face {
  font-family: "leoslerrough_regular";
  src: url("fonts/leosler-roughregular_update_feb-webfont.woff2") format("woff2"), url("fonts/leosler-roughregular_update_feb-webfont.woff") format("woff");
  font-weight: normal;
  font-style: normal;
}
.font-simons-cat {
  font-family: "leoslerrough_regular";
}

[data-animate-up],
[data-animate-right],
[data-animate-left] {
  transition-property: opacity, transform;
  transition-duration: 700ms;
  opacity: 0;
  /*    @include ie-fallback($large) {
          opacity: 1;
          transition-duration: 0s;
      }*/
}
.is-active [data-animate-up], [data-animate-up].is-active,
.is-active [data-animate-right],
[data-animate-right].is-active,
.is-active [data-animate-left],
[data-animate-left].is-active {
  opacity: 1;
}

[data-animate-delay="100"] {
  transition-delay: 100ms;
}

[data-animate-delay="200"] {
  transition-delay: 200ms;
}

[data-animate-delay="300"] {
  transition-delay: 300ms;
}

[data-animate-delay="400"] {
  transition-delay: 400ms;
}

[data-animate-delay="500"] {
  transition-delay: 500ms;
}

[data-animate-delay="600"] {
  transition-delay: 600ms;
}

[data-animate-delay="700"] {
  transition-delay: 700ms;
}

[data-animate-delay="800"] {
  transition-delay: 800ms;
}

[data-animate-delay="900"] {
  transition-delay: 900ms;
}

[data-animate-delay="1000"] {
  transition-delay: 1000ms;
}

[data-animate-up] {
  transform: translateY(50px);
}
.is-active [data-animate-up], [data-animate-up].is-active {
  transform: translateY(0);
}

[data-animate-right] {
  transform: translateX(-50px);
}
.is-active [data-animate-right], [data-animate-right].is-active {
  transform: translateY(0);
}

[data-animate-left] {
  transform: translateX(50px);
}
.is-active [data-animate-left], [data-animate-left].is-active {
  transform: translateY(0);
}

.fix-iframe {
  height: 1100px;
}
@media (min-width: 768px) {
  .fix-iframe {
    height: 850px;
  }
}
@media (min-width: 1024px) {
  .fix-iframe {
    height: 750px;
  }
}

.events-pagination ul {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}
.events-pagination ul .page-item a {
  text-decoration: none;
  margin: 5px;
  padding: 5px;
  display: block;
  transition-duration: 0s;
}
.events-pagination ul .page-item a:hover {
  background: #fae6fa;
  color: #1E0028;
  transition-duration: 0s;
}
.events-pagination ul .page-item.active a {
  background: #7A1B72;
  color: white;
  border-radius: 6px;
}

/* event category page carousel */
.event-category-carousel .slick-track.slick-track {
  align-items: flex-start;
}

.ecc-item {
  display: flex;
  width: 100%;
  margin: auto;
  flex-wrap: wrap;
  justify-content: center;
  background: #e7e8e6;
  /* @media (min-width: 426px) and (max-width: 768px) {
      width: 66.66%;
  }

  @media (min-width: 769px) {
      width: 50%;
  }*/
}
.ecc-item .ecc-img-wrapper {
  width: 100%;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}
.ecc-item .ecc-img-wrapper img {
  margin: auto;
  min-width: 100%;
}
@media (min-width: 769px) {
  .ecc-item .ecc-img-wrapper img {
    display: none;
  }
}
@media (min-width: 769px) {
  .ecc-item .ecc-img-wrapper {
    width: 50%;
    min-height: 400px;
  }
}
.ecc-item .ecc-txt-wrapper {
  width: 100%;
  display: flex;
  flex-direction: column;
  /*justify-content: center;*/
}
@media (min-width: 769px) {
  .ecc-item .ecc-txt-wrapper {
    width: 50%;
  }
}
.ecc-item .ecc-txt-wrapper {
  /*        @media (min-width: 426px) and (max-width: 768px) {
      width: 50%;
  }

  @media (min-width: 769px) {
      width: 33.33%;
  }*/
}
.ecc-item .ecc-txt-wrapper .ecc-txt {
  display: flex;
  flex-direction: column;
  /*align-items: center;*/
  background-color: #e7e8e6;
  padding: 30px 30px;
  overflow: hidden;
}
@media (min-width: 426px) and (max-width: 768px) {
  .ecc-item .ecc-txt-wrapper .ecc-txt {
    margin-left: 0px;
  }
}

/* event detail page */
.events-masonry .grid__item .media--caption-cover {
  overflow: hidden;
  transition: all 2s;
}

.events-masonry > .grid__item {
  width: 100% !important;
}
@media (min-width: 426px) and (max-width: 768px) {
  .events-masonry > .grid__item {
    width: 50% !important;
  }
}
@media (min-width: 769px) {
  .events-masonry > .grid__item {
    width: 33.33% !important;
  }
}

.events-masonry .grid__item a {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 10;
  transition: all 1s;
  transition-duration: 0s;
}

.events-masonry .grid__item a:hover {
  /*transform: scale(120%);*/
  transition-duration: 0s;
}

.events-masonry .grid__item .media__caption {
  transition: all 1s;
  transition-duration: 0s;
}

.events-masonry .grid__item .media__caption:hover {
  background: rgba(94, 94, 94, 0.25);
  transition-duration: 0s;
}

.events-masonry > .grid__item:nth-child(5n-4), .events-masonry > .grid__item:nth-child(5n-3) {
  width: 100% !important;
}
@media (min-width: 426px) and (max-width: 768px) {
  .events-masonry > .grid__item:nth-child(5n-4), .events-masonry > .grid__item:nth-child(5n-3) {
    width: 50% !important;
  }
}
@media (min-width: 769px) {
  .events-masonry > .grid__item:nth-child(5n-4), .events-masonry > .grid__item:nth-child(5n-3) {
    width: 33.33% !important;
  }
}

#js-countdown {
  background: #c928b2;
  color: #ffffff;
  font-family: barmeno-medium, Tahoma, Geneva, sans-serif;
  text-align: center;
  line-height: 2.2;
  padding: 15px 15px 25px 15px;
  text-transform: uppercase;
  font-size: 18px;
}
#js-countdown .angle-txt {
  background-color: #fae6fa;
  color: #1E0028;
  padding: 4px;
  transform: rotate(3deg);
  display: inline-block;
  line-height: 12px;
  margin: 0px 2px;
}

.event-category-carousel .slick-track {
  display: flex !important;
}

.event-category-carousel .slick-slide {
  height: auto;
}

.branch-search-checkbox:after {
  margin-left: -10px;
}

.cart_discount_code {
  max-width: 300px;
  padding: 0 12px;
  opacity: 1;
  border-radius: 6px;
  box-shadow: none !important;
  background-color: #fae6fa !important;
  transition: all 200ms;
  transition-timing-function: ease-in-out;
  border: 1px solid #dac0d8 !important;
  width: 100%;
  overflow: hidden;
}

#appeals-data {
  display: flex;
  align-items: center;
  flex-direction: column-reverse;
}
@media only screen and (min-width: 769px) {
  #appeals-data {
    flex-direction: row;
    justify-content: space-between;
    /*display: flex;
    flex-direction: column;*/
  }
}
#appeals-data .appeals-totaliser {
  max-width: 60%;
}
@media only screen and (min-width: 769px) {
  #appeals-data .appeals-totaliser {
    max-width: 35%;
    align-self: start;
  }
}
#appeals-data .appeals-totaliser .js-appeals-total-pcnt {
  background: #fae6fa;
  display: inline-block;
  height: 0;
  padding-bottom: 96%;
  width: 96%;
  border-radius: 50%;
  color: #7A1B72;
  margin: 0% 2% 1em;
  position: relative;
  overflow: hidden;
  ffont-family: "cats-headline", Arial, Helvetica, sans-serif;
}
@media only screen and (min-width: 769px) {
  #appeals-data .appeals-totaliser .js-appeals-total-pcnt {
    width: 300px;
    height: 300px;
    /*margin: auto;*/
  }
}
#appeals-data .appeals-totaliser .js-appeals-total-pcnt span {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 99;
  font-size: 3em;
  padding: 0.5em 0.35em;
  background: #fae6fa;
  border-radius: 100% !important;
}
@media only screen and (min-width: 769px) {
  #appeals-data .appeals-totaliser .js-appeals-total-pcnt span {
    font-size: 4em;
  }
}
#appeals-data .appeals-totaliser .js-appeals-total-pcnt span:after {
  content: "%";
}
#appeals-data .appeals-totaliser .js-appeals-total-pcnt .js-appeals-total-pcnt-bg {
  content: "";
  background: #c928b2;
  display: inline-block;
  width: 100%;
  color: white;
  overflow: hidden;
  position: absolute;
  top: 100%;
  right: 0%;
  height: 500%;
}
@media only screen and (min-width: 769px) {
  #appeals-data .appeals-totaliser .js-appeals-total-pcnt .js-appeals-total-pcnt-bg {
    width: 300px;
  }
}
#appeals-data .appeals-totaliser .js-appeals-total-raised {
  text-align: center;
}
#appeals-data .appeals-totaliser .js-appeals-total-raised:before {
  content: "£";
  color: #7A1B72;
  font-size: 3em;
}
@media only screen and (min-width: 769px) {
  #appeals-data .appeals-totaliser .js-appeals-total-raised:before {
    font-size: 4em;
  }
}
#appeals-data .appeals-totaliser .js-appeals-total-raised span {
  color: #7A1B72;
  text-align: center;
  font-size: 3em;
}
@media only screen and (min-width: 769px) {
  #appeals-data .appeals-totaliser .js-appeals-total-raised span {
    font-size: 4em;
  }
}
#appeals-data .appeals-lb {
  min-width: 90%;
  display: flex;
  flex-direction: column;
}
@media only screen and (min-width: 769px) {
  #appeals-data .appeals-lb {
    min-width: 60%;
    max-width: 60%;
  }
}
#appeals-data .appeals-lb .appeals-lb-branch {
  display: flex;
  border-bottom: 1px solid grey;
  align-items: center;
}
#appeals-data .appeals-lb .appeals-lb-branch .appeals-lb-data {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  margin-bottom: 0.5em;
  flex-direction: column;
}
#appeals-data .appeals-lb .appeals-lb-branch .appeals-lb-data .appeals-lb-name {
  font-size: 1.4em;
  padding-top: 15px;
  font-family: "cats-headline", Arial, Helvetica, sans-serif;
}
#appeals-data .appeals-lb .appeals-lb-branch .appeals-lb-data .appeals-lb-name a {
  color: #c928b2;
  text-decoration: underline;
}
#appeals-data .appeals-lb .appeals-lb-branch .appeals-lb-data .appeals-lb-row {
  padding-top: 10px;
  padding-bottom: 10px;
  display: flex;
  align-items: center;
}
#appeals-data .appeals-lb .appeals-lb-branch .appeals-lb-data .appeals-lb-row .appeals-lb-raised {
  font-size: 1.5em;
}
#appeals-data .appeals-lb .appeals-lb-branch .appeals-lb-data .appeals-lb-row .appeals-lb-supporters {
  padding-left: 10px;
}
#appeals-data .appeals-lb .appeals-lb-branch .js-appeals-total-pcnt-branch {
  background: #c928b2;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  color: white;
  position: relative;
  overflow: hidden;
}
#appeals-data .appeals-lb .appeals-lb-branch .js-appeals-total-pcnt-branch span {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 99;
}
#appeals-data .appeals-lb .appeals-lb-branch .js-appeals-total-pcnt-branch span:after {
  content: "%";
}
#appeals-data .appeals-lb .appeals-lb-branch .js-appeals-total-pcnt-branch .js-appeals-total-pcnt-bg-branch {
  content: "";
  background: #7A1B72;
  width: 300px;
  height: 300px;
  margin: auto;
  color: white;
  position: absolute;
  top: 100%;
  right: 0%;
}
#appeals-data .active-branch {
  background-color: #7A1B72;
  padding-left: 10px;
  padding-right: 10px;
}
#appeals-data .appeals-lg-btn {
  display: none;
}
#appeals-data .appeals-md-sm-btn {
  display: inline-block;
}
#appeals-data .appeals-totaliser-fix {
  display: flex;
  width: 100%;
  max-width: 100%;
  align-items: center;
  justify-content: space-between;
}
@media only screen and (max-width: 600px) {
  #appeals-data .appeals-totaliser-fix {
    flex-direction: column;
  }
}
#appeals-data .js-appeals-total-pcnt-fix {
  max-width: 300px;
  max-height: 300px;
  height: 300px !important;
  width: 300px;
  padding-bottom: 0% !important;
  margin: 0;
  margin-bottom: 1em;
}
#appeals-data .js-appeals-total-pcnt-bg {
  content: "";
  background: #7A1B72;
  display: inline-block;
  width: 100%;
  color: white;
  overflow: hidden;
  position: absolute;
  top: 100%;
  right: 0%;
  height: 100%;
}
@media only screen and (min-width: 1024px) {
  #appeals-data .appeals-lg-btn {
    display: inline-block;
  }
  #appeals-data .appeals-md-sm-btn {
    display: none;
  }
}

.special-appeal {
  display: flex;
  align-items: center;
  flex-direction: column-reverse;
}
@media only screen and (min-width: 769px) {
  .special-appeal {
    flex-direction: row;
    justify-content: space-between;
    align-items: start;
  }
}
.special-appeal .special-appeal-totaliser {
  max-width: 60%;
}
@media only screen and (min-width: 769px) {
  .special-appeal .special-appeal-totaliser {
    max-width: 33.33%;
    align-self: center;
  }
}
.special-appeal .special-appeal-totaliser .appeals-totaliser .js-appeals-total-pcnt {
  background: #fae6fa;
  display: inline-block;
  height: 0;
  padding-bottom: 96%;
  width: 96%;
  border-radius: 50%;
  color: #7A1B72;
  margin: 0 2% 16px;
  position: relative;
  overflow: hidden;
  font-family: "cats-headline", Arial, Helvetica, sans-serif;
}
.special-appeal .special-appeal-totaliser .appeals-totaliser .js-appeals-total-pcnt span {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 99;
  font-size: 3em;
  padding: 0.5em 0.35em;
  background: #fae6fa;
  border-radius: 100% !important;
}
@media only screen and (min-width: 769px) {
  .special-appeal .special-appeal-totaliser .appeals-totaliser .js-appeals-total-pcnt span {
    font-size: 4em;
  }
}
.special-appeal .special-appeal-totaliser .appeals-totaliser .js-appeals-total-pcnt span:after {
  content: "%";
}
.special-appeal .special-appeal-totaliser .appeals-totaliser .js-appeals-total-pcnt .js-appeals-total-pcnt-bg {
  content: "";
  background: #c928b2;
  display: inline-block;
  width: 100%;
  color: white;
  overflow: hidden;
  position: absolute;
  top: 100%;
  right: 0%;
  height: 100%;
}
.special-appeal .special-appeal-totaliser .appeals-totaliser .js-appeals-total-pcnt .js-appeals-total-pcnt-bg-don {
  content: "";
  background: #7A1B72;
  display: inline-block;
  width: 100%;
  color: white;
  overflow: hidden;
  position: absolute;
  top: 100%;
  right: 0%;
  height: 100%;
}
.special-appeal .special-appeal-totaliser .appeals-totaliser .js-appeals-total-raised {
  text-align: center;
}
.special-appeal .special-appeal-totaliser .appeals-totaliser .js-appeals-total-raised:before {
  content: "£";
  color: #7A1B72;
  font-size: 3em;
}
@media only screen and (min-width: 769px) {
  .special-appeal .special-appeal-totaliser .appeals-totaliser .js-appeals-total-raised:before {
    font-size: 4em;
  }
}
.special-appeal .special-appeal-totaliser .appeals-totaliser .js-appeals-total-raised span {
  color: #7A1B72;
  text-align: center;
  font-size: 3em;
}
@media only screen and (min-width: 769px) {
  .special-appeal .special-appeal-totaliser .appeals-totaliser .js-appeals-total-raised span {
    font-size: 4em;
  }
}
.special-appeal .donation-split {
  text-align: left;
  margin-bottom: 10px;
}
.special-appeal .donation-split:before {
  content: "";
  display: block;
  float: left;
  width: 25px;
  height: 25px;
  background: #c928b2;
  margin-right: 10px;
}
.special-appeal .donation-split-don:before {
  background: #7A1B72;
}
.special-appeal .lg-appeals-total {
  display: none;
}
@media only screen and (min-width: 769px) {
  .special-appeal .lg-appeals-total {
    padding: 0px 15px;
    display: block;
    align-self: center;
  }
  .special-appeal .lg-appeals-total .special-appeal-totaliser {
    max-width: 100%;
  }
}
.special-appeal .special-appeal-form {
  display: flex;
  flex-direction: column;
  width: 100%;
}
@media only screen and (min-width: 769px) {
  .special-appeal .special-appeal-form {
    width: 33.33%;
  }
}
.special-appeal .special-appeal-form .button {
  width: 100%;
  text-align: center;
}
@media only screen and (min-width: 769px) {
  .special-appeal .special-appeal-form .button .btn {
    width: 100%;
  }
}
.special-appeal .special-appeal-form .appeal-form {
  background: #fae6fa;
  color: #7A1B72;
  padding: 15px;
  width: 100%;
  max-width: 425px;
  margin: 0 auto 24px;
}
.special-appeal .special-appeal-form .appeal-form .bag-control {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.special-appeal .special-appeal-form .appeal-form .bag-control .btn:hover {
  background-color: #c928b2;
  color: white;
}
.special-appeal .special-appeal-form .appeal-form .js-minuns-bag, .special-appeal .special-appeal-form .appeal-form .js-add-bag {
  line-height: 2.5rem;
  font-size: 3rem;
}
.special-appeal .special-appeal-form .appeal-form .js-bags {
  font-size: 3rem;
  padding: 0px 10px;
}
.special-appeal .special-appeal-form .appeal-form .code-control input {
  background: #ffffff;
  width: 100%;
  padding: 8px;
  font-size: 1rem;
  text-align: center;
}
.special-appeal .special-appeal-form .appeal-form .code-control input:valid {
  text-transform: uppercase;
}
.special-appeal .special-appeal-form .appeal-form .code-submit .js-submit-btn-fake {
  opacity: 1;
}
.special-appeal .special-appeal-form .appeal-form .code-submit .js-submit-btn-fake.disabled {
  opacity: 0.5;
}
.special-appeal .special-appeal-form .appeal-form .appeal-form-thanks {
  font-size: 2rem;
}
.special-appeal .special-appeal-form .appeal-form--grey {
  background: #fae6fa;
}
@media only screen and (min-width: 769px) {
  .special-appeal .hide-for-large:before {
    display: none;
  }
  .special-appeal .hide-for-large span {
    display: none;
  }
  .special-appeal .hide-for-large p {
    line-height: 1px;
    height: 1px;
    overflow: hidden;
    opacity: 0;
  }
}

.find-us-search input {
  padding-left: 46px;
  position: relative;
}
.find-us-search span {
  position: absolute;
  width: 26px;
  height: 26px;
  left: 26px;
  z-index: 1;
  top: 50%;
  transform: translateY(-50%);
}
.find-us-search span:before {
  font-family: "icomoon";
  content: "\e902";
  font-size: 26px;
}

#donateRegular, #donateOneOff {
  /*border: 1px solid #dac0d8 !important;*/
  background: #fae6fa;
}
#donateRegular .otherAmountValue:focus, #donateOneOff .otherAmountValue:focus {
  background-color: white;
}
#donateRegular .media__caption, #donateOneOff .media__caption {
  color: #1E0028;
}
#donateRegular .btn, #donateOneOff .btn {
  background: #7A1B72;
  color: white;
}
#donateRegular .btn:hover, #donateOneOff .btn:hover {
  background: #c928b2;
  color: white;
}

#donateOneOffButtons .cat-magazine .form__checkbox:after {
  margin-left: -12px;
}

.breadcrumb-wrapper {
  background-color: #fae6fa !important;
}

.breadcrumb {
  padding-top: 15px;
  padding-bottom: 15px;
}
.breadcrumb .breadcrumb-links {
  display: flex;
  align-items: center;
  height: 100%;
}
.breadcrumb .breadcrumb-links ul {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  margin: 0 !important;
}
.breadcrumb .breadcrumb-links ul li {
  padding-left: 0 !important;
  list-style-type: none;
  margin-bottom: 0 !important;
  color: #1E0028;
  font-weight: bold;
}
.breadcrumb .breadcrumb-links ul li:before {
  content: none !important;
}
.breadcrumb .breadcrumb-links ul li .breadcrumb-linkwithchevron {
  display: inline-flex;
  align-items: center;
  white-space: nowrap;
}
.breadcrumb .breadcrumb-links ul li .breadcrumb-linkwithchevron a {
  color: #1E0028;
  text-decoration: underline;
  padding-bottom: 0;
}
.breadcrumb .breadcrumb-links ul li .breadcrumb-linkwithchevron .chevron {
  margin-left: 5px;
  margin-right: 8px;
}
.breadcrumb .breadcrumb-social ul {
  display: flex;
  justify-content: flex-start;
  margin: 0 !important;
  margin-top: 15px !important;
}
.breadcrumb .breadcrumb-social ul li {
  padding-left: 0 !important;
  list-style-type: none;
  margin-bottom: 0 !important;
  color: #1E0028;
  font-weight: bold;
  margin-left: 10px;
}
.breadcrumb .breadcrumb-social ul li:first-child {
  margin-left: 0;
}
.breadcrumb .breadcrumb-social ul li:before {
  content: none !important;
}
.breadcrumb .breadcrumb-social ul li .icon-circle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  background-color: #1E0028;
  color: white !important;
  border-radius: 50%;
  text-decoration: none;
  transition: background-color 0.3s ease;
  padding-bottom: 0;
}
.breadcrumb .breadcrumb-social ul li .icon-circle:hover {
  background-color: #7A1B72 !important;
  color: white !important;
}
.breadcrumb .breadcrumb-social ul li .icon-circle i {
  font-size: 20px;
}
.breadcrumb .breadcrumb-social .modal-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  display: flex;
  justify-content: center;
  align-items: center;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.4s ease, visibility 0.4s ease;
  z-index: 1050;
}
.breadcrumb .breadcrumb-social .modal-overlay.show {
  opacity: 1;
  visibility: visible;
}
.breadcrumb .breadcrumb-social .modal-box {
  background: #7A1B72;
  color: white;
  padding: 1.5rem 2rem;
  border-radius: 0.5rem;
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.2);
}
.breadcrumb .breadcrumb-social .modal-box p {
  margin-bottom: initial;
}

@media (min-width: 768px) {
  .breadcrumb .breadcrumb-links ul {
    flex-direction: row;
  }
  .breadcrumb .breadcrumb-social ul {
    justify-content: flex-end;
    margin-top: 0 !important;
  }
}
.swiper {
  position: relative;
  padding-top: 65px;
}
.swiper .swiper-slide img {
  max-width: 100%;
  height: auto;
}
.swiper .swiper-button-prev::after,
.swiper .swiper-button-next::after {
  display: none;
}
.swiper .swiper-button-prev i,
.swiper .swiper-button-next i {
  font-size: 24px;
  color: #fff;
}
.swiper .swiper-button-prev,
.swiper .swiper-button-next {
  top: 25px;
  left: 0;
  background-color: #000;
  padding-left: 20px;
  padding-right: 20px;
  border-radius: 5px;
}
.swiper .swiper-button-next {
  left: 55px;
}

.quick-links {
  margin-top: 25px;
  margin-bottom: 25px;
}
.quick-links .quick-links-container {
  padding: 50px;
}
.quick-links .quick-links-container .header .col {
  text-align: left;
}
.quick-links .quick-links-container .links [class^=col] {
  margin-top: 15px;
  text-align: left;
  font-size: 22px;
}
.quick-links .quick-links-container .links a {
  text-decoration: underline;
}
.quick-links .quick-links-container .links a::before {
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  content: "\f054";
  display: inline-block;
  margin-right: 1em;
  text-decoration: none !important;
  color: var(--icon-color, #7A1B72);
}

.accordion .accordion-item:last-of-type {
  border-bottom: none;
}
.accordion .accordion-item {
  margin-bottom: 10px;
}
.accordion .accordion-item .accordion-header {
  margin-bottom: 0 !important;
}
.accordion .accordion-item .accordion-header .accordion-button {
  display: flex;
  align-items: center;
  width: 100%;
  padding: 1rem 2rem;
  font-size: 22px;
  font-weight: bold;
  border: none;
  text-align: left;
  cursor: pointer;
  outline: none;
  transition: background-color 0.2s ease;
}
.accordion .accordion-item .accordion-header .accordion-button.collapsed {
  background-color: #fff;
}
.accordion .accordion-item .accordion-header .accordion-button::after {
  font-family: "Font Awesome 5 Free";
  content: "\f078";
  margin-left: auto;
  display: inline-block;
  font-weight: 900;
}
.accordion .accordion-item .accordion-header .accordion-button[aria-expanded=true]::after {
  content: "\f077";
}
.accordion .accordion-item .accordion-collapse {
  overflow: hidden;
  transition: max-height 0.3s ease;
}
.accordion .accordion-item .accordion-collapse .accordion-body {
  padding: 0 2rem 1rem 2rem;
}
.accordion .accordion-item .accordion-collapse .accordion-body li::before {
  color: inherit !important;
}
.accordion .accordion-item .accordion-collapse .accordion-body ul:not([class]) li::before {
  background-color: currentColor !important;
}
.accordion .accordion-item .accordion-collapse.collapse {
  max-height: 0;
}
.accordion .accordion-item .accordion-collapse.collapse.show {
  max-height: 1200px;
}

.storyquote {
  container-type: inline-size;
  container-name: storyquote;
  display: flex;
  flex-direction: column;
  height: 100%;
}
.storyquote .storyquote-header {
  position: relative;
  padding: 0;
  overflow: hidden;
  height: 300px;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}
.storyquote .storyquote-header.hasImage {
  height: 500px;
}
.storyquote .storyquote-header .curve {
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  min-width: 700px;
  height: auto;
  display: block;
  z-index: 1;
}
.storyquote .storyquote-body {
  padding: 25px 200px 30px 200px;
  flex: 1;
}
.storyquote .storyquote-body p {
  font-size: 25px;
  line-height: 35px;
}
.storyquote .storyquote-body a {
  color: inherit;
}
.storyquote .storyquote-body .quotesource {
  font-size: 22px;
  font-weight: bold;
}

@container storyquote (max-width: 768px) {
  .storyquote .storyquote-header {
    height: 170px;
  }
  .storyquote .storyquote-header.hasImage {
    height: 250px;
  }
  .storyquote .storyquote-body {
    padding: 25px 50px 30px 50px;
  }
  .storyquote .storyquote-body p {
    font-size: 20px;
    line-height: 26px;
  }
}
@container storyquote (max-width: 576px) {
  .storyquote .storyquote-header.hasImage {
    height: 220px;
  }
  .storyquote .storyquote-body {
    padding: 25px 25px 30px 25px;
  }
  .storyquote .storyquote-body p {
    font-size: 18px;
    line-height: 24px;
  }
  .storyquote .storyquote-body .quotesource {
    font-size: 18px;
    font-weight: bold;
  }
}
.supportingbox {
  height: 100%;
  display: flex;
  flex-direction: column;
}
.supportingbox .supportingbox-header {
  overflow: hidden;
}
.supportingbox .supportingbox-header .supportingbox-toplabel {
  padding: 1rem 1rem 0.3rem 1rem;
}
.supportingbox .supportingbox-header .curve {
  display: block;
  width: calc(100% + 2px);
  height: auto;
}
.supportingbox .supportingbox-body {
  padding: 1rem 1rem 0.3rem 1rem;
  flex: 1;
}

.site-search {
  /* Pagination container */
}
.site-search .pagination {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 2rem 0;
  padding: 0;
  list-style: none;
  gap: 0.5rem;
  /* Page items */
}
.site-search .pagination .page-item {
  display: inline-block;
  /* Active page */
}
.site-search .pagination .page-item.active .page-link {
  background-color: #7A1B72;
  border-color: #7A1B72;
  color: white;
  cursor: default;
}
.site-search .pagination .page-item {
  /* Disabled / ellipsis */
}
.site-search .pagination .page-item.disabled .page-link {
  background-color: transparent;
  border: none;
  color: #999;
  cursor: default;
  box-shadow: none;
  pointer-events: none;
}
.site-search .pagination .page-item.disabled .page-link:hover, .site-search .pagination .page-item.disabled .page-link:focus {
  background-color: transparent;
  border: none;
  color: #999;
  cursor: default;
  box-shadow: none;
}
.site-search .pagination .page-item {
  /* Prev / Next buttons */
}
.site-search .pagination .page-item:first-child .page-link, .site-search .pagination .page-item:last-child .page-link {
  font-weight: 500;
}
.site-search .pagination {
  /* Page links */
}
.site-search .pagination .page-link {
  display: block;
  padding: 0.5rem 1rem;
  border: 1px solid #ddd;
  border-radius: 6px;
  background-color: white;
  color: #333;
  font-size: 0.95rem;
  text-decoration: none;
  transition: all 0.2s ease-in-out;
  /* Hover and focus states */
}
.site-search .pagination .page-link:hover, .site-search .pagination .page-link:focus {
  background-color: #f5f5f5;
  border-color: #ccc;
  color: #1E0028;
}
.site-search .pagination .page-link {
  /* Slight shadow effect */
}
.site-search .pagination .page-link:hover:not(.active):not(.disabled) {
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.08);
}
.site-search .pagination {
  /* Optional: compact on mobile */
}
@media (max-width: 600px) {
  .site-search .pagination {
    flex-wrap: wrap;
    gap: 0.3rem;
  }
  .site-search .pagination .page-link {
    padding: 0.4rem 0.8rem;
    font-size: 0.9rem;
  }
}
.site-search {
  /* Search Form Layout */
}
.site-search .search-form {
  position: relative;
  display: flex;
  width: 100%;
}
@media (max-width: 576px) {
  .site-search .search-form {
    flex-direction: column;
  }
  .site-search .search-form .search-input {
    border-radius: 6px;
    border-right: 1px solid #ccc;
  }
  .site-search .search-form .btn {
    margin-top: 0.4rem;
    border-radius: 6px;
    width: 100%;
  }
}
.site-search {
  /* Input Field */
}
.site-search .search-input {
  flex: 1;
  padding: 0.6rem 0.8rem;
  border: 1px solid #ccc;
  border-right: none;
  border-radius: 6px 0 0 6px;
  font-size: 1rem;
  transition: border-color 0.2s, box-shadow 0.2s;
}
.site-search .search-input:focus {
  border-color: #0078d4;
  box-shadow: 0 0 0 2px rgba(0, 120, 212, 0.2);
  outline: none;
}
.site-search {
  /* Search Button */
}
.site-search .btn {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}
.site-search {
  /* Post Preview */
}
.site-search .post-preview {
  border-bottom: 1px solid #eaeaea;
}
.site-search .post-preview h2 {
  color: #7A1B72;
  font-weight: bold;
}
.site-search .post-preview .breadcrumb {
  color: #c928b2;
  font-size: 20px;
}
.site-search .post-preview.purple {
  background-color: #fae6fa;
}
.site-search .post-preview.white {
  background-color: white;
}

/**
 * LAYOUT
 * Base
 * Begin all layout styles here initially.
 */
.subnav, .header-group, .container, .paging {
  position: relative;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  padding-left: 15px;
  padding-right: 15px;
}
@media only screen and (min-width: 640px) {
  .subnav, .header-group, .container, .paging {
    padding-left: 3vw;
    padding-right: 3vw;
  }
}
.subnav:not([class*=container--]), .header-group:not([class*=container--]), .container:not([class*=container--]), .paging:not([class*=container--]) {
  max-width: 1200px;
}
@media only screen and (min-width: 1280px) {
  .subnav:not([class*=container--]), .header-group:not([class*=container--]), .container:not([class*=container--]), .paging:not([class*=container--]) {
    padding-left: 0;
    padding-right: 0;
  }
}
[class*="--xs"].subnav, [class*="--xs"].header-group, [class*="--xs"].container, [class*="--xs"].paging {
  max-width: 630px;
}
@media only screen and (min-width: 710px) {
  [class*="--xs"].subnav, [class*="--xs"].header-group, [class*="--xs"].container, [class*="--xs"].paging {
    padding-left: 0;
    padding-right: 0;
  }
}
[class*="--sm"].subnav, [class*="--sm"].header-group, [class*="--sm"].container, [class*="--sm"].paging {
  max-width: 1000px;
}
@media only screen and (min-width: 1080px) {
  [class*="--sm"].subnav, [class*="--sm"].header-group, [class*="--sm"].container, [class*="--sm"].paging {
    padding-left: 0;
    padding-right: 0;
  }
}
[class*="--md"].subnav, [class*="--md"].header-group, [class*="--md"].container, [class*="--md"].paging {
  max-width: 1100px;
}
@media only screen and (min-width: 1180px) {
  [class*="--md"].subnav, [class*="--md"].header-group, [class*="--md"].container, [class*="--md"].paging {
    padding-left: 0;
    padding-right: 0;
  }
}
[class*="--lg"].subnav, [class*="--lg"].header-group, [class*="--lg"].container, [class*="--lg"].paging {
  max-width: 1200px;
}
@media only screen and (min-width: 1280px) {
  [class*="--lg"].subnav, [class*="--lg"].header-group, [class*="--lg"].container, [class*="--lg"].paging {
    padding-left: 0;
    padding-right: 0;
  }
}
[class*="--xl"].subnav, [class*="--xl"].header-group, [class*="--xl"].container, [class*="--xl"].paging {
  max-width: 1500px;
}
@media only screen and (min-width: 1580px) {
  [class*="--xl"].subnav, [class*="--xl"].header-group, [class*="--xl"].container, [class*="--xl"].paging {
    padding-left: 0;
    padding-right: 0;
  }
}

.body-copy .container:after {
  content: "";
  display: table;
  clear: both;
}

.wrapper {
  overflow: hidden;
  position: relative;
  z-index: 1;
  box-shadow: 0 0 20px 5px rgba(30, 0, 40, 0.25);
  background-color: white;
}

.is-hidden {
  display: none;
  visibility: hidden;
}

.clearfix:before, .clearfix:after {
  content: " ";
  display: table;
}
.clearfix:after {
  clear: both;
}

.is-collapsed[style*=max-height] {
  opacity: 0;
  overflow: hidden;
  transition: max-height, opacity, padding;
  transition-duration: 500ms;
  transition-timing-function: ease-in-out;
}
.is-collapsed[style*=max-height]:not([class*=is-active]) {
  max-height: 0 !important;
  padding-top: 0;
  padding-bottom: 0;
  margin-top: 0;
  margin-bottom: 0;
}
.is-collapsed[style*=max-height].is-active {
  opacity: 1;
}

.disable-scroll {
  position: fixed;
  overflow: hidden;
}

.mg-xs {
  margin: 20px;
}
@media only screen and (min-width: 769px) {
  .mg-xs {
    margin: 0.5vw;
  }
}

.mg-tp-xs {
  margin-top: 20px;
}
@media only screen and (min-width: 769px) {
  .mg-tp-xs {
    margin-top: 0.5vw;
  }
}

.mg-bm-xs {
  margin-bottom: 20px;
}
@media only screen and (min-width: 769px) {
  .mg-bm-xs {
    margin-bottom: 0.5vw;
  }
}

.mg-lf-xs {
  margin-left: 20px;
}
@media only screen and (min-width: 769px) {
  .mg-lf-xs {
    margin-left: 0.5vw;
  }
}

.mg-rt-xs {
  margin-right: 20px;
}
@media only screen and (min-width: 769px) {
  .mg-rt-xs {
    margin-right: 0.5vw;
  }
}

.mg-vt-xs {
  margin-top: 20px;
  margin-bottom: 20px;
}
@media only screen and (min-width: 769px) {
  .mg-vt-xs {
    margin-top: 0.5vw;
    margin-bottom: 0.5vw;
  }
}

.mg-hz-xs {
  margin-left: 20px;
  margin-right: 20px;
}
@media only screen and (min-width: 769px) {
  .mg-hz-xs {
    margin-left: 0.5vw;
    margin-right: 0.5vw;
  }
}

.mg-sm {
  margin: 20px;
}
@media only screen and (min-width: 769px) {
  .mg-sm {
    margin: 1vw;
  }
}

.mg-tp-sm {
  margin-top: 20px;
}
@media only screen and (min-width: 769px) {
  .mg-tp-sm {
    margin-top: 1vw;
  }
}

.mg-bm-sm {
  margin-bottom: 20px;
}
@media only screen and (min-width: 769px) {
  .mg-bm-sm {
    margin-bottom: 1vw;
  }
}

.mg-lf-sm {
  margin-left: 20px;
}
@media only screen and (min-width: 769px) {
  .mg-lf-sm {
    margin-left: 1vw;
  }
}

.mg-rt-sm {
  margin-right: 20px;
}
@media only screen and (min-width: 769px) {
  .mg-rt-sm {
    margin-right: 1vw;
  }
}

.mg-vt-sm {
  margin-top: 20px;
  margin-bottom: 20px;
}
@media only screen and (min-width: 769px) {
  .mg-vt-sm {
    margin-top: 1vw;
    margin-bottom: 1vw;
  }
}

.mg-hz-sm {
  margin-left: 20px;
  margin-right: 20px;
}
@media only screen and (min-width: 769px) {
  .mg-hz-sm {
    margin-left: 1vw;
    margin-right: 1vw;
  }
}

.mg-md {
  margin: 20px;
}
@media only screen and (min-width: 769px) {
  .mg-md {
    margin: 2vw;
  }
}

.mg-tp-md {
  margin-top: 20px;
}
@media only screen and (min-width: 769px) {
  .mg-tp-md {
    margin-top: 2vw;
  }
}

.mg-bm-md {
  margin-bottom: 20px;
}
@media only screen and (min-width: 769px) {
  .mg-bm-md {
    margin-bottom: 2vw;
  }
}

.mg-lf-md {
  margin-left: 20px;
}
@media only screen and (min-width: 769px) {
  .mg-lf-md {
    margin-left: 2vw;
  }
}

.mg-rt-md {
  margin-right: 20px;
}
@media only screen and (min-width: 769px) {
  .mg-rt-md {
    margin-right: 2vw;
  }
}

.mg-vt-md {
  margin-top: 20px;
  margin-bottom: 20px;
}
@media only screen and (min-width: 769px) {
  .mg-vt-md {
    margin-top: 2vw;
    margin-bottom: 2vw;
  }
}

.mg-hz-md {
  margin-left: 20px;
  margin-right: 20px;
}
@media only screen and (min-width: 769px) {
  .mg-hz-md {
    margin-left: 2vw;
    margin-right: 2vw;
  }
}

.mg-lg {
  margin: 20px;
}
@media only screen and (min-width: 769px) {
  .mg-lg {
    margin: 3vw;
  }
}

.mg-tp-lg {
  margin-top: 20px;
}
@media only screen and (min-width: 769px) {
  .mg-tp-lg {
    margin-top: 3vw;
  }
}
@media only screen and (min-width: 1400px) {
  .mg-tp-lg {
    margin-top: 44px;
  }
}

.mg-bm-lg,
.site-strip .site-strip__body,
.site-strip > h1,
.site-strip > h2,
.site-strip > h3,
.site-strip > h4,
.site-strip > h5,
.site-strip > h6,
.hero-ad-boxes__btns,
.hero-ad-boxes__item {
  margin-bottom: 20px;
}
@media only screen and (min-width: 769px) {
  .mg-bm-lg,
  .site-strip .site-strip__body,
  .site-strip > h1,
  .site-strip > h2,
  .site-strip > h3,
  .site-strip > h4,
  .site-strip > h5,
  .site-strip > h6,
  .hero-ad-boxes__btns,
  .hero-ad-boxes__item {
    margin-bottom: 3vw;
  }
}
@media only screen and (min-width: 1400px) {
  .mg-bm-lg,
  .site-strip .site-strip__body,
  .site-strip > h1,
  .site-strip > h2,
  .site-strip > h3,
  .site-strip > h4,
  .site-strip > h5,
  .site-strip > h6,
  .hero-ad-boxes__btns,
  .hero-ad-boxes__item {
    margin-bottom: 44px;
  }
}

.mg-lf-lg {
  margin-left: 20px;
}
@media only screen and (min-width: 769px) {
  .mg-lf-lg {
    margin-left: 3vw;
  }
}
@media only screen and (min-width: 1400px) {
  .mg-lf-lg {
    margin-left: 44px;
  }
}

.mg-rt-lg {
  margin-right: 20px;
}
@media only screen and (min-width: 769px) {
  .mg-rt-lg {
    margin-right: 3vw;
  }
}
@media only screen and (min-width: 1400px) {
  .mg-rt-lg {
    margin-right: 44px;
  }
}

.mg-vt-lg {
  margin-top: 20px;
  margin-bottom: 20px;
}
@media only screen and (min-width: 769px) {
  .mg-vt-lg {
    margin-top: 3vw;
    margin-bottom: 3vw;
  }
}
@media only screen and (min-width: 1400px) {
  .mg-vt-lg {
    margin-top: 44px;
    margin-bottom: 44px;
  }
}

.mg-hz-lg {
  margin-left: 20px;
  margin-right: 20px;
}
@media only screen and (min-width: 769px) {
  .mg-hz-lg {
    margin-left: 3vw;
    margin-right: 3vw;
  }
}
@media only screen and (min-width: 1400px) {
  .mg-hz-lg {
    margin-left: 44px;
    margin-right: 44px;
  }
}

.mg-xl {
  margin: 20px;
}
@media only screen and (min-width: 769px) {
  .mg-xl {
    margin: 4.79168vw;
  }
}

.mg-tp-xl {
  margin-top: 20px;
}
@media only screen and (min-width: 769px) {
  .mg-tp-xl {
    margin-top: 4.79168vw;
  }
}

.mg-bm-xl {
  margin-bottom: 20px;
}
@media only screen and (min-width: 769px) {
  .mg-bm-xl {
    margin-bottom: 4.79168vw;
  }
}

.mg-lf-xl {
  margin-left: 20px;
}
@media only screen and (min-width: 769px) {
  .mg-lf-xl {
    margin-left: 4.79168vw;
  }
}

.mg-rt-xl {
  margin-right: 20px;
}
@media only screen and (min-width: 769px) {
  .mg-rt-xl {
    margin-right: 4.79168vw;
  }
}

.mg-vt-xl {
  margin-top: 20px;
  margin-bottom: 20px;
}
@media only screen and (min-width: 769px) {
  .mg-vt-xl {
    margin-top: 4.79168vw;
    margin-bottom: 4.79168vw;
  }
}

.mg-hz-xl {
  margin-left: 20px;
  margin-right: 20px;
}
@media only screen and (min-width: 769px) {
  .mg-hz-xl {
    margin-left: 4.79168vw;
    margin-right: 4.79168vw;
  }
}

.mg-xxl {
  margin: 20px;
}
@media only screen and (min-width: 769px) {
  .mg-xxl {
    margin: 10vw;
  }
}

.mg-tp-xxl {
  margin-top: 20px;
}
@media only screen and (min-width: 769px) {
  .mg-tp-xxl {
    margin-top: 10vw;
  }
}

.mg-bm-xxl {
  margin-bottom: 20px;
}
@media only screen and (min-width: 769px) {
  .mg-bm-xxl {
    margin-bottom: 10vw;
  }
}

.mg-lf-xxl {
  margin-left: 20px;
}
@media only screen and (min-width: 769px) {
  .mg-lf-xxl {
    margin-left: 10vw;
  }
}

.mg-rt-xxl {
  margin-right: 20px;
}
@media only screen and (min-width: 769px) {
  .mg-rt-xxl {
    margin-right: 10vw;
  }
}

.mg-vt-xxl {
  margin-top: 20px;
  margin-bottom: 20px;
}
@media only screen and (min-width: 769px) {
  .mg-vt-xxl {
    margin-top: 10vw;
    margin-bottom: 10vw;
  }
}

.mg-hz-xxl {
  margin-left: 20px;
  margin-right: 20px;
}
@media only screen and (min-width: 769px) {
  .mg-hz-xxl {
    margin-left: 10vw;
    margin-right: 10vw;
  }
}

.pd-xs {
  padding: 20px;
}
@media only screen and (min-width: 769px) {
  .pd-xs {
    padding: 0.5vw;
  }
}

.pd-tp-xs {
  padding-top: 20px;
}
@media only screen and (min-width: 769px) {
  .pd-tp-xs {
    padding-top: 0.5vw;
  }
}

.pd-bm-xs {
  padding-bottom: 20px;
}
@media only screen and (min-width: 769px) {
  .pd-bm-xs {
    padding-bottom: 0.5vw;
  }
}

.pd-lf-xs {
  padding-left: 20px;
}
@media only screen and (min-width: 769px) {
  .pd-lf-xs {
    padding-left: 0.5vw;
  }
}

.pd-rt-xs {
  padding-right: 20px;
}
@media only screen and (min-width: 769px) {
  .pd-rt-xs {
    padding-right: 0.5vw;
  }
}

.pd-vt-xs {
  padding-top: 20px;
  padding-bottom: 20px;
}
@media only screen and (min-width: 769px) {
  .pd-vt-xs {
    padding-top: 0.5vw;
    padding-bottom: 0.5vw;
  }
}

.pd-hz-xs {
  padding-left: 20px;
  padding-right: 20px;
}
@media only screen and (min-width: 769px) {
  .pd-hz-xs {
    padding-left: 0.5vw;
    padding-right: 0.5vw;
  }
}

.pd-sm {
  padding: 20px;
}
@media only screen and (min-width: 769px) {
  .pd-sm {
    padding: 1vw;
  }
}

.pd-tp-sm {
  padding-top: 20px;
}
@media only screen and (min-width: 769px) {
  .pd-tp-sm {
    padding-top: 1vw;
  }
}

.pd-bm-sm {
  padding-bottom: 20px;
}
@media only screen and (min-width: 769px) {
  .pd-bm-sm {
    padding-bottom: 1vw;
  }
}

.pd-lf-sm {
  padding-left: 20px;
}
@media only screen and (min-width: 769px) {
  .pd-lf-sm {
    padding-left: 1vw;
  }
}

.pd-rt-sm {
  padding-right: 20px;
}
@media only screen and (min-width: 769px) {
  .pd-rt-sm {
    padding-right: 1vw;
  }
}

.pd-vt-sm {
  padding-top: 20px;
  padding-bottom: 20px;
}
@media only screen and (min-width: 769px) {
  .pd-vt-sm {
    padding-top: 1vw;
    padding-bottom: 1vw;
  }
}

.pd-hz-sm {
  padding-left: 20px;
  padding-right: 20px;
}
@media only screen and (min-width: 769px) {
  .pd-hz-sm {
    padding-left: 1vw;
    padding-right: 1vw;
  }
}

.pd-md,
.poll:not([class*="--results"]) {
  padding: 20px;
}
@media only screen and (min-width: 769px) {
  .pd-md,
  .poll:not([class*="--results"]) {
    padding: 2vw;
  }
}

.pd-tp-md {
  padding-top: 20px;
}
@media only screen and (min-width: 769px) {
  .pd-tp-md {
    padding-top: 2vw;
  }
}

.pd-bm-md {
  padding-bottom: 20px;
}
@media only screen and (min-width: 769px) {
  .pd-bm-md {
    padding-bottom: 2vw;
  }
}

.pd-lf-md {
  padding-left: 20px;
}
@media only screen and (min-width: 769px) {
  .pd-lf-md {
    padding-left: 2vw;
  }
}

.pd-rt-md {
  padding-right: 20px;
}
@media only screen and (min-width: 769px) {
  .pd-rt-md {
    padding-right: 2vw;
  }
}

.pd-vt-md,
.cat-community__header {
  padding-top: 20px;
  padding-bottom: 20px;
}
@media only screen and (min-width: 769px) {
  .pd-vt-md,
  .cat-community__header {
    padding-top: 2vw;
    padding-bottom: 2vw;
  }
}

.pd-hz-md {
  padding-left: 20px;
  padding-right: 20px;
}
@media only screen and (min-width: 769px) {
  .pd-hz-md {
    padding-left: 2vw;
    padding-right: 2vw;
  }
}

.pd-lg {
  padding: 20px;
}
@media only screen and (min-width: 769px) {
  .pd-lg {
    padding: 3vw;
  }
}

.pd-tp-lg,
.pens__previous-guests.is-active + .pens__btns,
.footer,
.cta-wall.is-active {
  padding-top: 20px;
}
@media only screen and (min-width: 769px) {
  .pd-tp-lg,
  .pens__previous-guests.is-active + .pens__btns,
  .footer,
  .cta-wall.is-active {
    padding-top: 3vw;
  }
}
@media only screen and (min-width: 1400px) {
  .pd-tp-lg,
  .pens__previous-guests.is-active + .pens__btns,
  .footer,
  .cta-wall.is-active {
    padding-top: 44px;
  }
}

.pd-bm-lg,
.cat-community,
.campaign-slider {
  padding-bottom: 20px;
}
@media only screen and (min-width: 769px) {
  .pd-bm-lg,
  .cat-community,
  .campaign-slider {
    padding-bottom: 3vw;
  }
}
@media only screen and (min-width: 1400px) {
  .pd-bm-lg,
  .cat-community,
  .campaign-slider {
    padding-bottom: 44px;
  }
}

.pd-lf-lg {
  padding-left: 20px;
}
@media only screen and (min-width: 769px) {
  .pd-lf-lg {
    padding-left: 3vw;
  }
}
@media only screen and (min-width: 1400px) {
  .pd-lf-lg {
    padding-left: 44px;
  }
}

.pd-rt-lg {
  padding-right: 20px;
}
@media only screen and (min-width: 769px) {
  .pd-rt-lg {
    padding-right: 3vw;
  }
}
@media only screen and (min-width: 1400px) {
  .pd-rt-lg {
    padding-right: 44px;
  }
}

.pd-vt-lg,
.cat-community__cats {
  padding-top: 20px;
  padding-bottom: 20px;
}
@media only screen and (min-width: 769px) {
  .pd-vt-lg,
  .cat-community__cats {
    padding-top: 3vw;
    padding-bottom: 3vw;
  }
}
@media only screen and (min-width: 1400px) {
  .pd-vt-lg,
  .cat-community__cats {
    padding-top: 44px;
    padding-bottom: 44px;
  }
}

.pd-hz-lg {
  padding-left: 20px;
  padding-right: 20px;
}
@media only screen and (min-width: 769px) {
  .pd-hz-lg {
    padding-left: 3vw;
    padding-right: 3vw;
  }
}
@media only screen and (min-width: 1400px) {
  .pd-hz-lg {
    padding-left: 44px;
    padding-right: 44px;
  }
}

.pd-xl {
  padding: 20px;
}
@media only screen and (min-width: 769px) {
  .pd-xl {
    padding: 4.79168vw;
  }
}

.pd-tp-xl {
  padding-top: 20px;
}
@media only screen and (min-width: 769px) {
  .pd-tp-xl {
    padding-top: 4.79168vw;
  }
}

.pd-bm-xl {
  padding-bottom: 20px;
}
@media only screen and (min-width: 769px) {
  .pd-bm-xl {
    padding-bottom: 4.79168vw;
  }
}

.pd-lf-xl {
  padding-left: 20px;
}
@media only screen and (min-width: 769px) {
  .pd-lf-xl {
    padding-left: 4.79168vw;
  }
}

.pd-rt-xl {
  padding-right: 20px;
}
@media only screen and (min-width: 769px) {
  .pd-rt-xl {
    padding-right: 4.79168vw;
  }
}

.pd-vt-xl {
  padding-top: 20px;
  padding-bottom: 20px;
}
@media only screen and (min-width: 769px) {
  .pd-vt-xl {
    padding-top: 4.79168vw;
    padding-bottom: 4.79168vw;
  }
}

.pd-hz-xl {
  padding-left: 20px;
  padding-right: 20px;
}
@media only screen and (min-width: 769px) {
  .pd-hz-xl {
    padding-left: 4.79168vw;
    padding-right: 4.79168vw;
  }
}

.pd-xxl {
  padding: 20px;
}
@media only screen and (min-width: 769px) {
  .pd-xxl {
    padding: 10vw;
  }
}

.pd-tp-xxl {
  padding-top: 20px;
}
@media only screen and (min-width: 769px) {
  .pd-tp-xxl {
    padding-top: 10vw;
  }
}

.pd-bm-xxl {
  padding-bottom: 20px;
}
@media only screen and (min-width: 769px) {
  .pd-bm-xxl {
    padding-bottom: 10vw;
  }
}

.pd-lf-xxl {
  padding-left: 20px;
}
@media only screen and (min-width: 769px) {
  .pd-lf-xxl {
    padding-left: 10vw;
  }
}

.pd-rt-xxl {
  padding-right: 20px;
}
@media only screen and (min-width: 769px) {
  .pd-rt-xxl {
    padding-right: 10vw;
  }
}

.pd-vt-xxl {
  padding-top: 20px;
  padding-bottom: 20px;
}
@media only screen and (min-width: 769px) {
  .pd-vt-xxl {
    padding-top: 10vw;
    padding-bottom: 10vw;
  }
}

.pd-hz-xxl {
  padding-left: 20px;
  padding-right: 20px;
}
@media only screen and (min-width: 769px) {
  .pd-hz-xxl {
    padding-left: 10vw;
    padding-right: 10vw;
  }
}

.no-margin-bottom, .no-mg-bm {
  margin-bottom: 0 !important;
}

.no-margin-top, .no-mg-tp {
  margin-top: 0 !important;
}

.no-padding-bottom, .no-pd-bm {
  padding-bottom: 0 !important;
}

.no-padding-top, .no-pd-tp {
  padding-top: 0 !important;
}

.text-center {
  text-align: center;
}
.text-center > h1, .text-center .h1-like,
.text-center > h2, .text-center .h2-like,
.text-center > h3, .text-center .h3-like,
.text-center > h4, .text-center .h4-like,
.text-center > h5, .text-center .h5-like,
.text-center > h6, .text-center .h6-like,
.text-center > p {
  max-width: 1100px;
  margin-left: auto;
  margin-right: auto;
}

.text-right {
  text-align: right;
}

.body-copy h1, .body-copy .h1-like,
.body-copy h2, .body-copy .h2-like,
.body-copy h3, .body-copy .h3-like,
.body-copy h4, .body-copy .h4-like,
.body-copy h5, .body-copy .h5-like,
.body-copy h6, .body-copy .h6-like,
.body-copy [class*=subhead] {
  margin-bottom: 10px;
}
.body-copy p,
.body-copy ul,
.body-copy ol,
.body-copy blockquote,
.body-copy table {
  margin-bottom: 25px;
}
.body-copy .no-margin-bottom {
  margin-bottom: 0;
}
.body-copy .has-counter {
  display: flex;
  justify-content: space-between;
}

[id*=react] .grid__item,
[id*=react] > .media {
  opacity: 0;
  transform: translateY(50px);
  transition-duration: 400ms;
}
[id*=react] .grid__item.is-active,
[id*=react] > .media.is-active {
  opacity: 1;
  transform: translateY(0);
}

[class*=caption] + [class*=caption],
[class*=caption] + [class*=subhead],
[class*=subhead] + [class*=caption],
[class*=subhead] + [class*=subhead] {
  margin-top: 20px;
}

.cc-loading {
  width: 1000px;
  max-width: 100%;
  padding-top: 66%;
  margin-bottom: -66%;
  background-image: url(../images/base64/SVG/tail-spin.svg);
  background-position: center;
  background-size: 100px;
  background-repeat: no-repeat;
  background-color: rgba(30, 0, 40, 0.4);
}

.height {
  height: 100%;
}

.column {
  display: flex;
  flex-direction: column;
  justify-content: space-around;
  height: 100%;
}

.fl-rt {
  float: right;
}

.fl-lt {
  float: left;
}

.d-inline-block {
  display: inline-block;
}

.d-block {
  display: block;
}

.w-auto {
  width: auto !important;
}

.images-inline img {
  display: inline;
}

.leftRightPadding-Small {
  padding-left: 20%;
  padding-right: 20%;
}
.leftRightPadding-Medium {
  padding-left: 24%;
  padding-right: 24%;
}
.leftRightPadding-Large {
  padding-left: 28%;
  padding-right: 28%;
}
@media (max-width: 1200px) {
  .leftRightPadding-Small {
    padding-left: 15%;
    padding-right: 15%;
  }
  .leftRightPadding-Medium {
    padding-left: 18%;
    padding-right: 18%;
  }
  .leftRightPadding-Large {
    padding-left: 20%;
    padding-right: 20%;
  }
}
@media (max-width: 992px) {
  .leftRightPadding-Small {
    padding-left: 4%;
    padding-right: 4%;
  }
  .leftRightPadding-Medium {
    padding-left: 8%;
    padding-right: 8%;
  }
  .leftRightPadding-Large {
    padding-left: 10%;
    padding-right: 10%;
  }
}
@media (max-width: 768px) {
  .leftRightPadding-Small, .leftRightPadding-Medium, .leftRightPadding-Large {
    padding-left: 0;
    padding-right: 0;
  }
}

.wave-curve {
  position: relative;
  height: 0px;
  margin-top: -1px; /* Pulls it up over bottom-section */
  background-size: cover;
  z-index: 1;
}

/**
 * LAYOUT
 * Footer
 *
 */
.footer {
  color: white;
  font-family: "metrify-regular", Arial, Helvetica, sans-serif;
}
.footer h6 {
  color: white;
}
.footer h6:hover {
  color: #c928b2;
  background: #fae6fa;
  transition-duration: 0s;
}
.footer p {
  margin-bottom: 20px;
}
.footer a {
  padding-bottom: 0;
  color: inherit;
  text-decoration: none;
}
.footer {
  /*@include respond-to(desk-and-up) {*/
}
.footer h6 {
  /*margin-bottom: 25px;*/
  font-size: 17px;
}
.footer {
  /*}*/
}

@media only screen and (min-width: 1500px) {
  .footer__details h6 {
    margin-bottom: 10px;
  }
}
.footer__details .icon-list li {
  transition-duration: 0s;
  margin-bottom: 40px;
  padding-left: 50px;
}
.footer__details .icon-list li a {
  font-weight: normal;
  font-size: 16px;
}
.footer__details .icon-list li a:hover {
  color: #c928b2;
  transition-duration: 0s;
  background-color: #fae6fa;
}

.footer__form {
  background-color: white;
  padding: 15px;
  color: #1E0028;
}
@media only screen and (min-width: 1024px) {
  .footer__form {
    padding-top: 20px;
    border-top: 1px solid rgba(255, 255, 255, 0.3);
  }
}
@media only screen and (min-width: 1500px) {
  .footer__form {
    border-top: none;
  }
}
.footer__form .input-with-icon {
  position: relative;
  width: 100%;
}
.footer__form .input-with-icon i {
  position: absolute;
  left: 12px;
  top: 12px;
  color: gray;
  font-size: 1.2rem;
  pointer-events: none;
}
.footer__form .input-with-icon .form__input {
  border: 1px solid #b7b7b7 !important;
  padding-left: 40px;
  width: 100%;
  box-sizing: border-box;
}

.footer__links ul {
  width: auto;
}
.footer__links li {
  padding-bottom: 10px;
}
.footer__links a {
  display: block;
  transition-duration: 0s;
  margin: 0px 10px;
  padding: 0px 5px;
  display: block;
  border-radius: 6px;
  font-weight: normal;
}
.footer__links a:hover {
  color: #c928b2;
  background: #fae6fa;
  transition-duration: 0s;
}
.footer__links .title {
  font-size: 18px;
  display: block;
  transition-duration: 0s;
  margin: 0px 10px;
  padding: 0px 5px;
  display: block;
  border-radius: 6px;
  font-weight: normal;
}
@media only screen and (max-width: 768px) {
  .footer__links {
    padding-top: 20px;
    border-top: 1px solid rgba(255, 255, 255, 0.3);
  }
  .footer__links ul {
    padding-bottom: 20px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.25);
    margin-bottom: 20px;
  }
}
@media only screen and (min-width: 769px) {
  .footer__links {
    display: flex;
    justify-content: space-between;
  }
  .footer__links ul {
    width: 100%;
  }
}

.footer__credits {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: 20px;
  border-top: 1px solid rgba(255, 255, 255, 0.25);
  padding-top: 20px;
}
.footer__credits p {
  display: flex;
  flex-wrap: wrap;
}
@media only screen and (min-width: 769px) {
  .footer__credits p {
    display: block;
  }
}
.footer__credits p a {
  white-space: nowrap;
  transition-duration: 0s;
  width: 100%;
  padding: 5px;
  border-radius: 6px;
  margin: 0px 10px;
  display: inline-block;
  text-transform: uppercase;
  font-weight: normal;
}
@media only screen and (min-width: 375px) {
  .footer__credits p a {
    width: 50%;
  }
}
@media only screen and (min-width: 769px) {
  .footer__credits p a {
    width: auto;
  }
}
.footer__credits p a:hover {
  color: #c928b2;
  background: #fae6fa;
  transition-duration: 0s;
}
.footer__credits p {
  /*a + a:before {
      @include respond-to(medium-and-up) {
          content: ' ';
      }

      padding: 0 13px 0 11px;
      font-weight: normal;
  }

  transition-duration: 0s;

  a:hover:before {
      color: white;
  }*/
}
@media only screen and (min-width: 769px) {
  .footer__credits {
    margin-top: 40px;
  }
  .footer__credits p {
    width: 100%;
  }
}

.footer__credits.website-by {
  border-top: none;
  padding-top: 21px;
}
@media (max-width: 768px) {
  .footer__credits.website-by {
    padding-top: 0;
    margin-bottom: 150px;
  }
}

.footer-charity-bar {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.footer-charity-bar__cp-logo {
  display: none;
}

.footer-charity-bar p {
  padding: 0;
  margin: 0;
  font-size: 15px;
}
@media only screen and (min-width: 1023px) {
  .footer-charity-bar p {
    max-width: 755px;
    padding: 10px;
  }
}

.footer-charity-bar__fr-logo {
  width: 100%;
  display: flex;
  justify-content: space-between;
  padding-top: 1em;
}

@media only screen and (min-width: 426px) {
  .footer-charity-bar__fr-logo {
    width: 100%;
    display: flex;
    justify-content: flex-start;
    padding-top: 1em;
  }
  .footer-charity-bar__fr-logo a {
    padding-right: 1em;
  }
}
@media only screen and (min-width: 1023px) {
  .footer-charity-bar {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
  }
  .footer-charity-bar__cp-logo {
    display: block;
  }
  .footer-charity-bar div {
    padding: 1em 0em;
  }
  .footer-charity-bar__hide-for-large {
    display: none;
  }
  .footer-charity-bar__fr-logo {
    width: auto;
  }
}
.icon-list-fa a {
  padding: 0px 0px;
  display: block;
  border-radius: 6px;
}
.icon-list-fa a:hover {
  color: #c928b2;
  background: #fae6fa;
  transition-duration: 0s;
}

.footer__form h6 {
  background: none !important;
  color: #1E0028 !important;
}
.footer__form h6:hover {
  background: none !important;
  color: white !important;
}

.footer-group__buttons {
  display: flex;
  justify-content: flex-start;
  margin-top: 15px;
}
.footer-group__buttons ul {
  padding-bottom: 35px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.3);
}
.footer-group__buttons ul li {
  display: inline;
  margin-right: 15px;
  padding-top: 5px;
}
.footer-group__buttons a {
  padding-bottom: 10px;
}
@media (max-width: 768px) {
  .footer-group__buttons {
    border-bottom: 1px solid rgba(255, 255, 255, 0.3);
    margin-top: 0;
  }
  .footer-group__buttons ul {
    padding-bottom: 15px;
    border-bottom: none;
  }
}

.footer-groups__social-backtotop {
  display: flex;
  justify-content: flex-end;
  margin-top: 15px;
}
.footer-groups__social-backtotop ul {
  display: flex;
  align-items: center;
  padding-bottom: 34px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.3);
}
.footer-groups__social-backtotop ul li {
  display: inline;
  align-items: center;
  margin-right: 10px;
}
.footer-groups__social-backtotop ul li:last-child {
  margin-right: 5px;
  margin-left: 5px;
}
.footer-groups__social-backtotop .icon-circle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  background-color: #ffffff;
  color: black !important;
  border-radius: 50%;
  text-decoration: none;
  transition: background-color 0.3s ease;
}
.footer-groups__social-backtotop .icon-circle:hover {
  background-color: #fae6fa;
}
.footer-groups__social-backtotop .icon-circle i {
  font-size: 25px;
}
@media (max-width: 768px) {
  .footer-groups__social-backtotop {
    justify-content: flex-start;
    border-bottom: 1px solid rgba(255, 255, 255, 0.3);
  }
  .footer-groups__social-backtotop ul {
    padding-bottom: 14px;
    border-bottom: none;
  }
}

.footer__link a {
  font-weight: normal;
  text-decoration: underline;
}
.footer__link a:hover {
  color: white;
}

/**
 * LAYOUT
 * Grids
 * Some light Grids
 */
/**
 * LAYOUT
 * GRIDS - FLEX
 * A selection of Grid settings. These can be applied as selectors in the markup or
 * or as hidden classes extended into a component.
 */
.grid {
  display: flex;
  min-width: 100%;
  flex-wrap: wrap;
  justify-content: center;
}

.grid__item {
  width: 100%;
  box-sizing: border-box;
}

.grid--center {
  align-items: center;
}

.grid--content-center {
  justify-content: center;
}

.grid--right {
  justify-content: end;
}

.grid--left {
  justify-content: flex-start;
}

@media only screen and (min-width: 769px) {
  .grid--rev {
    flex-direction: row-reverse;
  }
}

.grid--space-between {
  justify-content: space-between;
  flex-wrap: nowrap;
}

.grid--gap-1 {
  margin-left: -15px;
}
.grid--gap-1 .grid__item {
  padding-left: 15px;
  margin-bottom: 15px;
}
.grid--gap-1 .slick-dots {
  padding-left: 10px;
}
@media only screen and (min-width: 769px) {
  .grid--gap-1 {
    margin-left: -0.5vw;
  }
  .grid--gap-1 .grid__item {
    padding-left: 0.5vw;
  }
  .grid--gap-1 .slick-dots {
    margin-top: 7px;
    padding-left: 0.5vw;
  }
}

.grid--gap-2 {
  margin-left: -15px;
}
.grid--gap-2 .grid__item {
  padding-left: 15px;
  margin-bottom: 15px;
}
.grid--gap-2 .slick-dots {
  padding-left: 10px;
}
@media only screen and (min-width: 769px) {
  .grid--gap-2 {
    margin-left: -1vw;
  }
  .grid--gap-2 .grid__item {
    padding-left: 1vw;
  }
  .grid--gap-2 .slick-dots {
    margin-top: 7px;
    padding-left: 1vw;
  }
}

.grid--gap-3 {
  margin-left: -15px;
}
.grid--gap-3 .grid__item {
  padding-left: 15px;
  margin-bottom: 15px;
}
.grid--gap-3 .slick-dots {
  padding-left: 10px;
}
@media only screen and (min-width: 769px) {
  .grid--gap-3 {
    margin-left: -1.5vw;
  }
  .grid--gap-3 .grid__item {
    padding-left: 1.5vw;
  }
  .grid--gap-3 .slick-dots {
    margin-top: 7px;
    padding-left: 1.5vw;
  }
}

.grid--gap-4 {
  margin-left: -15px;
}
.grid--gap-4 .grid__item {
  padding-left: 15px;
  margin-bottom: 15px;
}
.grid--gap-4 .slick-dots {
  padding-left: 10px;
}
@media only screen and (min-width: 769px) {
  .grid--gap-4 {
    margin-left: -2vw;
  }
  .grid--gap-4 .grid__item {
    padding-left: 2vw;
  }
  .grid--gap-4 .slick-dots {
    margin-top: 7px;
    padding-left: 2vw;
  }
}

.grid--gap-5 {
  margin-left: -15px;
}
.grid--gap-5 .grid__item {
  padding-left: 15px;
  margin-bottom: 15px;
}
.grid--gap-5 .slick-dots {
  padding-left: 10px;
}
@media only screen and (min-width: 769px) {
  .grid--gap-5 {
    margin-left: -2.5vw;
  }
  .grid--gap-5 .grid__item {
    padding-left: 2.5vw;
  }
  .grid--gap-5 .slick-dots {
    margin-top: 7px;
    padding-left: 2.5vw;
  }
}

.grid--gap-6 {
  margin-left: -15px;
}
.grid--gap-6 .grid__item {
  padding-left: 15px;
  margin-bottom: 15px;
}
.grid--gap-6 .slick-dots {
  padding-left: 10px;
}
@media only screen and (min-width: 769px) {
  .grid--gap-6 {
    margin-left: -3vw;
  }
  .grid--gap-6 .grid__item {
    padding-left: 3vw;
  }
  .grid--gap-6 .slick-dots {
    margin-top: 7px;
    padding-left: 3vw;
  }
}

.grid--gap-7 {
  margin-left: -15px;
}
.grid--gap-7 .grid__item {
  padding-left: 15px;
  margin-bottom: 15px;
}
.grid--gap-7 .slick-dots {
  padding-left: 10px;
}
@media only screen and (min-width: 769px) {
  .grid--gap-7 {
    margin-left: -3.5vw;
  }
  .grid--gap-7 .grid__item {
    padding-left: 3.5vw;
  }
  .grid--gap-7 .slick-dots {
    margin-top: 7px;
    padding-left: 3.5vw;
  }
}

.grid--gap-8 {
  margin-left: -15px;
}
.grid--gap-8 .grid__item {
  padding-left: 15px;
  margin-bottom: 15px;
}
.grid--gap-8 .slick-dots {
  padding-left: 10px;
}
@media only screen and (min-width: 769px) {
  .grid--gap-8 {
    margin-left: -4vw;
  }
  .grid--gap-8 .grid__item {
    padding-left: 4vw;
  }
  .grid--gap-8 .slick-dots {
    margin-top: 7px;
    padding-left: 4vw;
  }
}

.grid--gap-9 {
  margin-left: -15px;
}
.grid--gap-9 .grid__item {
  padding-left: 15px;
  margin-bottom: 15px;
}
.grid--gap-9 .slick-dots {
  padding-left: 10px;
}
@media only screen and (min-width: 769px) {
  .grid--gap-9 {
    margin-left: -4.5vw;
  }
  .grid--gap-9 .grid__item {
    padding-left: 4.5vw;
  }
  .grid--gap-9 .slick-dots {
    margin-top: 7px;
    padding-left: 4.5vw;
  }
}

.grid--gap-10 {
  margin-left: -15px;
}
.grid--gap-10 .grid__item {
  padding-left: 15px;
  margin-bottom: 15px;
}
.grid--gap-10 .slick-dots {
  padding-left: 10px;
}
@media only screen and (min-width: 769px) {
  .grid--gap-10 {
    margin-left: -5vw;
  }
  .grid--gap-10 .grid__item {
    padding-left: 5vw;
  }
  .grid--gap-10 .slick-dots {
    margin-top: 7px;
    padding-left: 5vw;
  }
}

.grid--2 > .grid__item {
  width: 50%;
}

.grid--3 > .grid__item {
  width: 33.3333333333%;
}

.grid--4 > .grid__item {
  width: 25%;
}

.grid--5 > .grid__item {
  width: 20%;
}

@media only screen and (min-width: 640px) {
  .grid--2-sm > .grid__item {
    width: 50%;
  }
  .grid--3-sm > .grid__item {
    width: 33.3333333333%;
  }
  .grid--4-sm > .grid__item {
    width: 25%;
  }
  .grid--5-sm > .grid__item {
    width: 20%;
  }
}
@media only screen and (min-width: 769px) {
  .grid--2-md > .grid__item {
    width: 50%;
  }
  .grid--3-md > .grid__item {
    width: 33.3333333333%;
  }
  .grid--4-md > .grid__item {
    width: 25%;
  }
  .grid--5-md > .grid__item {
    width: 20%;
  }
}
@media only screen and (min-width: 1024px) {
  .grid--2-lg > .grid__item {
    width: 50%;
  }
  .grid--3-lg > .grid__item {
    width: 33.3333333333%;
  }
  .grid--4-lg > .grid__item {
    width: 25%;
  }
  .grid--5-lg > .grid__item {
    width: 20%;
  }
}
@media only screen and (min-width: 1500px) {
  .grid--2-xl > .grid__item {
    width: 50%;
  }
  .grid--3-xl > .grid__item {
    width: 33.3333333333%;
  }
  .grid--4-xl > .grid__item {
    width: 25%;
  }
  .grid--5-xl > .grid__item {
    width: 20%;
  }
}
.grid--1_2 > .grid__item:nth-child(1) {
  width: 33.3333333333%;
}
.grid--1_2 > .grid__item:nth-child(2) {
  width: 66.6666666667%;
}

.grid--1_3 > .grid__item:nth-child(1) {
  width: 25%;
}
.grid--1_3 > .grid__item:nth-child(2) {
  width: 75%;
}

.grid--2_3 > .grid__item:nth-child(1) {
  width: 40%;
}
.grid--2_3 > .grid__item:nth-child(2) {
  width: 60%;
}

.grid--2_5 > .grid__item:nth-child(1) {
  width: 28.5714285714%;
}
.grid--2_5 > .grid__item:nth-child(2) {
  width: 71.4285714286%;
}

.grid--2_1 > .grid__item:nth-child(1) {
  width: 66.6666666667%;
}
.grid--2_1 > .grid__item:nth-child(2) {
  width: 33.3333333333%;
}

.grid--3_1 > .grid__item:nth-child(1) {
  width: 75%;
}
.grid--3_1 > .grid__item:nth-child(2) {
  width: 25%;
}

.grid--3_2 > .grid__item:nth-child(1) {
  width: 60%;
}
.grid--3_2 > .grid__item:nth-child(2) {
  width: 40%;
}

.grid--4_2 > .grid__item:nth-child(1) {
  width: 66.6666666667%;
}
.grid--4_2 > .grid__item:nth-child(2) {
  width: 33.3333333333%;
}

.grid--5_4 > .grid__item:nth-child(1) {
  width: 55.5555555556%;
}
.grid--5_4 > .grid__item:nth-child(2) {
  width: 44.4444444444%;
}

@media only screen and (min-width: 640px) {
  .grid--1_2-sm > .grid__item:nth-child(1) {
    width: 33.3333333333%;
  }
  .grid--1_2-sm > .grid__item:nth-child(2) {
    width: 66.6666666667%;
  }
  .grid--1_3-sm > .grid__item:nth-child(1) {
    width: 25%;
  }
  .grid--1_3-sm > .grid__item:nth-child(2) {
    width: 75%;
  }
  .grid--2_3-sm > .grid__item:nth-child(1) {
    width: 40%;
  }
  .grid--2_3-sm > .grid__item:nth-child(2) {
    width: 60%;
  }
  .grid--2_5-sm > .grid__item:nth-child(1) {
    width: 28.5714285714%;
  }
  .grid--2_5-sm > .grid__item:nth-child(2) {
    width: 71.4285714286%;
  }
  .grid--2_1-sm > .grid__item:nth-child(1) {
    width: 66.6666666667%;
  }
  .grid--2_1-sm > .grid__item:nth-child(2) {
    width: 33.3333333333%;
  }
  .grid--3_1-sm > .grid__item:nth-child(1) {
    width: 75%;
  }
  .grid--3_1-sm > .grid__item:nth-child(2) {
    width: 25%;
  }
  .grid--3_2-sm > .grid__item:nth-child(1) {
    width: 60%;
  }
  .grid--3_2-sm > .grid__item:nth-child(2) {
    width: 40%;
  }
  .grid--4_2-sm > .grid__item:nth-child(1) {
    width: 66.6666666667%;
  }
  .grid--4_2-sm > .grid__item:nth-child(2) {
    width: 33.3333333333%;
  }
  .grid--5_4-sm > .grid__item:nth-child(1) {
    width: 55.5555555556%;
  }
  .grid--5_4-sm > .grid__item:nth-child(2) {
    width: 44.4444444444%;
  }
}
@media only screen and (min-width: 769px) {
  .grid--1_2-md > .grid__item:nth-child(1) {
    width: 33.3333333333%;
  }
  .grid--1_2-md > .grid__item:nth-child(2) {
    width: 66.6666666667%;
  }
  .grid--1_3-md > .grid__item:nth-child(1) {
    width: 25%;
  }
  .grid--1_3-md > .grid__item:nth-child(2) {
    width: 75%;
  }
  .grid--2_3-md > .grid__item:nth-child(1) {
    width: 40%;
  }
  .grid--2_3-md > .grid__item:nth-child(2) {
    width: 60%;
  }
  .grid--2_5-md > .grid__item:nth-child(1) {
    width: 28.5714285714%;
  }
  .grid--2_5-md > .grid__item:nth-child(2) {
    width: 71.4285714286%;
  }
  .grid--2_1-md > .grid__item:nth-child(1) {
    width: 66.6666666667%;
  }
  .grid--2_1-md > .grid__item:nth-child(2) {
    width: 33.3333333333%;
  }
  .grid--3_1-md > .grid__item:nth-child(1) {
    width: 75%;
  }
  .grid--3_1-md > .grid__item:nth-child(2) {
    width: 25%;
  }
  .grid--3_2-md > .grid__item:nth-child(1) {
    width: 60%;
  }
  .grid--3_2-md > .grid__item:nth-child(2) {
    width: 40%;
  }
  .grid--4_2-md > .grid__item:nth-child(1) {
    width: 66.6666666667%;
  }
  .grid--4_2-md > .grid__item:nth-child(2) {
    width: 33.3333333333%;
  }
  .grid--5_4-md > .grid__item:nth-child(1) {
    width: 55.5555555556%;
  }
  .grid--5_4-md > .grid__item:nth-child(2) {
    width: 44.4444444444%;
  }
}
@media only screen and (min-width: 1024px) {
  .grid--1_2-lg > .grid__item:nth-child(1) {
    width: 33.3333333333%;
  }
  .grid--1_2-lg > .grid__item:nth-child(2) {
    width: 66.6666666667%;
  }
  .grid--1_3-lg > .grid__item:nth-child(1) {
    width: 25%;
  }
  .grid--1_3-lg > .grid__item:nth-child(2) {
    width: 75%;
  }
  .grid--2_3-lg > .grid__item:nth-child(1) {
    width: 40%;
  }
  .grid--2_3-lg > .grid__item:nth-child(2) {
    width: 60%;
  }
  .grid--2_5-lg > .grid__item:nth-child(1) {
    width: 28.5714285714%;
  }
  .grid--2_5-lg > .grid__item:nth-child(2) {
    width: 71.4285714286%;
  }
  .grid--2_1-lg > .grid__item:nth-child(1) {
    width: 66.6666666667%;
  }
  .grid--2_1-lg > .grid__item:nth-child(2) {
    width: 33.3333333333%;
  }
  .grid--3_1-lg > .grid__item:nth-child(1) {
    width: 75%;
  }
  .grid--3_1-lg > .grid__item:nth-child(2) {
    width: 25%;
  }
  .grid--3_2-lg > .grid__item:nth-child(1) {
    width: 60%;
  }
  .grid--3_2-lg > .grid__item:nth-child(2) {
    width: 40%;
  }
  .grid--4_2-lg > .grid__item:nth-child(1) {
    width: 66.6666666667%;
  }
  .grid--4_2-lg > .grid__item:nth-child(2) {
    width: 33.3333333333%;
  }
  .grid--5_4-lg > .grid__item:nth-child(1) {
    width: 55.5555555556%;
  }
  .grid--5_4-lg > .grid__item:nth-child(2) {
    width: 44.4444444444%;
  }
}
@media only screen and (min-width: 1500px) {
  .grid--1_2-xl > .grid__item:nth-child(1) {
    width: 33.3333333333%;
  }
  .grid--1_2-xl > .grid__item:nth-child(2) {
    width: 66.6666666667%;
  }
  .grid--1_3-xl > .grid__item:nth-child(1) {
    width: 25%;
  }
  .grid--1_3-xl > .grid__item:nth-child(2) {
    width: 75%;
  }
  .grid--2_3-xl > .grid__item:nth-child(1) {
    width: 40%;
  }
  .grid--2_3-xl > .grid__item:nth-child(2) {
    width: 60%;
  }
  .grid--2_5-xl > .grid__item:nth-child(1) {
    width: 28.5714285714%;
  }
  .grid--2_5-xl > .grid__item:nth-child(2) {
    width: 71.4285714286%;
  }
  .grid--2_1-xl > .grid__item:nth-child(1) {
    width: 66.6666666667%;
  }
  .grid--2_1-xl > .grid__item:nth-child(2) {
    width: 33.3333333333%;
  }
  .grid--3_1-xl > .grid__item:nth-child(1) {
    width: 75%;
  }
  .grid--3_1-xl > .grid__item:nth-child(2) {
    width: 25%;
  }
  .grid--3_2-xl > .grid__item:nth-child(1) {
    width: 60%;
  }
  .grid--3_2-xl > .grid__item:nth-child(2) {
    width: 40%;
  }
  .grid--4_2-xl > .grid__item:nth-child(1) {
    width: 66.6666666667%;
  }
  .grid--4_2-xl > .grid__item:nth-child(2) {
    width: 33.3333333333%;
  }
  .grid--5_4-xl > .grid__item:nth-child(1) {
    width: 55.5555555556%;
  }
  .grid--5_4-xl > .grid__item:nth-child(2) {
    width: 44.4444444444%;
  }
}
.grid--1_4_2 > .grid__item:nth-child(1) {
  width: 14.2857142857%;
}
.grid--1_4_2 > .grid__item:nth-child(2) {
  width: 57.1428571429%;
}
.grid--1_4_2 > .grid__item:nth-child(3) {
  width: 28.5714285714%;
}

.grid--2_4_2 > .grid__item:nth-child(1) {
  width: 25%;
}
.grid--2_4_2 > .grid__item:nth-child(2) {
  width: 50%;
}
.grid--2_4_2 > .grid__item:nth-child(3) {
  width: 25%;
}

@media only screen and (min-width: 640px) {
  .grid--1_4_2-sm > .grid__item:nth-child(1) {
    width: 14.2857142857%;
  }
  .grid--1_4_2-sm > .grid__item:nth-child(2) {
    width: 57.1428571429%;
  }
  .grid--1_4_2-sm > .grid__item:nth-child(3) {
    width: 28.5714285714%;
  }
  .grid--2_4_2-sm > .grid__item:nth-child(1) {
    width: 25%;
  }
  .grid--2_4_2-sm > .grid__item:nth-child(2) {
    width: 50%;
  }
  .grid--2_4_2-sm > .grid__item:nth-child(3) {
    width: 25%;
  }
}
@media only screen and (min-width: 769px) {
  .grid--1_4_2-md > .grid__item:nth-child(1) {
    width: 14.2857142857%;
  }
  .grid--1_4_2-md > .grid__item:nth-child(2) {
    width: 57.1428571429%;
  }
  .grid--1_4_2-md > .grid__item:nth-child(3) {
    width: 28.5714285714%;
  }
  .grid--2_4_2-md > .grid__item:nth-child(1) {
    width: 25%;
  }
  .grid--2_4_2-md > .grid__item:nth-child(2) {
    width: 50%;
  }
  .grid--2_4_2-md > .grid__item:nth-child(3) {
    width: 25%;
  }
}
@media only screen and (min-width: 1024px) {
  .grid--1_4_2-lg > .grid__item:nth-child(1) {
    width: 14.2857142857%;
  }
  .grid--1_4_2-lg > .grid__item:nth-child(2) {
    width: 57.1428571429%;
  }
  .grid--1_4_2-lg > .grid__item:nth-child(3) {
    width: 28.5714285714%;
  }
  .grid--2_4_2-lg > .grid__item:nth-child(1) {
    width: 25%;
  }
  .grid--2_4_2-lg > .grid__item:nth-child(2) {
    width: 50%;
  }
  .grid--2_4_2-lg > .grid__item:nth-child(3) {
    width: 25%;
  }
}
@media only screen and (min-width: 1500px) {
  .grid--1_4_2-xl > .grid__item:nth-child(1) {
    width: 14.2857142857%;
  }
  .grid--1_4_2-xl > .grid__item:nth-child(2) {
    width: 57.1428571429%;
  }
  .grid--1_4_2-xl > .grid__item:nth-child(3) {
    width: 28.5714285714%;
  }
  .grid--2_4_2-xl > .grid__item:nth-child(1) {
    width: 25%;
  }
  .grid--2_4_2-xl > .grid__item:nth-child(2) {
    width: 50%;
  }
  .grid--2_4_2-xl > .grid__item:nth-child(3) {
    width: 25%;
  }
}
@media only screen and (min-width: 1024px) {
  .grid__item--pull-height {
    margin-top: -50%;
    transform: translateY(71%);
  }
}

.min-height-380 {
  min-height: 380px;
}

.grid--masonry {
  margin-left: -17px;
}
@media (min-width: 768px) {
  .grid--masonry {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
  }
}
.grid--masonry > .grid__item {
  position: relative;
  width: 100%;
  box-sizing: border-box;
  border-left: 17px solid white;
  border-bottom: 17px solid white;
}
.grid--masonry > .grid__item:before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 75%;
}
@media (min-width: 768px) {
  .grid--masonry > .grid__item {
    width: 50%;
  }
  .grid--masonry > .grid__item:nth-child(1) {
    width: 100%;
  }
  .grid--masonry > .grid__item:nth-child(1):before {
    padding-top: 50%;
  }
  .grid--masonry > .grid__item:nth-child(1) {
    text-align: center;
  }
}
@media (min-width: 1024px) {
  .grid--masonry > .grid__item {
    width: 33.33%;
  }
  .grid--masonry > .grid__item:before {
    padding-top: 100%;
  }
  .grid--masonry > .grid__item:nth-child(5n-4) {
    width: 66.66%;
  }
  .grid--masonry > .grid__item:nth-child(5n-4):before {
    padding-top: 50%;
  }
}
@media (min-width: 1500px) {
  .grid--masonry > .grid__item:before {
    padding-top: 75%;
  }
  .grid--masonry > .grid__item:nth-child(5n-4) {
    width: 50%;
  }
  .grid--masonry > .grid__item:nth-child(5n-3) {
    width: 50%;
  }
  .grid--masonry > .grid__item:nth-child(5n-3):before {
    padding-top: 50%;
  }
}

.grid--masonry222 {
  display: grid;
  justify-content: inherit;
  margin-left: -17px;
  align-items: start;
}
.grid--masonry222 > .grid__item {
  position: relative;
  border-left: 17px solid white;
  border-bottom: 17px solid white;
  background-color: #b7b7b7;
}
.grid--masonry222 > .grid__item:before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 75%;
}
@media only screen and (min-width: 500px) {
  .grid--masonry222 > .grid__item:before {
    padding-top: 50%;
  }
}
@media only screen and (min-width: 769px) {
  .grid--masonry222 {
    grid-template-columns: auto auto;
    grid-template-rows: auto auto;
  }
  .grid--masonry222 > .grid__item:before {
    padding-top: 120%;
  }
  .grid--masonry222 > .grid__item:nth-child(1) {
    grid-column-start: 1;
    grid-column-end: 3;
  }
  .grid--masonry222 > .grid__item:nth-child(1):before {
    padding-top: 50%;
  }
  .grid--masonry222 > .grid__item:nth-child(1) {
    text-align: center;
  }
}
@media only screen and (min-width: 1024px) {
  .grid--masonry222 {
    grid-template-columns: auto auto auto;
  }
  .grid--masonry222 > .grid__item:before {
    padding-top: 100%;
  }
  .grid--masonry222 > .grid__item:nth-child(5n-4) {
    grid-column-start: 1;
    grid-column-end: span 2;
  }
  .grid--masonry222 > .grid__item:nth-child(5n-4):before {
    padding-top: 50%;
  }
}
@media only screen and (min-width: 1500px) {
  .grid--masonry222 {
    grid-template-columns: 33.33% 16.665% 16.665% 33.33%;
    grid-template-rows: auto auto;
  }
  .grid--masonry222 > .grid__item:before {
    padding-top: 75%;
  }
  .grid--masonry222 > .grid__item:nth-child(5n-3) {
    grid-column-start: 3;
    grid-column-end: span 2;
  }
  .grid--masonry222 > .grid__item:nth-child(5n-3):before {
    padding-top: 50%;
  }
  .grid--masonry222 > .grid__item:nth-child(5n-2) {
    grid-column-start: 1;
    grid-column-end: span 1;
  }
  .grid--masonry222 > .grid__item:nth-child(5n-1) {
    grid-column-start: 2;
    grid-column-end: span 2;
  }
  .grid--masonry222 > .grid__item {
    /*
        &:nth-child(12n - 11){
            grid-column-start: 1;
            grid-column-end: 4;
            margin-bottom: -100%;
        }

        &:nth-child(12n -10),
        &:nth-child(12n -9){
            grid-column-start: 4;
            grid-column-end: 6;
            @include aspect-ratio(5,3);
        }

        &:nth-child(12n -8),
        &:nth-child(12n -2){
            grid-column-start: 1;
            grid-column-end: 2;
            @include aspect-ratio(1,1);
        }

        &:nth-child(12n -7),
        &:nth-child(12n -1){
            grid-column-start: 2;
            grid-column-end: 5;
            @include aspect-ratio(1,1);
        }

        &:nth-child(12n -6),
        &:nth-child(12n){
            grid-column-start: 5;
            grid-column-end: 6;
            @include aspect-ratio(1,1);
        }

        &:nth-child(12n -5),
        &:nth-child(12n -4){
            grid-column-start: 1;
            grid-column-end: 3;
            @include aspect-ratio(5,3);
        }

        &:nth-child(12n -3){
            grid-column-start: 3;
            grid-column-end: 6;
            margin-top: -39.6%
        }

        &:nth-child(12n - 11),
        &:nth-child(12n - 3){
            padding-top: 77.2%;
        }
    */
  }
}

.grid--checkers .grid__item:nth-child(odd) .card {
  background-color: #fae6fa;
}
.grid--checkers .grid__item .card-fix {
  background-color: #fae6fa;
  border: 0px;
}
.grid--checkers .grid__item .card-fix .btn:hover {
  background-color: #c928b2;
  color: white;
}

@media (min-width: 768px) {
  .grid--add-your-cat > .grid__item:first-of-type {
    width: 350px;
  }
}
@media (min-width: 768px) {
  .grid--add-your-cat > .grid__item:last-of-type {
    width: auto;
    flex: 1;
    padding: 0 0 0 50px;
  }
}

.grid--memory-wall {
  min-width: 0;
  max-width: 400px;
  margin: 0 auto;
}
@media only screen and (min-width: 1024px) {
  .grid--memory-wall {
    max-width: none;
    justify-content: space-between;
  }
}
@media only screen and (min-width: 1024px) {
  .grid--memory-wall .grid__item {
    width: 250px;
  }
}
.grid--memory-wall .grid__item:first-of-type {
  margin: 0 0 1em;
}
@media only screen and (min-width: 1024px) {
  .grid--memory-wall .grid__item:last-of-type {
    width: 340px;
  }
}

.grid--sponsor-portal-btn-group {
  max-width: 460px;
  min-width: 0;
  margin: 0 auto;
}
@media (min-width: 1500px) {
  .grid--sponsor-portal-btn-group {
    margin: 0 0 0 -1em;
    max-width: none;
  }
}
.grid--sponsor-portal-btn-group .grid__item {
  margin: 0 0 1em;
}
@media (min-width: 1500px) {
  .grid--sponsor-portal-btn-group .grid__item {
    width: 33.33%;
    padding: 0 0 0 1em;
  }
}

@media (min-width: 768px) {
  .grid--bereavement-stories {
    justify-content: space-between;
  }
}
@media (min-width: 768px) {
  .grid--bereavement-stories .grid__item {
    width: 50%;
  }
}
@media (min-width: 1024px) {
  .grid--bereavement-stories .grid__item {
    width: 350px;
  }
}
.grid--bereavement-stories .grid__item:first-of-type {
  margin: 0 0 20px;
}
@media (min-width: 768px) {
  .grid--bereavement-stories .grid__item:first-of-type {
    margin: 0;
    width: 30%;
  }
}
@media (min-width: 1024px) {
  .grid--bereavement-stories .grid__item:first-of-type {
    width: 200px;
  }
}

@media (min-width: 1024px) {
  .grid--membership {
    align-items: center;
  }
}
@media (min-width: 1024px) {
  .grid--membership .grid__item:nth-of-type(1) {
    width: 350px;
  }
}
@media (min-width: 1024px) {
  .grid--membership .grid__item:nth-of-type(2) {
    width: 226px;
  }
}
@media (min-width: 1024px) {
  .grid--membership .grid__item:nth-of-type(3) {
    width: 150px;
  }
}

/**
 * LAYOUT
 * Flex
 * Some light Grids
 */
.flex {
  display: flex;
}

.flex--wrap {
  flex-wrap: wrap;
}

.flex--column {
  flex-direction: column;
}

.flex--column-reverse {
  flex-direction: column-reverse;
}

.flex--row {
  flex-direction: row;
}

.flex--row-reverse {
  flex-direction: row-reverse;
}

.flex--center {
  align-items: center;
}

.flex--space-between {
  justify-content: space-between;
}

.flex--justify-center {
  justify-content: center;
}

.flex--top {
  align-items: flex-start;
}

.flex--bottom {
  align-items: flex-end;
}

.flex--grid > .flex__item {
  width: 100%;
}

.flex--grid-auto > .flex__item {
  width: auto;
}

.flex--gap-7 {
  margin-left: -7px;
}
.flex--gap-7 > .flex__item {
  padding-left: 7px;
  margin-bottom: 7px;
}
.flex--gap-7 .flex__rule {
  margin-left: 7px;
}

.flex--gap-30 {
  margin-left: -30px;
}
.flex--gap-30 > .flex__item {
  padding-left: 30px;
  margin-bottom: 30px;
}
.flex--gap-30 .flex__rule {
  margin-left: 30px;
}

.flex--gap-60 {
  margin-left: -60px;
}
.flex--gap-60 > .flex__item {
  padding-left: 60px;
  margin-bottom: 20px;
}
.flex--gap-60 .flex__rule {
  margin-left: 60px;
}

.flex--gap-4 {
  margin-left: -2vw;
}
.flex--gap-4 .flex__item {
  padding-left: 2vw;
  margin-bottom: 2vw;
}

.flex--gap-6 {
  margin-left: -3vw;
}
.flex--gap-6 .flex__item {
  padding-left: 3vw;
  margin-bottom: 3vw;
}

.flex--gap-8 {
  margin-left: -4vw;
}
.flex--gap-8 .flex__item {
  padding-left: 4vw;
  margin-bottom: 4vw;
}

.flex--1-1 > .flex__item {
  width: 50%;
}

.flex--1-1-1 > .flex__item {
  width: 33.33333%;
}

.flex--1-1-1-1 > .flex__item {
  width: 25%;
}

.flex--1-1-1-1-1 > .flex__item {
  width: 20%;
}

.flex__rule {
  width: 100%;
  border: none;
  border-bottom: 1px solid #b7b7b7;
  margin: 40px 0;
}

.flex--checkers .flex__item:nth-child(odd) .card {
  background-color: #b7b7b7;
}

/**
 * LAYOUT
 * Header Group
 * A group of elements located within the site header.
 */
.header-group {
  display: grid;
  grid-template-columns: 60px 1fr auto;
  grid-template-areas: "logo social hamburger";
  padding-top: 10px;
  padding-bottom: 10px;
  align-items: center;
}
@media (min-width: 1200px) {
  .header-group {
    padding-top: 0;
    padding-bottom: 0;
    display: grid;
    grid-template-columns: 132px 1fr;
    grid-template-rows: 1fr 1fr;
    grid-template-areas: "logo social" "logo navigation";
    overflow: visible;
  }
}

.header-group__logo {
  transition: all 1s;
}
.header-group__logo img {
  transition: width 0.5s;
  width: 75%;
  margin: auto;
}
@media (min-width: 1200px) {
  .header-group__logo img {
    width: 100%;
  }
}
.header-group__logo {
  transition-duration: 0s;
}
.header-group__logo:hover {
  cursor: pointer;
  transition-duration: 0s;
}

.header-group__title {
  display: none;
}
@media (min-width: 1200px) {
  .header-group__title {
    color: white;
    padding-left: 60px;
    margin: 0;
    grid-area: title;
    display: block;
    -ms-grid-row-align: center;
  }
}

.header-group__task-bar {
  display: none;
}
@media (min-width: 1200px) {
  .header-group__task-bar {
    grid-area: social;
    display: flex;
    -ms-grid-column-align: end;
    -ms-grid-row-align: start;
    justify-self: end;
    align-self: baseline;
  }
}

.header-group__social-icons-mobile {
  grid-area: social;
  -ms-grid-row-align: center;
  -ms-grid-column-align: end;
  justify-self: flex-end;
}
.header-group__social-icons-mobile .social {
  margin-right: 20px;
}
@media (min-width: 1200px) {
  .header-group__social-icons-mobile {
    display: none;
  }
}

.header-group__social-icons-mobile--sponsor {
  display: flex;
}
@media (min-width: 1200px) {
  .header-group__social-icons-mobile--sponsor {
    display: none;
  }
}

.header-group__nav {
  grid-area: navigation;
  text-align: right;
  display: none;
}
@media only screen and (min-width: 1200px) {
  .header-group__nav {
    display: block;
    margin-right: -20px;
    /* autoprefixer: off */
    -ms-grid-row: 2;
    -ms-grid-column: 2;
    -ms-grid-row-align: end;
    align-self: end;
    /* autoprefixer: on */
  }
}

.header-group__hamburger {
  grid-area: hamburger;
  -ms-grid-row-align: center;
}

.header-group__hamburger--sponsor {
  margin: 0;
}

[class*="--sponsor"] .header-group {
  grid-template-areas: "logo social hamburger";
}
@media (min-width: 1200px) {
  [class*="--sponsor"] .header-group {
    grid-template-columns: 132px 1fr 500px;
    grid-template-rows: 1fr;
    grid-template-areas: "logo title social";
  }
  [class*="--sponsor"] .header-group .header-group__task-bar {
    grid-area: social;
    align-self: center;
    -ms-grid-row-align: center;
  }
}

@media (min-width: 1200px) {
  .site-header--sponsor .header-group__task-bar {
    -ms-grid-row-align: center;
  }
}

.header-group__user-bar {
  grid-area: logout;
  justify-self: end;
  -ms-grid-column-align: end;
  -ms-grid-row-align: center;
}
.header-group__user-bar .user-icon {
  max-width: 44px;
  max-height: 44px;
  margin: 3px 15px;
  border-radius: 50%;
  width: 44px;
  height: 44px;
  overflow: hidden;
  box-shadow: 0 7px 12px -1px rgba(30, 0, 40, 0.2);
}
.header-group__user-bar .user-icon:not([class*=bg-theme]) {
  background-color: #b7b7b7;
}
.header-group__user-bar .user-icon[style*=background-image] {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}
.header-group__user-bar .user-icon[style*='background-image: url("/");']:after, .header-group__user-bar .user-icon[style*="background-image: url('/');"]:after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-size: 80%;
  background-position: bottom -1px center;
  background-repeat: no-repeat;
  background-image: url("../images/base64/SVG/user-icon.svg");
}
@media (min-width: 1200px) {
  .header-group__user-bar {
    -ms-grid-row-align: center;
    /*
    &:before,
    &:after {
        content: '';
        display: block;
        width: 100%;
        background-color: $brand-blue;
        position: absolute;
        left: -100%;
        top: 0;
        bottom: 0;
    }

    &:before {
        left: 100%;
    }
    */
  }
}

/**
 * LAYOUT
 * Header Message
 * A group of elements located within the site header.
 */
.header-message {
  background: #c928b2;
  color: white;
  padding: 1em;
  opacity: 0;
  display: none;
  transition: all 0.2s linear;
}
.header-message.is-active {
  opacity: 1;
  display: block;
  transition: all 0.2s linear;
}

.header-message__p {
  max-width: 1200px;
  margin: auto;
}
.header-message__p a {
  color: white;
  font-weight: normal;
}

.header-message-close {
  float: right;
  font-size: 1.4em;
  cursor: pointer;
}
.header-message-close:after {
  content: "\e907";
}

/**
 * LAYOUT
 * Hero Ad Bozes
 *
 */
.hero-ad-boxes {
  padding: 20px;
}
@media only screen and (min-width: 769px) {
  .hero-ad-boxes {
    position: absolute;
    width: 100%;
    padding: 0 20px;
    z-index: 100;
    bottom: 65px;
    left: 0;
  }
}

.hero-ad-boxes__item {
  display: flex;
  align-items: center;
  max-width: 1000px;
  width: 500%;
  padding: 20px 0;
  background-color: rgba(255, 255, 255, 0.975);
  opacity: 0;
  position: absolute;
  pointer-events: none;
  bottom: 100px;
  z-index: -100;
  border-radius: 18px;
  transition: opacity 200ms;
  transition-timing-function: ease-in-out;
  left: 50%;
  transform: translateX(-50%);
}
.hero-ad-boxes__item.is-active {
  opacity: 1;
  z-index: 1;
  pointer-events: all;
}

.hero-ad-boxes-btns {
  text-align: center;
}

.hero-ad-boxes-btns__btn {
  display: flex;
  margin: 0 0 10px;
}
@media only screen and (min-width: 769px) {
  .hero-ad-boxes-btns__btn {
    display: inline-flex;
    margin: 0 5px 10px 5px;
  }
}

.hero-ad-boxes-btns__btn--find-a-cat {
  display: flex;
  margin: 0 0 10px;
}
@media only screen and (min-width: 769px) {
  .hero-ad-boxes-btns__btn--find-a-cat {
    display: inline-flex;
    margin: 0 5px 10px 5px;
  }
}
@media only screen and (max-width: 769px) {
  .hero-ad-boxes-btns__btn--find-a-cat {
    width: 100%;
  }
}
@media only screen and (max-width: 600px) {
  .hero-ad-boxes-btns__btn--find-a-cat {
    width: 100%;
  }
}

/**
 * LAYOUT
 * LINE CLAMP
 */
[data-line-clamp="3"] {
  display: block;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  position: relative;
  overflow: hidden;
  text-overflow: ellipsis;
  padding: 0 !important;
  -webkit-line-clamp: 3;
  max-height: 75px;
}
[data-line-clamp="3"]:before {
  content: "...";
  position: absolute;
  bottom: 0;
  right: 0;
  width: 42px;
  letter-spacing: 1px;
  padding-left: 4px;
  /*background-color: white;*/
}
[data-line-clamp="3"]:after {
  content: "";
  background: white;
  position: relative;
  height: 100%;
  width: 100%;
  z-index: 1;
  display: inline-block;
}
@supports (-webkit-line-clamp: 1) {
  [data-line-clamp="3"]:before, [data-line-clamp="3"]:after {
    display: none;
  }
}

[data-line-clamp="4"] {
  display: block;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  position: relative;
  overflow: hidden;
  text-overflow: ellipsis;
  padding: 0 !important;
  -webkit-line-clamp: 4;
  max-height: 100px;
}
[data-line-clamp="4"]:before {
  content: "...";
  position: absolute;
  bottom: 0;
  right: 0;
  width: 42px;
  letter-spacing: 1px;
  padding-left: 4px;
  /*background-color: white;*/
}
[data-line-clamp="4"]:after {
  content: "";
  background: white;
  position: relative;
  height: 100%;
  width: 100%;
  z-index: 1;
  display: inline-block;
}
@supports (-webkit-line-clamp: 1) {
  [data-line-clamp="4"]:before, [data-line-clamp="4"]:after {
    display: none;
  }
}

[data-line-clamp="6"] {
  display: block;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  position: relative;
  overflow: hidden;
  text-overflow: ellipsis;
  padding: 0 !important;
  -webkit-line-clamp: 6;
  max-height: 150px;
}
[data-line-clamp="6"]:before {
  content: "...";
  position: absolute;
  bottom: 0;
  right: 0;
  width: 42px;
  letter-spacing: 1px;
  padding-left: 4px;
  /*background-color: white;*/
}
[data-line-clamp="6"]:after {
  content: "";
  background: white;
  position: relative;
  height: 100%;
  width: 100%;
  z-index: 1;
  display: inline-block;
}
@supports (-webkit-line-clamp: 1) {
  [data-line-clamp="6"]:before, [data-line-clamp="6"]:after {
    display: none;
  }
}

[data-line-clamp="2"] {
  display: block;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  position: relative;
  overflow: hidden;
  text-overflow: ellipsis;
  padding: 0 !important;
  -webkit-line-clamp: 2;
  max-height: 50px;
}
[data-line-clamp="2"]:before {
  content: "...";
  position: absolute;
  bottom: 0;
  right: 0;
  width: 42px;
  letter-spacing: 1px;
  padding-left: 4px;
  /*background-color: white;*/
}
[data-line-clamp="2"]:after {
  content: "";
  background: white;
  position: relative;
  height: 100%;
  width: 100%;
  z-index: 1;
  display: inline-block;
}
@supports (-webkit-line-clamp: 1) {
  [data-line-clamp="2"]:before, [data-line-clamp="2"]:after {
    display: none;
  }
}

[data-line-clamp="8"] {
  display: block;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  position: relative;
  overflow: hidden;
  text-overflow: ellipsis;
  padding: 0 !important;
  -webkit-line-clamp: 8;
  max-height: 200px;
}
[data-line-clamp="8"]:before {
  content: "...";
  position: absolute;
  bottom: 0;
  right: 0;
  width: 42px;
  letter-spacing: 1px;
  padding-left: 4px;
  /*background-color: white;*/
}
[data-line-clamp="8"]:after {
  content: "";
  background: white;
  position: relative;
  height: 100%;
  width: 100%;
  z-index: 1;
  display: inline-block;
}
@supports (-webkit-line-clamp: 1) {
  [data-line-clamp="8"]:before, [data-line-clamp="8"]:after {
    display: none;
  }
}

[data-line-clamp="7"] {
  display: block;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  position: relative;
  overflow: hidden;
  text-overflow: ellipsis;
  padding: 0 !important;
  -webkit-line-clamp: 7;
  max-height: 175px;
}
[data-line-clamp="7"]:before {
  content: "...";
  position: absolute;
  bottom: 0;
  right: 0;
  width: 42px;
  letter-spacing: 1px;
  padding-left: 4px;
  /*background-color: white;*/
}
[data-line-clamp="7"]:after {
  content: "";
  background: white;
  position: relative;
  height: 100%;
  width: 100%;
  z-index: 1;
  display: inline-block;
}
@supports (-webkit-line-clamp: 1) {
  [data-line-clamp="7"]:before, [data-line-clamp="7"]:after {
    display: none;
  }
}

/**
 * LAYOUT
 * PENS
 *
 */
#map {
  height: 480px;
}

@media (min-width: 1024px) {
  .map {
    display: flex;
    width: 100%;
  }
}

.map__view {
  width: 100%;
  flex: 1;
}

.map__result {
  padding: 30px 20px;
  color: white;
  background-color: #7A1B72;
  width: 100%;
}
@media (min-width: 1024px) {
  .map__result {
    width: 330px;
  }
}

#map {
  min-height: 100%;
}

/**
 * LAYOUT
 * Sidebar
 * This is the mobile overflow solution, we stick the main navigation in here
 */
.sidebar {
  position: fixed;
  width: 100%;
  height: 100%;
  padding: 0 10px;
  top: 0;
  right: 0;
  transform: translateX(100%);
  transition-duration: 300ms;
  left: auto;
  z-index: 999999;
  background-color: #7A1B72;
  background-position: left;
}
.sidebar.is-active {
  transform: translateX(0%);
}
@media only screen and (min-width: 769px) {
  .sidebar {
    max-width: 400px;
  }
}
@media only screen and (min-width: 1200px) {
  .sidebar.is-active {
    transform: translateX(100%);
  }
}

.sidebar__nav {
  height: 100%;
}

.sidebar__close {
  margin: 20px 20px 10px;
  cursor: pointer;
}
.sidebar__close:after {
  content: "\e907";
  color: #7A1B72;
}

.sidebar__back {
  position: relative;
}
.sidebar__back:before {
  content: "\e905";
  position: absolute;
  bottom: 100%;
  left: 25px;
  top: -60px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  width: 40px;
  height: 40px;
  color: #7A1B72;
  background-color: #7A1B72;
  font-size: 44px;
  border-radius: 50%;
  margin-bottom: 10px;
  transition: all 300ms;
  transition-timing-function: ease-in-out;
}

/**
 * LAYOUT
 * SITE
 * The highest lever block component - Intended to be full width page sections that can work with the Umbraco Grids.
 */
.site-header {
  min-width: 100%;
  position: sticky;
  top: 0;
  z-index: 200;
  background-color: white;
}
.site-header .header-group_wrapper {
  box-shadow: 0px -15px 25px 0px #1E0028;
  overflow: hidden;
}
.site-header .header-group_wrapper .header-group_buttons-logo-social {
  transition: padding 0.5s;
  background: white;
  display: flex;
  width: 100%;
  justify-content: space-between;
  padding: 10px;
  align-items: center;
}
@media (min-width: 1200px) {
  .site-header .header-group_wrapper .header-group_buttons-logo-social {
    padding: 35px 35px 10px;
    align-items: flex-start;
  }
  .site-header .header-group_wrapper .header-group_buttons-logo-social .mobile-search {
    display: none;
  }
}
.site-header .header-group_wrapper .header-group_buttons-logo-social .header-group_buttons {
  display: none;
}
@media (min-width: 1200px) {
  .site-header .header-group_wrapper .header-group_buttons-logo-social .header-group_buttons {
    display: inline-block;
  }
}
.site-header .header-group_wrapper .header-group_buttons-logo-social .header-group__social-search {
  display: none;
}
@media (min-width: 1200px) {
  .site-header .header-group_wrapper .header-group_buttons-logo-social .header-group__social-search {
    display: flex;
  }
}
.site-header .header-group_wrapper.shrink-header .header-group_buttons-logo-social {
  padding: 12.5px;
}
.site-header .header-group_wrapper.shrink-header .header-group__logo img {
  width: 50%;
}
.site-header .header-group_wrapper.shrink-header .header-group__nav .main-nav > li a {
  padding: 10px 24px;
}
.site-header .header-group_wrapper.shrink-header .header-group__nav {
  margin-top: 5px;
}
.site-header[class*="--sponsor"] {
  /*
  &:after{
      content: '';
      display: block;
      width: 100%;
      border-bottom: $brand-blue 50px solid;
      position: relative;
      z-index: -3;
  }
  */
}
.site-header[class*="--sponsor"] + header, .site-header[class*="--sponsor"] + section {
  margin-top: 177px;
}

.site-banner {
  justify-content: center;
  width: 100%;
  min-height: 70px;
  position: relative;
  /*margin-bottom: 36px;*/
  overflow: hidden;
}
@media only screen and (min-width: 769px) {
  .site-banner {
    min-height: 150px;
  }
}
.site-banner .site-banner__image {
  position: relative;
  width: 100%;
  display: block;
  min-height: 150px;
  height: 150px;
}
.site-banner .site-banner__image:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  background: #000000;
  opacity: 0.25;
}
@media only screen and (min-width: 769px) {
  .site-banner .site-banner__image {
    min-height: 150px;
    height: 150px;
  }
  .site-banner .site-banner__image.site-banner__image--has-image {
    min-height: 396px;
    height: 396px;
  }
}
.site-banner .site-banner__image .container {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  height: fit-content;
  z-index: 1;
}
.site-banner {
  /*&:not([class*="bg-"]) {
      background-color: $brand-black;
  }*/
  /*
  &:not([class*="--tall"]){
      h1,
      h2{
          margin-top:100px;
      }
  }
  */
}
.site-banner:empty {
  height: 222px;
}
.site-banner > .btn {
  position: absolute;
  top: auto;
  bottom: -60px;
  right: 5%;
  transform: rotate(4.5deg);
  border-top-left-radius: 15px;
  border-top-right-radius: 15px;
  cursor: pointer;
  transition-duration: 1000ms;
}
.site-banner > .btn.is-helping {
  bottom: 20px;
}
@media only screen and (min-width: 769px) {
  .site-banner > .btn.is-helping {
    bottom: 22px;
  }
}
@media only screen and (min-width: 1500px) {
  .site-banner > .btn.is-helping {
    bottom: 26px;
  }
}

.site-banner.site-banner--no-image .site-banner__image:after {
  opacity: 0 !important;
}

.site-banner--small {
  height: 200px;
}

.site-banner--height-alpha .site-banner__heading {
  padding: 1.5em 0;
}
.site-banner--height-alpha .media__caption--top .site-banner__heading {
  padding: 1em 0 2em;
}
.site-banner--height-alpha .media__caption--bottom .site-banner__heading {
  padding: 2em 0 1em;
}

.site-banner--height-beta {
  height: 100vw;
  max-height: 220px;
}
@media (min-width: 1500px) {
  .site-banner--height-beta {
    max-height: 380px;
  }
}

.site-banner--medium .site-banner__heading {
  padding: 2.5em 0;
}
.site-banner--medium .media__caption--top .site-banner__heading {
  padding: 1.5em 0 3.5em;
}
.site-banner--medium .media__caption--bottom .site-banner__heading {
  padding: 4em 0 1em;
}

.site-banner--tall .site-banner__heading {
  padding: 4em 0;
}
.site-banner--tall .media__caption--top .site-banner__heading {
  padding: 2em 0 6em;
}
.site-banner--tall .media__caption--bottom .site-banner__heading {
  padding: 7em 0 1em;
}

.site-banner__heading {
  text-align: center;
  color: white;
}
.site-banner__heading.text-brand-black {
  color: #7A1B72;
}
.site-banner__heading.text-grey {
  color: #7A1B72;
}

/*.site-banner__heading--vet-badge {
    display: none;

    @media (min-width: 768px) {*/
/*display: flex;*/
/*display: none;
        justify-content: center;
        align-items: center;
    }
}*/
@media (min-width: 1040px) {
  .site-banner__heading--simons-cat {
    display: flex;
    justify-content: center;
    align-items: center;
  }
}

/*.site-banner--arc {
    position: relative;

    &:after {
        content: '';
        display: block;
        position: absolute;
        bottom: 0;
        width: 100%;
        left: 0;
        right: 0;
        margin: 0;
        padding-top: 3%;
        background-image: url(../images/arc.png);
        background-size: cover;
        background-repeat: no-repeat;
        background-position: top center;
        background-size: 110%;
        pointer-events: none;
    }
}
.site-banner--arc--yellow {
    margin-bottom: 0px;
    &:after {
        background-image: url(../images/yellowarc.png);
    }
}*/
.site-body {
  background-color: white;
}

.site-strip > h1,
.site-strip > h2,
.site-strip > h3,
.site-strip > h4,
.site-strip > h5,
.site-strip > h6 {
  text-align: center;
}
.site-strip .site-strip__title {
  text-align: center;
}
.site-strip .site-strip__header {
  text-align: center;
  font-family: "metrify-regular", Arial, Helvetica, sans-serif;
  margin-bottom: 40px;
  max-width: 950px;
  margin-left: auto;
  margin-right: auto;
}
.site-strip .site-strip__header h2 {
  margin-bottom: 40px;
}
.site-strip .site-strip__header h2 span {
  color: #7A1B72;
}
.site-strip .site-strip__ribbon {
  display: flex;
  align-items: center;
  justify-content: center;
}
.site-strip .site-strip__ribbon h3 {
  white-space: nowrap;
}

.ribbon {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
[class*=bg-] .ribbon {
  padding-top: 24px;
  padding-bottom: 24px;
}
@media only screen and (min-width: 769px) {
  [class*=bg-] .ribbon {
    padding-top: 35px;
    padding-bottom: 35px;
  }
}
.ribbon > h3 {
  white-space: nowrap;
}
.ribbon > * {
  width: auto;
}

.site-footer {
  background-color: #7A1B72;
  position: relative;
}

.footer .grid__item {
  max-width: 550px;
}

.site-banner__image--has-image {
  background-position: center;
  background-size: cover;
}

/**
 * LAYOUT
 * Sidebar
 * This is the mobile overflow solution, we stick the main navigation in here
 */
.subnav {
  display: flex;
  position: absolute;
  z-index: -1;
  width: 100%;
  min-width: 100%;
  justify-content: center;
  z-index: 1;
  top: 100%;
  padding: 17.5px 25px;
  left: 0;
  background-color: rgba(255, 255, 255, 0.95);
  opacity: 0;
  pointer-events: none;
  transition: opacity 200ms ease-in-out;
  box-shadow: 0px 4px 10px 0px rgba(0, 0, 0, 0.33);
  border-top: 1px solid #8e8093;
  transition-duration: 0s;
}
.subnav:hover {
  opacity: 1;
  pointer-events: all;
  transition-duration: 0s;
}
.subnav:hover ul {
  opacity: 1;
}
.subnav {
  transition-duration: 0s;
}
li:hover .subnav {
  opacity: 1;
  pointer-events: all;
}
li:hover .subnav ul {
  opacity: 1;
}
.subnav {
  /*&:before,
  &:after {
      content: '';
      width: 100%;
      height: 100%;
      top: 0;
      position: absolute;
      display: block;
      background-color: $subnav-background-color;
      box-shadow: 0 6px 0 0 rgba($dark-glass, 0.1);
  }

  &:before {
      left: 100%;
  }

  &:after {
      right: 100%;
  }*/
}
.subnav ul {
  text-align: left;
  opacity: 0;
  transition: opacity 300ms;
  transition-timing-function: ease-in-out;
  padding-right: 35px;
  width: auto;
  overflow-y: auto;
}
.subnav ul::-webkit-scrollbar {
  width: 4px;
  background-color: #fff;
}
.subnav ul::-webkit-scrollbar-thumb {
  background-color: #1E0028;
}
.subnav ul + ul {
  padding-right: 35px;
  padding-left: 35px;
  border-left: 2px solid #8e8093;
}
.subnav ul li.sub-nav-li {
  transition-duration: 0s;
}
.subnav ul li.sub-nav-li a:hover {
  border-radius: 6px;
  color: #7A1B72 !important;
  background: #fae6fa !important;
  transition-duration: 0s;
}
.subnav li {
  width: 100%;
  color: #7A1B72;
}
.subnav li h4, .subnav li span {
  font-size: 20px;
  margin: 0px;
  font-family: "metrify-bold", Arial, Helvetica, sans-serif;
  line-height: 20px;
}
.subnav li a {
  font-size: 20px;
  margin: 0px;
  font-family: "metrify-bold", Arial, Helvetica, sans-serif;
  line-height: 20px;
  padding: 10px 24px;
}
.subnav li {
  transition-duration: 0s;
}
.subnav li:hover {
  color: #7A1B72;
  transition-duration: 0s;
}

/**
 * LAYOUT
 * TABLES
 * These styles are used to manage the RTE generated tables
 */
table[style],
tr[style],
td[style] {
  height: auto !important;
  /*    border: none !important;*/
  width: auto !important;
}

table[style] {
  width: 100% !important;
  table-layout: auto !important;
  padding-bottom: 10px;
  margin-bottom: 20px;
}
table[style] .table-header {
  background-color: #7A1B72 !important;
  border-color: #7A1B72 !important;
  font-family: "metrify-regular", Arial, Helvetica, sans-serif;
  font-size: 16px;
  color: #ffffff;
}
table[style] .table-header td[style] {
  padding-top: 15px;
  padding-bottom: 15px;
}
@media only screen and (min-width: 769px) {
  table[style] .table-header td[style] {
    text-align: left;
    border-left-color: #7A1B72 !important;
  }
  table[style] .table-header td[style]:first-child {
    border-left-color: #7A1B72 !important;
  }
}
table[style] tr[style] {
  font-size: 15px;
  width: 50% !important;
  display: inline-flex;
  flex-direction: column;
  margin-bottom: 20px;
  border-width: 0 !important;
  border-right-width: 2px !important;
  border-style: solid !important;
  border-color: #7A1B72 !important;
  vertical-align: top;
}
@media only screen and (max-width: 768px) {
  table[style] tr[style] {
    border-top-width: 2px !important;
  }
  table[style] tr[style] td[style] {
    border: 1px solid #7A1B72;
    padding-top: 15px;
    padding-bottom: 15px;
  }
}
table[style] tr[style]:nth-child(odd) {
  background-color: #b7b7b7;
}
table[style] td[style] {
  padding: 10px;
  border: 1px solid #7A1B72;
}

@media only screen and (min-width: 769px) {
  .table-header:not(:nth-of-type(1)) {
    display: none !important;
  }
}
/**
 * LAYOUT
 * Flow
 * The flow selector applies css columns to inline content.
 */
@media only screen and (min-width: 769px) {
  .flow-col {
    column-count: 2;
  }
  .flow-col--gap-60 {
    column-gap: 60px;
  }
  .flow-col--gap-55 {
    column-gap: 55px;
  }
  .flow-col--gap-30 {
    column-gap: 30px;
  }
}

/**
 * LAYOUT
 * PENS
 * Layout for the Pens Section found on the Sponsorship portal and the individual cat sponsors page.
 */
.pens__tab-btn {
  display: none;
}
@media (min-width: 1024px) {
  .pens__tab-btn {
    display: inline-flex;
  }
}

.pens__title {
  margin: 0 0 1em;
}
@media (min-width: 1024px) {
  .pens__title {
    margin: 0 auto 0 0;
  }
}

.pens__tabs {
  text-align: center;
}
@media (min-width: 1024px) {
  .pens__tabs {
    text-align: left;
    display: flex;
    align-items: center;
  }
}

.pens__tabs-select {
  max-width: 460px;
  margin: 0 0 2em;
}
@media (min-width: 1024px) {
  .pens__tabs-select {
    display: none;
  }
}

.pens__item {
  position: relative;
  max-width: 460px;
  margin: 0 auto;
}
@media (min-width: 1024px) {
  .pens__item {
    max-width: none;
  }
}
.pens__item {
  /*
  &:before{
      content: '';
      position: absolute;
      width: 200%;
      height: 100%;
      display: block;
      top: 0;
      left: 100%;
      background-color: #fff;
  }
  */
}

.pens__previous-guests.previous-guests [data-tab] {
  display: none;
}
.pens__previous-guests.previous-guests [data-tab].is-active {
  display: block;
}

.pens__btns {
  transition: background-color 200ms 200ms ease-in-out;
}

.pens__btns-btn {
  width: 100%;
  height: 100%;
}

/**
 * LAYOUT
 * USER BLOCK
 * Layout for the User profile section found in the sponsorship area
 */
.user-block {
  margin: 72px 0 0 0;
}
@media (min-width: 1024px) {
  .user-block {
    margin: 115px 0 0 0;
    display: flex;
  }
}

.user-block__profile {
  position: relative;
  text-align: center;
  padding: 20px;
}
@media (min-width: 1024px) {
  .user-block__profile {
    width: 420px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    text-align: left;
  }
}
.user-block__profile {
  /*
      > div:not([class]){
          padding-left: 30px;

          // Some margin resets to override the H tag within a
          // HEADER tag spacingglobal rule.
          h2{
              margin-bottom: $line-height / 4;
              margin-top: 0;
          }
          h3{
              margin-bottom: 0;
              white-space: nowrap;
          }

          // Span the button.
          .btn{ width: 100%; }
      }
  */
}
.user-block__profile:before, .user-block__profile:after {
  content: "";
  width: 500%;
  height: 100%;
  position: absolute;
  background-color: #7A1B72;
  top: 0;
  right: 100%;
}
.user-block__profile:before {
  right: auto;
  left: 100%;
}
@media (min-width: 1024px) {
  .user-block__profile:before {
    display: none;
  }
}
.user-block__profile .user-icon {
  border-radius: 50%;
  width: 150px;
  height: 150px;
  overflow: hidden;
  box-shadow: 0 7px 12px -1px rgba(30, 0, 40, 0.2);
}
.user-block__profile .user-icon:not([class*=bg-theme]) {
  background-color: #b7b7b7;
}
.user-block__profile .user-icon[style*=background-image] {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}
.user-block__profile .user-icon[style*='background-image: url("/");']:after, .user-block__profile .user-icon[style*="background-image: url('/');"]:after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-size: 80%;
  background-position: bottom -1px center;
  background-repeat: no-repeat;
  background-image: url("../images/base64/SVG/user-icon.svg");
}
.user-block__profile .user-icon {
  margin: 0 auto 20px;
}
@media (min-width: 1024px) {
  .user-block__profile .user-icon {
    margin: 0;
  }
}

.user-block__summary {
  padding: 20px 0;
}
@media (min-width: 1024px) {
  .user-block__summary {
    flex: 1;
    padding: 20px 0 20px 20px;
  }
}
.user-block__summary p {
  margin-bottom: 15px;
}

.content-with-sidemenu .side-menu-link {
  border-bottom: 1px solid #c928b2;
}
.content-with-sidemenu .side-menu-link.active {
  font-weight: bold;
  text-decoration: none;
}
.content-with-sidemenu .side-menu-link:last-child {
  border-bottom: none;
}
.content-with-sidemenu .side-menu-link.selected {
  font-weight: bold;
}
.content-with-sidemenu .side-menu {
  position: sticky;
  top: 180px;
  background-color: #fae6fa;
}
.content-with-sidemenu .content [id^=id-] {
  scroll-margin-top: 100px;
}
.content-with-sidemenu .side-menu-sublink::before {
  content: ">";
  font-size: 18px;
  margin-right: 8px;
  transition: content 0.3s ease;
}
.content-with-sidemenu .side-menu-sublink.selected {
  font-weight: bold;
}
.content-with-sidemenu .side-menu-sublink.selected::before {
  content: "|";
  color: #7A1B72;
}
.content-with-sidemenu .menu-toggle {
  position: absolute;
  top: 25px;
  right: 20px;
  width: 30px;
  height: 30px;
  cursor: pointer;
  z-index: 1000;
}
.content-with-sidemenu .menu-toggle span {
  position: absolute;
  width: 100%;
  height: 3px;
  background-color: white;
  border-radius: 2px;
  transition: 0.3s ease;
  left: 0;
}
.content-with-sidemenu .menu-toggle span:nth-child(1) {
  top: 6px;
}
.content-with-sidemenu .menu-toggle span:nth-child(2) {
  top: 13px;
}
.content-with-sidemenu .menu-toggle span:nth-child(3) {
  top: 20px;
}
.content-with-sidemenu .menu-toggle.open span:nth-child(1) {
  top: 13px;
  transform: rotate(45deg);
}
.content-with-sidemenu .menu-toggle.open span:nth-child(2) {
  opacity: 0;
}
.content-with-sidemenu .menu-toggle.open span:nth-child(3) {
  top: 13px;
  transform: rotate(-45deg);
}
.content-with-sidemenu #sideMenuItems {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.4s ease, opacity 0.4s ease;
  opacity: 0;
}
.content-with-sidemenu #sideMenuItems.show {
  max-height: 1000px;
  opacity: 1;
}
.content-with-sidemenu .side-menu-header {
  min-height: 80px;
}
@media (min-width: 768px) {
  .content-with-sidemenu .menu-toggle {
    display: none;
  }
  .content-with-sidemenu #sideMenuItems {
    max-height: none !important;
    opacity: 1 !important;
    overflow: visible !important;
  }
  .content-with-sidemenu .content [id^=id-] {
    scroll-margin-top: 200px;
  }
}
@media (max-width: 400px) {
  .content-with-sidemenu .side-menu-header-text {
    display: none;
  }
}

.main-site-header {
  min-width: 100%;
  position: sticky;
  top: 0;
  background-color: white;
  padding-left: 15px;
  padding-right: 15px;
  z-index: 250;
}
.main-site-header .header-logo {
  display: inline-block;
  width: auto;
}
.main-site-header .header-logo img {
  padding-top: 50px;
  padding-bottom: 10px;
  padding-left: 15px;
}
.main-site-header .header-buttons {
  list-style: none;
  position: absolute;
  bottom: 10px;
  right: 15px;
  z-index: 999;
}
.main-site-header .header-buttons li {
  display: inline;
  margin-right: 20px;
}
.main-site-header .header-buttons li:last-child {
  margin-right: 0;
}
.main-site-header .header-links-and-search {
  display: flex;
  align-items: center;
  list-style: none;
  position: absolute;
  top: 10px;
  right: 15px;
}
.main-site-header .header-links-and-search li {
  display: inline;
  margin-right: 20px;
}
.main-site-header .header-links-and-search li:last-child {
  margin-right: 0;
}
.main-site-header .header-links-and-search a {
  text-decoration: none;
  font-size: 20px;
  padding: 5px;
}
.main-site-header .header-links-and-search a:link, .main-site-header .header-links-and-search a:visited, .main-site-header .header-links-and-search a:active {
  color: #7A1B72;
}
.main-site-header .header-links-and-search a:hover {
  color: #c928b2;
}
.main-site-header .header-links-and-search .header-search {
  display: inline-flex;
  align-items: center;
  border: 1px solid #2f0f3d;
  border-radius: 8px;
  padding: 4px 8px;
  transition: width 0.3s ease;
  width: 140px;
  overflow: hidden;
}
.main-site-header .header-links-and-search .header-search:focus-within {
  width: 240px;
}
.main-site-header .header-links-and-search .header-search .btn--search::before {
  font-size: 30px !important;
}
.main-site-header .header-links-and-search .header-search .header-search-input {
  border: none;
  outline: none;
  font-size: 20px;
  width: 100%;
}
.main-site-header .header-nav {
  list-style: none;
  position: absolute;
  bottom: 17px;
  left: 0;
  width: 100%;
  display: flex;
  justify-content: center;
}
.main-site-header .header-nav li {
  display: inline;
  margin-right: 40px;
}
.main-site-header .header-nav li:hover > .header-mega-menu, .main-site-header .header-nav li.open > .header-mega-menu {
  max-height: none;
  opacity: 1;
  visibility: visible;
  padding: 30px;
}
.main-site-header .header-nav li:hover > a.header-nav-link, .main-site-header .header-nav li.open > a.header-nav-link {
  background-color: #7A1B72;
  color: white;
}
.main-site-header .header-nav a.header-nav-link {
  text-decoration: none;
  font-size: 20px;
  font-weight: initial;
  padding: 20px 15px;
  border-radius: 0;
  border-top-right-radius: 12px;
  border-top-left-radius: 12px;
}
.main-site-header .header-nav a.header-nav-link:link, .main-site-header .header-nav a.header-nav-link:visited, .main-site-header .header-nav a.header-nav-link:active {
  color: #7A1B72;
}
.main-site-header .header-nav a.header-nav-link:hover {
  color: white;
  background-color: #7A1B72;
}
.main-site-header .header-nav .header-mega-menu {
  max-height: 0;
  opacity: 0;
  visibility: hidden;
  transition: max-height 0.4s ease, opacity 0.4s ease;
  position: absolute;
  top: calc(100% + 16px);
  left: 0;
  right: 0;
  background-color: #f9f9f9;
  padding: 0 30px;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
  z-index: 999;
  border-top: 5px solid #7A1B72;
}
.main-site-header .header-nav .header-sub-nav,
.main-site-header .header-nav .header-sub-sub-nav {
  max-height: 400px;
  overflow-y: auto;
  position: relative;
  margin-right: 10px;
  scrollbar-width: thin; /* Firefox */
  scrollbar-color: rgba(122, 27, 114, 0.25) transparent;
}
.main-site-header .header-nav .header-sub-nav::-webkit-scrollbar-thumb,
.main-site-header .header-nav .header-sub-sub-nav::-webkit-scrollbar-thumb {
  background: rgba(122, 27, 114, 0.25);
  border-radius: 5px;
}
.main-site-header .header-nav .header-sub-nav::-webkit-scrollbar,
.main-site-header .header-nav .header-sub-sub-nav::-webkit-scrollbar {
  width: 5px;
}
.main-site-header .header-nav .header-sub-nav:after,
.main-site-header .header-nav .header-sub-sub-nav:after {
  content: "";
  position: sticky;
  bottom: 0;
  height: 120px;
  display: block;
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0), rgb(249, 249, 249));
  pointer-events: none;
}
.main-site-header .header-nav .header-sub-nav li,
.main-site-header .header-nav .header-sub-sub-nav li {
  display: list-item;
  margin-right: initial;
}
.main-site-header .header-nav .header-sub-nav a,
.main-site-header .header-nav .header-sub-sub-nav a {
  padding: 8px 20px;
  font-size: 20px;
  font-weight: normal;
  text-decoration: none;
  color: black;
}
.main-site-header .header-nav .header-sub-nav a:hover,
.main-site-header .header-nav .header-sub-sub-nav a:hover {
  text-decoration: underline;
  color: #c928b2;
}
.main-site-header .header-nav .infoBox {
  padding-right: 50px;
}
.main-site-header .header-nav .infoBox p {
  margin-bottom: 1em;
  line-height: 1.5;
}
.main-site-header .header-nav .infoBox a.infoBoxLink {
  padding: initial;
  font-size: 20px;
  font-weight: normal;
  text-decoration: none;
  color: black;
}
.main-site-header .header-nav .infoBox a.infoBoxLink:hover {
  text-decoration: underline;
  color: #c928b2;
}
.main-site-header .header-nav .grid__item {
  border-right: 1px solid #c928b2;
}
.main-site-header .header-nav .grid__item:last-child {
  border-right: none;
}
.main-site-header .header-toggle {
  display: none;
}

@media (max-width: 1430px) {
  .main-site-header .header-logo img {
    padding-top: 20px;
    padding-bottom: 70px;
    padding-left: 18px;
    height: 170px;
  }
  .main-site-header .header-nav {
    display: initial;
  }
  .main-site-header .header-nav a.header-nav-link {
    font-size: 16px;
  }
  .main-site-header .header-nav li {
    margin-right: 5px;
  }
  .main-site-header .header-nav li.header-nav-item:first-child {
    margin-left: 15px;
  }
  .main-site-header .header-buttons li {
    margin-right: 10px;
  }
  .main-site-header .header-buttons li .btn {
    font-size: 15px;
    padding: 10px 12px;
  }
  .main-site-header .header-links-and-search .header-search {
    padding: 3px 7px;
  }
  .main-site-header .header-links-and-search .header-search-input {
    font-size: 16px;
  }
  .main-site-header .header-links-and-search li {
    margin-right: 10px;
  }
  .main-site-header .header-links-and-search li a {
    font-size: 16px;
  }
}
@media (max-width: 840px) {
  .main-site-header .header-collapse {
    display: none;
  }
  .main-site-header .header-logo {
    display: block;
    width: auto;
    text-align: center;
  }
  .main-site-header .header-logo a {
    display: inline-block;
  }
  .main-site-header .header-logo img {
    height: 80px;
    padding-top: 15px;
    padding-bottom: 10px;
    padding-left: 0;
    display: inline-block;
  }
  .main-site-header .header-toggle {
    display: block;
    position: absolute;
    top: 25px;
    right: 15px;
    font-size: 35px;
    background: none;
    border: none;
    cursor: pointer;
    z-index: 300;
  }
}
.main-site-mobile-nav {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: white;
  z-index: 999;
  overflow-y: auto;
  padding: 15px;
}
.main-site-mobile-nav.active {
  display: block;
}
.main-site-mobile-nav .mobile-header {
  position: relative;
}
.main-site-mobile-nav .mobile-header .mobile-header-logo {
  text-align: center;
}
.main-site-mobile-nav .mobile-header .mobile-header-logo a {
  display: inline-block;
}
.main-site-mobile-nav .mobile-header .mobile-header-logo img {
  height: 55px;
  display: inline-block;
}
.main-site-mobile-nav .mobile-header .close-mobile-nav {
  display: block;
  position: absolute;
  top: 5px;
  right: 0;
  font-size: 3rem;
  background: none;
  border: none;
  cursor: pointer;
  z-index: 300;
}
.main-site-mobile-nav .header-links-and-search {
  flex-direction: column;
  align-items: flex-start;
}
.main-site-mobile-nav .header-links-and-search li {
  display: block;
  width: 100%;
  text-align: left;
  margin: initial !important;
}
.main-site-mobile-nav .header-links-and-search li a {
  border-bottom: 1px solid #c928b2;
  display: block;
  padding: 5px;
  text-decoration: none;
  font-size: 15px;
}
.main-site-mobile-nav .header-links-and-search li a:link, .main-site-mobile-nav .header-links-and-search li a:visited, .main-site-mobile-nav .header-links-and-search li a:active {
  color: #7A1B72;
}
.main-site-mobile-nav .header-links-and-search li a:hover {
  color: #c928b2;
}
.main-site-mobile-nav .header-links-and-search .header-search {
  display: inline-flex;
  align-items: center;
  border: 1px solid #2f0f3d;
  border-radius: 8px;
  padding: 4px 8px;
  transition: width 0.3s ease;
  overflow: hidden;
  width: 100% !important;
  max-width: 100%;
  box-sizing: border-box;
  margin-top: 15px;
}
.main-site-mobile-nav .header-links-and-search .header-search:focus-within {
  width: 240px;
}
.main-site-mobile-nav .header-links-and-search .header-search .btn--search::before {
  font-size: 30px !important;
}
.main-site-mobile-nav .header-links-and-search .header-search .header-search-input {
  width: 100%;
  font-size: 18px;
  border: none;
  outline: none;
}
.main-site-mobile-nav .header-buttons {
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  position: static;
  width: 100%;
}
.main-site-mobile-nav .header-buttons li {
  display: block;
  width: 100%;
  margin-top: 15px;
}
.main-site-mobile-nav .header-buttons li .btn {
  display: block;
  width: 100%;
  padding: 12px;
  text-align: center;
  box-sizing: border-box;
}
.main-site-mobile-nav .mobile-top-nav .mobile-top-nav-wrapper {
  position: relative;
}
.main-site-mobile-nav .mobile-top-nav a {
  border-bottom: 1px solid #c928b2;
}
.main-site-mobile-nav .mobile-sub-nav a,
.main-site-mobile-nav .mobile-sub-sub-nav a {
  border-bottom: none;
}
.main-site-mobile-nav .mobile-sub-nav.mobile-sub-nav,
.main-site-mobile-nav .mobile-sub-sub-nav.mobile-sub-nav {
  display: none;
  padding-left: 10px;
}
.main-site-mobile-nav .mobile-sub-nav.mobile-sub-nav .infoBox,
.main-site-mobile-nav .mobile-sub-sub-nav.mobile-sub-nav .infoBox {
  background-color: #f0f0f0;
  border-radius: 10px;
  padding: 15px;
}
.main-site-mobile-nav .mobile-sub-nav.mobile-sub-nav .infoBox h4,
.main-site-mobile-nav .mobile-sub-sub-nav.mobile-sub-nav .infoBox h4 {
  color: #2f0f3d !important;
  font-size: 1.5rem;
}
.main-site-mobile-nav .mobile-sub-nav.mobile-sub-nav .infoBox p,
.main-site-mobile-nav .mobile-sub-sub-nav.mobile-sub-nav .infoBox p {
  margin-top: 1em;
  margin-bottom: 1em;
  line-height: 1.5;
}
.main-site-mobile-nav .mobile-sub-nav.mobile-sub-nav .infoBox .infoBoxLink,
.main-site-mobile-nav .mobile-sub-sub-nav.mobile-sub-nav .infoBox .infoBoxLink {
  padding: initial;
}
.main-site-mobile-nav .mobile-sub-nav.mobile-sub-sub-nav,
.main-site-mobile-nav .mobile-sub-sub-nav.mobile-sub-sub-nav {
  display: none;
  padding-left: 20px;
}
.main-site-mobile-nav .mobile-top-nav a,
.main-site-mobile-nav .mobile-sub-nav a,
.main-site-mobile-nav .mobile-sub-sub-nav a {
  font-weight: initial;
  text-decoration: none;
  font-size: 20px;
  display: block;
  padding: 15px;
}

.submenu-toggle,
.sub-submenu-toggle {
  position: absolute;
  right: 0;
  top: 0;
  background: none;
  border: none;
  font-size: 1.5rem;
  color: #7A1B72;
  cursor: pointer;
  padding: 15px;
  line-height: 1;
  z-index: 1;
}

.events-detail-hero {
  background-repeat: no-repeat;
  background-size: cover;
  background-position-x: 50%;
  background-position-y: 50%;
}
.events-detail-hero .row {
  display: flex;
  align-items: center;
}
.events-detail-hero .body-copy p {
  margin-bottom: 10px;
}
.events-detail-hero .event-type {
  display: inline-block;
  background-color: #fae6fa;
  color: #1E0028;
  padding: 12px 18px;
  margin-top: 32px;
  margin-bottom: 32px;
  font-size: 19px;
}
.events-detail-hero .event-details-target {
  display: inline-block;
  background-color: #fae6fa;
  color: #1E0028;
  padding: 32px;
  margin-top: 25px;
  margin-bottom: 32px;
  font-size: 18px;
}
.events-detail-hero .event-details-target .target .text {
  font-size: 23px;
}
.events-detail-hero .event-details-target .target .value {
  font-size: 23px;
  color: #7A1B72;
}
@media (max-width: 1022px) {
  .events-detail-hero .event-details-target {
    display: block;
  }
  .events-detail-hero .details {
    text-align: center;
  }
  .events-detail-hero .target {
    margin-top: 30px;
    margin-bottom: 30px;
  }
  .events-detail-hero .signup .btn {
    display: block;
  }
}

.blog-post {
  margin: 0 auto;
  max-width: 400px;
  display: block;
}

@media (min-width: 768px) {
  .blog-post--horizontal {
    max-width: none;
    display: flex;
    align-items: center;
    justify-content: center;
  }
}
@media (min-width: 768px) {
  .blog-post--horizontal .blog-post__image-container,
  .blog-post--horizontal .blog-post__content-container {
    width: 50%;
  }
}
.blog-post--horizontal .blog-post__image-container {
  padding: 0 0 1em 0;
}
@media (min-width: 768px) {
  .blog-post--horizontal .blog-post__image-container {
    padding: 0 1em 0 0;
  }
}
@media (min-width: 1024px) {
  .blog-post--horizontal .blog-post__image-container {
    padding: 0 3em 0 0;
  }
}

.blog-post__image {
  width: 100%;
}

.blog-post__tag-container {
  display: flex;
  flex-wrap: wrap;
  margin: 0 0 20px;
  color: #ACACAC;
  font-size: 14px;
}

.blog-post__tag:after {
  content: "|";
  margin: 0 5px;
}
.blog-post__tag:last-of-type:after {
  display: none;
}
.blog-post__tag .tag-link {
  color: #c928b2;
  text-decoration: underline;
}
.blog-post__tag .tag-link:hover {
  color: #7A1B72;
}

.blog-post__date {
  margin: 0 0 6px;
  color: #c928b2 !important;
  font-family: "cats-headline", Arial, Helvetica, sans-serif;
}

.blog-post__content-container--dark-theme {
  background-color: #5E5E5E;
  color: #fff;
}

.read-more__container {
  max-height: 200px;
  overflow: hidden;
  position: relative;
  margin: 0 0 1em;
}

.read-more--fade-up .read-more__container:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(transparent, #fff);
}

.read-more--open .read-more__container {
  max-height: none;
}
.read-more--open .read-more__container:before {
  background: none;
}
.read-more--open .read-more__button:before {
  content: "Read Less";
}

.read-more__button {
  text-align: center;
  cursor: pointer;
}
.read-more__button:before {
  content: "Read More";
}

.vet-badge {
  display: none;
}
@media (min-width: 768px) {
  .vet-badge {
    display: block;
    margin: auto;
    max-width: 70px;
    margin-top: 16px;
  }
}

.vet-badge--mobile {
  position: absolute;
  top: 218px;
  right: 0;
  margin: 1em;
  max-width: 70px;
  display: block;
  z-index: 10;
  margin-bottom: 0px;
}
@media (min-width: 600px) {
  .vet-badge--mobile {
    left: 50%;
    transform: translateX(-50%);
  }
}
@media (min-width: 768px) {
  .vet-badge--mobile {
    display: none;
  }
}

@media (min-width: 768px) {
  .vet-badge--desktop {
    display: block;
  }
}

.donation-read-more-container {
  position: relative;
  max-height: 150px;
  overflow: hidden;
  margin: 0 0 2em;
}
@media (min-width: 1080px) {
  .donation-read-more-container {
    max-height: none;
    margin: 0;
  }
}
.donation-read-more-container:before {
  content: "";
  background: linear-gradient(rgba(0, 0, 0, 0), #fff);
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}
@media (min-width: 1080px) {
  .donation-read-more-container:before {
    display: none;
  }
}
.donation-read-more-container.is-active {
  max-height: none;
  margin: 0;
}
.donation-read-more-container.is-active:before {
  display: none;
}

.donation-read-more-button {
  text-align: center;
}
@media (min-width: 1080px) {
  .donation-read-more-button {
    display: none;
  }
}
.donation-read-more-button:before {
  content: "Read More";
}
.donation-read-more-button.is-active:before {
  content: "Read Less";
}

.donation-banner-theme .site-banner__heading {
  opacity: 1;
}
.donation-banner-theme .site-banner--height-alpha {
  max-height: 120px;
}
@media (min-width: 1080px) {
  .donation-banner-theme .site-banner--height-alpha {
    max-height: 240px;
  }
}

/**
 * COMPONENTS
 * Google Customer Search
 */
.gsc-input table {
  position: relative;
  margin-bottom: 0;
}
.gsc-input table[style] .table-header {
  background: #fff !important;
  border: none !important;
}

.gsc-search-button {
  background-color: #7A1B72 !important;
  border-color: #7A1B72 !important;
}

.gsc-results {
  width: 100% !important;
}

.gsc-result {
  padding: 1.5vw !important;
}
.gsc-result:nth-child(odd) {
  background-color: #fae6fa !important;
}
.gsc-result .gs-title {
  color: #7A1B72 !important;
  padding-bottom: 0.5em !important;
  font-size: 20px !important;
  font-weight: bold;
}
.gsc-result .gs-title b {
  color: #7A1B72 !important;
  text-decoration: underline;
  font-size: 20px !important;
}
.gsc-result .gsc-url-top {
  padding-bottom: 0.5em;
}

.gs-webResult div.gs-visibleUrl {
  color: #c928b2 !important;
  font-size: 18px !important;
}

.gsc-results .gsc-cursor-box .gsc-cursor-page {
  border-color: #1E0028 !important;
  background-color: #FFFFFF !important;
  color: #1E0028 !important;
}

.gsc-results .gsc-cursor-box .gsc-cursor-current-page {
  border-color: #c928b2 !important;
  background-color: #FFFFFF !important;
  color: #c928b2 !important;
}

.gcsc-find-more-on-google {
  color: #c928b2 !important;
}

.gcsc-find-more-on-google-magnifier {
  fill: #c928b2 !important;
}

.gsc-adBlock {
  display: none !important;
}

.gs-snippet {
  background: transparent !important;
  border: none !important;
}

@font-face {
  font-family: "icomoon";
  src: url("fonts/icomoon.eot");
  src: url("fonts/icomoon.eot#iefix") format("embedded-opentype"), url("fonts/icomoon.woff2") format("woff2"), url("fonts/icomoon.ttf") format("truetype"), url("fonts/icomoon.woff") format("woff"), url("../fonts/icomoon.svg") format("svg");
  font-weight: normal;
  font-style: normal;
}
.home-icon:before {
  font-family: "icomoon" !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: inherit;
  display: inline-block;
  content: "\e92b";
  font-size: 18px;
}

.breadcrumb-list {
  display: flex;
  align-content: center;
}

.breadcrumb-list li {
  display: flex;
  align-content: center;
  line-height: 18px;
}

.breadcrumb-list a {
  text-decoration: none;
  font-size: 14px;
  font-weight: 400;
  line-height: 18px;
}

.divider {
  font-size: 16px;
  font-weight: 400;
  color: #c928b2;
  padding: 0px 5px 5px 5px;
  line-height: 18px;
}

.exit-site-button {
  position: fixed;
  left: 0;
  bottom: 10%;
  width: 100px;
  font-size: 18px;
  padding: 12px;
  font-family: "metrify-bold", Arial, Helvetica, sans-serif;
  z-index: 9999;
  border-radius: 0px 6px 6px 0px;
  cursor: pointer;
  text-decoration: none;
  transition: color 0.1s, background-color 0.1s;
  background-color: #c928b2;
  color: white;
  text-align: center;
}
@media only screen and (min-width: 600px) {
  .exit-site-button {
    width: 200px;
    font-size: 32px;
    left: 100%;
    transform: translateX(-200px);
    bottom: 0%;
    padding: 20px 24px;
    border-radius: 6px 0px 0px 0px;
  }
}
.exit-site-button:hover {
  color: #7A1B72;
  background: #fae6fa;
}

.cta-banner .body-text {
  width: 90%;
}
.cta-banner img {
  width: auto;
  height: 100%;
  max-height: 250px;
}
@media only screen and (max-width: 770px) {
  .cta-banner .body-text {
    width: 100%;
  }
}

.content-with-sidemenu .cta-banner-wrapper {
  position: relative;
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
}
.content-with-sidemenu .cta-banner .body-text {
  width: auto;
}
.content-with-sidemenu .cta-banner img {
  width: auto;
  height: auto;
}
@media only screen and (max-width: 770px) {
  .content-with-sidemenu .cta-banner .body-text {
    width: auto;
  }
}

.hero-banners .hero-banner-tall {
  height: 34.636vw; /* 665px relative */
}
.hero-banners .hero-banner-medium {
  height: 26.04165vw; /* 500px relative */
}
.hero-banners .hero-banner-narrow {
  height: 20.83334vw; /* 400px relative */
}
.hero-banners .hero-banner-image {
  background-repeat: no-repeat;
  background-size: cover;
  background-position-x: 50%;
  background-position-y: 50%;
}
.hero-banners .hero-banner-small-content {
  z-index: 2;
}
.hero-banners .hero-banner-wrapper {
  position: relative;
  display: none;
  float: left;
  width: 100%;
  margin-right: -100%;
  backface-visibility: hidden;
  transition: transform 0.6s ease-in-out;
}
.hero-banners .hero-banner-wrapper.active {
  display: inline-block;
}

.inf-overvw .inf-overvw-itm a {
  font-weight: bold;
  text-decoration: underline;
}
.inf-overvw .inf-overvw-itm a:hover {
  opacity: 0.5;
}
.inf-overvw .inf-overvw-itm .inf-overvw-svg {
  max-width: 125px;
}

.grid-media-block-video .play-btn {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 1;
  transform: translate(-50%, -50%);
  width: 5.5em;
  height: 5.5em;
  background-color: #7A1B72;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.grid-media-block-video .play-btn .play-ic {
  width: 0;
  height: 0;
  border-left: 2em solid white;
  border-top: 1.25em solid transparent;
  border-bottom: 1.25em solid transparent;
  margin-left: 0.6em;
}
.grid-media-block-video:hover .play-btn {
  opacity: 0.66;
}

.featured-promo-link .featured-promo:hover {
  box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.4);
}

.featured-promo {
  min-height: 100%;
  margin: auto;
  max-width: 100% !important;
}
@media only screen and (max-width: 770px) {
  .featured-promo {
    max-width: 460px !important;
  }
}
.featured-promo figure {
  position: relative;
}
.featured-promo figure figcaption {
  position: absolute;
  top: 20px;
  left: 0%;
  padding: 10px 20px;
  font-size: 20px;
}

.sponsor-pen-block .spb-location {
  font-weight: bold;
  font-size: 1.25em;
}
.sponsor-pen-block .spb-location .fa-location-dot {
  font-size: 32px;
}
.sponsor-pen-block .spb-age, .sponsor-pen-block .spb-gender {
  font-weight: bold;
  font-size: 1.25em;
}
.sponsor-pen-block .spb-link {
  text-decoration: underline;
}

#cats-report {
  overflow-x: hidden;
}
@media screen and (max-width: 425px) {
  #cats-report .ts-0 {
    font-size: calc(32px + 38 * (100vw - 320px) / 704);
  }
}
@media screen and (max-width: 768px) {
  #cats-report .mg-vt-lg {
    margin-top: 0px;
    margin-bottom: 0px;
  }
}

.over-size-fix {
  max-width: 1920px;
  margin: auto;
  position: relative;
}

/* SET MIN HEIGHT */
@media (min-width: 1024px) {
  .min-ht-lg-400 {
    min-height: 400px;
  }
}
@media all and (-ms-high-contrast: none) and (min-width: 1024px), (-ms-high-contrast: active) and (min-width: 1024px) {
  .min-ht-lg-400 {
    height: 100%;
    overflow: none;
  }
}

@media (min-width: 1024px) {
  .min-ht-lg-500 {
    min-height: 500px;
  }
}
@media all and (-ms-high-contrast: none) and (min-width: 1024px), (-ms-high-contrast: active) and (min-width: 1024px) {
  .min-ht-lg-500 {
    height: 100%;
    overflow: none;
  }
}

@media (min-width: 1024px) {
  .min-ht-lg-550 {
    min-height: 550px;
  }
}
@media all and (-ms-high-contrast: none) and (min-width: 1024px), (-ms-high-contrast: active) and (min-width: 1024px) {
  .min-ht-lg-550 {
    height: 100%;
    overflow: none;
  }
}

@media (min-width: 1024px) {
  .min-ht-lg-600 {
    min-height: 600px;
  }
}
@media all and (-ms-high-contrast: none) and (min-width: 1024px), (-ms-high-contrast: active) and (min-width: 1024px) {
  .min-ht-lg-600 {
    height: 100%;
    overflow: none;
  }
}

@media (min-width: 1024px) {
  .min-ht-lg-650 {
    min-height: 650px;
  }
}
@media all and (-ms-high-contrast: none) and (min-width: 1024px), (-ms-high-contrast: active) and (min-width: 1024px) {
  .min-ht-lg-650 {
    height: 100%;
    overflow: none;
  }
}

@media (min-width: 1024px) {
  .min-ht-lg-700 {
    min-height: 700px;
  }
}
@media all and (-ms-high-contrast: none) and (min-width: 1024px), (-ms-high-contrast: active) and (min-width: 1024px) {
  .min-ht-lg-700 {
    height: 100%;
    overflow: none;
  }
}

/* GENERIC TO SLIDE(S) */
@media (max-width: 1024px) {
  .cats-report-slide .ts-2 {
    font-size: 24px;
  }
}

@media all and (-ms-high-contrast: none) and (min-width: 1024px), (-ms-high-contrast: active) and (min-width: 1024px) {
  .bg-silver-fox .ts-2 {
    padding-top: 16px;
  }
}

.cats-report-slide {
  position: relative;
}

/*.cats-report-slide--container{
    position:relative;
    max-width:1920px;
    margin:0 auto;
}*/
/*.cats-report-slide p {
    @media(min-width: $large) {
        font-size: 20px;
        line-height: 36px;
    }
}*/
.cats-report-slide img {
  margin: auto;
}
@media (min-width: 1024px) {
  .cats-report-slide img {
    margin: initial;
  }
}

.cats-report-slide .crs__anim video {
  max-width: 100%;
}

.cats-report-slide__section {
  margin-bottom: 1em;
}
@media all and (-ms-high-contrast: none) and (min-width: 1024px), (-ms-high-contrast: active) and (min-width: 1024px) {
  .cats-report-slide__section {
    padding-bottom: 1em;
  }
}

.cats-report-slide__section .ts-2 {
  font-family: "metrify-light", Arial, Helvetica, sans-serif;
}

.cats-report-slide__section ul {
  /*     list-style-type: disc;
  list-style-position: inside; */
  overflow: auto;
  margin-bottom: 1em;
}

.horizontal-list {
  list-style-type: disc;
  list-style-position: inside;
}

.horizontal-list li {
  margin-bottom: 1em;
}
@media (min-width: 769px) {
  .horizontal-list li {
    float: left;
    width: 50%;
  }
}

.js-high-light span {
  transition: 0.3s background-color;
  background-color: transparent;
}

.js-high-light.is-active span {
  background-color: rgb(252, 195, 42);
}

.js-high-light.is-active span {
  padding: 0.1em 0;
  padding-right: 1px;
  margin-right: -1px;
}

.js-high-light.is-active span:first-of-type {
  padding: 0.1em 0 0.1em 0.2em;
}

.js-high-light.is-active span:last-of-type {
  padding: 0.1em 0.2em 0.1em 0;
}

.crs__questions {
  padding-left: 48px;
  text-shadow: none;
  font-size: 12px;
  line-height: 25px;
  cursor: pointer;
}
@media (min-width: 640px) {
  .crs__questions {
    font-size: 14px;
  }
}

.crs__questions a {
  color: #7A1B72;
  font-weight: bold;
  text-decoration: underline;
  transition-duration: 0s;
}
.crs__questions a:hover {
  opacity: 0.75;
  transition-duration: 0s;
}

@media (min-width: 769px) {
  .js-did-you-know-show {
    opacity: 0;
    transition: 0.3s opacity;
  }
}

.js-did-you-know-show.showing {
  opacity: 1;
}

.crs__question {
  background: #7A1B72;
  width: 32px;
  height: 32px;
  position: relative;
  display: block;
  float: left;
  margin: 4px 16px 0px -48px;
}
.crs__question:after {
  content: "?";
  color: #ffffff;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  font-size: 24px;
  text-decoration: none;
}

/* HEADING SLIDE */
.site-banner--cats-report {
  min-height: 640px;
  background: #1b1b1b;
}
@media (min-width: 1024px) {
  .site-banner--cats-report {
    min-height: 900px;
  }
}
.site-banner--cats-report .row {
  min-height: 640px;
}
@media (min-width: 1024px) {
  .site-banner--cats-report .row {
    min-height: 900px;
  }
}
.site-banner--cats-report .site-banner__heading {
  color: #19181a;
  text-align: left;
  text-shadow: none;
}
@media all and (-ms-high-contrast: none) and (min-width: 1024px), (-ms-high-contrast: active) and (min-width: 1024px) {
  .site-banner--cats-report .col {
    flex-basis: auto;
  }
}
.site-banner--cats-report .container {
  min-height: 100vh;
}
@media (min-width: 1024px) {
  .site-banner--cats-report .container {
    min-height: 100vh;
    z-index: 2;
  }
}

.site-banner--cats-report .over-size-fix {
  max-width: 100%;
  background-size: cover;
  background-repeat: no-repeat;
  background-position-x: 85%;
  background-position-y: 0%;
}
@media (min-width: 768px) {
  .site-banner--cats-report .over-size-fix {
    /*background-size: 165%;*/
    background-position-y: 100%;
  }
}
.site-banner--cats-report .over-size-fix {
  /*    @media(min-width:1024px) {
          background-size: cover;
      }*/
}

.site-banner--cats-report .col-lg-8 {
  align-self: flex-end;
}
@media (min-width: 768px) {
  .site-banner--cats-report .col-lg-8 {
    align-self: flex-start;
  }
}

.site-banner--cats-report h1 {
  color: #ffffff;
  text-shadow: 0px 2px 3px rgba(0, 0, 0, 0.5);
  margin-top: 100px;
  font-family: "metrify-regular", Arial, Helvetica, sans-serif;
  line-height: 1.2;
  font-size: 50px;
  margin-bottom: 0.25em;
}
@media (min-width: 768px) {
  .site-banner--cats-report h1 {
    margin-top: 100px;
    font-size: 5vw;
  }
}
@media (min-width: 1024px) {
  .site-banner--cats-report h1 {
    margin-top: 200px;
    font-size: 5vw;
  }
}

.site-banner--cats-report .btn, .bg-morning-tangerine .btn {
  position: initial;
  top: auto;
  bottom: auto;
  right: auto;
  transform: none;
  border-top-left-radius: 0px;
  border-top-right-radius: 0px;
  cursor: pointer;
  font-family: "metrify-light", Arial, Helvetica, sans-serif;
  width: 100%;
  margin-bottom: 1em;
}
@media (min-width: 768px) {
  .site-banner--cats-report .btn, .bg-morning-tangerine .btn {
    width: auto;
  }
}

.site-banner--cats-report .arrow-down-icon {
  font-size: 4em;
  color: #ffffff;
  text-shadow: 0px 2px 3px rgba(0, 0, 0, 0.5);
  cursor: pointer;
  transition-duration: 0s;
}
.site-banner--cats-report .arrow-down-icon:hover {
  color: #fcc32a;
  transition-duration: 0s;
}
.site-banner--cats-report .arrow-down-icon:before {
  content: "";
  content: "\e931";
}

@media (min-width: 1024px) {
  .crs__rhs-intro_wrapper {
    position: absolute;
    top: 50%;
    right: 2%;
    max-width: 39%;
    transform: translateY(-50%);
  }
}

@media (min-width: 1024px) {
  .crs__rhs-lg-4_wrapper {
    position: absolute;
    max-width: 31%;
    left: 66.66%;
    bottom: -10%;
  }
}

@media (min-width: 1024px) {
  .crs__rhs-lg-6_wrapper {
    position: absolute;
    max-width: 35%;
    top: 50%;
    left: 55%;
    transform: translate(0%, -50%);
  }
}

@media (min-width: 1024px) {
  .crs__lhs-lg-6_wrapper {
    position: absolute;
    max-width: 35%;
    top: 50%;
    left: 10%;
    transform: translate(0%, -50%);
  }
}

.cats-in-the-night-fix {
  top: auto;
  bottom: 0%;
  transform: translate(0%, 0%);
}

@media (min-width: 1024px) {
  .crs__lhs-lg-4_wrapper {
    position: absolute;
    max-width: 23.33%;
    left: 10%;
    bottom: -20%;
  }
}

/* STATS SLIDE */
.cats-report__stats {
  text-shadow: 2px 2px 2px rgba(0, 0, 0, 0.2);
}
.cats-report__stats ul {
  list-style-type: none;
}
.cats-report__stats li {
  padding-left: 0 !important;
  float: none;
  width: auto;
}
.cats-report__stats li:before {
  display: none !important;
}

.cats-report__stats img {
  padding: 2em;
}
@media (min-width: 1024px) {
  .cats-report__stats img {
    padding: 0em;
  }
}

.cats-report__stats .larger-text {
  font-family: "barmeno-medium";
}
@media (min-width: 1024px) {
  .cats-report__stats .larger-text {
    line-height: 1.4;
    font-size: 30px;
  }
}

.cats-report__stats li {
  margin-bottom: 1em;
  /*    @media(min-width:1024px) {
      font-size: 20px;
  }*/
}

/* QUOTE SLIDE */
.js-cats-report-quotes-slick {
  padding-bottom: 1.5em;
  margin: 0;
}

.cats-report-slide__quote-block {
  padding: 3em 0em 1em;
}

.cats-report-slide__quote-block p {
  padding: 0em 16px;
  line-height: 1.4;
  font-family: "barmeno-roman", Arial, Helvetica, sans-serif;
}
@media (min-width: 1024px) {
  .cats-report-slide__quote-block p {
    padding: 0;
  }
}

.cats-report-slide__quote-block p.cats-report-slide__quote {
  position: relative;
  z-index: 10;
}
@media (min-width: 1024px) {
  .cats-report-slide__quote-block p.cats-report-slide__quote {
    padding-left: 36px;
    font-size: 24px;
  }
}

.cats-report-slide__quote:after {
  content: " ";
  display: inline-block;
  transform: rotate(180deg) translate(-3px, -8px);
  height: 32px;
  width: 32px;
  z-index: 1;
  background-image: url("../images/svg/report-quote-v2.svg");
  /*    @media(min-width:1024px) {
          left: 0px;
      }*/
  /*        content: '\2018 \2018';
      color: #d7cfc1;
      font-size: 6em;
      opacity: 0.7;
      margin-top: -20px;
      margin-left: -50px;
      line-height: 1;
      position: absolute;
      font-family: "barmeno-regular";
      z-index: -1;
      letter-spacing: -8px;

      @media(min-width:1024px) {
          font-size: 5em;
          margin-top: -20px;
          margin-left: -56px;
          letter-spacing: -10px;
      }*/
}

.cats-report-slide__quote:before {
  content: " ";
  position: absolute;
  top: 0px;
  left: -16px;
  width: 32px;
  height: 32px;
  z-index: 1;
  background-image: url("../images/svg/report-quote-v2.svg");
}
@media (min-width: 1024px) {
  .cats-report-slide__quote:before {
    left: 0px;
  }
}
.cats-report-slide__quote:before {
  /*        content: '\2018 \2018';
      color: #d7cfc1;
      font-size: 6em;
      opacity: 0.7;
      margin-top: -20px;
      margin-left: -50px;
      line-height: 1;
      position: absolute;
      font-family: "barmeno-regular";
      z-index: -1;
      letter-spacing: -8px;

      @media(min-width:1024px) {
          font-size: 5em;
          margin-top: -20px;
          margin-left: -56px;
          letter-spacing: -10px;
      }*/
}

.cats-report-slide__info-block {
  padding: 3em 1em 2em 1em;
}
@media (min-width: 1024px) {
  .cats-report-slide__info-block {
    padding: 3em 1em 2em 0em;
  }
}

.cats-report-slide__info-block h4 {
  font-family: "metrify-regular", Arial, Helvetica, sans-serif;
  font-size: 24px;
}
@media (min-width: 1024px) {
  .cats-report-slide__info-block h4 {
    font-size: 30px;
  }
}

.cats-report-slide__info-block p {
  font-family: "metrify-light", Arial, Helvetica, sans-serif;
}
@media (min-width: 1024px) {
  .cats-report-slide__info-block p {
    font-size: 30px;
    line-height: 36px;
  }
}

#inpage-floating-menu {
  display: none;
}
@media (min-width: 1500px) {
  #inpage-floating-menu {
    display: block;
    background-color: rgba(30, 0, 40, 0.85);
    position: fixed;
    left: 0%;
    top: 55%;
    transform: translateY(-50%);
    z-index: 1000;
  }
}
@media (min-width: 1500px) and (-ms-high-contrast: none) and (min-width: 1500px), (min-width: 1500px) and (-ms-high-contrast: active) and (min-width: 1500px) {
  #inpage-floating-menu {
    display: none;
  }
}

.menu-link-spacer {
  display: block;
  position: relative;
  top: -150px;
  visibility: hidden;
}

#inpage-floating-menu:hover a {
  margin-left: auto;
  transition-duration: 0s;
}

#inpage-floating-menu a {
  margin-left: -9999px;
  color: white;
  font-weight: normal;
  transition-duration: 0s;
}

#inpage-floating-menu ul li:before {
  background-color: white;
}

#inpage-floating-menu ul li ul {
  margin-left: -30px;
}

#inpage-floating-menu ul li ul li:before {
  content: "";
  width: 5px;
  height: 5px;
  border-radius: 50%;
  top: 15px;
  left: 10px;
}

#inpage-floating-menu li.is-active:before {
  background-color: #F7E313;
}

#inpage-floating-menu ul li ul a {
  font-size: 0.75em;
}

#inpage-floating-menu .is-active > a {
  color: #F7E313;
}

#inpage-floating-menu .download-ic {
  line-height: 1.75;
}
#inpage-floating-menu .download-ic .download-ic--icon {
  margin-left: 0;
  float: left;
  margin-right: 6px;
}
#inpage-floating-menu .download-ic .download-ic--icon img {
  width: 24px;
}

.cats-report-slide-animation-style-1 {
  transition: 300ms opacity, 100ms transform;
  transform: translateY(-10px);
  opacity: 0.5;
}
.cats-report-slide-animation-style-1.is-active {
  transform: translateY(0);
  opacity: 1;
}

.js-delay-me li {
  transition: 300ms opacity;
}

.js-opacity-0 {
  opacity: 0;
}

.cats-report-slide-sticky {
  position: relative;
  top: 0;
  width: 100%;
}

.cats-report-slide-sticky--past {
  position: absolute;
  top: auto;
  bottom: 0;
  transition-duration: 100ms;
}

.cats-report-slide-sticky--stuck {
  position: fixed;
  bottom: auto;
  top: 0;
}

.js-slide-image {
  display: none;
}

.js-slide-image--active {
  display: block;
}

@media (min-width: 1024px) {
  .js-slide-bullets li {
    opacity: 0;
    transition: 0.3s;
  }
}

.js-slide-bullets li.js-slide-bullets--active {
  opacity: 1;
}

.ownership-block li {
  position: relative;
  padding-left: 38px !important;
}

.ownership-block li span {
  width: 25px;
  display: inline-block;
  margin-right: 8px;
  position: absolute;
  top: 0px;
  left: 0px;
}

.ownership-block--clr-1 {
  background-color: #c73544;
}

.ownership-block--clr-2 {
  background-color: #cc5c5b;
}

.ownership-block--clr-3 {
  background-color: #da8f86;
}

.ownership-block--clr-4 {
  background-color: #e4b5ad;
}

.ownership-block--clr-5 {
  background-color: #f3dfd7;
}

.aac_caption {
  min-height: 34px;
  display: flex;
  align-items: center;
  margin-top: 0px !important;
  padding-right: 20px;
}

.findaCatInfo {
  display: flex;
  justify-content: space-between;
  margin-bottom: 2EM;
}

.findaCatInfo_image {
  width: 28%;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  height: 13vw;
  max-height: 250px;
  border-radius: 1em;
}

.findaCatInfo_image--placehold {
  height: auto;
  background-size: contain;
  border: 1px solid #f1f1f1;
}

.findaCatInfo_content {
  width: 68%;
  padding: 0 1em;
}

.findaCatInfo_info {
  padding: 1em;
  background-color: #19A09A;
  color: #fff;
  border-radius: 1em;
  line-height: 1.4;
  font-size: 1.25em;
}

.findACatInfo_icon {
  font-weight: bold;
  font-size: 24px;
  padding-right: 5px;
  cursor: pointer;
  transition-duration: 0s;
}

.findACatInfo_icon:hover {
  color: #fcc32a;
  transition-duration: 0s;
}

.findaCatInfo_heading {
  font-size: 1.5em;
  padding-bottom: 1.2rem;
}

@media (max-width: 1024px) {
  .findaCatInfo_heading {
    font-size: 1.2em;
  }
  .findaCatInfo_info {
    font-size: 1.2em;
  }
  .findaCatInfo {
    align-items: initial;
  }
  .findaCatInfo_image {
    height: auto;
  }
}
@media (max-width: 768px) {
  .findaCatInfo {
    align-items: initial;
  }
  .findaCatInfo_image {
    width: 40%;
  }
  .findaCatInfo_content {
    width: 60%;
  }
}
@media (max-width: 600px) {
  .findaCatInfo {
    display: block;
  }
  .findaCatInfo_content {
    width: auto;
    padding: 0;
  }
  .findaCatInfo_image {
    height: 250px;
    width: 100%;
    margin-bottom: 1em;
  }
}
#reactCats .media--link {
  background: #fae6fa;
  color: #7A1B72;
}
#reactCats .media--link:hover {
  background: #fae6fa !important;
}
#reactCats .media--link a {
  cursor: pointer !important;
}

#SponsorPortalBody {
  /* Layout */
}
#SponsorPortalBody .grid-double-third {
  width: 100%;
}
@media (min-width: 769px) {
  #SponsorPortalBody .grid-double-third {
    width: 66.66%;
  }
}
#SponsorPortalBody .grid-double-quarter {
  width: 100%;
}
@media (min-width: 769px) {
  #SponsorPortalBody .grid-double-quarter {
    width: 50%;
  }
}
#SponsorPortalBody {
  /* Header */
}
#SponsorPortalBody .header-group_wrapper .header-group_buttons-logo-social {
  justify-content: space-between;
  padding-bottom: 10px;
}
@media (min-width: 1200px) {
  #SponsorPortalBody .header-group_wrapper .header-group_buttons-logo-social {
    padding-bottom: 35px;
  }
}
#SponsorPortalBody .header-group_wrapper .header-group_buttons-logo-social .header-group_buttons {
  display: inline-block;
  min-width: 116px;
}
#SponsorPortalBody .header-group_wrapper .header-group_buttons-logo-social .header-group_buttons h1 {
  display: none;
}
@media (min-width: 600px) {
  #SponsorPortalBody .header-group_wrapper .header-group_buttons-logo-social .header-group_buttons h1 {
    display: inline-block;
  }
}
#SponsorPortalBody .header-group_wrapper .header-group__logo img {
  margin: initial;
}
@media (min-width: 1200px) {
  #SponsorPortalBody .header-group_wrapper .header-group__logo img {
    margin: auto;
  }
}
#SponsorPortalBody .header-group_wrapper .header-group__social-search {
  display: block;
  flex-wrap: wrap;
  justify-content: end;
  align-items: end;
}
#SponsorPortalBody .header-group_wrapper .header-group__social-search .social {
  display: none;
}
@media (min-width: 1200px) {
  #SponsorPortalBody .header-group_wrapper .header-group__social-search .social {
    display: block;
  }
}
#SponsorPortalBody .header-group_wrapper .header-group__social-search .login {
  margin-top: 8px;
  width: 100%;
  text-align: right;
}
#SponsorPortalBody .header-group_wrapper.shrink-header .header-group_buttons-logo-social {
  align-items: center;
  padding-bottom: 12.5px;
}
#SponsorPortalBody .header-group_wrapper.shrink-header .header-group__social-search {
  flex-wrap: nowrap;
}
#SponsorPortalBody .header-group_wrapper.shrink-header .header-group__social-search .social {
  display: none;
}
#SponsorPortalBody .header-group_wrapper.shrink-header .header-group__social-search .login {
  margin-top: 0px;
  margin-left: 10px;
  width: auto;
}
#SponsorPortalBody {
  /* Landing Page - Welcome Panel */
}
#SponsorPortalBody .sp-welcome-grid {
  display: flex;
  flex-wrap: wrap;
}
@media (min-width: 1024px) {
  #SponsorPortalBody .sp-welcome-grid {
    flex-wrap: nowrap;
  }
}
#SponsorPortalBody .sp-welcome-grid .sp-welcome-name {
  width: 100%;
  align-self: start;
  min-width: 30%;
}
@media (min-width: 1200px) {
  #SponsorPortalBody .sp-welcome-grid .sp-welcome-name {
    width: auto;
    align-self: start;
    padding: 0px 24px;
  }
}
#SponsorPortalBody .sp-welcome-grid .sp-welcome-text {
  /*width: 100%;*/
  padding-top: 16px;
}
@media (min-width: 1024px) {
  #SponsorPortalBody .sp-welcome-grid .sp-welcome-text {
    padding-top: 0px;
  }
}
#SponsorPortalBody .sp-welcome-data {
  display: flex;
  flex-wrap: wrap;
}
#SponsorPortalBody .sp-welcome-data .sp-welcome-data-item {
  display: flex;
  min-width: 100%;
  max-width: 100%;
  align-items: center;
  margin-bottom: 12.5px;
}
@media (min-width: 769px) {
  #SponsorPortalBody .sp-welcome-data .sp-welcome-data-item {
    min-width: 50%;
    max-width: 50%;
  }
}
@media (min-width: 1200px) {
  #SponsorPortalBody .sp-welcome-data .sp-welcome-data-item {
    min-width: 20%;
    max-width: 20%;
  }
}
#SponsorPortalBody .sp-welcome-data .sp-welcome-data-item a {
  text-align: center;
  background: #7A1B72;
  color: white;
  font-weight: bold;
  border-radius: 100%;
  line-height: 36px;
  margin: 0px 8px 0px 0px;
  min-width: 36px;
  min-height: 36px;
  font-size: 18px;
}
#SponsorPortalBody .sp-welcome-data .sp-welcome-data-item a:hover {
  background: #c928b2;
}
#SponsorPortalBody .sp-welcome-data .sp-welcome-data-item p {
  margin: 0px;
  font-size: 0.9em;
  line-height: 1.25em;
  margin-right: 8px;
  font-weight: bold;
}
#SponsorPortalBody {
  /* Landing Page - Your Pens */
}
#SponsorPortalBody .sp-your-pen-bg-image {
  min-height: 375px;
}
#SponsorPortalBody .sp-your-pen-bg-image div {
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  height: 100%;
  min-height: 300px;
}
#SponsorPortalBody .sp-your-pen-divider {
  border-left: 0px;
}
@media (min-width: 769px) {
  #SponsorPortalBody .sp-your-pen-divider {
    border-left: 1px solid #7A1B72;
  }
}
#SponsorPortalBody .sp-your-pen-stats {
  display: flex;
  justify-content: flex-start;
}
#SponsorPortalBody .sp-your-pen-stats div {
  display: flex;
  align-items: center;
}
#SponsorPortalBody .sp-your-pen-stats div span {
  color: #7A1B72;
  font-size: 26px;
  line-height: 26px;
}
#SponsorPortalBody .sp-your-pen-stats div strong {
  margin-right: 16px;
  margin-left: 8px;
  font-size: 24px;
}
#SponsorPortalBody {
  /* Landing Page - My Cat Community */
}
#SponsorPortalBody .sp-my-community-nav {
  display: flex;
  justify-content: center;
}
#SponsorPortalBody .sp-my-community-nav ul {
  display: flex;
}
#SponsorPortalBody .sp-my-community-nav ul li {
  padding: 0px 12px;
}
@media (min-width: 1200px) {
  #SponsorPortalBody .sp-my-community-nav ul li {
    padding: 0px 24px;
  }
}
#SponsorPortalBody .sp-my-community-nav ul li {
  text-align: center;
}
#SponsorPortalBody .sp-my-community-nav ul li:before {
  content: none;
}
#SponsorPortalBody .sp-my-community-nav ul li a {
  text-decoration: none !important;
  color: white;
  border-bottom: 2px solid white;
}
#SponsorPortalBody .sp-my-community-nav ul li a.active {
  /*color: $brand-pink;*/
  border-bottom: 2px solid #c928b2;
}
#SponsorPortalBody .sp-my-community-nav ul li a:hover {
  color: #c928b2;
  border-bottom: 2px solid #c928b2;
}
#SponsorPortalBody .sp-my-community-itm {
  display: block;
  background: white;
  cursor: pointer;
}
#SponsorPortalBody .sp-my-community-itm:hover {
  background: #fae6fa;
}
#SponsorPortalBody .sp-my-community-itm .sp-my-community-bg-image {
  min-height: 300px;
  background: white;
}
#SponsorPortalBody .sp-my-community-itm .sp-my-community-bg-image div {
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  height: 100%;
  min-height: 300px;
  border-bottom-left-radius: 0px;
  border-bottom-right-radius: 0px;
}
#SponsorPortalBody .sp-my-community-itm .sp-my-community-itm-text {
  padding: 12px;
}
#SponsorPortalBody {
  /* Homepage Carousel */
}
#SponsorPortalBody .sp-my-community-carousel .slick-prev {
  transform: translate(-50%, -50%);
}
@media (min-width: 1400px) {
  #SponsorPortalBody .sp-my-community-carousel .slick-prev {
    transform: translate(-150%, -50%);
  }
}
#SponsorPortalBody .sp-my-community-carousel .slick-next {
  right: -15px;
  transform: translate(50%, -50%);
}
@media (min-width: 1400px) {
  #SponsorPortalBody .sp-my-community-carousel .slick-next {
    transform: translate(150%, -50%);
  }
}
#SponsorPortalBody .sp-my-community-carousel .slick-dots {
  margin-top: 24px;
}
#SponsorPortalBody .sp-my-community-carousel .slick-dots li button:before {
  background-color: white;
}
#SponsorPortalBody .sp-my-community-carousel .slick-dots li.slick-active button:before {
  background-color: #fae6fa;
}
#SponsorPortalBody {
  /* Pen Page Crousel */
}
#SponsorPortalBody .sp-my-community-carousel-previous-guests .slick-prev {
  transform: translate(-50%, -50%);
}
@media (min-width: 1400px) {
  #SponsorPortalBody .sp-my-community-carousel-previous-guests .slick-prev {
    transform: translate(-150%, -50%);
  }
}
#SponsorPortalBody .sp-my-community-carousel-previous-guests .slick-next {
  right: -15px;
  transform: translate(50%, -50%);
}
@media (min-width: 1400px) {
  #SponsorPortalBody .sp-my-community-carousel-previous-guests .slick-next {
    transform: translate(150%, -50%);
  }
}
#SponsorPortalBody .sp-my-community-stats {
  padding-top: 4px;
  display: flex;
  justify-content: space-between;
}
#SponsorPortalBody .sp-my-community-stats div {
  display: flex;
  align-items: center;
  justify-content: flex-end;
}
#SponsorPortalBody .sp-my-community-stats div span {
  color: #c928b2;
  font-size: 26px;
  line-height: 26px;
}
#SponsorPortalBody .sp-my-community-stats div strong {
  margin-right: 0px;
  margin-left: 8px;
  font-size: 24px;
}
#SponsorPortalBody {
  /* Cat Community Pop Up*/
}
#SponsorPortalBody .sp-community-popup-wrapper {
  max-height: 90%;
  padding: 0px;
  /*max-width: 1200px;*/
  width: 100%;
  display: block;
  position: relative;
}
#SponsorPortalBody .sp-community-popup-wrapper .sp-community-popup {
  background: white;
}
@media (min-width: 769px) {
  #SponsorPortalBody .sp-community-popup-wrapper .sp-community-popup {
    height: 100%;
    overflow: hidden;
  }
}
#SponsorPortalBody .sp-community-popup-wrapper .sp-community-popup .sp-community-popup-bg-image {
  display: contents;
  min-height: 200px;
  background: white;
}
#SponsorPortalBody .sp-community-popup-wrapper .sp-community-popup .sp-community-popup-bg-image div {
  background-repeat: no-repeat;
  background-position: center center;
  /*background-size: contain;*/
  height: 100%;
  min-height: 300px;
  border-bottom-left-radius: 0px;
  border-bottom-right-radius: 0px;
}
#SponsorPortalBody .sp-community-popup-wrapper .sp-community-popup .comments-block-wrapper .comments-block-upper-section .sp-my-community-intro {
  border-bottom: 1px solid #7A1B72;
}
#SponsorPortalBody .sp-community-popup-wrapper .sp-community-popup .comments-block-wrapper .comments-block-upper-section .comment-block:nth-child(odd) {
  background: #fae6fa;
}
#SponsorPortalBody .sp-community-popup-wrapper .sp-community-popup .comments-block-wrapper .comments-block-lower-section {
  border-top: 1px solid #7A1B72;
}
#SponsorPortalBody .sp-community-popup-wrapper .sp-community-popup .comments-block-wrapper .comments-block-lower-section .comment-box {
  background-color: #fae6fa;
  color: #7A1B72;
  width: 100%;
  font-size: 14px;
  outline: 1px solid #dac0d8 !important;
}
#SponsorPortalBody .sp-community-popup-wrapper .sp-community-popup .comments-block-wrapper .comments-block-lower-section .comment-box:focus {
  outline: 1px solid #dac0d8 !important;
}
#SponsorPortalBody .sp-community-popup-wrapper .sp-community-popup .comments-block-wrapper .comments-block-lower-section .btn {
  font-size: 14px;
  padding: 6px 14px;
}
@media (min-width: 769px) {
  #SponsorPortalBody .sp-community-popup-wrapper .sp-community-popup .comments-block-wrapper {
    height: 100%;
    overflow-x: hidden;
    overflow-y: hidden;
    display: flex;
    flex-direction: column;
  }
  #SponsorPortalBody .sp-community-popup-wrapper .sp-community-popup .comments-block-wrapper .comments-block-upper-section {
    height: 75%;
    overflow-x: hidden;
    overflow-y: scroll;
  }
  #SponsorPortalBody .sp-community-popup-wrapper .sp-community-popup .comments-block-wrapper .comments-block-lower-section {
    height: 25%;
  }
}
#SponsorPortalBody .sp-community-popup-wrapper .sp-community-popup .comments-block-wrapper .sp-my-community-stats {
  margin-left: auto;
}
#SponsorPortalBody {
  /* Landing Page - Newsletter */
}
#SponsorPortalBody .sp-my-newsletter-bg-image {
  min-height: 300px;
}
#SponsorPortalBody .sp-my-newsletter-bg-image div {
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  height: 100%;
  min-height: 300px;
}
#SponsorPortalBody {
  /* Pen Page */
}
#SponsorPortalBody .sp-pen-page-video a {
  display: flex;
  align-items: center;
  cursor: pointer;
}
#SponsorPortalBody .sp-pen-page-video span {
  color: white;
  font-size: 20px;
  line-height: 20px;
}
#SponsorPortalBody .sp-pen-page-video strong {
  color: #c928b2;
  margin-right: 0px;
  margin-left: 8px;
}
#SponsorPortalBody .sp-pen-page-video:hover strong {
  text-decoration: underline;
}
#SponsorPortalBody .sp-pen-page-like a {
  display: flex;
  align-items: center;
  cursor: pointer;
}
#SponsorPortalBody .sp-pen-page-like a span {
  color: #c928b2;
  font-size: 26px;
  line-height: 26px;
}
#SponsorPortalBody .sp-pen-page-like a strong {
  color: #c928b2;
  margin-right: 8px;
  margin-left: 0px;
  font-size: 16px;
}
#SponsorPortalBody .sp-pen-page-like a:hover span {
  color: #7A1B72;
}
#SponsorPortalBody .sp-pen-page-like a:hover strong {
  text-decoration: underline;
}
#SponsorPortalBody .sp-pen-page-like.is-liked a span {
  color: #7A1B72;
}
#SponsorPortalBody .sp-pen-page-like.is-liked a strong {
  color: #c928b2;
  text-decoration: none !important;
}
#SponsorPortalBody .sp-pen-page-like.is-liked a:hover span {
  color: #7A1B72;
}
#SponsorPortalBody .sp-pen-page-like.is-liked a:hover strong {
  color: #c928b2;
  text-decoration: none !important;
}
@media only screen and (max-width: 1196px) {
  #SponsorPortalBody .js-your-pens-itm .grid__item .pen-btns {
    display: block !important;
  }
  #SponsorPortalBody .js-your-pens-itm .grid__item .pen-btns .webcams {
    justify-content: start !important;
    padding-top: 0.5rem !important;
  }
}
#SponsorPortalBody .sp-pen-description {
  padding-left: 200px;
  padding-right: 150px;
}
#SponsorPortalBody .sponsor-kids .btn--secondary {
  background-color: #1A006B !important;
}
#SponsorPortalBody .sponsor-kids .btn--secondary:hover {
  background-color: #7E3BE7 !important;
  color: #ffffff;
}
#SponsorPortalBody .sponsor-kids .js-your-pens-btn {
  background-color: #7E3BE7;
}
#SponsorPortalBody .sponsor-kids .sp-welcome-data-item a {
  background-color: #1A006B !important;
}
#SponsorPortalBody .sponsor-kids .text-white .cms-heading h2 {
  color: #ffffff !important;
}
#SponsorPortalBody .sponsor-kids .cms-heading h2 {
  color: #1A006B !important;
}
#SponsorPortalBody .sponsor-kids .sp-welcome-name span {
  color: #1A006B !important;
}
#SponsorPortalBody .sponsor-kids .sp-welcome-name h2 {
  color: #1A006B !important;
}
#SponsorPortalBody .sponsor-kids .js-your-pens-itm h3 {
  color: #1A006B !important;
}
#SponsorPortalBody .sponsor-kids .text-purple {
  color: #1A006B !important;
}
#SponsorPortalBody .sponsor-kids .sp-your-pen-stats i {
  color: #1A006B !important;
}
#SponsorPortalBody .sponsor-kids .bg-light-grey {
  background-color: #C6BFDA;
}
#SponsorPortalBody .sponsor-kids .sp-your-pen-divider .btn {
  background-color: #1A006B !important;
}
#SponsorPortalBody .sponsor-kids .sp-your-pen-divider .btn:hover {
  background-color: #7E3BE7;
  color: white !important;
}
#SponsorPortalBody .sponsor-kids .bg-grey {
  background-color: #1A006B !important;
}
#SponsorPortalBody .sponsor-kids .bg-white h2 {
  color: #1A006B;
}
#SponsorPortalBody .sponsor-kids .sp-my-community-itm:hover .sp-my-community-itm-text {
  background-color: #C6BFDA;
}
#SponsorPortalBody .sponsor-kids .btn-second {
  background-color: #7E3BE7;
}
#SponsorPortalBody .sponsor-kids .btn-second:hover {
  background-color: #1A006B !important;
  color: #ffffff !important;
}
#SponsorPortalBody .sponsor-kids .site-banner {
  background-color: #1A006B !important;
}
#SponsorPortalBody .sponsor-kids .container .btn {
  background-color: #1A006B;
}
#SponsorPortalBody .sponsor-kids .container .btn:hover {
  background-color: #7E3BE7 !important;
  color: #ffffff !important;
}
#SponsorPortalBody .sponsor-kids .media__image {
  background-color: #1A006B !important;
}
#SponsorPortalBody .sponsor-kids .media__caption {
  background-color: #1A006B !important;
}
#SponsorPortalBody .sponsor-kids .media__caption .btn--fourthly {
  color: #1A006B !important;
}
#SponsorPortalBody .sponsor-kids .sp-pen-page-info-block {
  background-color: #1A006B !important;
}
#SponsorPortalBody .sponsor-kids .sp-pen-page-video span {
  color: white !important;
}
#SponsorPortalBody .sponsor-kids .sp-pen-page-video strong {
  color: white !important;
}
#SponsorPortalBody .sponsor-kids .sp-pen-page-like strong {
  color: #1A006B !important;
}
#SponsorPortalBody .sponsor-kids .slick-prev {
  background-color: #1A006B !important;
}
#SponsorPortalBody .sponsor-kids .slick-next {
  background-color: #1A006B !important;
}
#SponsorPortalBody .sponsor-kids .sp-my-community-nav ul li .active {
  border-bottom-color: #7E3BE7 !important;
}
#SponsorPortalBody .sponsor-kids .sp-my-community-nav ul li:hover a {
  color: #7E3BE7 !important;
  border-bottom-color: #7E3BE7 !important;
}
#SponsorPortalBody .sp-pen-page--stats {
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: white;
  font-size: 24px;
  margin-top: 1em;
}
#SponsorPortalBody .sp-pen-page-comment-box .comment-box {
  background-color: #fae6fa;
  color: #7A1B72;
  width: 100%;
  font-size: 14px;
  outline: 1px solid #dac0d8 !important;
}
#SponsorPortalBody .sp-pen-page-comment-box .comment-box:focus {
  outline: 1px solid #dac0d8 !important;
}
#SponsorPortalBody .sp-pen-page-comment-box .btn {
  font-size: 14px;
  padding: 6px 14px;
}
#SponsorPortalBody .sp-pen-page-comments-sorting a {
  color: #c928b2;
  padding: 0px 12px;
  position: relative;
}
#SponsorPortalBody .sp-pen-page-comments-sorting a:first-of-type:after {
  content: "";
  position: absolute;
  top: 0px;
  right: -1px;
  height: 20px;
  background: #c928b2;
  width: 1px;
}
#SponsorPortalBody .sp-pen-page-comments-sorting a:hover {
  text-decoration: underline;
  color: #7A1B72;
}
#SponsorPortalBody .sp-pen-page-comments-sorting a.active {
  text-decoration: underline;
}
#SponsorPortalBody .sp-pen-page-comments {
  max-height: 250px;
}
@media (min-width: 769px) {
  #SponsorPortalBody .sp-pen-page-comments {
    max-height: 448px;
  }
}
#SponsorPortalBody .sp-pen-page-comments {
  overflow-y: auto;
  border-bottom: 1px solid #7A1B72;
}
#SponsorPortalBody .sp-pen-page-comments .comment-block p {
  margin-bottom: 5px;
}
#SponsorPortalBody .sp-pen-page-comments .comment-block:nth-child(odd) {
  background: #fae6fa;
}

.events #events-container {
  transition: opacity 0.3s ease;
}
.events #events-loading p {
  font-weight: bold;
  animation: pulse 1s infinite;
}
@keyframes pulse {
  0% {
    opacity: 0.3;
  }
  50% {
    opacity: 1;
  }
  100% {
    opacity: 0.3;
  }
}
.events .event-filter {
  background-color: #C8BFC9;
  color: #000000;
  padding: 25px;
}
.events .event-filter .event-field {
  margin-top: 20px;
}
.events .event-filter .event-field button {
  font-family: "cats-headline", Arial, Helvetica, sans-serif;
  font-size: 18px;
  font-weight: initial !important;
}
.events .event-filter .event-field .form__date {
  display: block;
  max-width: none;
  border: 1px solid #7A1B72 !important;
}
.events .event-filter .event-field label,
.events .event-filter .event-field .checkbox-group p {
  font-weight: bold;
  margin-bottom: 15px;
  font-family: "metrify-regular", Arial, Helvetica, sans-serif;
  font-size: 17px;
}
.events .event-filter .event-field .checkbox-group label {
  all: unset;
  font-weight: 500;
}
.events .event-filter .event-field .checkbox-group p {
  margin-bottom: 5px;
}
.events .event-filter .event-field .checkbox-group input[type=checkbox] {
  appearance: none;
  -webkit-appearance: none;
  width: 25px;
  height: 25px;
  transform-origin: center;
  margin: 0.6em 0.8rem 0.6em 0;
  background-color: #ffffff;
  border: 1px solid #7A1B72 !important;
  border-radius: 4px;
  cursor: pointer;
  position: relative;
}
.events .event-filter .event-field .checkbox-group input[type=checkbox]:checked::after {
  content: "";
  position: absolute;
  top: 1px;
  left: 8px;
  width: 6px;
  height: 14px;
  border: solid black;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}
.events .event-filter .event-field .select-wrapper {
  position: relative;
  display: inline-block;
  width: 100%;
}
.events .event-filter .event-field .select-wrapper i {
  position: absolute;
  right: 1rem;
  top: 50%;
  transform: translateY(-50%);
  pointer-events: none;
  color: #000000;
  font-size: 1.4rem;
  background-color: transparent;
}
.events .event-filter .event-field select {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  width: 100%;
  padding: 10px;
  padding-right: 2.5rem;
  font-size: 1rem;
  border: 1px solid #7A1B72;
  border-radius: 6px;
  background-color: white;
  box-shadow: none;
  outline: none;
}
.events .event-items .card {
  padding: initial;
  background-color: #fae6fa;
  border: none;
  display: flex;
  flex-direction: column;
  height: 100%;
}
.events .event-items .card.event-card {
  opacity: 0;
  transform: translateY(10px);
  transition: opacity 2s ease, transform 2s ease;
}
.events .event-items .card.event-card.fade-in-started.visible {
  opacity: 1;
  transform: translateY(0);
}
.events .event-items .card .btn:hover {
  background-color: #c8bfc9;
}
.events .event-items .card .featuredItemText {
  position: absolute;
  top: 25px;
  left: 0;
  background-color: #1a006b;
  color: #ffffff;
  font-family: "cats-headline", Arial, Helvetica, sans-serif;
  font-size: 25px;
  padding: 20px 25px;
}
.events .event-items .card .card-body {
  padding: 20px;
  display: flex;
  flex-direction: column;
  flex-grow: 1;
}
.events .event-items .card .card-body .card-title {
  font-family: "cats-headline", Arial, Helvetica, sans-serif;
  font-size: 22px;
  margin-bottom: 20px;
}
.events .event-items .card .card-body .btn {
  font-family: "cats-headline", Arial, Helvetica, sans-serif;
  font-size: 18px;
  font-weight: normal !important;
  width: 100%;
}
.events .event-items .featuredItem {
  background-color: #d3c6ee;
}
.events .event-items .featuredItem .btn {
  background-color: #1a006b;
}
.events .event-items .featuredItem .btn:hover {
  background-color: #fae6fa;
  color: #1a006b;
}
.events .events-pagination ul .page-item a {
  padding: 3px 10px;
  border-radius: 75px;
}

.daterangepicker td.in-range {
  background-color: #fae6fa;
  color: #000000;
}
.daterangepicker td.active, .daterangepicker td.active:hover, .daterangepicker td.start-date, .daterangepicker td.end-date {
  background-color: #7A1B72 !important;
  color: #ffffff !important;
}

.mt-auto {
  margin-top: auto;
}

.homepage .ts-4 {
  color: #7A1B72;
}

.google-optimize--show-in-preview {
  display: none;
}

.umb-block-grid__layout-container *:first-child {
  padding-top: 0;
}
.umb-block-grid__layout-container > .bg-white + .bg-white {
  padding-top: 0;
}

.bg-white.pd-vt-lg + .bg-white.pd-vt-lg {
  padding-top: 0px;
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm1haW4uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2FsaWduLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19iYWNrZ3JvdW5kLXZhcmlhbnQuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2hvdmVyLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19iYWNrZ3JvdW5kLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19ib3JkZXJzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19jbGVhcmZpeC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fZGlzcGxheS5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYnJlYWtwb2ludHMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2VtYmVkLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19mbGV4LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19mbG9hdC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9faW50ZXJhY3Rpb25zLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19vdmVyZmxvdy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fcG9zaXRpb24uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdmFyaWFibGVzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19zY3JlZW5yZWFkZXJzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19zY3JlZW4tcmVhZGVyLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19zaGFkb3dzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19zaXppbmcuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX3NwYWNpbmcuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX3N0cmV0Y2hlZC1saW5rLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL190ZXh0LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL190ZXh0LXRydW5jYXRlLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL190ZXh0LWVtcGhhc2lzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL190ZXh0LWhpZGUuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX3Zpc2liaWxpdHkuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fZ3JpZC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZ3JpZC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZ3JpZC1mcmFtZXdvcmsuc2NzcyIsImJvaWxlcnBsYXRlL19taXhpbnMuc2NzcyIsImJvaWxlcnBsYXRlL19wbGFjZWhvbGRlcnMuc2NzcyIsImJvaWxlcnBsYXRlL19mdW5jdGlvbnMuc2NzcyIsImJvaWxlcnBsYXRlL19yZXNldC5zY3NzIiwidGhlbWUvX2Jhc2Uuc2NzcyIsInRoZW1lL19pbGx1c3RyYXRpb24uc2NzcyIsInRoZW1lL19icmFuZGluZy5zY3NzIiwidHlwZXN0eWxlcy9fZm9udC1pbXBvcnQuc2NzcyIsInR5cGVzdHlsZXMvX2Jhc2Uuc2NzcyIsInR5cGVzdHlsZXMvX3R5cGVzdHlsZXMuc2NzcyIsInR5cGVzdHlsZXMvX2hlYWRlci5zY3NzIiwidHlwZXN0eWxlcy9fYXJ0aWNsZS5zY3NzIiwidHlwZXN0eWxlcy9faWNvbnMuc2NzcyIsInR5cGVzdHlsZXMvX2xpc3Qtc3R5bGVzLnNjc3MiLCJ0eXBlc3R5bGVzL19vcGVuaW5nLXBhZ2UtaGVhZGluZy5zY3NzIiwidmVuZG9yL3NsaWNrLnNjc3MiLCJ2ZW5kb3IvY3JvcHBlci5zY3NzIiwidmVuZG9yL3NpbXBsZWJhci5zY3NzIiwidmVuZG9yL3N3aXBlci1idW5kbGUubWluLnNjc3MiLCJ1dGlsaXRpZXMvX3NpemluZy5zY3NzIiwiY29tcG9uZW50cy9fYXBwZWFscy5zY3NzIiwiY29tcG9uZW50cy9fYmFza2V0LnNjc3MiLCJjb21wb25lbnRzL19iYXNrZXQtdHJhY2tlci5zY3NzIiwiY29tcG9uZW50cy9fYmxvY2txdW90ZS5zY3NzIiwiY29tcG9uZW50cy9fYnV0dG9uLnNjc3MiLCJjb21wb25lbnRzL19jYXQtY29tbXVuaXR5LnNjc3MiLCJjb21wb25lbnRzL19jb21tZW50cy5zY3NzIiwiY29tcG9uZW50cy9fY291bnRlci5zY3NzIiwiY29tcG9uZW50cy9fY2FyZC5zY3NzIiwiY29tcG9uZW50cy9fY29va2llcy5zY3NzIiwiY29tcG9uZW50cy9fY3JvcC13aW5kb3cuc2NzcyIsImNvbXBvbmVudHMvX2N0YS13YWxsLnNjc3MiLCJjb21wb25lbnRzL19kb3RzLnNjc3MiLCJjb21wb25lbnRzL19leGFtcGxlLnNjc3MiLCJjb21wb25lbnRzL19lei1zZWFyY2guc2NzcyIsImNvbXBvbmVudHMvX2ZhcS5zY3NzIiwiY29tcG9uZW50cy9fZXZlbnR0aWNrZXRzLnNjc3MiLCJjb21wb25lbnRzL19sb2dpbi1idXR0b24uc2NzcyIsImNvbXBvbmVudHMvZm9ybXMvX3Jlc2V0LnNjc3MiLCJjb21wb25lbnRzL2Zvcm1zL19iYXNlLnNjc3MiLCJjb21wb25lbnRzL2Zvcm1zL19jYXQtY29tbXVuaXR5LnNjc3MiLCJjb21wb25lbnRzL2Zvcm1zL19jZW50ZXIuc2NzcyIsImNvbXBvbmVudHMvZm9ybXMvX2NvbnRhY3Quc2NzcyIsImNvbXBvbmVudHMvZm9ybXMvX2xvZ2luLnNjc3MiLCJjb21wb25lbnRzL2Zvcm1zL19sZWF2ZS1jb21tZW50LnNjc3MiLCJjb21wb25lbnRzL2Zvcm1zL19uZXdzbGV0dGVyLnNjc3MiLCJjb21wb25lbnRzL2Zvcm1zL19wb2xsLnNjc3MiLCJjb21wb25lbnRzL2Zvcm1zL19wcm9maWxlLnNjc3MiLCJjb21wb25lbnRzL2Zvcm1zL19zZWFyY2guc2NzcyIsImNvbXBvbmVudHMvZm9ybXMvX3NlbGVjdGlvbi5zY3NzIiwiY29tcG9uZW50cy9mb3Jtcy9fZmluZC1hLWNhdC5zY3NzIiwiY29tcG9uZW50cy9mb3Jtcy9fZmluZC1hLWNhdC1iYW5uZXIuc2NzcyIsImNvbXBvbmVudHMvZm9ybXMvX3ZvbHVudGVlci1vcHBzLnNjc3MiLCJjb21wb25lbnRzL2Zvcm1zL19maW5kLWEtc2hvcC5zY3NzIiwiY29tcG9uZW50cy9mb3Jtcy9fZm9ybS1zdWJzY3JpcHRpb24uc2NzcyIsImNvbXBvbmVudHMvZm9ybXMvX3Nwb25zb3JBQ2F0LnNjc3MiLCJjb21wb25lbnRzL19yZWdpb25hbC1ldmVudHMuc2NzcyIsImNvbXBvbmVudHMvX2dhbGxlcnkuc2NzcyIsImNvbXBvbmVudHMvX2hhbWJ1cmdlci5zY3NzIiwiY29tcG9uZW50cy9fbWFpbi1uYXYtZGVza3RvcC5zY3NzIiwiY29tcG9uZW50cy9fbWFpbi1uYXYtbW9iaWxlLnNjc3MiLCJjb21wb25lbnRzL19tb2JpbGUtbmF2LnNjc3MiLCJjb21wb25lbnRzL21lZGlhL19iYXNlLnNjc3MiLCJjb21wb25lbnRzL21lZGlhL19pbmxpbmUuc2NzcyIsImNvbXBvbmVudHMvbWVkaWEvX2xpbmsuc2NzcyIsImNvbXBvbmVudHMvbWVkaWEvX2JvbGQuc2NzcyIsImNvbXBvbmVudHMvbWVkaWEvX2dhbGxlcnkuc2NzcyIsImNvbXBvbmVudHMvbWVkaWEvX3dpZGUuc2NzcyIsImNvbXBvbmVudHMvbWVkaWEvX3dpZGUtb3ZlcmxhcC5zY3NzIiwiY29tcG9uZW50cy9tZWRpYS9fcmVzZXJ2ZWQuc2NzcyIsImNvbXBvbmVudHMvbWVkaWEvX2V2ZW50LnNjc3MiLCJjb21wb25lbnRzL21lZGlhL192aWRlby5zY3NzIiwiY29tcG9uZW50cy9tZWRpYS9fc29jaWFsLnNjc3MiLCJjb21wb25lbnRzL21lZGlhL19jb3Zlci5zY3NzIiwiY29tcG9uZW50cy9tZWRpYS9fY2FwdGlvbi1jb3Zlci5zY3NzIiwiY29tcG9uZW50cy9tZWRpYS9fY2FwdGlvbi1ob3Zlci5zY3NzIiwiY29tcG9uZW50cy9tZWRpYS9faG92ZXItYmFja2dyb3VuZC5zY3NzIiwiY29tcG9uZW50cy9tZWRpYS9fdGlsZS5zY3NzIiwiY29tcG9uZW50cy9tZWRpYS9fb3BwLnNjc3MiLCJjb21wb25lbnRzL21lZGlhL19zcGxpdC5zY3NzIiwiY29tcG9uZW50cy9tZWRpYS9fc2lkZWJhci5zY3NzIiwiY29tcG9uZW50cy9tZWRpYS9zdmdzL19lZHVjYXRpb24uc2NzcyIsImNvbXBvbmVudHMvbWVkaWEvc3Zncy9fY29udGFjdC5zY3NzIiwiY29tcG9uZW50cy9tZWRpYS9zdmdzL19uZXV0ZXJpbmcuc2NzcyIsImNvbXBvbmVudHMvbWVkaWEvc3Zncy9fdm9sdW50ZWVyLnNjc3MiLCJjb21wb25lbnRzL21lZGlhL190aGVtZS5zY3NzIiwiY29tcG9uZW50cy9tZWRpYS9faG92ZXItc2NhbGUuc2NzcyIsImNvbXBvbmVudHMvX21pbmktYmlvLnNjc3MiLCJjb21wb25lbnRzL19wYWdpbmcuc2NzcyIsImNvbXBvbmVudHMvX3Blbi1jYXJkLnNjc3MiLCJjb21wb25lbnRzL19waW4uc2NzcyIsImNvbXBvbmVudHMvX3BvbGwuc2NzcyIsImNvbXBvbmVudHMvX3BvcHVwLnNjc3MiLCJjb21wb25lbnRzL19zb2NpYWwuc2NzcyIsImNvbXBvbmVudHMvX3NsaWRlcnMuc2NzcyIsImNvbXBvbmVudHMvX3Nwb25zb3ItcG9zdGVyLnNjc3MiLCJjb21wb25lbnRzL19zdGVwcGVyLnNjc3MiLCJjb21wb25lbnRzL19zdG9yeS5zY3NzIiwiY29tcG9uZW50cy9fdGFiLnNjc3MiLCJjb21wb25lbnRzL19zZWFyY2gtZ3JvdXAuc2NzcyIsImNvbXBvbmVudHMvX3dhcm5pbmctbWVzc2FnZS5zY3NzIiwiY29tcG9uZW50cy9fbW9iaWxlLXN0aWNreS1iYXIuc2NzcyIsImNvbXBvbmVudHMvX2NvbW11bml0eS1zdGF0cy5zY3NzIiwiY29tcG9uZW50cy9fZG9uYXRlLW9wdGlvbi5zY3NzIiwiY29tcG9uZW50cy9fbGlua3Muc2NzcyIsImNvbXBvbmVudHMvX3BhZ2luYXRpb24uc2NzcyIsImNvbXBvbmVudHMvX3NvcnQtYnkuc2NzcyIsImNvbXBvbmVudHMvX21lbWJlcnNoaXAtdHlwZS5zY3NzIiwiY29tcG9uZW50cy9fZml4ZWQtcmF0aW8uc2NzcyIsImNvbXBvbmVudHMvX3N1Ym1pdC1jb21tZW50LnNjc3MiLCJjb21wb25lbnRzL19pcy1zdWJtaXR0aW5nLnNjc3MiLCJjb21wb25lbnRzL19vbmUtdHJ1c3QtY3VzdG9tLWNvZGUuc2NzcyIsImNvbXBvbmVudHMvX3NpbW9ucy1jYXQtYmFubmVyLWxvZ28uc2NzcyIsImNvbXBvbmVudHMvX3NpbW9ucy1jYXQtaW5mby1ib3guc2NzcyIsImNvbXBvbmVudHMvX3NpbW9ucy1jYXQtbWVkaWEuc2NzcyIsImNvbXBvbmVudHMvX2ZvbnQtc2ltb25zLWNhdC5zY3NzIiwiY29tcG9uZW50cy9fYW5pbWF0aW9uLXN0eWxlcy5zY3NzIiwiY29tcG9uZW50cy9faWZyYW1lLWZpeC5zY3NzIiwiY29tcG9uZW50cy9fZXZlbnRzLnNjc3MiLCJjb21wb25lbnRzL19zcGVjaWFsQXBwZWFscy5zY3NzIiwiY29tcG9uZW50cy9fZmluZC11cy5zY3NzIiwiY29tcG9uZW50cy9mb3Jtcy9fbWVtYmVyc2hpcC1mb3JtLnNjc3MiLCJjb21wb25lbnRzL19icmVhZGNydW1iLXNvY2lhbC5zY3NzIiwiY29tcG9uZW50cy9faW1hZ2UtZ2FsbGVyeS5zY3NzIiwiY29tcG9uZW50cy9fcXVpY2tsaW5rcy5zY3NzIiwiY29tcG9uZW50cy9fYWNjb3JkaW9uLnNjc3MiLCJjb21wb25lbnRzL19zdG9yeXF1b3RlLnNjc3MiLCJjb21wb25lbnRzL19zdXBwb3J0aW5nYm94LnNjc3MiLCJjb21wb25lbnRzL19zaXRlLXNlYXJjaC5zY3NzIiwibGF5b3V0L19iYXNlLnNjc3MiLCJsYXlvdXQvX2Zvb3Rlci5zY3NzIiwibGF5b3V0L19ncmlkcy5zY3NzIiwibGF5b3V0L19mbGV4LnNjc3MiLCJsYXlvdXQvX2hlYWRlci1ncm91cC5zY3NzIiwibGF5b3V0L19oZWFkZXItbWVzc2FnZS5zY3NzIiwibGF5b3V0L19oZXJvLWFkLWJveGVzLnNjc3MiLCJsYXlvdXQvX2xpbmUtY2xhbXAuc2NzcyIsImxheW91dC9fbWFwLnNjc3MiLCJsYXlvdXQvX3NpZGViYXIuc2NzcyIsImxheW91dC9fc2l0ZS5zY3NzIiwibGF5b3V0L19zdWItbmF2LnNjc3MiLCJsYXlvdXQvX3RhYmxlcy5zY3NzIiwibGF5b3V0L19mbG93LnNjc3MiLCJsYXlvdXQvX3BlbnMuc2NzcyIsImxheW91dC9fdXNlci1ibG9jay5zY3NzIiwibGF5b3V0L19zaWRlbWVudS5zY3NzIiwibGF5b3V0L21haW4tc2l0ZS1uYXYuc2NzcyIsImxheW91dC9fZXZlbnRzLWhlcm8uc2NzcyIsImNvbXBvbmVudHMvX2Jsb2ctcG9zdC5zY3NzIiwiY29tcG9uZW50cy9fcmVhZC1tb3JlLnNjc3MiLCJjb21wb25lbnRzL192ZXQtYXBwcm92ZWQtYmFkZ2Uuc2NzcyIsImNvbXBvbmVudHMvX2RvbmF0aW9uLXJlYWQtbW9yZS1jb250YWluZXIuc2NzcyIsImNvbXBvbmVudHMvX2RvbmF0aW9uLWJhbm5lci10aGVtZS5zY3NzIiwiY29tcG9uZW50cy9fZ29vZ2xlY3VzdG9tc2VhcmNoLnNjc3MiLCJjb21wb25lbnRzL19icmVhZGNydW1iLnNjc3MiLCJjb21wb25lbnRzL19leGl0U2l0ZUJ1dHRvbi5zY3NzIiwiY29tcG9uZW50cy9fZ3JpZC1jdGEtYmFubmVyLnNjc3MiLCJjb21wb25lbnRzL19ncmlkLWhlcm8tYmFubmVycy5zY3NzIiwiY29tcG9uZW50cy9fZ3JpZC1pbmZvcm1hdGlvbi1vdmVydmlldy5zY3NzIiwiY29tcG9uZW50cy9fZ3JpZC1tZWRhLWJsb2NrLXZpZGVvLnNjc3MiLCJjb21wb25lbnRzL19ncmlkLWZlYXR1cmVkLXByb21vdGlvbi5zY3NzIiwiY29tcG9uZW50cy9fZ3JpZC1zcG9uc29yLXBlbi1ibG9jay5zY3NzIiwiY29tcG9uZW50cy9fY2F0LXJlcG9ydC5zY3NzIiwiY29tcG9uZW50cy9mb3Jtcy9fYWRvcHQtYS1jYXQtZm9ybS5zY3NzIiwic3BvbnNvcl9wb3J0YWwvX21hc3Rlci5zY3NzIiwiZXZlbnRzL19ldmVudHMuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQTtBQUFBO0FBQUE7QUFJQTtBQUlBO0FDTkE7RUFBcUI7OztBQUNyQjtFQUFxQjs7O0FBQ3JCO0VBQXFCOzs7QUFDckI7RUFBcUI7OztBQUNyQjtFQUFxQjs7O0FBQ3JCO0VBQXFCOzs7QUNGbkI7RUFDRTs7O0FDVUY7QUFBQTtBQUFBO0VETEk7OztBQU5KO0VBQ0U7OztBQ1VGO0FBQUE7QUFBQTtFRExJOzs7QUFOSjtFQUNFOzs7QUNVRjtBQUFBO0FBQUE7RURMSTs7O0FBTko7RUFDRTs7O0FDVUY7QUFBQTtBQUFBO0VETEk7OztBQU5K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QUFBdkI7RUFBdUI7OztBQUF2QjtFQUF1Qjs7O0FBQXZCO0VBQXVCOzs7QUFBdkI7RUFBdUI7OztBQUF2QjtFQUF1Qjs7O0FBQXZCO0VBQXVCOzs7QUFBdkI7RUFBdUI7OztBQUF2QjtFQUF1Qjs7O0FBSTNCO0VBQVU7OztBQUNWO0VBQVU7OztBQUlWO0VBQWM7OztBQUNkO0VBQWM7OztBQUVkO0VBQVU7OztBQUNWO0VBQVU7OztBQ1RGO0VBQWdDOzs7QUFDaEM7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFmRjtFQUFnQzs7O0FBQ2hDO0FBQUE7RUFFRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTs7O0FBZkY7RUFBZ0M7OztBQUNoQztBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBQWZGO0VBQWdDOzs7QUFDaEM7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFmRjtFQUFnQzs7O0FBQ2hDO0FBQUE7RUFFRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTs7O0FBZkY7RUFBZ0M7OztBQUNoQztBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBQWZGO0VBQWdDOzs7QUFDaEM7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFmRjtFQUFnQzs7O0FBQ2hDO0FBQUE7RUFFRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTs7O0FBZkY7RUFBZ0M7OztBQUNoQztBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBQWZGO0VBQWdDOzs7QUFDaEM7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFmRjtFQUFnQzs7O0FBQ2hDO0FBQUE7RUFFRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTs7O0FBZkY7RUFBZ0M7OztBQUNoQztBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBQWZGO0VBQWdDOzs7QUFDaEM7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFmRjtFQUFnQzs7O0FBQ2hDO0FBQUE7RUFFRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTs7O0FBZkY7RUFBZ0M7OztBQUNoQztBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBQWZGO0VBQWdDOzs7QUFDaEM7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFmRjtFQUFnQzs7O0FBQ2hDO0FBQUE7RUFFRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTs7O0FBZkY7RUFBZ0M7OztBQUNoQztBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBQVFGO0VBQXdCOzs7QUFDeEI7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFmRjtFQUF3Qjs7O0FBQ3hCO0FBQUE7RUFFRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTs7O0FBZkY7RUFBd0I7OztBQUN4QjtBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBQWZGO0VBQXdCOzs7QUFDeEI7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFmRjtFQUF3Qjs7O0FBQ3hCO0FBQUE7RUFFRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTs7O0FBZkY7RUFBd0I7OztBQUN4QjtBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBQWZGO0VBQXdCOzs7QUFDeEI7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFmRjtFQUF3Qjs7O0FBQ3hCO0FBQUE7RUFFRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTs7O0FBTU47RUFBbUI7OztBQUNuQjtBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBWlRGO0VZbERJO0lBQWdDOztFQUNoQztBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBZkY7SUFBZ0M7O0VBQ2hDO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFmRjtJQUFnQzs7RUFDaEM7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQWZGO0lBQWdDOztFQUNoQztBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBZkY7SUFBZ0M7O0VBQ2hDO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFmRjtJQUFnQzs7RUFDaEM7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQWZGO0lBQWdDOztFQUNoQztBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBZkY7SUFBZ0M7O0VBQ2hDO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFmRjtJQUFnQzs7RUFDaEM7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQWZGO0lBQWdDOztFQUNoQztBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBZkY7SUFBZ0M7O0VBQ2hDO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFmRjtJQUFnQzs7RUFDaEM7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQWZGO0lBQWdDOztFQUNoQztBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBZkY7SUFBZ0M7O0VBQ2hDO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFmRjtJQUFnQzs7RUFDaEM7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQWZGO0lBQWdDOztFQUNoQztBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBZkY7SUFBZ0M7O0VBQ2hDO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFmRjtJQUFnQzs7RUFDaEM7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQVFGO0lBQXdCOztFQUN4QjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBZkY7SUFBd0I7O0VBQ3hCO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFmRjtJQUF3Qjs7RUFDeEI7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQWZGO0lBQXdCOztFQUN4QjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBZkY7SUFBd0I7O0VBQ3hCO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFmRjtJQUF3Qjs7RUFDeEI7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQWZGO0lBQXdCOztFQUN4QjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBZkY7SUFBd0I7O0VBQ3hCO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFNTjtJQUFtQjs7RUFDbkI7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOzs7QVpURjtFWWxESTtJQUFnQzs7RUFDaEM7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQWZGO0lBQWdDOztFQUNoQztBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBZkY7SUFBZ0M7O0VBQ2hDO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFmRjtJQUFnQzs7RUFDaEM7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQWZGO0lBQWdDOztFQUNoQztBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBZkY7SUFBZ0M7O0VBQ2hDO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFmRjtJQUFnQzs7RUFDaEM7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQWZGO0lBQWdDOztFQUNoQztBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBZkY7SUFBZ0M7O0VBQ2hDO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFmRjtJQUFnQzs7RUFDaEM7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQWZGO0lBQWdDOztFQUNoQztBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBZkY7SUFBZ0M7O0VBQ2hDO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFmRjtJQUFnQzs7RUFDaEM7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQWZGO0lBQWdDOztFQUNoQztBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBZkY7SUFBZ0M7O0VBQ2hDO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFmRjtJQUFnQzs7RUFDaEM7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQWZGO0lBQWdDOztFQUNoQztBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBZkY7SUFBZ0M7O0VBQ2hDO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFRRjtJQUF3Qjs7RUFDeEI7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQWZGO0lBQXdCOztFQUN4QjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBZkY7SUFBd0I7O0VBQ3hCO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFmRjtJQUF3Qjs7RUFDeEI7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQWZGO0lBQXdCOztFQUN4QjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBZkY7SUFBd0I7O0VBQ3hCO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFmRjtJQUF3Qjs7RUFDeEI7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQWZGO0lBQXdCOztFQUN4QjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBTU47SUFBbUI7O0VBQ25CO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7O0FaVEY7RVlsREk7SUFBZ0M7O0VBQ2hDO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFmRjtJQUFnQzs7RUFDaEM7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQWZGO0lBQWdDOztFQUNoQztBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBZkY7SUFBZ0M7O0VBQ2hDO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFmRjtJQUFnQzs7RUFDaEM7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQWZGO0lBQWdDOztFQUNoQztBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBZkY7SUFBZ0M7O0VBQ2hDO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFmRjtJQUFnQzs7RUFDaEM7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQWZGO0lBQWdDOztFQUNoQztBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBZkY7SUFBZ0M7O0VBQ2hDO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFmRjtJQUFnQzs7RUFDaEM7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQWZGO0lBQWdDOztFQUNoQztBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBZkY7SUFBZ0M7O0VBQ2hDO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFmRjtJQUFnQzs7RUFDaEM7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQWZGO0lBQWdDOztFQUNoQztBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBZkY7SUFBZ0M7O0VBQ2hDO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFmRjtJQUFnQzs7RUFDaEM7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQWZGO0lBQWdDOztFQUNoQztBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBUUY7SUFBd0I7O0VBQ3hCO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFmRjtJQUF3Qjs7RUFDeEI7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQWZGO0lBQXdCOztFQUN4QjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBZkY7SUFBd0I7O0VBQ3hCO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFmRjtJQUF3Qjs7RUFDeEI7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQWZGO0lBQXdCOztFQUN4QjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBZkY7SUFBd0I7O0VBQ3hCO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFmRjtJQUF3Qjs7RUFDeEI7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQU1OO0lBQW1COztFQUNuQjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7OztBWlRGO0VZbERJO0lBQWdDOztFQUNoQztBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBZkY7SUFBZ0M7O0VBQ2hDO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFmRjtJQUFnQzs7RUFDaEM7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQWZGO0lBQWdDOztFQUNoQztBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBZkY7SUFBZ0M7O0VBQ2hDO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFmRjtJQUFnQzs7RUFDaEM7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQWZGO0lBQWdDOztFQUNoQztBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBZkY7SUFBZ0M7O0VBQ2hDO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFmRjtJQUFnQzs7RUFDaEM7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQWZGO0lBQWdDOztFQUNoQztBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBZkY7SUFBZ0M7O0VBQ2hDO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFmRjtJQUFnQzs7RUFDaEM7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQWZGO0lBQWdDOztFQUNoQztBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBZkY7SUFBZ0M7O0VBQ2hDO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFmRjtJQUFnQzs7RUFDaEM7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQWZGO0lBQWdDOztFQUNoQztBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBZkY7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QUNBOzs7QUFFSjtBQUNJO0FBQ0E7O0FBR0E7QUFDSTs7QUFHSjtFQUNJOzs7QUN4WVI7QUFBQTtBQUFBO0FBQUE7QUNBQTtBQUNBO0VBQ0k7O0FBRUE7RUFDSTs7O0FBSVI7RUFDSTs7QUFFQTtFQUNJOzs7QUFJUjtFQUNJOztBQUVBO0VBQ0k7OztBQUlSO0VBQ0k7O0FBRUE7RUFDSTs7O0FBSVI7RUFDSTs7QUFFQTtFQUNJOzs7QUFHUjtBQUNBO0VBQ0k7O0FBRUE7RUFFSTs7O0FBSVI7RUFDSTs7O0FBR0o7RUFDSTs7QUFFQTtFQUNJOztBQUdKO0VBQ0k7O0FBRUE7RUFDSTs7QUFJUjtFQUNJO0VBQ0E7O0FBRUE7RUFDSTtFQUNBOztBQUtKO0VBQ0k7O0FBS0o7RUFDSTs7QUFLSjtFQUNJOztBQUtKO0VBQ0k7OztBQUtaO0VBQ0k7O0FBRUE7RUFDSTs7QUFHSjtFQUNJOztBQUdKO0VBQ0k7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7O0FBSVI7RUFDSTtFQUNBOztBQUlBO0VBQ0k7O0FBS0o7RUFDSTs7QUFLSjtFQUNJOztBQUtKO0VBQ0k7OztBQUtaO0VBQ0k7O0FBRUE7RUFDSTs7QUFJQTtFQUNJO0VBQ0E7O0FBS0o7RUFDSTs7O0FBT1I7RUFDSTs7QUFIUjtFQU1JO0VBQ0E7O0FBRUE7RUFDSTs7O0FBTUo7RUFDSTs7QUFIUjtFQU1JO0VBQ0E7O0FBRUE7RUFDSTs7O0FBTUo7RUFDSTs7QUFIUjtFQU1JO0VBQ0E7O0FBRUE7RUFDSTs7O0FBTUo7RUFDSTs7QUFIUjtFQU1JO0VBQ0E7O0FBRUE7RUFDSTs7O0FBSVI7RUFDSTtFQUNBOzs7QUFJQTtFQUNJOzs7QUFLSjtFQUNJO0VBQ0E7O0FBR0o7RUFDSTs7O0FBS0o7RUFDSTs7O0FBS0o7RUFDSTs7O0FBS0o7RUFDSTs7QUFHSjtFQUNJOzs7QUNoUlI7RUFDSTtFQUNBLHVIQUN3RDtFQUN4RDtFQUNBOztBQUdKO0VBQ0k7RUFDQSxtSEFDc0Q7RUFDdEQ7RUFDQTs7QUFHSjtFQUNJO0VBQ0EsbUhBQ3NEO0VBQ3REO0VBQ0E7O0FBRUo7RUFDSTtFQUNB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YUx0UUk7RUt1UUo7O0FBRUE7RUFDSTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTs7QUFHSTtFQUNJOztBYmhRWjtFYXVRQTtJQUVROzs7O0FBU1o7RUFDSSxhTHhTRztFS3lTSDtFQUNBOztBQUNBO0VBQ0ksYUwzU0E7O0FLOFNKO0VBQ0k7OztBQzNUWjtFQUNFO0VBQ0E7O0FwQzBERTtFb0M1REo7SUFJSTs7OztBQ0pKO0FBRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJOztBQUdKO0VBQ0k7RUFDQTs7O0FBR1I7QUFBQTtFQUVJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFFSTtFQUNBOztBQUdKO0VBQ0k7O0FBR0o7RUFDSTs7O0FBR1I7RUFDSTtFQUNBO0VBQ0E7O0FBQ0E7RUFDSTs7QUFMUjtFQWNJOztBQUVBO0VBQ0k7O0FBR0o7RUFDSTs7QUFHSjtFQUNJOztBQUdKO0VBQ0k7RUFDQTtFQUNBOzs7QUFHUjtFQUNJOzs7QUNoR0o7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBVUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0FBQUE7QUFBQTtBQUFBO0FBQUE7RUFLSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtBQUFBO0VBRUk7OztBQUdKO0VBQ0k7RUFDQTs7O0FBR0o7RUFDSTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtBQUFBO0VBRUk7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0FBQUE7QUFBQTtFQUdJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBOzs7QUFHSjtFQUNJOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFFSTtJQUNJO0lBQ0E7OztBQUlSO0VBRUk7SUFDSTtJQUNBOzs7QUFJUjtFQUVJO0lBQ0k7SUFDQTtJQUNBOzs7QUFJUjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTs7O0FBR0o7RUFDSTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTs7O0FBR0o7RUFDSTs7O0FBR0o7RUFDSTs7O0FBR0o7QUFBQTtBQUFBO0FBQUE7RUFJSTs7O0FBR0o7RUFDSTtFQUNBOzs7QUFFSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBOzs7QUFHSjtFQUNJOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7OztBQ3BXSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7QUFDSTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTs7O0FBR0o7RUFDSTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtBQUNBO0VBQ0k7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUNyTEg7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQVlEO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTs7O0FBR0o7RUFDSTs7O0FBR0o7RUFDSTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUdBO0VBQ0k7RUFDQTs7O0FBR1I7RUFDSTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUdBO0VBQ0k7OztBQUdSO0VBQ0k7RUFDQTtFQUNBOzs7QUFHQTtFQUNJOzs7QUFHSjtFQUNJOzs7QUFHUjtFQUNJOzs7QUFHSjtFQUNJOzs7QUFHSjtFQUNJOzs7QUFHQTtFQUNJOzs7QUFHUjtFQUNJO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBOzs7QUFHSjtFQUNJOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7SUFDSTs7RUFHSjtJQUNJOzs7QUFJUjtFQUNJO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0E7RUFDSTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBOzs7QUFHUjtFQUNJOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJOzs7QUFHSjtFQUNJO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTs7O0FBR0o7RUFDSTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7RUFDQTs7O0FBR0E7RUFDSTs7O0FBR1I7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHQTtFQUNJOzs7QUFHSjtFQUNJOzs7QUFHUjtFQUNJO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7OztBQUdBO0VBQ0k7RUFDQTs7O0FBR0o7RUFDSTs7O0FBR0o7RUFDSTs7O0FBR0o7RUFDSTs7O0FBR0o7RUFDSTs7O0FBR0o7RUFDSTs7O0FBR0o7RUFDSTs7O0FBR1I7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJOzs7QUFHSjtFQUNJOzs7QUFHSjtFQUNJO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7OztBQUdBO0VBQ0k7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7OztBQUdBO0VBQ0k7RUFDQTs7O0FBR1o7RUFDSTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7OztBQUdBO0VBQ0k7OztBQUdSO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7RUFDQTs7O0FBR0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHUjtFQUNJOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBOzs7QUFHQTtFQUNJO0VBQ0E7RUFDQTtFQUNBOzs7QUFHUjtFQUNJOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBOzs7QUFHQTtFQUNJOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHUjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJOzs7QUFHSjtFQUNJOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0E7RUFDSTtFQUNBO0VBQ0E7OztBQUdSO0VBQ0k7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTs7O0FBR0o7RUFDSTs7O0FBR0o7RUFDSTtFQUNBOzs7QUFHSjtFQUNJOzs7QUFHSjtFQUNJO0VBQ0E7OztBQUdBO0VBQ0k7OztBQUdSO0VBQ0k7OztBQUdBO0VBQ0k7OztBQUdSO0VBQ0k7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0E7RUFDSTs7O0FBR1I7RUFDSTs7O0FBR0o7RUFDSTs7O0FBR0o7RUFDSTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdSO0VBQ0k7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7OztBQUdBO0VBQ0k7OztBQUdSO0VBQ0k7OztBQUdKO0VBQ0k7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBOzs7QUM5dEJIO0VBQ0c7SUFDSTs7O0FDRlI7RUFDSTtFQUNBO0VBQ0E7O0FBR0E7RUFOSjtJQU9RO0lBQ0E7QUFDQTtBQUFBOzs7QUFJSjtFQUNJOztBQUVBO0VBSEo7SUFJUTtJ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STs7RUFHSjtJQUNJOzs7QUM1RGhCO0FBQUE7QUFBQTtBQUFBO0FBVUE7QUFDSTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTs7QUFBQTtBQUFBO0FBQUE7QUFBQTs7QUFBQTtBQUFBOzs7QUFBQTtBQWtCQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTs7QUFBQTtBQVNKO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBOztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBOztBQUFBOzs7QUN0Q0E7QUFBQTtBQUFBO0FBQUE7QUFNSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBOUJSO0VBaUNJOztBQUdJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUE5QlI7RUFpQ0k7OztBQ3pFUjtBQUFBO0FBQUE7QUFBQTtBQU1JO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQVBSO0VBVUk7O0FBR0k7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBUFI7RUFVSTs7O0FDM0JSO0FBQUE7QUFBQTtBQUFBO0FBTUk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBUFI7RUFVSTs7QUFHSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFQUjtFQVVJOzs7QUMzQlI7QUFBQTtBQUFBO0FBQUE7QUFRSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VB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QUFBO0FBQUE7QUFJQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0Y7RUFDSTtFQUNBOzs7QUFJSjtFQUNJO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0U7SUFDRTtJQUNBO0lBQ0E7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7O0VBR0Y7QUFBQTtBQUVFO0lBQ0E7SUFDQTtJQUNBOztFQUdGO0lBQ0U7OztBQUlKO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFJRjtFQUNFO0lBQ0U7OztBQUlKO0VBQ0U7OztBQUdGO0VBQ0U7RUFDQTtFQUNBOzs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0Y7RUFDRTtJQUNFOzs7QUFJSjtFQUNFO0VBQ0E7RUFDQTs7O0FBR0Y7RUFDRTtFQUNBOzs7QUFHRjtFQUNFO0VBQ0E7OztBQUdGO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBOzs7QUFHSjtFQUNFOzs7QUFHRjtFQUNFOzs7QUFHRjtFQUNFO0VBQ0E7OztBQUdGO0FBRUE7QUFBQTtBQUdBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHRjtFQUNFO0VBQ0E7OztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHRjtFQUNFOzs7QUFHRjtFQUNFO0VBQ0E7OztBQUdGO0VBQ0U7OztBQUdGO0VBQ0U7OztBQUdGO0VBQ0U7RUFDQTs7O0FBR0Y7QUFBQTtBQUdBO0VBQ0U7SUFDRTtJQUNBOzs7QUFJSjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFRjtFQUNFOzs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQ3pURDtFQUNHO0VBQ0E7O0FBRUE7RUFKSDtJQUtPO0lBQ0E7Ozs7QUNOUDtFQUNHO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFUSjtJQVVRO0lBQ0E7OztBQUdKO0VBZEo7SUFlUTs7OztBQ2pCSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBT0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQU9KO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FBT0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQU9KO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFPSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBS1o7RUFDSTtFQUNBOztBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUNqR1g7RUFDRztFQUNBO0VBQ0E7RUFDQTs7QUFHSjtFQUNJOzs7QUNSSjtBQUFBO0FBQUE7RUFHSTtFQUNBO0VBQ0E7QUFFSjtBQUFBO0FBQUE7QUFBQTs7QUFLSTtBQUFBO0FBQUE7QUFBQTtBQUFBO0VBRUk7OztBQUtKO0VBQ0k7OztBQURKO0VBQ0k7OztBQURKO0VBQ0k7OztBQURKO0VBQ0k7OztBQURKO0VBQ0k7OztBQURKO0VBQ0k7OztBQURKO0VBQ0k7OztBQURKO0VBQ0k7OztBQURKO0VBQ0k7OztBQURKO0VBQ0k7OztBQU1SO0VBQ0k7O0FBQ0E7RUFFSTs7O0FBS1I7RUFDSTs7QUFDQTtFQUVJOzs7QUFLUjtFQUNJOztBQUNBO0VBRUk7OztBQ2hEUjtFQUNJOztB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RjtFQUNFOzs7QUFERjtFQUNFOzs7QUFERjtFQUNFOzs7QW5JcElFO0VtSTZJQTtJQUNFOztFQURGO0lBQ0U7O0VBREY7SUFDRTs7RUFERjtJQUNFOzs7QW5JcEpGO0VtSW1KQTtJQUNFOztFQURGO0lBQ0U7O0VBREY7SUFDRTs7RUFERjtJQUNFOzs7QW5JMUpGO0VtSXlKQTtJQUNFOztFQURGO0lBQ0U7O0VBREY7SUFDRTs7RUFERjtJQUNFOzs7QW5JaEtGO0VtSStKQTtJQUNFOztFQURGO0lBQ0U7O0VBREY7SUFDRTs7RUFERjtJQUNFOzs7QUFVTjtFQUNFOztBQUdGO0VBQ0U7OztBQUxGO0VBQ0U7O0FBR0Y7RUFDRTs7O0FBTEY7RUFDRTs7QUFHRjtFQUNFOzs7QUFMRjtFQUNFOztBQUdGO0VBQ0U7OztBQUxGO0VBQ0U7O0FBR0Y7RUFDRTs7O0FBTEY7RUFDRTs7QUFHRjtFQUNFOzs7QUFMRjtFQUNFOztBQUdGO0VBQ0U7OztBQUxGO0VBQ0U7O0FBR0Y7RUFDRTs7O0FBTEY7RUFDRTs7QUFHRjtFQUNFOzs7QW5JN0pFO0VtSXVLQTtJQUNFOztFQUdGO0lBQ0U7O0VBTEY7SUFDRTs7RUFHRjtJQUNFOztFQUxGO0lBQ0U7O0VBR0Y7SUFDRTs7RUFMRjtJQUNFOztFQUdGO0lBQ0U7O0VBTEY7SUFDRTs7RUFHRjtJQUNFOztFQUxGO0lBQ0U7O0VBR0Y7SUFDRTs7RUFMRjtJQUNFOztFQUdGO0lBQ0U7O0VBTEY7SUFDRTs7RUFHRjtJQUNFOztFQUxGO0lBQ0U7O0VBR0Y7SUFDRTs7O0FuSWxMRjtFbUk2S0E7SUFDRTs7RUFHRjtJQUNFOztFQUxGO0lBQ0U7O0VBR0Y7SUFDRTs7RUFMRjtJQUNFOztFQUdGO0lBQ0U7O0VBTEY7SUFDRTs7RUFHRjtJQUNFOztFQUxGO0lBQ0U7O0VBR0Y7SUFDRTs7RUFMRjtJQUNFOztFQUdGO0lBQ0U7O0VBTEY7SUFDRTs7RUFHRjtJQUNFOztFQUxGO0lBQ0U7O0VBR0Y7SUFDRTs7RUFMRjtJQUNFOztFQUdGO0lBQ0U7OztBbkl4TEY7RW1JbUxBO0lBQ0U7O0VBR0Y7SUFD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RUFDSSxPa0N2UVc7OztBbEMwUWY7RUFDRTs7O0FBUUU7RUFDSTs7QUFHSjtFQUNJOzs7QUFHUjtFQUNJIiwiZmlsZSI6InRoZW1lLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxyXG4gKiBNQUlOIENTU1xyXG4gKi9cclxuXHJcbi8qIFZBUklBQkxFUyAqL1xyXG5cclxuJHByZWZpeGVzOiAtbW96IC1tcyAtbyAtd2Via2l0O1xyXG5cclxuLyogVkVORE9SICovXHJcblxyXG4vL1RoZXNlIGFyZSBiZWluZyBpbmNsdWRlZCBpbiBhcHAuanNcclxuXHJcblxyXG4vLyBCb290c3RyYXBcclxuJHNtYWxsOiA2NDBweDtcclxuJG1lZGl1bTogNzY4cHg7XHJcbiRsYXJnZTogMTAyNHB4O1xyXG4keExhcmdlOiAxNTAwcHg7XHJcblxyXG4kZ3JpZC1icmVha3BvaW50czogKFxyXG4gICAgeHM6IDAsXHJcbiAgICBzbTogJHNtYWxsLFxyXG4gICAgbWQ6ICRtZWRpdW0sXHJcbiAgICBsZzogJGxhcmdlLFxyXG4gICAgeGw6ICR4TGFyZ2VcclxuKTtcclxuXHJcbiRzcGFjZXI6IDFyZW07XHJcblxyXG4kc3BhY2VyczogKCA2OiAoJHNwYWNlciAqIDQpLCA3OiAoJHNwYWNlciAqIDUpLCA4OiAoJHNwYWNlciAqIDYpKTtcclxuXHJcbiR0aGVtZS1jb2xvcnM6IChcclxuICBcImNhdC15ZWxsb3dcIjogI2ZjYzMyYSxcclxuICBcImJsYWNrXCI6ICMyMDIwMjBcclxuKTtcclxuXHJcbi8vIFJlcXVpcmVkXHJcbkBpbXBvcnQgXCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvZnVuY3Rpb25zXCI7XHJcbkBpbXBvcnQgXCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdmFyaWFibGVzXCI7XHJcbkBpbXBvcnQgXCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zXCI7XHJcblxyXG4vLyBzcGFjaW5nXHJcbkBpbXBvcnQgXCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzXCI7XHJcbkBpbXBvcnQgXCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvZ3JpZFwiO1xyXG5cclxuXHJcblxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gTUNNTkVUIEJPSUxFUlBMQVRFXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG5AaW1wb3J0ICdib2lsZXJwbGF0ZS9taXhpbnMnO1xyXG5AaW1wb3J0ICdib2lsZXJwbGF0ZS9wbGFjZWhvbGRlcnMnO1xyXG5AaW1wb3J0ICdib2lsZXJwbGF0ZS9mdW5jdGlvbnMnO1xyXG5AaW1wb3J0ICdib2lsZXJwbGF0ZS9yZXNldCc7XHJcblxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gVEhFTUVcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuQGltcG9ydCAndGhlbWUvYmFzZSc7XHJcbkBpbXBvcnQgJ3RoZW1lL2lsbHVzdHJhdGlvbic7XHJcbkBpbXBvcnQgJ3RoZW1lL2JyYW5kaW5nJztcclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIFRZUE9HUkFQR1lcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbkBpbXBvcnQgXCJ0eXBlc3R5bGVzL2ZvbnQtaW1wb3J0XCI7XHJcbkBpbXBvcnQgJ3R5cGVzdHlsZXMvYmFzZSc7XHJcbkBpbXBvcnQgJ3R5cGVzdHlsZXMvdHlwZXN0eWxlcyc7XHJcbi8vIEBpbXBvcnQgJ3R5cGVzdHlsZXMvaGVhZGluZ3MnO1xyXG5AaW1wb3J0ICd0eXBlc3R5bGVzL2hlYWRlcic7XHJcbi8vIEBpbXBvcnQgJ3R5cGVzdHlsZXMvY2FwdGlvbnMnO1xyXG5AaW1wb3J0ICd0eXBlc3R5bGVzL2FydGljbGUnO1xyXG5AaW1wb3J0ICd0eXBlc3R5bGVzL2ljb25zJztcclxuQGltcG9ydCAndHlwZXN0eWxlcy9saXN0LXN0eWxlcyc7XHJcblxyXG5AaW1wb3J0ICd0eXBlc3R5bGVzL29wZW5pbmctcGFnZS1oZWFkaW5nJztcclxuXHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBWRU5ET1JcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuQGltcG9ydCBcInZlbmRvci9zbGlja1wiO1xyXG5AaW1wb3J0IFwidmVuZG9yL2Nyb3BwZXJcIjtcclxuQGltcG9ydCBcInZlbmRvci9zaW1wbGViYXJcIjtcclxuQGltcG9ydCBcInZlbmRvci9zd2lwZXItYnVuZGxlLm1pblwiO1xyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gVXRpbGl0aWVzXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbkBpbXBvcnQgXCJ1dGlsaXRpZXMvX3NpemluZ1wiO1xyXG5cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIENPTVBPTkVOVFNcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuQGltcG9ydCAnY29tcG9uZW50cy9hcHBlYWxzJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9iYXNrZXQnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2Jhc2tldC10cmFja2VyJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9ibG9ja3F1b3RlJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9idXR0b24nO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2NhdC1jb21tdW5pdHknO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2NvbW1lbnRzJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9jb3VudGVyJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9jYXJkJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9jb29raWVzJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9jcm9wLXdpbmRvdyc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvY3RhLXdhbGwnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2RvdHMnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2V4YW1wbGUnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2V6LXNlYXJjaCc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZmFxJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9ldmVudHRpY2tldHMnO1xyXG4vLyBAaW1wb3J0ICdjb21wb25lbnRzL2Zvcm1zJztcclxuXHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbG9naW4tYnV0dG9uJztcclxuXHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZm9ybXMvcmVzZXQnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2Zvcm1zL2Jhc2UnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2Zvcm1zL2NhdC1jb21tdW5pdHknO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2Zvcm1zL2NlbnRlcic7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZm9ybXMvY29udGFjdCc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZm9ybXMvbG9naW4nO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2Zvcm1zL2xlYXZlLWNvbW1lbnQnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2Zvcm1zL25ld3NsZXR0ZXInO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2Zvcm1zL3BvbGwnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2Zvcm1zL3Byb2ZpbGUnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2Zvcm1zL3NlYXJjaCc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZm9ybXMvc2VsZWN0aW9uJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9mb3Jtcy9maW5kLWEtY2F0JztcclxuQGltcG9ydCAnY29tcG9uZW50cy9mb3Jtcy9maW5kLWEtY2F0LWJhbm5lcic7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZm9ybXMvdm9sdW50ZWVyLW9wcHMnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2Zvcm1zL2ZpbmQtYS1zaG9wJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9mb3Jtcy9mb3JtLXN1YnNjcmlwdGlvbic7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZm9ybXMvc3BvbnNvckFDYXQnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL3JlZ2lvbmFsLWV2ZW50cyc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZ2FsbGVyeSc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvaGFtYnVyZ2VyJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9tYWluLW5hdi1kZXNrdG9wJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9tYWluLW5hdi1tb2JpbGUnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL21vYmlsZS1uYXYnO1xyXG4vL01FRElBXHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbWVkaWEvYmFzZSc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbWVkaWEvaW5saW5lJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9tZWRpYS9saW5rJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9tZWRpYS9ib2xkJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9tZWRpYS9nYWxsZXJ5JztcclxuQGltcG9ydCAnY29tcG9uZW50cy9tZWRpYS93aWRlJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9tZWRpYS93aWRlLW92ZXJsYXAnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL21lZGlhL3Jlc2VydmVkJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9tZWRpYS9ldmVudCc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbWVkaWEvdmlkZW8nO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL21lZGlhL3NvY2lhbCc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbWVkaWEvY292ZXInO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL21lZGlhL2NhcHRpb24tY292ZXInO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL21lZGlhL2NhcHRpb24taG92ZXInO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL21lZGlhL2hvdmVyLWJhY2tncm91bmQnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL21lZGlhL3RpbGUnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL21lZGlhL29wcCc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbWVkaWEvc3BsaXQnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL21lZGlhL3NpZGViYXInO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL21lZGlhL3N2Z3MvZWR1Y2F0aW9uJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9tZWRpYS9zdmdzL2NvbnRhY3QnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL21lZGlhL3N2Z3MvbmV1dGVyaW5nJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9tZWRpYS9zdmdzL3ZvbHVudGVlcic7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbWVkaWEvdGhlbWUnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL21lZGlhL2hvdmVyLXNjYWxlJztcclxuXHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbWluaS1iaW8nO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL3BhZ2luZyc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcGVuLWNhcmQnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL3Bpbic7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcG9sbCc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcG9wdXAnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL3NvY2lhbCc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvc2xpZGVycyc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvc3BvbnNvci1wb3N0ZXInO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL3N0ZXBwZXInO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL3N0b3J5JztcclxuQGltcG9ydCAnY29tcG9uZW50cy90YWInO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL3NlYXJjaC1ncm91cCc7XHJcbi8vIEBpbXBvcnQgJ2NvbXBvbmVudHMvdXNlci1ibG9jayc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvd2FybmluZy1tZXNzYWdlJztcclxuXHJcbkBpbXBvcnQgXCJjb21wb25lbnRzL21vYmlsZS1zdGlja3ktYmFyXCI7XHJcblxyXG5AaW1wb3J0IFwiY29tcG9uZW50cy9jb21tdW5pdHktc3RhdHNcIjtcclxuQGltcG9ydCBcImNvbXBvbmVudHMvcGVuLWNhcmQtb3B0aW9uc1wiO1xyXG5AaW1wb3J0IFwiY29tcG9uZW50cy9kb25hdGUtb3B0aW9uXCI7XHJcbkBpbXBvcnQgXCJjb21wb25lbnRzL2xpbmtzXCI7XHJcbkBpbXBvcnQgXCJjb21wb25lbnRzL3BhZ2luYXRpb25cIjtcclxuQGltcG9ydCBcImNvbXBvbmVudHMvc29ydC1ieVwiO1xyXG5AaW1wb3J0IFwiY29tcG9uZW50cy9tZW1iZXJzaGlwLXR5cGVcIjtcclxuQGltcG9ydCBcImNvbXBvbmVudHMvZml4ZWQtcmF0aW9cIjtcclxuQGltcG9ydCBcImNvbXBvbmVudHMvc3VibWl0LWNvbW1lbnRcIjtcclxuQGltcG9ydCBcImNvbXBvbmVudHMvaXMtc3VibWl0dGluZ1wiO1xyXG5cclxuQGltcG9ydCBcImNvbXBvbmVudHMvb25lLXRydXN0LWN1c3RvbS1jb2RlXCI7XHJcblxyXG5AaW1wb3J0IFwiY29tcG9uZW50cy9fc2ltb25zLWNhdC1iYW5uZXItbG9nby5zY3NzXCI7XHJcbkBpbXBvcnQgXCJjb21wb25lbnRzL19zaW1vbnMtY2F0LWluZm8tYm94LnNjc3NcIjtcclxuQGltcG9ydCBcImNvbXBvbmVudHMvX3NpbW9ucy1jYXQtbWVkaWEuc2Nzc1wiO1xyXG5AaW1wb3J0IFwiY29tcG9uZW50cy9fZm9udC1zaW1vbnMtY2F0LnNjc3NcIjtcclxuXHJcbkBpbXBvcnQgXCJjb21wb25lbnRzL2FuaW1hdGlvbi1zdHlsZXNcIjtcclxuXHJcbkBpbXBvcnQgXCJjb21wb25lbnRzL19pZnJhbWUtZml4LnNjc3NcIjtcclxuQGltcG9ydCBcImNvbXBvbmVudHMvX2V2ZW50cy5zY3NzXCI7XHJcblxyXG5AaW1wb3J0IFwiY29tcG9uZW50cy9fYXBwZWFscy5zY3NzXCI7XHJcbkBpbXBvcnQgXCJjb21wb25lbnRzL19zcGVjaWFsQXBwZWFscy5zY3NzXCI7XHJcbkBpbXBvcnQgXCJjb21wb25lbnRzL19maW5kLXVzLnNjc3NcIjtcclxuQGltcG9ydCBcImNvbXBvbmVudHMvZm9ybXMvX21lbWJlcnNoaXAtZm9ybS5zY3NzXCI7XHJcbkBpbXBvcnQgXCJjb21wb25lbnRzL19icmVhZGNydW1iLXNvY2lhbC5zY3NzXCI7XHJcbkBpbXBvcnQgXCJjb21wb25lbnRzL19pbWFnZS1nYWxsZXJ5LnNjc3NcIjtcclxuQGltcG9ydCBcImNvbXBvbmVudHMvX3F1aWNrbGlua3Muc2Nzc1wiO1xyXG5AaW1wb3J0IFwiY29tcG9uZW50cy9fYWNjb3JkaW9uLnNjc3NcIjtcclxuQGltcG9ydCBcImNvbXBvbmVudHMvX3N0b3J5cXVvdGUuc2Nzc1wiO1xyXG5AaW1wb3J0IFwiY29tcG9uZW50cy9fc3VwcG9ydGluZ2JveC5zY3NzXCI7XHJcbkBpbXBvcnQgXCJjb21wb25lbnRzL19zaXRlLXNlYXJjaC5zY3NzXCI7XHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBMQVlPVVRcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuQGltcG9ydCAnbGF5b3V0L2Jhc2UnO1xyXG5AaW1wb3J0ICdsYXlvdXQvZm9vdGVyJztcclxuQGltcG9ydCAnbGF5b3V0L2dyaWRzJztcclxuQGltcG9ydCAnbGF5b3V0L2ZsZXgnO1xyXG5AaW1wb3J0ICdsYXlvdXQvaGVhZGVyLWdyb3VwJztcclxuQGltcG9ydCAnbGF5b3V0L2hlYWRlci1tZXNzYWdlJztcclxuQGltcG9ydCAnbGF5b3V0L2hlcm8tYWQtYm94ZXMnO1xyXG5AaW1wb3J0ICdsYXlvdXQvbGluZS1jbGFtcCc7XHJcbkBpbXBvcnQgJ2xheW91dC9tYXAnO1xyXG5AaW1wb3J0ICdsYXlvdXQvc2lkZWJhcic7XHJcbkBpbXBvcnQgJ2xheW91dC9zaXRlJztcclxuQGltcG9ydCAnbGF5b3V0L3N1Yi1uYXYnO1xyXG5AaW1wb3J0ICdsYXlvdXQvdGFibGVzJztcclxuQGltcG9ydCAnbGF5b3V0L2Zsb3cnO1xyXG5AaW1wb3J0ICdsYXlvdXQvcGVucyc7XHJcbkBpbXBvcnQgJ2xheW91dC91c2VyLWJsb2NrJztcclxuQGltcG9ydCAnbGF5b3V0L3NpZGVtZW51JztcclxuQGltcG9ydCAnbGF5b3V0L21haW4tc2l0ZS1uYXYnO1xyXG5AaW1wb3J0ICdsYXlvdXQvX2V2ZW50cy1oZXJvJztcclxuXHJcbkBpbXBvcnQgXCJjb21wb25lbnRzL19ibG9nLXBvc3Quc2Nzc1wiO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL3JlYWQtbW9yZSc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdmV0LWFwcHJvdmVkLWJhZGdlJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9fZG9uYXRpb24tcmVhZC1tb3JlLWNvbnRhaW5lci5zY3NzJztcclxuQGltcG9ydCBcImNvbXBvbmVudHMvZG9uYXRpb24tYmFubmVyLXRoZW1lXCI7XHJcbkBpbXBvcnQgXCJjb21wb25lbnRzL2dvb2dsZWN1c3RvbXNlYXJjaFwiO1xyXG5AaW1wb3J0IFwiY29tcG9uZW50cy9icmVhZGNydW1iXCI7XHJcbkBpbXBvcnQgXCJjb21wb25lbnRzL19leGl0U2l0ZUJ1dHRvbi5zY3NzXCI7XHJcbkBpbXBvcnQgXCJjb21wb25lbnRzL19ncmlkLWN0YS1iYW5uZXIuc2Nzc1wiO1xyXG5AaW1wb3J0IFwiY29tcG9uZW50cy9fZ3JpZC1oZXJvLWJhbm5lcnMuc2Nzc1wiO1xyXG5AaW1wb3J0IFwiY29tcG9uZW50cy9fZ3JpZC1pbmZvcm1hdGlvbi1vdmVydmlldy5zY3NzXCI7XHJcbkBpbXBvcnQgXCJjb21wb25lbnRzL19ncmlkLW1lZGEtYmxvY2stdmlkZW8uc2Nzc1wiO1xyXG5AaW1wb3J0IFwiY29tcG9uZW50cy9fZ3JpZC1mZWF0dXJlZC1wcm9tb3Rpb24uc2Nzc1wiO1xyXG5AaW1wb3J0IFwiY29tcG9uZW50cy9fZ3JpZC1zcG9uc29yLXBlbi1ibG9jay5zY3NzXCI7XHJcblxyXG4vLyBTdGFuZGFsb25lIGNhdCByZXBvcnQgcGFnZVxyXG5AaW1wb3J0IFwiY29tcG9uZW50cy9fY2F0LXJlcG9ydFwiO1xyXG5cclxuLy8gQWRvcHQgYSBjYXQgcGFnZVxyXG5AaW1wb3J0IFwiY29tcG9uZW50cy9mb3Jtcy9fYWRvcHQtYS1jYXQtZm9ybVwiO1xyXG5cclxuLy8gU3BvbnNvciBQb3J0YWxcclxuQGltcG9ydCBcInNwb25zb3JfcG9ydGFsL21hc3RlclwiO1xyXG5cclxuLy8gRXZlbnRzXHJcbkBpbXBvcnQgXCJldmVudHMvX2V2ZW50c1wiO1xyXG5cclxuLmhvbWVwYWdlIC50cy00IHtcclxuICAgIGNvbG9yOiRicmFuZC1wdXJwbGU7XHJcbn1cclxuXHJcbi5nb29nbGUtb3B0aW1pemUtLXNob3ctaW4tcHJldmlld3tcclxuICBkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG4uZ3JpZF9faXRlbS0tZ29vZ2xlLW9wdGltaXple1xyXG5cclxufVxyXG5cclxuLnVtYi1ibG9jay1ncmlkX19sYXlvdXQtY29udGFpbmVyIHtcclxuICAgICo6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xyXG4gICAgfVxyXG5cclxuICAgID4gLmJnLXdoaXRlICsgLmJnLXdoaXRlIHtcclxuICAgICAgICBwYWRkaW5nLXRvcDogMDtcclxuICAgIH1cclxufVxyXG4uYmctd2hpdGUucGQtdnQtbGcgKyAuYmctd2hpdGUucGQtdnQtbGcge1xyXG4gICAgcGFkZGluZy10b3A6IDBweDtcclxufVxyXG5cclxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi5hbGlnbi1iYXNlbGluZSAgICB7IHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZSAhaW1wb3J0YW50OyB9IC8vIEJyb3dzZXIgZGVmYXVsdFxuLmFsaWduLXRvcCAgICAgICAgIHsgdmVydGljYWwtYWxpZ246IHRvcCAhaW1wb3J0YW50OyB9XG4uYWxpZ24tbWlkZGxlICAgICAgeyB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlICFpbXBvcnRhbnQ7IH1cbi5hbGlnbi1ib3R0b20gICAgICB7IHZlcnRpY2FsLWFsaWduOiBib3R0b20gIWltcG9ydGFudDsgfVxuLmFsaWduLXRleHQtYm90dG9tIHsgdmVydGljYWwtYWxpZ246IHRleHQtYm90dG9tICFpbXBvcnRhbnQ7IH1cbi5hbGlnbi10ZXh0LXRvcCAgICB7IHZlcnRpY2FsLWFsaWduOiB0ZXh0LXRvcCAhaW1wb3J0YW50OyB9XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gQ29udGV4dHVhbCBiYWNrZ3JvdW5kc1xuXG5AbWl4aW4gYmctdmFyaWFudCgkcGFyZW50LCAkY29sb3IsICRpZ25vcmUtd2FybmluZzogZmFsc2UpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yICFpbXBvcnRhbnQ7XG4gIH1cbiAgYSN7JHBhcmVudH0sXG4gIGJ1dHRvbiN7JHBhcmVudH0ge1xuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRjb2xvciwgMTAlKSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJUaGUgYGJnLXZhcmlhbnRgIG1peGluXCIsIFwidjQuNC4wXCIsIFwidjVcIiwgJGlnbm9yZS13YXJuaW5nKTtcbn1cblxuQG1peGluIGJnLWdyYWRpZW50LXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yLCAkaWdub3JlLXdhcm5pbmc6IGZhbHNlKSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGJhY2tncm91bmQ6ICRjb2xvciBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCBtaXgoJGJvZHktYmcsICRjb2xvciwgMTUlKSwgJGNvbG9yKSByZXBlYXQteCAhaW1wb3J0YW50O1xuICB9XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcIlRoZSBgYmctZ3JhZGllbnQtdmFyaWFudGAgbWl4aW5cIiwgXCJ2NC41LjBcIiwgXCJ2NVwiLCAkaWdub3JlLXdhcm5pbmcpO1xufVxuIiwiLy8gSG92ZXIgbWl4aW4gYW5kIGAkZW5hYmxlLWhvdmVyLW1lZGlhLXF1ZXJ5YCBhcmUgZGVwcmVjYXRlZC5cbi8vXG4vLyBPcmlnaW5hbGx5IGFkZGVkIGR1cmluZyBvdXIgYWxwaGFzIGFuZCBtYWludGFpbmVkIGR1cmluZyBiZXRhcywgdGhpcyBtaXhpbiB3YXNcbi8vIGRlc2lnbmVkIHRvIHByZXZlbnQgYDpob3ZlcmAgc3RpY2tpbmVzcyBvbiBpT1MtYW4gaXNzdWUgd2hlcmUgaG92ZXIgc3R5bGVzXG4vLyB3b3VsZCBwZXJzaXN0IGFmdGVyIGluaXRpYWwgdG91Y2guXG4vL1xuLy8gRm9yIGJhY2t3YXJkIGNvbXBhdGliaWxpdHksIHdlJ3ZlIGtlcHQgdGhlc2UgbWl4aW5zIGFuZCB1cGRhdGVkIHRoZW0gdG9cbi8vIGFsd2F5cyByZXR1cm4gdGhlaXIgcmVndWxhciBwc2V1ZG8tY2xhc3NlcyBpbnN0ZWFkIG9mIGEgc2hpbW1lZCBtZWRpYSBxdWVyeS5cbi8vXG4vLyBJc3N1ZTogaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNTE5NVxuXG5AbWl4aW4gaG92ZXIoKSB7XG4gICY6aG92ZXIgeyBAY29udGVudDsgfVxufVxuXG5AbWl4aW4gaG92ZXItZm9jdXMoKSB7XG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBwbGFpbi1ob3Zlci1mb2N1cygpIHtcbiAgJixcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuQG1peGluIGhvdmVyLWZvY3VzLWFjdGl2ZSgpIHtcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyxcbiAgJjphY3RpdmUge1xuICAgIEBjb250ZW50O1xuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIEBpbmNsdWRlIGJnLXZhcmlhbnQoXCIuYmctI3skY29sb3J9XCIsICR2YWx1ZSwgdHJ1ZSk7XG59XG5cbkBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAgIEBpbmNsdWRlIGJnLWdyYWRpZW50LXZhcmlhbnQoXCIuYmctZ3JhZGllbnQtI3skY29sb3J9XCIsICR2YWx1ZSwgdHJ1ZSk7XG4gIH1cbn1cblxuLmJnLXdoaXRlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG59XG5cbi5iZy10cmFuc3BhcmVudCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3QsIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vL1xuLy8gQm9yZGVyXG4vL1xuXG4uYm9yZGVyICAgICAgICAgeyBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvciAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLXRvcCAgICAgeyBib3JkZXItdG9wOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3IgIWltcG9ydGFudDsgfVxuLmJvcmRlci1yaWdodCAgIHsgYm9yZGVyLXJpZ2h0OiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3IgIWltcG9ydGFudDsgfVxuLmJvcmRlci1ib3R0b20gIHsgYm9yZGVyLWJvdHRvbTogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItbGVmdCAgICB7IGJvcmRlci1sZWZ0OiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3IgIWltcG9ydGFudDsgfVxuXG4uYm9yZGVyLTAgICAgICAgIHsgYm9yZGVyOiAwICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItdG9wLTAgICAgeyBib3JkZXItdG9wOiAwICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItcmlnaHQtMCAgeyBib3JkZXItcmlnaHQ6IDAgIWltcG9ydGFudDsgfVxuLmJvcmRlci1ib3R0b20tMCB7IGJvcmRlci1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuLmJvcmRlci1sZWZ0LTAgICB7IGJvcmRlci1sZWZ0OiAwICFpbXBvcnRhbnQ7IH1cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIC5ib3JkZXItI3skY29sb3J9IHtcbiAgICBib3JkZXItY29sb3I6ICR2YWx1ZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5ib3JkZXItd2hpdGUge1xuICBib3JkZXItY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xufVxuXG4vL1xuLy8gQm9yZGVyLXJhZGl1c1xuLy9cblxuLnJvdW5kZWQtc20ge1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1zbSAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZCB7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLXRvcCB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1yaWdodCB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtYm90dG9tIHtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLWxlZnQge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1sZyB7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWxnICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLWNpcmNsZSB7XG4gIGJvcmRlci1yYWRpdXM6IDUwJSAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1waWxsIHtcbiAgYm9yZGVyLXJhZGl1czogJHJvdW5kZWQtcGlsbCAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC0wIHtcbiAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xufVxuIiwiQG1peGluIGNsZWFyZml4KCkge1xuICAmOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vXG4vLyBVdGlsaXRpZXMgZm9yIGNvbW1vbiBgZGlzcGxheWAgdmFsdWVzXG4vL1xuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICBAZWFjaCAkdmFsdWUgaW4gJGRpc3BsYXlzIHtcbiAgICAgIC5kI3skaW5maXh9LSN7JHZhbHVlfSB7IGRpc3BsYXk6ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG59XG5cblxuLy9cbi8vIFV0aWxpdGllcyBmb3IgdG9nZ2xpbmcgYGRpc3BsYXlgIGluIHByaW50XG4vL1xuXG5AbWVkaWEgcHJpbnQge1xuICBAZWFjaCAkdmFsdWUgaW4gJGRpc3BsYXlzIHtcbiAgICAuZC1wcmludC0jeyR2YWx1ZX0geyBkaXNwbGF5OiAkdmFsdWUgIWltcG9ydGFudDsgfVxuICB9XG59XG4iLCIvLyBCcmVha3BvaW50IHZpZXdwb3J0IHNpemVzIGFuZCBtZWRpYSBxdWVyaWVzLlxuLy9cbi8vIEJyZWFrcG9pbnRzIGFyZSBkZWZpbmVkIGFzIGEgbWFwIG9mIChuYW1lOiBtaW5pbXVtIHdpZHRoKSwgb3JkZXIgZnJvbSBzbWFsbCB0byBsYXJnZTpcbi8vXG4vLyAgICAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpXG4vL1xuLy8gVGhlIG1hcCBkZWZpbmVkIGluIHRoZSBgJGdyaWQtYnJlYWtwb2ludHNgIGdsb2JhbCB2YXJpYWJsZSBpcyB1c2VkIGFzIHRoZSBgJGJyZWFrcG9pbnRzYCBhcmd1bWVudCBieSBkZWZhdWx0LlxuXG4vLyBOYW1lIG9mIHRoZSBuZXh0IGJyZWFrcG9pbnQsIG9yIG51bGwgZm9yIHRoZSBsYXN0IGJyZWFrcG9pbnQuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtKVxuLy8gICAgbWRcbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIG1kXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20sICRicmVha3BvaW50LW5hbWVzOiAoeHMgc20gbWQgbGcgeGwpKVxuLy8gICAgbWRcbkBmdW5jdGlvbiBicmVha3BvaW50LW5leHQoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMsICRicmVha3BvaW50LW5hbWVzOiBtYXAta2V5cygkYnJlYWtwb2ludHMpKSB7XG4gICRuOiBpbmRleCgkYnJlYWtwb2ludC1uYW1lcywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRuICE9IG51bGwgYW5kICRuIDwgbGVuZ3RoKCRicmVha3BvaW50LW5hbWVzKSwgbnRoKCRicmVha3BvaW50LW5hbWVzLCAkbiArIDEpLCBudWxsKTtcbn1cblxuLy8gTWluaW11bSBicmVha3BvaW50IHdpZHRoLiBOdWxsIGZvciB0aGUgc21hbGxlc3QgKGZpcnN0KSBicmVha3BvaW50LlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbWluKHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgNTc2cHhcbkBmdW5jdGlvbiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRtaW4gIT0gMCwgJG1pbiwgbnVsbCk7XG59XG5cbi8vIE1heGltdW0gYnJlYWtwb2ludCB3aWR0aC4gTnVsbCBmb3IgdGhlIGxhcmdlc3QgKGxhc3QpIGJyZWFrcG9pbnQuXG4vLyBUaGUgbWF4aW11bSB2YWx1ZSBpcyBjYWxjdWxhdGVkIGFzIHRoZSBtaW5pbXVtIG9mIHRoZSBuZXh0IG9uZSBsZXNzIDAuMDJweFxuLy8gdG8gd29yayBhcm91bmQgdGhlIGxpbWl0YXRpb25zIG9mIGBtaW4tYCBhbmQgYG1heC1gIHByZWZpeGVzIGFuZCB2aWV3cG9ydHMgd2l0aCBmcmFjdGlvbmFsIHdpZHRocy5cbi8vIFNlZSBodHRwczovL3d3dy53My5vcmcvVFIvbWVkaWFxdWVyaWVzLTQvI21xLW1pbi1tYXhcbi8vIFVzZXMgMC4wMnB4IHJhdGhlciB0aGFuIDAuMDFweCB0byB3b3JrIGFyb3VuZCBhIGN1cnJlbnQgcm91bmRpbmcgYnVnIGluIFNhZmFyaS5cbi8vIFNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc4MjYxXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1tYXgoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICA3NjcuOThweFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRuZXh0OiBicmVha3BvaW50LW5leHQoJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEByZXR1cm4gaWYoJG5leHQsIGJyZWFrcG9pbnQtbWluKCRuZXh0LCAkYnJlYWtwb2ludHMpIC0gLjAyLCBudWxsKTtcbn1cblxuLy8gUmV0dXJucyBhIGJsYW5rIHN0cmluZyBpZiBzbWFsbGVzdCBicmVha3BvaW50LCBvdGhlcndpc2UgcmV0dXJucyB0aGUgbmFtZSB3aXRoIGEgZGFzaCBpbiBmcm9udC5cbi8vIFVzZWZ1bCBmb3IgbWFraW5nIHJlc3BvbnNpdmUgdXRpbGl0aWVzLlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoeHMsICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBcIlwiICAoUmV0dXJucyBhIGJsYW5rIHN0cmluZylcbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBcIi1zbVwiXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1pbmZpeCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICBAcmV0dXJuIGlmKGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpID09IG51bGwsIFwiXCIsIFwiLSN7JG5hbWV9XCIpO1xufVxuXG4vLyBNZWRpYSBvZiBhdCBsZWFzdCB0aGUgbWluaW11bSBicmVha3BvaW50IHdpZHRoLiBObyBxdWVyeSBmb3IgdGhlIHNtYWxsZXN0IGJyZWFrcG9pbnQuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIHdpZGVyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWluIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSBvZiBhdCBtb3N0IHRoZSBtYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgbGFyZ2VzdCBicmVha3BvaW50LlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50IGFuZCBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LWRvd24oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWF4IHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSB0aGF0IHNwYW5zIG11bHRpcGxlIGJyZWFrcG9pbnQgd2lkdGhzLlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IGJldHdlZW4gdGhlIG1pbiBhbmQgbWF4IGJyZWFrcG9pbnRzXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1iZXR3ZWVuKCRsb3dlciwgJHVwcGVyLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRsb3dlciwgJGJyZWFrcG9pbnRzKTtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJHVwcGVyLCAkYnJlYWtwb2ludHMpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRsb3dlciwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1pbiA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJHVwcGVyLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLyBNZWRpYSBiZXR3ZWVuIHRoZSBicmVha3BvaW50J3MgbWluaW11bSBhbmQgbWF4aW11bSB3aWR0aHMuXG4vLyBObyBtaW5pbXVtIGZvciB0aGUgc21hbGxlc3QgYnJlYWtwb2ludCwgYW5kIG5vIG1heGltdW0gZm9yIHRoZSBsYXJnZXN0IG9uZS5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBvbmx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50LCBub3Qgdmlld3BvcnRzIGFueSB3aWRlciBvciBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LW9ubHkoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWluID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmFtZSwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIENyZWRpdDogTmljb2xhcyBHYWxsYWdoZXIgYW5kIFNVSVQgQ1NTLlxuXG4uZW1iZWQtcmVzcG9uc2l2ZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxuXG4gIC5lbWJlZC1yZXNwb25zaXZlLWl0ZW0sXG4gIGlmcmFtZSxcbiAgZW1iZWQsXG4gIG9iamVjdCxcbiAgdmlkZW8ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJvcmRlcjogMDtcbiAgfVxufVxuXG5AZWFjaCAkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8gaW4gJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvcyB7XG4gICRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpby14OiBudGgoJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLCAxKTtcbiAgJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLXk6IG50aCgkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8sIDIpO1xuXG4gIC5lbWJlZC1yZXNwb25zaXZlLSN7JGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLXh9YnkjeyRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpby15fSB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHBhZGRpbmctdG9wOiBwZXJjZW50YWdlKGRpdmlkZSgkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8teSwgJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLXgpKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBGbGV4IHZhcmlhdGlvblxuLy9cbi8vIEN1c3RvbSBzdHlsZXMgZm9yIGFkZGl0aW9uYWwgZmxleCBhbGlnbm1lbnQgb3B0aW9ucy5cblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLmZsZXgjeyRpbmZpeH0tcm93ICAgICAgICAgICAgeyBmbGV4LWRpcmVjdGlvbjogcm93ICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1jb2x1bW4gICAgICAgICB7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4gIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LXJvdy1yZXZlcnNlICAgIHsgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1jb2x1bW4tcmV2ZXJzZSB7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZSAhaW1wb3J0YW50OyB9XG5cbiAgICAuZmxleCN7JGluZml4fS13cmFwICAgICAgICAgeyBmbGV4LXdyYXA6IHdyYXAgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LW5vd3JhcCAgICAgICB7IGZsZXgtd3JhcDogbm93cmFwICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS13cmFwLXJldmVyc2UgeyBmbGV4LXdyYXA6IHdyYXAtcmV2ZXJzZSAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tZmlsbCAgICAgICAgIHsgZmxleDogMSAxIGF1dG8gIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LWdyb3ctMCAgICAgICB7IGZsZXgtZ3JvdzogMCAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tZ3Jvdy0xICAgICAgIHsgZmxleC1ncm93OiAxICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1zaHJpbmstMCAgICAgeyBmbGV4LXNocmluazogMCAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tc2hyaW5rLTEgICAgIHsgZmxleC1zaHJpbms6IDEgIWltcG9ydGFudDsgfVxuXG4gICAgLmp1c3RpZnktY29udGVudCN7JGluZml4fS1zdGFydCAgIHsganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7IH1cbiAgICAuanVzdGlmeS1jb250ZW50I3skaW5maXh9LWVuZCAgICAgeyBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7IH1cbiAgICAuanVzdGlmeS1jb250ZW50I3skaW5maXh9LWNlbnRlciAgeyBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gICAgLmp1c3RpZnktY29udGVudCN7JGluZml4fS1iZXR3ZWVuIHsganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7IH1cbiAgICAuanVzdGlmeS1jb250ZW50I3skaW5maXh9LWFyb3VuZCAgeyBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50OyB9XG5cbiAgICAuYWxpZ24taXRlbXMjeyRpbmZpeH0tc3RhcnQgICAgeyBhbGlnbi1pdGVtczogZmxleC1zdGFydCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWl0ZW1zI3skaW5maXh9LWVuZCAgICAgIHsgYWxpZ24taXRlbXM6IGZsZXgtZW5kICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24taXRlbXMjeyRpbmZpeH0tY2VudGVyICAgeyBhbGlnbi1pdGVtczogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24taXRlbXMjeyRpbmZpeH0tYmFzZWxpbmUgeyBhbGlnbi1pdGVtczogYmFzZWxpbmUgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1zdHJldGNoICB7IGFsaWduLWl0ZW1zOiBzdHJldGNoICFpbXBvcnRhbnQ7IH1cblxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LXN0YXJ0ICAgeyBhbGlnbi1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1lbmQgICAgIHsgYWxpZ24tY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LWNlbnRlciAgeyBhbGlnbi1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LWJldHdlZW4geyBhbGlnbi1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1hcm91bmQgIHsgYWxpZ24tY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1zdHJldGNoIHsgYWxpZ24tY29udGVudDogc3RyZXRjaCAhaW1wb3J0YW50OyB9XG5cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1hdXRvICAgICB7IGFsaWduLXNlbGY6IGF1dG8gIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LXN0YXJ0ICAgIHsgYWxpZ24tc2VsZjogZmxleC1zdGFydCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tZW5kICAgICAgeyBhbGlnbi1zZWxmOiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tY2VudGVyICAgeyBhbGlnbi1zZWxmOiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LWJhc2VsaW5lIHsgYWxpZ24tc2VsZjogYmFzZWxpbmUgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LXN0cmV0Y2ggIHsgYWxpZ24tc2VsZjogc3RyZXRjaCAhaW1wb3J0YW50OyB9XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAuZmxvYXQjeyRpbmZpeH0tbGVmdCAgeyBmbG9hdDogbGVmdCAhaW1wb3J0YW50OyB9XG4gICAgLmZsb2F0I3skaW5maXh9LXJpZ2h0IHsgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxvYXQjeyRpbmZpeH0tbm9uZSAgeyBmbG9hdDogbm9uZSAhaW1wb3J0YW50OyB9XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG5AZWFjaCAkdmFsdWUgaW4gJHVzZXItc2VsZWN0cyB7XG4gIC51c2VyLXNlbGVjdC0jeyR2YWx1ZX0geyB1c2VyLXNlbGVjdDogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG5AZWFjaCAkdmFsdWUgaW4gJG92ZXJmbG93cyB7XG4gIC5vdmVyZmxvdy0jeyR2YWx1ZX0geyBvdmVyZmxvdzogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBDb21tb24gdmFsdWVzXG5AZWFjaCAkcG9zaXRpb24gaW4gJHBvc2l0aW9ucyB7XG4gIC5wb3NpdGlvbi0jeyRwb3NpdGlvbn0geyBwb3NpdGlvbjogJHBvc2l0aW9uICFpbXBvcnRhbnQ7IH1cbn1cblxuLy8gU2hvcnRoYW5kXG5cbi5maXhlZC10b3Age1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtZml4ZWQ7XG59XG5cbi5maXhlZC1ib3R0b20ge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtZml4ZWQ7XG59XG5cbi5zdGlja3ktdG9wIHtcbiAgQHN1cHBvcnRzIChwb3NpdGlvbjogc3RpY2t5KSB7XG4gICAgcG9zaXRpb246IHN0aWNreTtcbiAgICB0b3A6IDA7XG4gICAgei1pbmRleDogJHppbmRleC1zdGlja3k7XG4gIH1cbn1cbiIsIi8vIFZhcmlhYmxlc1xuLy9cbi8vIFZhcmlhYmxlcyBzaG91bGQgZm9sbG93IHRoZSBgJGNvbXBvbmVudC1zdGF0ZS1wcm9wZXJ0eS1zaXplYCBmb3JtdWxhIGZvclxuLy8gY29uc2lzdGVudCBuYW1pbmcuIEV4OiAkbmF2LWxpbmstZGlzYWJsZWQtY29sb3IgYW5kICRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHMuXG5cbi8vIENvbG9yIHN5c3RlbVxuXG4kd2hpdGU6ICAgICNmZmYgIWRlZmF1bHQ7XG4kZ3JheS0xMDA6ICNmOGY5ZmEgIWRlZmF1bHQ7XG4kZ3JheS0yMDA6ICNlOWVjZWYgIWRlZmF1bHQ7XG4kZ3JheS0zMDA6ICNkZWUyZTYgIWRlZmF1bHQ7XG4kZ3JheS00MDA6ICNjZWQ0ZGEgIWRlZmF1bHQ7XG4kZ3JheS01MDA6ICNhZGI1YmQgIWRlZmF1bHQ7XG4kZ3JheS02MDA6ICM2Yzc1N2QgIWRlZmF1bHQ7XG4kZ3JheS03MDA6ICM0OTUwNTcgIWRlZmF1bHQ7XG4kZ3JheS04MDA6ICMzNDNhNDAgIWRlZmF1bHQ7XG4kZ3JheS05MDA6ICMyMTI1MjkgIWRlZmF1bHQ7XG4kYmxhY2s6ICAgICMwMDAgIWRlZmF1bHQ7XG5cbiRncmF5czogKCkgIWRlZmF1bHQ7XG4kZ3JheXM6IG1hcC1tZXJnZShcbiAgKFxuICAgIFwiMTAwXCI6ICRncmF5LTEwMCxcbiAgICBcIjIwMFwiOiAkZ3JheS0yMDAsXG4gICAgXCIzMDBcIjogJGdyYXktMzAwLFxuICAgIFwiNDAwXCI6ICRncmF5LTQwMCxcbiAgICBcIjUwMFwiOiAkZ3JheS01MDAsXG4gICAgXCI2MDBcIjogJGdyYXktNjAwLFxuICAgIFwiNzAwXCI6ICRncmF5LTcwMCxcbiAgICBcIjgwMFwiOiAkZ3JheS04MDAsXG4gICAgXCI5MDBcIjogJGdyYXktOTAwXG4gICksXG4gICRncmF5c1xuKTtcblxuJGJsdWU6ICAgICMwMDdiZmYgIWRlZmF1bHQ7XG4kaW5kaWdvOiAgIzY2MTBmMiAhZGVmYXVsdDtcbiRwdXJwbGU6ICAjNmY0MmMxICFkZWZhdWx0O1xuJHBpbms6ICAgICNlODNlOGMgIWRlZmF1bHQ7XG4kcmVkOiAgICAgI2RjMzU0NSAhZGVmYXVsdDtcbiRvcmFuZ2U6ICAjZmQ3ZTE0ICFkZWZhdWx0O1xuJHllbGxvdzogICNmZmMxMDcgIWRlZmF1bHQ7XG4kZ3JlZW46ICAgIzI4YTc0NSAhZGVmYXVsdDtcbiR0ZWFsOiAgICAjMjBjOTk3ICFkZWZhdWx0O1xuJGN5YW46ICAgICMxN2EyYjggIWRlZmF1bHQ7XG5cbiRjb2xvcnM6ICgpICFkZWZhdWx0O1xuJGNvbG9yczogbWFwLW1lcmdlKFxuICAoXG4gICAgXCJibHVlXCI6ICAgICAgICRibHVlLFxuICAgIFwiaW5kaWdvXCI6ICAgICAkaW5kaWdvLFxuICAgIFwicHVycGxlXCI6ICAgICAkcHVycGxlLFxuICAgIFwicGlua1wiOiAgICAgICAkcGluayxcbiAgICBcInJlZFwiOiAgICAgICAgJHJlZCxcbiAgICBcIm9yYW5nZVwiOiAgICAgJG9yYW5nZSxcbiAgICBcInllbGxvd1wiOiAgICAgJHllbGxvdyxcbiAgICBcImdyZWVuXCI6ICAgICAgJGdyZWVuLFxuICAgIFwidGVhbFwiOiAgICAgICAkdGVhbCxcbiAgICBcImN5YW5cIjogICAgICAgJGN5YW4sXG4gICAgXCJ3aGl0ZVwiOiAgICAgICR3aGl0ZSxcbiAgICBcImdyYXlcIjogICAgICAgJGdyYXktNjAwLFxuICAgIFwiZ3JheS1kYXJrXCI6ICAkZ3JheS04MDBcbiAgKSxcbiAgJGNvbG9yc1xuKTtcblxuJHByaW1hcnk6ICAgICAgICRibHVlICFkZWZhdWx0O1xuJHNlY29uZGFyeTogICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRzdWNjZXNzOiAgICAgICAkZ3JlZW4gIWRlZmF1bHQ7XG4kaW5mbzogICAgICAgICAgJGN5YW4gIWRlZmF1bHQ7XG4kd2FybmluZzogICAgICAgJHllbGxvdyAhZGVmYXVsdDtcbiRkYW5nZXI6ICAgICAgICAkcmVkICFkZWZhdWx0O1xuJGxpZ2h0OiAgICAgICAgICRncmF5LTEwMCAhZGVmYXVsdDtcbiRkYXJrOiAgICAgICAgICAkZ3JheS04MDAgIWRlZmF1bHQ7XG5cbiR0aGVtZS1jb2xvcnM6ICgpICFkZWZhdWx0O1xuJHRoZW1lLWNvbG9yczogbWFwLW1lcmdlKFxuICAoXG4gICAgXCJwcmltYXJ5XCI6ICAgICRwcmltYXJ5LFxuICAgIFwic2Vjb25kYXJ5XCI6ICAkc2Vjb25kYXJ5LFxuICAgIFwic3VjY2Vzc1wiOiAgICAkc3VjY2VzcyxcbiAgICBcImluZm9cIjogICAgICAgJGluZm8sXG4gICAgXCJ3YXJuaW5nXCI6ICAgICR3YXJuaW5nLFxuICAgIFwiZGFuZ2VyXCI6ICAgICAkZGFuZ2VyLFxuICAgIFwibGlnaHRcIjogICAgICAkbGlnaHQsXG4gICAgXCJkYXJrXCI6ICAgICAgICRkYXJrXG4gICksXG4gICR0aGVtZS1jb2xvcnNcbik7XG5cbi8vIFNldCBhIHNwZWNpZmljIGp1bXAgcG9pbnQgZm9yIHJlcXVlc3RpbmcgY29sb3IganVtcHNcbiR0aGVtZS1jb2xvci1pbnRlcnZhbDogICAgICA4JSAhZGVmYXVsdDtcblxuLy8gVGhlIHlpcSBsaWdodG5lc3MgdmFsdWUgdGhhdCBkZXRlcm1pbmVzIHdoZW4gdGhlIGxpZ2h0bmVzcyBvZiBjb2xvciBjaGFuZ2VzIGZyb20gXCJkYXJrXCIgdG8gXCJsaWdodFwiLiBBY2NlcHRhYmxlIHZhbHVlcyBhcmUgYmV0d2VlbiAwIGFuZCAyNTUuXG4keWlxLWNvbnRyYXN0ZWQtdGhyZXNob2xkOiAgMTUwICFkZWZhdWx0O1xuXG4vLyBDdXN0b21pemUgdGhlIGxpZ2h0IGFuZCBkYXJrIHRleHQgY29sb3JzIGZvciB1c2UgaW4gb3VyIFlJUSBjb2xvciBjb250cmFzdCBmdW5jdGlvbi5cbiR5aXEtdGV4dC1kYXJrOiAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG4keWlxLXRleHQtbGlnaHQ6ICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuXG4vLyBDaGFyYWN0ZXJzIHdoaWNoIGFyZSBlc2NhcGVkIGJ5IHRoZSBlc2NhcGUtc3ZnIGZ1bmN0aW9uXG4kZXNjYXBlZC1jaGFyYWN0ZXJzOiAoXG4gIChcIjxcIiwgXCIlM2NcIiksXG4gIChcIj5cIiwgXCIlM2VcIiksXG4gIChcIiNcIiwgXCIlMjNcIiksXG4gIChcIihcIiwgXCIlMjhcIiksXG4gIChcIilcIiwgXCIlMjlcIiksXG4pICFkZWZhdWx0O1xuXG5cbi8vIE9wdGlvbnNcbi8vXG4vLyBRdWlja2x5IG1vZGlmeSBnbG9iYWwgc3R5bGluZyBieSBlbmFibGluZyBvciBkaXNhYmxpbmcgb3B0aW9uYWwgZmVhdHVyZXMuXG5cbiRlbmFibGUtY2FyZXQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1yb3VuZGVkOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXNoYWRvd3M6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLWdyYWRpZW50czogICAgICAgICAgICAgICAgICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLXRyYW5zaXRpb25zOiAgICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcHJlZmVycy1yZWR1Y2VkLW1vdGlvbi1tZWRpYS1xdWVyeTogICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1ob3Zlci1tZWRpYS1xdWVyeTogICAgICAgICAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkLCBubyBsb25nZXIgYWZmZWN0cyBhbnkgY29tcGlsZWQgQ1NTXG4kZW5hYmxlLWdyaWQtY2xhc3NlczogICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcG9pbnRlci1jdXJzb3ItZm9yLWJ1dHRvbnM6ICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1wcmludC1zdHlsZXM6ICAgICAgICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplczogICAgICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLXZhbGlkYXRpb24taWNvbnM6ICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtZGVwcmVjYXRpb24tbWVzc2FnZXM6ICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuXG5cbi8vIFNwYWNpbmdcbi8vXG4vLyBDb250cm9sIHRoZSBkZWZhdWx0IHN0eWxpbmcgb2YgbW9zdCBCb290c3RyYXAgZWxlbWVudHMgYnkgbW9kaWZ5aW5nIHRoZXNlXG4vLyB2YXJpYWJsZXMuIE1vc3RseSBmb2N1c2VkIG9uIHNwYWNpbmcuXG4vLyBZb3UgY2FuIGFkZCBtb3JlIGVudHJpZXMgdG8gdGhlICRzcGFjZXJzIG1hcCwgc2hvdWxkIHlvdSBuZWVkIG1vcmUgdmFyaWF0aW9uLlxuXG4kc3BhY2VyOiAxcmVtICFkZWZhdWx0O1xuJHNwYWNlcnM6ICgpICFkZWZhdWx0O1xuJHNwYWNlcnM6IG1hcC1tZXJnZShcbiAgKFxuICAgIDA6IDAsXG4gICAgMTogKCRzcGFjZXIgKiAuMjUpLFxuICAgIDI6ICgkc3BhY2VyICogLjUpLFxuICAgIDM6ICRzcGFjZXIsXG4gICAgNDogKCRzcGFjZXIgKiAxLjUpLFxuICAgIDU6ICgkc3BhY2VyICogMylcbiAgKSxcbiAgJHNwYWNlcnNcbik7XG5cbi8vIFRoaXMgdmFyaWFibGUgYWZmZWN0cyB0aGUgYC5oLSpgIGFuZCBgLnctKmAgY2xhc3Nlcy5cbiRzaXplczogKCkgIWRlZmF1bHQ7XG4kc2l6ZXM6IG1hcC1tZXJnZShcbiAgKFxuICAgIDI1OiAyNSUsXG4gICAgNTA6IDUwJSxcbiAgICA3NTogNzUlLFxuICAgIDEwMDogMTAwJSxcbiAgICBhdXRvOiBhdXRvXG4gICksXG4gICRzaXplc1xuKTtcblxuXG4vLyBCb2R5XG4vL1xuLy8gU2V0dGluZ3MgZm9yIHRoZSBgPGJvZHk+YCBlbGVtZW50LlxuXG4kYm9keS1iZzogICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGJvZHktY29sb3I6ICAgICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcblxuXG4vLyBMaW5rc1xuLy9cbi8vIFN0eWxlIGFuY2hvciBlbGVtZW50cy5cblxuJGxpbmstY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpICFkZWZhdWx0O1xuJGxpbmstZGVjb3JhdGlvbjogICAgICAgICAgICAgICAgICAgICAgICAgbm9uZSAhZGVmYXVsdDtcbiRsaW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgIGRhcmtlbigkbGluay1jb2xvciwgMTUlKSAhZGVmYXVsdDtcbiRsaW5rLWhvdmVyLWRlY29yYXRpb246ICAgICAgICAgICAgICAgICAgIHVuZGVybGluZSAhZGVmYXVsdDtcbi8vIERhcmtlbiBwZXJjZW50YWdlIGZvciBsaW5rcyB3aXRoIGAudGV4dC0qYCBjbGFzcyAoZS5nLiBgLnRleHQtc3VjY2Vzc2ApXG4kZW1waGFzaXplZC1saW5rLWhvdmVyLWRhcmtlbi1wZXJjZW50YWdlOiAxNSUgIWRlZmF1bHQ7XG5cbi8vIFBhcmFncmFwaHNcbi8vXG4vLyBTdHlsZSBwIGVsZW1lbnQuXG5cbiRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTogICAxcmVtICFkZWZhdWx0O1xuXG5cbi8vIEdyaWQgYnJlYWtwb2ludHNcbi8vXG4vLyBEZWZpbmUgdGhlIG1pbmltdW0gZGltZW5zaW9ucyBhdCB3aGljaCB5b3VyIGxheW91dCB3aWxsIGNoYW5nZSxcbi8vIGFkYXB0aW5nIHRvIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMsIGZvciB1c2UgaW4gbWVkaWEgcXVlcmllcy5cblxuJGdyaWQtYnJlYWtwb2ludHM6IChcbiAgeHM6IDAsXG4gIHNtOiA1NzZweCxcbiAgbWQ6IDc2OHB4LFxuICBsZzogOTkycHgsXG4gIHhsOiAxMjAwcHhcbikgIWRlZmF1bHQ7XG5cbkBpbmNsdWRlIF9hc3NlcnQtYXNjZW5kaW5nKCRncmlkLWJyZWFrcG9pbnRzLCBcIiRncmlkLWJyZWFrcG9pbnRzXCIpO1xuQGluY2x1ZGUgX2Fzc2VydC1zdGFydHMtYXQtemVybygkZ3JpZC1icmVha3BvaW50cywgXCIkZ3JpZC1icmVha3BvaW50c1wiKTtcblxuXG4vLyBHcmlkIGNvbnRhaW5lcnNcbi8vXG4vLyBEZWZpbmUgdGhlIG1heGltdW0gd2lkdGggb2YgYC5jb250YWluZXJgIGZvciBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLlxuXG4kY29udGFpbmVyLW1heC13aWR0aHM6IChcbiAgc206IDU0MHB4LFxuICBtZDogNzIwcHgsXG4gIGxnOiA5NjBweCxcbiAgeGw6IDExNDBweFxuKSAhZGVmYXVsdDtcblxuQGluY2x1ZGUgX2Fzc2VydC1hc2NlbmRpbmcoJGNvbnRhaW5lci1tYXgtd2lkdGhzLCBcIiRjb250YWluZXItbWF4LXdpZHRoc1wiKTtcblxuXG4vLyBHcmlkIGNvbHVtbnNcbi8vXG4vLyBTZXQgdGhlIG51bWJlciBvZiBjb2x1bW5zIGFuZCBzcGVjaWZ5IHRoZSB3aWR0aCBvZiB0aGUgZ3V0dGVycy5cblxuJGdyaWQtY29sdW1uczogICAgICAgICAgICAgICAgMTIgIWRlZmF1bHQ7XG4kZ3JpZC1ndXR0ZXItd2lkdGg6ICAgICAgICAgICAzMHB4ICFkZWZhdWx0O1xuJGdyaWQtcm93LWNvbHVtbnM6ICAgICAgICAgICAgNiAhZGVmYXVsdDtcblxuXG4vLyBDb21wb25lbnRzXG4vL1xuLy8gRGVmaW5lIGNvbW1vbiBwYWRkaW5nIGFuZCBib3JkZXIgcmFkaXVzIHNpemVzIGFuZCBtb3JlLlxuXG4kbGluZS1oZWlnaHQtbGc6ICAgICAgICAgICAgICAxLjUgIWRlZmF1bHQ7XG4kbGluZS1oZWlnaHQtc206ICAgICAgICAgICAgICAxLjUgIWRlZmF1bHQ7XG5cbiRib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgIDFweCAhZGVmYXVsdDtcbiRib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcblxuJGJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtbGc6ICAgICAgICAgICAgLjNyZW0gIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1zbTogICAgICAgICAgICAuMnJlbSAhZGVmYXVsdDtcblxuJHJvdW5kZWQtcGlsbDogICAgICAgICAgICAgICAgNTByZW0gIWRlZmF1bHQ7XG5cbiRib3gtc2hhZG93LXNtOiAgICAgICAgICAgICAgIDAgLjEyNXJlbSAuMjVyZW0gcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuJGJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgMCAuNXJlbSAxcmVtIHJnYmEoJGJsYWNrLCAuMTUpICFkZWZhdWx0O1xuJGJveC1zaGFkb3ctbGc6ICAgICAgICAgICAgICAgMCAxcmVtIDNyZW0gcmdiYSgkYmxhY2ssIC4xNzUpICFkZWZhdWx0O1xuXG4kY29tcG9uZW50LWFjdGl2ZS1jb2xvcjogICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY29tcG9uZW50LWFjdGl2ZS1iZzogICAgICAgICB0aGVtZS1jb2xvcihcInByaW1hcnlcIikgIWRlZmF1bHQ7XG5cbiRjYXJldC13aWR0aDogICAgICAgICAgICAgICAgIC4zZW0gIWRlZmF1bHQ7XG4kY2FyZXQtdmVydGljYWwtYWxpZ246ICAgICAgICAkY2FyZXQtd2lkdGggKiAuODUgIWRlZmF1bHQ7XG4kY2FyZXQtc3BhY2luZzogICAgICAgICAgICAgICAkY2FyZXQtd2lkdGggKiAuODUgIWRlZmF1bHQ7XG5cbiR0cmFuc2l0aW9uLWJhc2U6ICAgICAgICAgICAgIGFsbCAuMnMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG4kdHJhbnNpdGlvbi1mYWRlOiAgICAgICAgICAgICBvcGFjaXR5IC4xNXMgbGluZWFyICFkZWZhdWx0O1xuJHRyYW5zaXRpb24tY29sbGFwc2U6ICAgICAgICAgaGVpZ2h0IC4zNXMgZWFzZSAhZGVmYXVsdDtcbiR0cmFuc2l0aW9uLWNvbGxhcHNlLXdpZHRoOiAgIHdpZHRoIC4zNXMgZWFzZSAhZGVmYXVsdDtcblxuJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvczogKCkgIWRlZmF1bHQ7XG4kZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW9zOiBqb2luKFxuICAoXG4gICAgKDIxIDkpLFxuICAgICgxNiA5KSxcbiAgICAoNCAzKSxcbiAgICAoMSAxKSxcbiAgKSxcbiAgJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvc1xuKTtcblxuLy8gVHlwb2dyYXBoeVxuLy9cbi8vIEZvbnQsIGxpbmUtaGVpZ2h0LCBhbmQgY29sb3IgZm9yIGJvZHkgdGV4dCwgaGVhZGluZ3MsIGFuZCBtb3JlLlxuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZSB2YWx1ZS1rZXl3b3JkLWNhc2VcbiRmb250LWZhbWlseS1zYW5zLXNlcmlmOiAgICAgIC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBSb2JvdG8sIFwiSGVsdmV0aWNhIE5ldWVcIiwgQXJpYWwsIFwiTm90byBTYW5zXCIsIFwiTGliZXJhdGlvbiBTYW5zXCIsIHNhbnMtc2VyaWYsIFwiQXBwbGUgQ29sb3IgRW1vamlcIiwgXCJTZWdvZSBVSSBFbW9qaVwiLCBcIlNlZ29lIFVJIFN5bWJvbFwiLCBcIk5vdG8gQ29sb3IgRW1vamlcIiAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1tb25vc3BhY2U6ICAgICAgIFNGTW9uby1SZWd1bGFyLCBNZW5sbywgTW9uYWNvLCBDb25zb2xhcywgXCJMaWJlcmF0aW9uIE1vbm9cIiwgXCJDb3VyaWVyIE5ld1wiLCBtb25vc3BhY2UgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktYmFzZTogICAgICAgICAgICAkZm9udC1mYW1pbHktc2Fucy1zZXJpZiAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1lbmFibGUgdmFsdWUta2V5d29yZC1jYXNlXG5cbiRmb250LXNpemUtYmFzZTogICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7IC8vIEFzc3VtZXMgdGhlIGJyb3dzZXIgZGVmYXVsdCwgdHlwaWNhbGx5IGAxNnB4YFxuJGZvbnQtc2l6ZS1sZzogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcbiRmb250LXNpemUtc206ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIC44NzUgIWRlZmF1bHQ7XG5cbiRmb250LXdlaWdodC1saWdodGVyOiAgICAgICAgIGxpZ2h0ZXIgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtbGlnaHQ6ICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtbm9ybWFsOiAgICAgICAgICA0MDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtYm9sZDogICAgICAgICAgICA3MDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtYm9sZGVyOiAgICAgICAgICBib2xkZXIgIWRlZmF1bHQ7XG5cbiRmb250LXdlaWdodC1iYXNlOiAgICAgICAgICAgICRmb250LXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG4kbGluZS1oZWlnaHQtYmFzZTogICAgICAgICAgICAxLjUgIWRlZmF1bHQ7XG5cbiRoMS1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDIuNSAhZGVmYXVsdDtcbiRoMi1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDIgIWRlZmF1bHQ7XG4kaDMtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjc1ICFkZWZhdWx0O1xuJGg0LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS41ICFkZWZhdWx0O1xuJGg1LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcbiRoNi1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcblxuJGhlYWRpbmdzLW1hcmdpbi1ib3R0b206ICAgICAgJHNwYWNlciAqIC41ICFkZWZhdWx0O1xuJGhlYWRpbmdzLWZvbnQtZmFtaWx5OiAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1mb250LXdlaWdodDogICAgICAgIDUwMCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1saW5lLWhlaWdodDogICAgICAgIDEuMiAhZGVmYXVsdDtcbiRoZWFkaW5ncy1jb2xvcjogICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRkaXNwbGF5MS1zaXplOiAgICAgICAgICAgICAgIDZyZW0gIWRlZmF1bHQ7XG4kZGlzcGxheTItc2l6ZTogICAgICAgICAgICAgICA1LjVyZW0gIWRlZmF1bHQ7XG4kZGlzcGxheTMtc2l6ZTogICAgICAgICAgICAgICA0LjVyZW0gIWRlZmF1bHQ7XG4kZGlzcGxheTQtc2l6ZTogICAgICAgICAgICAgICAzLjVyZW0gIWRlZmF1bHQ7XG5cbiRkaXNwbGF5MS13ZWlnaHQ6ICAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5Mi13ZWlnaHQ6ICAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5My13ZWlnaHQ6ICAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5NC13ZWlnaHQ6ICAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5LWxpbmUtaGVpZ2h0OiAgICAgICAgICRoZWFkaW5ncy1saW5lLWhlaWdodCAhZGVmYXVsdDtcblxuJGxlYWQtZm9udC1zaXplOiAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcbiRsZWFkLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcblxuJHNtYWxsLWZvbnQtc2l6ZTogICAgICAgICAgICAgLjg3NWVtICFkZWZhdWx0O1xuXG4kdGV4dC1tdXRlZDogICAgICAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbiRibG9ja3F1b3RlLXNtYWxsLWNvbG9yOiAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRibG9ja3F1b3RlLXNtYWxsLWZvbnQtc2l6ZTogICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kYmxvY2txdW90ZS1mb250LXNpemU6ICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xuXG4kaHItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuJGhyLWJvcmRlci13aWR0aDogICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJG1hcmstcGFkZGluZzogICAgICAgICAgICAgICAgLjJlbSAhZGVmYXVsdDtcblxuJGR0LWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbiRrYmQtYm94LXNoYWRvdzogICAgICAgICAgICAgIGluc2V0IDAgLS4xcmVtIDAgcmdiYSgkYmxhY2ssIC4yNSkgIWRlZmF1bHQ7XG4kbmVzdGVkLWtiZC1mb250LXdlaWdodDogICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcblxuJGxpc3QtaW5saW5lLXBhZGRpbmc6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRtYXJrLWJnOiAgICAgICAgICAgICAgICAgICAgICNmY2Y4ZTMgIWRlZmF1bHQ7XG5cbiRoci1tYXJnaW4teTogICAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG5cblxuLy8gVGFibGVzXG4vL1xuLy8gQ3VzdG9taXplcyB0aGUgYC50YWJsZWAgY29tcG9uZW50IHdpdGggYmFzaWMgdmFsdWVzLCBlYWNoIHVzZWQgYWNyb3NzIGFsbCB0YWJsZSB2YXJpYXRpb25zLlxuXG4kdGFibGUtY2VsbC1wYWRkaW5nOiAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kdGFibGUtY2VsbC1wYWRkaW5nLXNtOiAgICAgICAuM3JlbSAhZGVmYXVsdDtcblxuJHRhYmxlLWNvbG9yOiAgICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kdGFibGUtYmc6ICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJHRhYmxlLWFjY2VudC1iZzogICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4wNSkgIWRlZmF1bHQ7XG4kdGFibGUtaG92ZXItY29sb3I6ICAgICAgICAgICAkdGFibGUtY29sb3IgIWRlZmF1bHQ7XG4kdGFibGUtaG92ZXItYmc6ICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG4kdGFibGUtYWN0aXZlLWJnOiAgICAgICAgICAgICAkdGFibGUtaG92ZXItYmcgIWRlZmF1bHQ7XG5cbiR0YWJsZS1ib3JkZXItd2lkdGg6ICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kdGFibGUtYm9yZGVyLWNvbG9yOiAgICAgICAgICAkYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4kdGFibGUtaGVhZC1iZzogICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kdGFibGUtaGVhZC1jb2xvcjogICAgICAgICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG4kdGFibGUtdGgtZm9udC13ZWlnaHQ6ICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kdGFibGUtZGFyay1jb2xvcjogICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kdGFibGUtZGFyay1iZzogICAgICAgICAgICAgICAkZ3JheS04MDAgIWRlZmF1bHQ7XG4kdGFibGUtZGFyay1hY2NlbnQtYmc6ICAgICAgICByZ2JhKCR3aGl0ZSwgLjA1KSAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWhvdmVyLWNvbG9yOiAgICAgICR0YWJsZS1kYXJrLWNvbG9yICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstaG92ZXItYmc6ICAgICAgICAgcmdiYSgkd2hpdGUsIC4wNzUpICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstYm9yZGVyLWNvbG9yOiAgICAgbGlnaHRlbigkdGFibGUtZGFyay1iZywgNy41JSkgIWRlZmF1bHQ7XG5cbiR0YWJsZS1zdHJpcGVkLW9yZGVyOiAgICAgICAgIG9kZCAhZGVmYXVsdDtcblxuJHRhYmxlLWNhcHRpb24tY29sb3I6ICAgICAgICAgJHRleHQtbXV0ZWQgIWRlZmF1bHQ7XG5cbiR0YWJsZS1iZy1sZXZlbDogICAgICAgICAgICAgIC05ICFkZWZhdWx0O1xuJHRhYmxlLWJvcmRlci1sZXZlbDogICAgICAgICAgLTYgIWRlZmF1bHQ7XG5cblxuLy8gQnV0dG9ucyArIEZvcm1zXG4vL1xuLy8gU2hhcmVkIHZhcmlhYmxlcyB0aGF0IGFyZSByZWFzc2lnbmVkIHRvIGAkaW5wdXQtYCBhbmQgYCRidG4tYCBzcGVjaWZpYyB2YXJpYWJsZXMuXG5cbiRpbnB1dC1idG4tcGFkZGluZy15OiAgICAgICAgIC4zNzVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteDogICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtZmFtaWx5OiAgICAgICBudWxsICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LXNpemU6ICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1saW5lLWhlaWdodDogICAgICAgJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tZm9jdXMtd2lkdGg6ICAgICAgIC4ycmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb2N1cy1jb2xvcjogICAgICAgcmdiYSgkY29tcG9uZW50LWFjdGl2ZS1iZywgLjI1KSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdzogIDAgMCAwICRpbnB1dC1idG4tZm9jdXMtd2lkdGggJGlucHV0LWJ0bi1mb2N1cy1jb2xvciAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1wYWRkaW5nLXktc206ICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1wYWRkaW5nLXgtc206ICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtc2l6ZS1zbTogICAgICAkZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1saW5lLWhlaWdodC1zbTogICAgJGxpbmUtaGVpZ2h0LXNtICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLXBhZGRpbmcteS1sZzogICAgICAuNXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tcGFkZGluZy14LWxnOiAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtc2l6ZS1sZzogICAgICAkZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1saW5lLWhlaWdodC1sZzogICAgJGxpbmUtaGVpZ2h0LWxnICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLWJvcmRlci13aWR0aDogICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG5cbi8vIEJ1dHRvbnNcbi8vXG4vLyBGb3IgZWFjaCBvZiBCb290c3RyYXAncyBidXR0b25zLCBkZWZpbmUgdGV4dCwgYmFja2dyb3VuZCwgYW5kIGJvcmRlciBjb2xvci5cblxuJGJ0bi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteDogICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRidG4tZm9udC1mYW1pbHk6ICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kYnRuLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRidG4tbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG4kYnRuLXdoaXRlLXNwYWNlOiAgICAgICAgICAgICBudWxsICFkZWZhdWx0OyAvLyBTZXQgdG8gYG5vd3JhcGAgdG8gcHJldmVudCB0ZXh0IHdyYXBwaW5nXG5cbiRidG4tcGFkZGluZy15LXNtOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LXNtICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLXgtc206ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtc20gIWRlZmF1bHQ7XG4kYnRuLWZvbnQtc2l6ZS1zbTogICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRidG4tbGluZS1oZWlnaHQtc206ICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQtc20gIWRlZmF1bHQ7XG5cbiRidG4tcGFkZGluZy15LWxnOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LWxnICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLXgtbGc6ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGcgIWRlZmF1bHQ7XG4kYnRuLWZvbnQtc2l6ZS1sZzogICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRidG4tbGluZS1oZWlnaHQtbGc6ICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQtbGcgIWRlZmF1bHQ7XG5cbiRidG4tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICRpbnB1dC1idG4tYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kYnRuLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuJGJ0bi1ib3gtc2hhZG93OiAgICAgICAgICAgICAgaW5zZXQgMCAxcHggMCByZ2JhKCR3aGl0ZSwgLjE1KSwgMCAxcHggMXB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcbiRidG4tZm9jdXMtd2lkdGg6ICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG4kYnRuLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kYnRuLWRpc2FibGVkLW9wYWNpdHk6ICAgICAgICAuNjUgIWRlZmF1bHQ7XG4kYnRuLWFjdGl2ZS1ib3gtc2hhZG93OiAgICAgICBpbnNldCAwIDNweCA1cHggcmdiYSgkYmxhY2ssIC4xMjUpICFkZWZhdWx0O1xuXG4kYnRuLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbiRidG4tYmxvY2stc3BhY2luZy15OiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4vLyBBbGxvd3MgZm9yIGN1c3RvbWl6aW5nIGJ1dHRvbiByYWRpdXMgaW5kZXBlbmRlbnRseSBmcm9tIGdsb2JhbCBib3JkZXIgcmFkaXVzXG4kYnRuLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRidG4tYm9yZGVyLXJhZGl1cy1sZzogICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuJGJ0bi1ib3JkZXItcmFkaXVzLXNtOiAgICAgICAgJGJvcmRlci1yYWRpdXMtc20gIWRlZmF1bHQ7XG5cbiRidG4tdHJhbnNpdGlvbjogICAgICAgICAgICAgIGNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuXG4vLyBGb3Jtc1xuXG4kbGFiZWwtbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRpbnB1dC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRpbnB1dC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRpbnB1dC1mb250LWZhbWlseTogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgICAgICRmb250LXdlaWdodC1iYXNlICFkZWZhdWx0O1xuJGlucHV0LWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG5cbiRpbnB1dC1wYWRkaW5nLXktc206ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1zbSAhZGVmYXVsdDtcbiRpbnB1dC1wYWRkaW5nLXgtc206ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1zbSAhZGVmYXVsdDtcbiRpbnB1dC1mb250LXNpemUtc206ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRpbnB1dC1saW5lLWhlaWdodC1zbTogICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LXNtICFkZWZhdWx0O1xuXG4kaW5wdXQtcGFkZGluZy15LWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktbGcgIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy14LWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGcgIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1zaXplLWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kaW5wdXQtbGluZS1oZWlnaHQtbGc6ICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodC1sZyAhZGVmYXVsdDtcblxuJGlucHV0LWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRpbnB1dC1kaXNhYmxlZC1iZzogICAgICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG5cbiRpbnB1dC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJGdyYXktNDAwICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGlucHV0LWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgICAgIGluc2V0IDAgMXB4IDFweCByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG5cbiRpbnB1dC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItcmFkaXVzLWxnOiAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItcmFkaXVzLXNtOiAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1zbSAhZGVmYXVsdDtcblxuJGlucHV0LWZvY3VzLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICBsaWdodGVuKCRjb21wb25lbnQtYWN0aXZlLWJnLCAyNSUpICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy13aWR0aDogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yOiAgICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRpbnB1dC1wbGFpbnRleHQtY29sb3I6ICAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcblxuJGlucHV0LWhlaWdodC1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICRpbnB1dC1ib3JkZXItd2lkdGggKiAyICFkZWZhdWx0O1xuXG4kaW5wdXQtaGVpZ2h0LWlubmVyOiAgICAgICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIDFlbSwgJGlucHV0LXBhZGRpbmcteSAqIDIpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1pbm5lci1oYWxmOiAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAuNWVtLCAkaW5wdXQtcGFkZGluZy15KSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlcjogICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogLjI1ZW0sICRpbnB1dC1wYWRkaW5nLXkgKiAuNSkgIWRlZmF1bHQ7XG5cbiRpbnB1dC1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogMWVtLCBhZGQoJGlucHV0LXBhZGRpbmcteSAqIDIsICRpbnB1dC1oZWlnaHQtYm9yZGVyLCBmYWxzZSkpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1zbTogICAgICAgICAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQtc20gKiAxZW0sIGFkZCgkaW5wdXQtcGFkZGluZy15LXNtICogMiwgJGlucHV0LWhlaWdodC1ib3JkZXIsIGZhbHNlKSkgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LWxnOiAgICAgICAgICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodC1sZyAqIDFlbSwgYWRkKCRpbnB1dC1wYWRkaW5nLXktbGcgKiAyLCAkaW5wdXQtaGVpZ2h0LWJvcmRlciwgZmFsc2UpKSAhZGVmYXVsdDtcblxuJGlucHV0LXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbiRmb3JtLXRleHQtbWFyZ2luLXRvcDogICAgICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlucHV0LWd1dHRlcjogICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtbWFyZ2luLXk6ICAgICAgICAgICAgIC4zcmVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtbWFyZ2luLXg6ICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcblxuJGZvcm0tY2hlY2staW5saW5lLW1hcmdpbi14OiAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlubGluZS1pbnB1dC1tYXJnaW4teDogICAgICAuMzEyNXJlbSAhZGVmYXVsdDtcblxuJGZvcm0tZ3JpZC1ndXR0ZXItd2lkdGg6ICAgICAgICAgICAgICAgIDEwcHggIWRlZmF1bHQ7XG4kZm9ybS1ncm91cC1tYXJnaW4tYm90dG9tOiAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcblxuJGlucHV0LWdyb3VwLWFkZG9uLWNvbG9yOiAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1ncm91cC1hZGRvbi1iZzogICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yOiAgICAgICAgJGlucHV0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuJGN1c3RvbS1mb3Jtcy10cmFuc2l0aW9uOiAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWd1dHRlcjogICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLXNwYWNlci14OiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtY3Vyc29yOiAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplOiAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnOiAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnLXNpemU6ICAgICAgNTAlIDUwJSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm94LXNoYWRvdzogICAkaW5wdXQtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLWNvbG9yOiAkZ3JheS01MDAgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci13aWR0aDogJGlucHV0LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWxhYmVsLWNvbG9yOiAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZGlzYWJsZWQtYmc6ICAgICAgICAgICRpbnB1dC1kaXNhYmxlZC1iZyAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1sYWJlbC1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yOiAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYmc6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1kaXNhYmxlZC1iZzogIHJnYmEodGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpLCAuNSkgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYm94LXNoYWRvdzogICBudWxsICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJvcmRlci1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJnICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWZvY3VzLWJveC1zaGFkb3c6ICAgICAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZm9jdXMtYm9yZGVyLWNvbG9yOiAgICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWNvbG9yOiAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYmc6ICAgICAgICAgICAgbGlnaHRlbigkY29tcG9uZW50LWFjdGl2ZS1iZywgMzUlKSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJveC1zaGFkb3c6ICAgIG51bGwgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1ib3JkZXItY29sb3I6ICAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1czogICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pY29uLWNoZWNrZWQ6ICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSc4JyBoZWlnaHQ9JzgnIHZpZXdCb3g9JzAgMCA4IDgnPjxwYXRoIGZpbGw9JyN7JGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yfScgZD0nTTYuNTY0Ljc1bC0zLjU5IDMuNjEyLTEuNTM4LTEuNTVMMCA0LjI2bDIuOTc0IDIuOTlMOCAyLjE5M3onLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYmc6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtY29sb3I6ICAgICAgICAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pY29uLWluZGV0ZXJtaW5hdGU6ICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nNCcgaGVpZ2h0PSc0JyB2aWV3Qm94PScwIDAgNCA0Jz48cGF0aCBzdHJva2U9JyN7JGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1jb2xvcn0nIGQ9J00wIDJoNCcvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYm94LXNoYWRvdzogICBudWxsICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1ib3JkZXItY29sb3I6ICRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYmcgIWRlZmF1bHQ7XG5cbiRjdXN0b20tcmFkaW8taW5kaWNhdG9yLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIDUwJSAhZGVmYXVsdDtcbiRjdXN0b20tcmFkaW8taW5kaWNhdG9yLWljb24tY2hlY2tlZDogICAgICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzEyJyBoZWlnaHQ9JzEyJyB2aWV3Qm94PSctNCAtNCA4IDgnPjxjaXJjbGUgcj0nMycgZmlsbD0nI3skY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtY29sb3J9Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kY3VzdG9tLXN3aXRjaC13aWR0aDogICAgICAgICAgICAgICAgICAgICAgICAgICAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUgKiAxLjc1ICFkZWZhdWx0O1xuJGN1c3RvbS1zd2l0Y2gtaW5kaWNhdG9yLWJvcmRlci1yYWRpdXM6ICAgICAgICAgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplICogLjUgIWRlZmF1bHQ7XG4kY3VzdG9tLXN3aXRjaC1pbmRpY2F0b3Itc2l6ZTogICAgICAgICAgICAgICAgICBzdWJ0cmFjdCgkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUsICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLXdpZHRoICogNCkgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteTogICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXg6ICAgICAgICAgICAkaW5wdXQtcGFkZGluZy14ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9udC1mYW1pbHk6ICAgICAgICAgJGlucHV0LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9udC1zaXplOiAgICAgICAgICAgJGlucHV0LWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWhlaWdodDogICAgICAgICAgICAgICRpbnB1dC1oZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZzogICAxcmVtICFkZWZhdWx0OyAvLyBFeHRyYSBwYWRkaW5nIHRvIGFjY291bnQgZm9yIHRoZSBwcmVzZW5jZSBvZiB0aGUgYmFja2dyb3VuZC1pbWFnZSBiYXNlZCBpbmRpY2F0b3JcbiRjdXN0b20tc2VsZWN0LWZvbnQtd2VpZ2h0OiAgICAgICAgICRpbnB1dC1mb250LXdlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWxpbmUtaGVpZ2h0OiAgICAgICAgICRpbnB1dC1saW5lLWhlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWNvbG9yOiAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWRpc2FibGVkLWNvbG9yOiAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJnOiAgICAgICAgICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWRpc2FibGVkLWJnOiAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJnLXNpemU6ICAgICAgICAgICAgIDhweCAxMHB4ICFkZWZhdWx0OyAvLyBJbiBwaXhlbHMgYmVjYXVzZSBpbWFnZSBkaW1lbnNpb25zXG4kY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItY29sb3I6ICAgICAkZ3JheS04MDAgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3I6ICAgICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSc0JyBoZWlnaHQ9JzUnIHZpZXdCb3g9JzAgMCA0IDUnPjxwYXRoIGZpbGw9JyN7JGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLWNvbG9yfScgZD0nTTIgMEwwIDJoNHptMCA1TDAgM2g0eicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJhY2tncm91bmQ6ICAgICAgICAgIGVzY2FwZS1zdmcoJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yKSByaWdodCAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXggY2VudGVyIC8gJGN1c3RvbS1zZWxlY3QtYmctc2l6ZSBuby1yZXBlYXQgIWRlZmF1bHQ7IC8vIFVzZWQgc28gd2UgY2FuIGhhdmUgbXVsdGlwbGUgYmFja2dyb3VuZCBlbGVtZW50cyAoZS5nLiwgYXJyb3cgYW5kIGZlZWRiYWNrIGljb24pXG5cbiRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tcGFkZGluZy1yaWdodDogYWRkKDFlbSAqIC43NSwgKDIgKiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXkgKiAuNzUpICsgJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14ICsgJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmcpICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZmVlZGJhY2staWNvbi1wb3NpdGlvbjogICAgICBjZW50ZXIgcmlnaHQgKCRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCArICRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nKSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tc2l6ZTogICAgICAgICAgJGlucHV0LWhlaWdodC1pbm5lci1oYWxmICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZiAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtYm9yZGVyLXdpZHRoOiAgICAgICAgJGlucHV0LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJvcmRlci1jb2xvcjogICAgICAgICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1ib3JkZXItcmFkaXVzOiAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJveC1zaGFkb3c6ICAgICAgICAgIGluc2V0IDAgMXB4IDJweCByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LWZvY3VzLWJvcmRlci1jb2xvcjogICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mb2N1cy13aWR0aDogICAgICAgICAkaW5wdXQtZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3gtc2hhZG93OiAgICAwIDAgMCAkY3VzdG9tLXNlbGVjdC1mb2N1cy13aWR0aCAkaW5wdXQtYnRuLWZvY3VzLWNvbG9yICFkZWZhdWx0O1xuXG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXktc206ICAgICAgICAkaW5wdXQtcGFkZGluZy15LXNtICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14LXNtOiAgICAgICAgJGlucHV0LXBhZGRpbmcteC1zbSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZvbnQtc2l6ZS1zbTogICAgICAgICRpbnB1dC1mb250LXNpemUtc20gIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1oZWlnaHQtc206ICAgICAgICAgICAkaW5wdXQtaGVpZ2h0LXNtICFkZWZhdWx0O1xuXG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXktbGc6ICAgICAgICAkaW5wdXQtcGFkZGluZy15LWxnICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14LWxnOiAgICAgICAgJGlucHV0LXBhZGRpbmcteC1sZyAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZvbnQtc2l6ZS1sZzogICAgICAgICRpbnB1dC1mb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1oZWlnaHQtbGc6ICAgICAgICAgICAkaW5wdXQtaGVpZ2h0LWxnICFkZWZhdWx0O1xuXG4kY3VzdG9tLXJhbmdlLXRyYWNrLXdpZHRoOiAgICAgICAgICAxMDAlICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10cmFjay1oZWlnaHQ6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRyYWNrLWN1cnNvcjogICAgICAgICBwb2ludGVyICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10cmFjay1iZzogICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10cmFjay1ib3JkZXItcmFkaXVzOiAgMXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdHJhY2stYm94LXNoYWRvdzogICAgIGluc2V0IDAgLjI1cmVtIC4yNXJlbSByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuXG4kY3VzdG9tLXJhbmdlLXRodW1iLXdpZHRoOiAgICAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgJGN1c3RvbS1yYW5nZS10aHVtYi13aWR0aCAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItYmc6ICAgICAgICAgICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1ib3JkZXI6ICAgICAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1czogICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAwIC4xcmVtIC4yNXJlbSByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAgMCAwIDAgMXB4ICRib2R5LWJnLCAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdy13aWR0aDogICRpbnB1dC1mb2N1cy13aWR0aCAhZGVmYXVsdDsgLy8gRm9yIGZvY3VzIGJveCBzaGFkb3cgaXNzdWUgaW4gSUUvRWRnZVxuJGN1c3RvbS1yYW5nZS10aHVtYi1hY3RpdmUtYmc6ICAgICAgICAgICAgICAgbGlnaHRlbigkY29tcG9uZW50LWFjdGl2ZS1iZywgMzUlKSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItZGlzYWJsZWQtYmc6ICAgICAgICAgICAgICRncmF5LTUwMCAhZGVmYXVsdDtcblxuJGN1c3RvbS1maWxlLWhlaWdodDogICAgICAgICAgICAgICAgJGlucHV0LWhlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1oZWlnaHQtaW5uZXI6ICAgICAgICAgICRpbnB1dC1oZWlnaHQtaW5uZXIgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtZm9jdXMtYm9yZGVyLWNvbG9yOiAgICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgJGlucHV0LWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtZGlzYWJsZWQtYmc6ICAgICAgICAgICAkaW5wdXQtZGlzYWJsZWQtYmcgIWRlZmF1bHQ7XG5cbiRjdXN0b20tZmlsZS1wYWRkaW5nLXk6ICAgICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtcGFkZGluZy14OiAgICAgICAgICAgICAkaW5wdXQtcGFkZGluZy14ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgJGlucHV0LWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWZvbnQtZmFtaWx5OiAgICAgICAgICAgJGlucHV0LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgJGlucHV0LWZvbnQtd2VpZ2h0ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWNvbG9yOiAgICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJvcmRlci13aWR0aDogICAgICAgICAgJGlucHV0LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1ib3JkZXItY29sb3I6ICAgICAgICAgICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYm9yZGVyLXJhZGl1czogICAgICAgICAkaW5wdXQtYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1ib3gtc2hhZG93OiAgICAgICAgICAgICRpbnB1dC1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJ1dHRvbi1jb2xvcjogICAgICAgICAgJGN1c3RvbS1maWxlLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJ1dHRvbi1iZzogICAgICAgICAgICAgJGlucHV0LWdyb3VwLWFkZG9uLWJnICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLXRleHQ6IChcbiAgZW46IFwiQnJvd3NlXCJcbikgIWRlZmF1bHQ7XG5cblxuLy8gRm9ybSB2YWxpZGF0aW9uXG5cbiRmb3JtLWZlZWRiYWNrLW1hcmdpbi10b3A6ICAgICAgICAgICRmb3JtLXRleHQtbWFyZ2luLXRvcCAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWZvbnQtc2l6ZTogICAgICAgICAgICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvcjogICAgICAgICB0aGVtZS1jb2xvcihcInN1Y2Nlc3NcIikgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pbnZhbGlkLWNvbG9yOiAgICAgICB0aGVtZS1jb2xvcihcImRhbmdlclwiKSAhZGVmYXVsdDtcblxuJGZvcm0tZmVlZGJhY2staWNvbi12YWxpZC1jb2xvcjogICAgJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkOiAgICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSc4JyBoZWlnaHQ9JzgnIHZpZXdCb3g9JzAgMCA4IDgnPjxwYXRoIGZpbGw9JyN7JGZvcm0tZmVlZGJhY2staWNvbi12YWxpZC1jb2xvcn0nIGQ9J00yLjMgNi43M0wuNiA0LjUzYy0uNC0xLjA0LjQ2LTEuNCAxLjEtLjhsMS4xIDEuNCAzLjQtMy44Yy42LS42MyAxLjYtLjI3IDEuMi43bC00IDQuNmMtLjQzLjUtLjguNC0xLjEuMXonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQtY29sb3I6ICAkZm9ybS1mZWVkYmFjay1pbnZhbGlkLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkOiAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMTInIGhlaWdodD0nMTInIGZpbGw9J25vbmUnIHN0cm9rZT0nI3skZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQtY29sb3J9JyB2aWV3Qm94PScwIDAgMTIgMTInPjxjaXJjbGUgY3g9JzYnIGN5PSc2JyByPSc0LjUnLz48cGF0aCBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBkPSdNNS44IDMuNmguNEw2IDYuNXonLz48Y2lyY2xlIGN4PSc2JyBjeT0nOC4yJyByPScuNicgZmlsbD0nI3skZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQtY29sb3J9JyBzdHJva2U9J25vbmUnLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG5cbiRmb3JtLXZhbGlkYXRpb24tc3RhdGVzOiAoKSAhZGVmYXVsdDtcbiRmb3JtLXZhbGlkYXRpb24tc3RhdGVzOiBtYXAtbWVyZ2UoXG4gIChcbiAgICBcInZhbGlkXCI6IChcbiAgICAgIFwiY29sb3JcIjogJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3IsXG4gICAgICBcImljb25cIjogJGZvcm0tZmVlZGJhY2staWNvbi12YWxpZFxuICAgICksXG4gICAgXCJpbnZhbGlkXCI6IChcbiAgICAgIFwiY29sb3JcIjogJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvcixcbiAgICAgIFwiaWNvblwiOiAkZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWRcbiAgICApLFxuICApLFxuICAkZm9ybS12YWxpZGF0aW9uLXN0YXRlc1xuKTtcblxuLy8gWi1pbmRleCBtYXN0ZXIgbGlzdFxuLy9cbi8vIFdhcm5pbmc6IEF2b2lkIGN1c3RvbWl6aW5nIHRoZXNlIHZhbHVlcy4gVGhleSdyZSB1c2VkIGZvciBhIGJpcmQncyBleWUgdmlld1xuLy8gb2YgY29tcG9uZW50cyBkZXBlbmRlbnQgb24gdGhlIHotYXhpcyBhbmQgYXJlIGRlc2lnbmVkIHRvIGFsbCB3b3JrIHRvZ2V0aGVyLlxuXG4kemluZGV4LWRyb3Bkb3duOiAgICAgICAgICAgICAgICAgICAxMDAwICFkZWZhdWx0O1xuJHppbmRleC1zdGlja3k6ICAgICAgICAgICAgICAgICAgICAgMTAyMCAhZGVmYXVsdDtcbiR6aW5kZXgtZml4ZWQ6ICAgICAgICAgICAgICAgICAgICAgIDEwMzAgIWRlZmF1bHQ7XG4kemluZGV4LW1vZGFsLWJhY2tkcm9wOiAgICAgICAgICAgICAxMDQwICFkZWZhdWx0O1xuJHppbmRleC1tb2RhbDogICAgICAgICAgICAgICAgICAgICAgMTA1MCAhZGVmYXVsdDtcbiR6aW5kZXgtcG9wb3ZlcjogICAgICAgICAgICAgICAgICAgIDEwNjAgIWRlZmF1bHQ7XG4kemluZGV4LXRvb2x0aXA6ICAgICAgICAgICAgICAgICAgICAxMDcwICFkZWZhdWx0O1xuXG5cbi8vIE5hdnNcblxuJG5hdi1saW5rLXBhZGRpbmcteTogICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kbmF2LWxpbmstcGFkZGluZy14OiAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4kbmF2LXRhYnMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG5hdi10YWJzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3I6ICAkZ3JheS0yMDAgJGdyYXktMjAwICRuYXYtdGFicy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1hY3RpdmUtY29sb3I6ICAgICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1hY3RpdmUtYmc6ICAgICAgICAgICAkYm9keS1iZyAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1ib3JkZXItY29sb3I6ICRncmF5LTMwMCAkZ3JheS0zMDAgJG5hdi10YWJzLWxpbmstYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kbmF2LXBpbGxzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRuYXYtcGlsbHMtbGluay1hY3RpdmUtY29sb3I6ICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdi1waWxscy1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRuYXYtZGl2aWRlci1jb2xvcjogICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRuYXYtZGl2aWRlci1tYXJnaW4teTogICAgICAgICAgICAgICRzcGFjZXIgKiAuNSAhZGVmYXVsdDtcblxuXG4vLyBOYXZiYXJcblxuJG5hdmJhci1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgJHNwYWNlciAqIC41ICFkZWZhdWx0O1xuJG5hdmJhci1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcblxuJG5hdmJhci1uYXYtbGluay1wYWRkaW5nLXg6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRuYXZiYXItYnJhbmQtZm9udC1zaXplOiAgICAgICAgICAgICRmb250LXNpemUtbGcgIWRlZmF1bHQ7XG4vLyBDb21wdXRlIHRoZSBuYXZiYXItYnJhbmQgcGFkZGluZy15IHNvIHRoZSBuYXZiYXItYnJhbmQgd2lsbCBoYXZlIHRoZSBzYW1lIGhlaWdodCBhcyBuYXZiYXItdGV4dCBhbmQgbmF2LWxpbmtcbiRuYXYtbGluay1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlICsgJG5hdi1saW5rLXBhZGRpbmcteSAqIDIgIWRlZmF1bHQ7XG4kbmF2YmFyLWJyYW5kLWhlaWdodDogICAgICAgICAgICAgICAkbmF2YmFyLWJyYW5kLWZvbnQtc2l6ZSAqICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuJG5hdmJhci1icmFuZC1wYWRkaW5nLXk6ICAgICAgICAgICAgKCRuYXYtbGluay1oZWlnaHQgLSAkbmF2YmFyLWJyYW5kLWhlaWdodCkgKiAuNSAhZGVmYXVsdDtcblxuJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteTogICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteDogICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLWZvbnQtc2l6ZTogICAgICAgICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1ib3JkZXItcmFkaXVzOiAgICAgICRidG4tYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJG5hdmJhci1uYXYtc2Nyb2xsLW1heC1oZWlnaHQ6ICAgICAgNzV2aCAhZGVmYXVsdDtcblxuJG5hdmJhci1kYXJrLWNvbG9yOiAgICAgICAgICAgICAgICAgcmdiYSgkd2hpdGUsIC41KSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1ob3Zlci1jb2xvcjogICAgICAgICAgIHJnYmEoJHdoaXRlLCAuNzUpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvcjogICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWRpc2FibGVkLWNvbG9yOiAgICAgICAgcmdiYSgkd2hpdGUsIC4yNSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstdG9nZ2xlci1pY29uLWJnOiAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSczMCcgaGVpZ2h0PSczMCcgdmlld0JveD0nMCAwIDMwIDMwJz48cGF0aCBzdHJva2U9JyN7JG5hdmJhci1kYXJrLWNvbG9yfScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbWl0ZXJsaW1pdD0nMTAnIHN0cm9rZS13aWR0aD0nMicgZD0nTTQgN2gyMk00IDE1aDIyTTQgMjNoMjInLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstdG9nZ2xlci1ib3JkZXItY29sb3I6ICByZ2JhKCR3aGl0ZSwgLjEpICFkZWZhdWx0O1xuXG4kbmF2YmFyLWxpZ2h0LWNvbG9yOiAgICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjUpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1ob3Zlci1jb2xvcjogICAgICAgICAgcmdiYSgkYmxhY2ssIC43KSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yOiAgICAgICAgIHJnYmEoJGJsYWNrLCAuOSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWRpc2FibGVkLWNvbG9yOiAgICAgICByZ2JhKCRibGFjaywgLjMpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC10b2dnbGVyLWljb24tYmc6ICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMzAnIGhlaWdodD0nMzAnIHZpZXdCb3g9JzAgMCAzMCAzMCc+PHBhdGggc3Ryb2tlPScjeyRuYXZiYXItbGlnaHQtY29sb3J9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtdG9nZ2xlci1ib3JkZXItY29sb3I6IHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG5cbiRuYXZiYXItbGlnaHQtYnJhbmQtY29sb3I6ICAgICAgICAgICAgICAgICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1icmFuZC1ob3Zlci1jb2xvcjogICAgICAgICAgJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstYnJhbmQtY29sb3I6ICAgICAgICAgICAgICAgICAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWJyYW5kLWhvdmVyLWNvbG9yOiAgICAgICAgICAgJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcblxuXG4vLyBEcm9wZG93bnNcbi8vXG4vLyBEcm9wZG93biBtZW51IGNvbnRhaW5lciBhbmQgY29udGVudHMuXG5cbiRkcm9wZG93bi1taW4td2lkdGg6ICAgICAgICAgICAgICAgIDEwcmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLXBhZGRpbmcteDogICAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLXNwYWNlcjogICAgICAgICAgICAgICAgICAgLjEyNXJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcbiRkcm9wZG93bi1jb2xvcjogICAgICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJnOiAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4xNSkgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm9yZGVyLXJhZGl1czogICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kZHJvcGRvd24taW5uZXItYm9yZGVyLXJhZGl1czogICAgICBzdWJ0cmFjdCgkZHJvcGRvd24tYm9yZGVyLXJhZGl1cywgJGRyb3Bkb3duLWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGl2aWRlci1iZzogICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGl2aWRlci1tYXJnaW4teTogICAgICAgICAkbmF2LWRpdmlkZXItbWFyZ2luLXkgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm94LXNoYWRvdzogICAgICAgICAgICAgICAwIC41cmVtIDFyZW0gcmdiYSgkYmxhY2ssIC4xNzUpICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tbGluay1jb2xvcjogICAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjogICAgICAgICBkYXJrZW4oJGdyYXktOTAwLCA1JSkgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1ob3Zlci1iZzogICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICRncmF5LTUwMCAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy15OiAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14OiAgICAgICAgICAgMS41cmVtICFkZWZhdWx0O1xuXG4kZHJvcGRvd24taGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24taGVhZGVyLXBhZGRpbmc6ICAgICAgICAgICAkZHJvcGRvd24tcGFkZGluZy15ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteCAhZGVmYXVsdDtcblxuXG4vLyBQYWdpbmF0aW9uXG5cbiRwYWdpbmF0aW9uLXBhZGRpbmcteTogICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14OiAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy15LXNtOiAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14LXNtOiAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXktbGc6ICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXgtbGc6ICAgICAgICAgICAxLjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1saW5lLWhlaWdodDogICAgICAgICAgICAxLjI1ICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1jb2xvcjogICAgICAgICAgICAgICAgICAkbGluay1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJnOiAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlci13aWR0aDogICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ib3JkZXItY29sb3I6ICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWZvY3VzLW91dGxpbmU6ICAgICAgICAgIDAgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICRsaW5rLWhvdmVyLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYmc6ICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYm9yZGVyLWNvbG9yOiAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1hY3RpdmUtY29sb3I6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1iZzogICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlci1jb2xvcjogICAgJHBhZ2luYXRpb24tYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcjogICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1iZzogICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1ib3JkZXItY29sb3I6ICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMtc206ICAgICAgICRib3JkZXItcmFkaXVzLXNtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyLXJhZGl1cy1sZzogICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG5cblxuLy8gSnVtYm90cm9uXG5cbiRqdW1ib3Ryb24tcGFkZGluZzogICAgICAgICAgICAgICAgIDJyZW0gIWRlZmF1bHQ7XG4kanVtYm90cm9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGp1bWJvdHJvbi1iZzogICAgICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuXG5cbi8vIENhcmRzXG5cbiRjYXJkLXNwYWNlci15OiAgICAgICAgICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRjYXJkLXNwYWNlci14OiAgICAgICAgICAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGNhcmQtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjEyNSkgIWRlZmF1bHQ7XG4kY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzOiAgICAgICAgICBzdWJ0cmFjdCgkY2FyZC1ib3JkZXItcmFkaXVzLCAkY2FyZC1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJGNhcmQtY2FwLWJnOiAgICAgICAgICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4wMykgIWRlZmF1bHQ7XG4kY2FyZC1jYXAtY29sb3I6ICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGNhcmQtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRjYXJkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kY2FyZC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG5cbiRjYXJkLWltZy1vdmVybGF5LXBhZGRpbmc6ICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG5cbiRjYXJkLWdyb3VwLW1hcmdpbjogICAgICAgICAgICAgICAgICRncmlkLWd1dHRlci13aWR0aCAqIC41ICFkZWZhdWx0O1xuJGNhcmQtZGVjay1tYXJnaW46ICAgICAgICAgICAgICAgICAgJGNhcmQtZ3JvdXAtbWFyZ2luICFkZWZhdWx0O1xuXG4kY2FyZC1jb2x1bW5zLWNvdW50OiAgICAgICAgICAgICAgICAzICFkZWZhdWx0O1xuJGNhcmQtY29sdW1ucy1nYXA6ICAgICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRjYXJkLWNvbHVtbnMtbWFyZ2luOiAgICAgICAgICAgICAgICRjYXJkLXNwYWNlci15ICFkZWZhdWx0O1xuXG5cbi8vIFRvb2x0aXBzXG5cbiR0b29sdGlwLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICRmb250LXNpemUtc20gIWRlZmF1bHQ7XG4kdG9vbHRpcC1tYXgtd2lkdGg6ICAgICAgICAgICAgICAgICAyMDBweCAhZGVmYXVsdDtcbiR0b29sdGlwLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiR0b29sdGlwLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICRibGFjayAhZGVmYXVsdDtcbiR0b29sdGlwLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJHRvb2x0aXAtb3BhY2l0eTogICAgICAgICAgICAgICAgICAgLjkgIWRlZmF1bHQ7XG4kdG9vbHRpcC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kdG9vbHRpcC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiR0b29sdGlwLW1hcmdpbjogICAgICAgICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG5cbiR0b29sdGlwLWFycm93LXdpZHRoOiAgICAgICAgICAgICAgIC44cmVtICFkZWZhdWx0O1xuJHRvb2x0aXAtYXJyb3ctaGVpZ2h0OiAgICAgICAgICAgICAgLjRyZW0gIWRlZmF1bHQ7XG4kdG9vbHRpcC1hcnJvdy1jb2xvcjogICAgICAgICAgICAgICAkdG9vbHRpcC1iZyAhZGVmYXVsdDtcblxuLy8gRm9ybSB0b29sdGlwcyBtdXN0IGNvbWUgYWZ0ZXIgcmVndWxhciB0b29sdGlwc1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXk6ICAgICAkdG9vbHRpcC1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteDogICAgICR0b29sdGlwLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtZm9udC1zaXplOiAgICAgJHRvb2x0aXAtZm9udC1zaXplICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1saW5lLWhlaWdodDogICAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtb3BhY2l0eTogICAgICAgJHRvb2x0aXAtb3BhY2l0eSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtYm9yZGVyLXJhZGl1czogJHRvb2x0aXAtYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuXG4vLyBQb3BvdmVyc1xuXG4kcG9wb3Zlci1mb250LXNpemU6ICAgICAgICAgICAgICAgICAkZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJHBvcG92ZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHBvcG92ZXItbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgMjc2cHggIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHBvcG92ZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4yKSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuJHBvcG92ZXItaW5uZXItYm9yZGVyLXJhZGl1czogICAgICAgc3VidHJhY3QoJHBvcG92ZXItYm9yZGVyLXJhZGl1cywgJHBvcG92ZXItYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgIDAgLjI1cmVtIC41cmVtIHJnYmEoJGJsYWNrLCAuMikgIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWhlYWRlci1iZzogICAgICAgICAgICAgICAgIGRhcmtlbigkcG9wb3Zlci1iZywgMyUpICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAgJGhlYWRpbmdzLWNvbG9yICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteTogICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kcG9wb3Zlci1oZWFkZXItcGFkZGluZy14OiAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWJvZHktY29sb3I6ICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJHBvcG92ZXItYm9keS1wYWRkaW5nLXk6ICAgICAgICAgICAgJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvZHktcGFkZGluZy14OiAgICAgICAgICAgICRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXggIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWFycm93LXdpZHRoOiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kcG9wb3Zlci1hcnJvdy1oZWlnaHQ6ICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWFycm93LWNvbG9yOiAgICAgICAgICAgICAgICRwb3BvdmVyLWJnICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjogICAgICAgICBmYWRlLWluKCRwb3BvdmVyLWJvcmRlci1jb2xvciwgLjA1KSAhZGVmYXVsdDtcblxuXG4vLyBUb2FzdHNcblxuJHRvYXN0LW1heC13aWR0aDogICAgICAgICAgICAgICAgICAgMzUwcHggIWRlZmF1bHQ7XG4kdG9hc3QtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAuODc1cmVtICFkZWZhdWx0O1xuJHRvYXN0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiR0b2FzdC1iYWNrZ3JvdW5kLWNvbG9yOiAgICAgICAgICAgIHJnYmEoJHdoaXRlLCAuODUpICFkZWZhdWx0O1xuJHRvYXN0LWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgMXB4ICFkZWZhdWx0O1xuJHRvYXN0LWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgcmdiYSgwLCAwLCAwLCAuMSkgIWRlZmF1bHQ7XG4kdG9hc3QtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAwIC4yNXJlbSAuNzVyZW0gcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcblxuJHRvYXN0LWhlYWRlci1jb2xvcjogICAgICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJHRvYXN0LWhlYWRlci1iYWNrZ3JvdW5kLWNvbG9yOiAgICAgcmdiYSgkd2hpdGUsIC44NSkgIWRlZmF1bHQ7XG4kdG9hc3QtaGVhZGVyLWJvcmRlci1jb2xvcjogICAgICAgICByZ2JhKDAsIDAsIDAsIC4wNSkgIWRlZmF1bHQ7XG5cblxuLy8gQmFkZ2VzXG5cbiRiYWRnZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgIDc1JSAhZGVmYXVsdDtcbiRiYWRnZS1mb250LXdlaWdodDogICAgICAgICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuJGJhZGdlLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgLjI1ZW0gIWRlZmF1bHQ7XG4kYmFkZ2UtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAuNGVtICFkZWZhdWx0O1xuJGJhZGdlLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cbiRiYWRnZS10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICAgICRidG4tdHJhbnNpdGlvbiAhZGVmYXVsdDtcbiRiYWRnZS1mb2N1cy13aWR0aDogICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG5cbiRiYWRnZS1waWxsLXBhZGRpbmcteDogICAgICAgICAgICAgIC42ZW0gIWRlZmF1bHQ7XG4vLyBVc2UgYSBoaWdoZXIgdGhhbiBub3JtYWwgdmFsdWUgdG8gZW5zdXJlIGNvbXBsZXRlbHkgcm91bmRlZCBlZGdlcyB3aGVuXG4vLyBjdXN0b21pemluZyBwYWRkaW5nIG9yIGZvbnQtc2l6ZSBvbiBsYWJlbHMuXG4kYmFkZ2UtcGlsbC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAxMHJlbSAhZGVmYXVsdDtcblxuXG4vLyBNb2RhbHNcblxuLy8gUGFkZGluZyBhcHBsaWVkIHRvIHRoZSBtb2RhbCBib2R5XG4kbW9kYWwtaW5uZXItcGFkZGluZzogICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuXG4vLyBNYXJnaW4gYmV0d2VlbiBlbGVtZW50cyBpbiBmb290ZXIsIG11c3QgYmUgbG93ZXIgdGhhbiBvciBlcXVhbCB0byAyICogJG1vZGFsLWlubmVyLXBhZGRpbmdcbiRtb2RhbC1mb290ZXItbWFyZ2luLWJldHdlZW46ICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kbW9kYWwtZGlhbG9nLW1hcmdpbjogICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXA6ICAgICAgIDEuNzVyZW0gIWRlZmF1bHQ7XG5cbiRtb2RhbC10aXRsZS1saW5lLWhlaWdodDogICAgICAgICAgICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuXG4kbW9kYWwtY29udGVudC1jb2xvcjogICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYmc6ICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLWNvbG9yOiAgICAgICAgcmdiYSgkYmxhY2ssIC4yKSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aDogICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3JkZXItcmFkaXVzOiAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWlubmVyLWJvcmRlci1yYWRpdXM6IHN1YnRyYWN0KCRtb2RhbC1jb250ZW50LWJvcmRlci1yYWRpdXMsICRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzOiAgICAgICAwIC4yNXJlbSAuNXJlbSByZ2JhKCRibGFjaywgLjUpICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy1zbS11cDogICAgMCAuNXJlbSAxcmVtIHJnYmEoJGJsYWNrLCAuNSkgIWRlZmF1bHQ7XG5cbiRtb2RhbC1iYWNrZHJvcC1iZzogICAgICAgICAgICAgICAgICRibGFjayAhZGVmYXVsdDtcbiRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5OiAgICAgICAgICAgIC41ICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3I6ICAgICAgICAgJGJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRtb2RhbC1mb290ZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1ib3JkZXItd2lkdGg6ICAgICAgICAgJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG1vZGFsLWZvb3Rlci1ib3JkZXItd2lkdGg6ICAgICAgICAgJG1vZGFsLWhlYWRlci1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLXBhZGRpbmcteTogICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1wYWRkaW5nLXg6ICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItcGFkZGluZzogICAgICAgICAgICAgICRtb2RhbC1oZWFkZXItcGFkZGluZy15ICRtb2RhbC1oZWFkZXItcGFkZGluZy14ICFkZWZhdWx0OyAvLyBLZWVwIHRoaXMgZm9yIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5XG5cbiRtb2RhbC14bDogICAgICAgICAgICAgICAgICAgICAgICAgIDExNDBweCAhZGVmYXVsdDtcbiRtb2RhbC1sZzogICAgICAgICAgICAgICAgICAgICAgICAgIDgwMHB4ICFkZWZhdWx0O1xuJG1vZGFsLW1kOiAgICAgICAgICAgICAgICAgICAgICAgICAgNTAwcHggIWRlZmF1bHQ7XG4kbW9kYWwtc206ICAgICAgICAgICAgICAgICAgICAgICAgICAzMDBweCAhZGVmYXVsdDtcblxuJG1vZGFsLWZhZGUtdHJhbnNmb3JtOiAgICAgICAgICAgICAgdHJhbnNsYXRlKDAsIC01MHB4KSAhZGVmYXVsdDtcbiRtb2RhbC1zaG93LXRyYW5zZm9ybTogICAgICAgICAgICAgIG5vbmUgIWRlZmF1bHQ7XG4kbW9kYWwtdHJhbnNpdGlvbjogICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gLjNzIGVhc2Utb3V0ICFkZWZhdWx0O1xuJG1vZGFsLXNjYWxlLXRyYW5zZm9ybTogICAgICAgICAgICAgc2NhbGUoMS4wMikgIWRlZmF1bHQ7XG5cblxuLy8gQWxlcnRzXG4vL1xuLy8gRGVmaW5lIGFsZXJ0IGNvbG9ycywgYm9yZGVyIHJhZGl1cywgYW5kIHBhZGRpbmcuXG5cbiRhbGVydC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRhbGVydC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kYWxlcnQtbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kYWxlcnQtbGluay1mb250LXdlaWdodDogICAgICAgICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cbiRhbGVydC1iZy1sZXZlbDogICAgICAgICAgICAgICAgICAgIC0xMCAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItbGV2ZWw6ICAgICAgICAgICAgICAgIC05ICFkZWZhdWx0O1xuJGFsZXJ0LWNvbG9yLWxldmVsOiAgICAgICAgICAgICAgICAgNiAhZGVmYXVsdDtcblxuXG4vLyBQcm9ncmVzcyBiYXJzXG5cbiRwcm9ncmVzcy1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAuNzUgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmc6ICAgICAgICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRwcm9ncmVzcy1ib3gtc2hhZG93OiAgICAgICAgICAgICAgIGluc2V0IDAgLjFyZW0gLjFyZW0gcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItY29sb3I6ICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItYmc6ICAgICAgICAgICAgICAgICAgIHRoZW1lLWNvbG9yKFwicHJpbWFyeVwiKSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItYW5pbWF0aW9uLXRpbWluZzogICAgIDFzIGxpbmVhciBpbmZpbml0ZSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItdHJhbnNpdGlvbjogICAgICAgICAgIHdpZHRoIC42cyBlYXNlICFkZWZhdWx0O1xuXG5cbi8vIExpc3QgZ3JvdXBcblxuJGxpc3QtZ3JvdXAtY29sb3I6ICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJnOiAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJvcmRlci1jb2xvcjogICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMTI1KSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJvcmRlci13aWR0aDogICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXk6ICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXg6ICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtaG92ZXItYmc6ICAgICAgICAgICAgICAgJGdyYXktMTAwICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWNvbG9yOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3RpdmUtYmc6ICAgICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGl2ZS1ib3JkZXItY29sb3I6ICAgICRsaXN0LWdyb3VwLWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3I6ICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtYmc6ICAgICAgICAgICAgJGxpc3QtZ3JvdXAtYmcgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWFjdGlvbi1jb2xvcjogICAgICAgICAgICRncmF5LTcwMCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGlvbi1ob3Zlci1jb2xvcjogICAgICRsaXN0LWdyb3VwLWFjdGlvbi1jb2xvciAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1jb2xvcjogICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWJnOiAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG5cblxuLy8gSW1hZ2UgdGh1bWJuYWlsc1xuXG4kdGh1bWJuYWlsLXBhZGRpbmc6ICAgICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJnOiAgICAgICAgICAgICAgICAgICAgICAkYm9keS1iZyAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJvcmRlci1jb2xvcjogICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm94LXNoYWRvdzogICAgICAgICAgICAgIDAgMXB4IDJweCByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG5cblxuLy8gRmlndXJlc1xuXG4kZmlndXJlLWNhcHRpb24tZm9udC1zaXplOiAgICAgICAgICA5MCUgIWRlZmF1bHQ7XG4kZmlndXJlLWNhcHRpb24tY29sb3I6ICAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cblxuLy8gQnJlYWRjcnVtYnNcblxuJGJyZWFkY3J1bWItZm9udC1zaXplOiAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJGJyZWFkY3J1bWItcGFkZGluZy15OiAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItcGFkZGluZy14OiAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWl0ZW0tcGFkZGluZzogICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kYnJlYWRjcnVtYi1tYXJnaW4tYm90dG9tOiAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuXG4kYnJlYWRjcnVtYi1iZzogICAgICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1kaXZpZGVyLWNvbG9yOiAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1hY3RpdmUtY29sb3I6ICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1kaXZpZGVyOiAgICAgICAgICAgICAgICBxdW90ZShcIi9cIikgIWRlZmF1bHQ7XG5cbiRicmVhZGNydW1iLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG5cbi8vIENhcm91c2VsXG5cbiRjYXJvdXNlbC1jb250cm9sLWNvbG9yOiAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC13aWR0aDogICAgICAgICAgICAgMTUlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtb3BhY2l0eTogICAgICAgICAgIC41ICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtaG92ZXItb3BhY2l0eTogICAgIC45ICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtdHJhbnNpdGlvbjogICAgICAgIG9wYWNpdHkgLjE1cyBlYXNlICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtaW5kaWNhdG9yLXdpZHRoOiAgICAgICAgICAgMzBweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItaGVpZ2h0OiAgICAgICAgICAzcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWhpdC1hcmVhLWhlaWdodDogMTBweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3Itc3BhY2VyOiAgICAgICAgICAzcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1iZzogICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci10cmFuc2l0aW9uOiAgICAgIG9wYWNpdHkgLjZzIGVhc2UgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jYXB0aW9uLXdpZHRoOiAgICAgICAgICAgICA3MCUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY2FwdGlvbi1jb2xvcjogICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY29udHJvbC1pY29uLXdpZHRoOiAgICAgICAgMjBweCAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLWJnOiAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgZmlsbD0nI3skY2Fyb3VzZWwtY29udHJvbC1jb2xvcn0nIHdpZHRoPSc4JyBoZWlnaHQ9JzgnIHZpZXdCb3g9JzAgMCA4IDgnPjxwYXRoIGQ9J001LjI1IDBsLTQgNCA0IDQgMS41LTEuNUw0LjI1IDRsMi41LTIuNUw1LjI1IDB6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uLWJnOiAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgZmlsbD0nI3skY2Fyb3VzZWwtY29udHJvbC1jb2xvcn0nIHdpZHRoPSc4JyBoZWlnaHQ9JzgnIHZpZXdCb3g9JzAgMCA4IDgnPjxwYXRoIGQ9J00yLjc1IDBsLTEuNSAxLjVMMy43NSA0bC0yLjUgMi41TDIuNzUgOGw0LTQtNC00eicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLXRyYW5zaXRpb24tZHVyYXRpb246ICAgICAgIC42cyAhZGVmYXVsdDtcbiRjYXJvdXNlbC10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gJGNhcm91c2VsLXRyYW5zaXRpb24tZHVyYXRpb24gZWFzZS1pbi1vdXQgIWRlZmF1bHQ7IC8vIERlZmluZSB0cmFuc2Zvcm0gdHJhbnNpdGlvbiBmaXJzdCBpZiB1c2luZyBtdWx0aXBsZSB0cmFuc2l0aW9ucyAoZS5nLiwgYHRyYW5zZm9ybSAycyBlYXNlLCBvcGFjaXR5IC41cyBlYXNlLW91dGApXG5cblxuLy8gU3Bpbm5lcnNcblxuJHNwaW5uZXItd2lkdGg6ICAgICAgICAgICAycmVtICFkZWZhdWx0O1xuJHNwaW5uZXItaGVpZ2h0OiAgICAgICAgICAkc3Bpbm5lci13aWR0aCAhZGVmYXVsdDtcbiRzcGlubmVyLXZlcnRpY2FsLWFsaWduOiAgLS4xMjVlbSAhZGVmYXVsdDtcbiRzcGlubmVyLWJvcmRlci13aWR0aDogICAgLjI1ZW0gIWRlZmF1bHQ7XG5cbiRzcGlubmVyLXdpZHRoLXNtOiAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRzcGlubmVyLWhlaWdodC1zbTogICAgICAgJHNwaW5uZXItd2lkdGgtc20gIWRlZmF1bHQ7XG4kc3Bpbm5lci1ib3JkZXItd2lkdGgtc206IC4yZW0gIWRlZmF1bHQ7XG5cblxuLy8gQ2xvc2VcblxuJGNsb3NlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS41ICFkZWZhdWx0O1xuJGNsb3NlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kY2xvc2UtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kY2xvc2UtdGV4dC1zaGFkb3c6ICAgICAgICAgICAgICAgICAwIDFweCAwICR3aGl0ZSAhZGVmYXVsdDtcblxuXG4vLyBDb2RlXG5cbiRjb2RlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgIDg3LjUlICFkZWZhdWx0O1xuJGNvZGUtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgJHBpbmsgIWRlZmF1bHQ7XG5cbiRrYmQtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAgIC4ycmVtICFkZWZhdWx0O1xuJGtiZC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgICAgLjRyZW0gIWRlZmF1bHQ7XG4ka2JkLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAkY29kZS1mb250LXNpemUgIWRlZmF1bHQ7XG4ka2JkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4ka2JkLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG5cbiRwcmUtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcbiRwcmUtc2Nyb2xsYWJsZS1tYXgtaGVpZ2h0OiAgICAgICAgIDM0MHB4ICFkZWZhdWx0O1xuXG5cbi8vIFV0aWxpdGllc1xuXG4kZGlzcGxheXM6IG5vbmUsIGlubGluZSwgaW5saW5lLWJsb2NrLCBibG9jaywgdGFibGUsIHRhYmxlLXJvdywgdGFibGUtY2VsbCwgZmxleCwgaW5saW5lLWZsZXggIWRlZmF1bHQ7XG4kb3ZlcmZsb3dzOiBhdXRvLCBoaWRkZW4gIWRlZmF1bHQ7XG4kcG9zaXRpb25zOiBzdGF0aWMsIHJlbGF0aXZlLCBhYnNvbHV0ZSwgZml4ZWQsIHN0aWNreSAhZGVmYXVsdDtcbiR1c2VyLXNlbGVjdHM6IGFsbCwgYXV0bywgbm9uZSAhZGVmYXVsdDtcblxuXG4vLyBQcmludGluZ1xuXG4kcHJpbnQtcGFnZS1zaXplOiAgICAgICAgICAgICAgICAgICBhMyAhZGVmYXVsdDtcbiRwcmludC1ib2R5LW1pbi13aWR0aDogICAgICAgICAgICAgIG1hcC1nZXQoJGdyaWQtYnJlYWtwb2ludHMsIFwibGdcIikgIWRlZmF1bHQ7XG4iLCIvL1xuLy8gU2NyZWVucmVhZGVyc1xuLy9cblxuLnNyLW9ubHkge1xuICBAaW5jbHVkZSBzci1vbmx5KCk7XG59XG5cbi5zci1vbmx5LWZvY3VzYWJsZSB7XG4gIEBpbmNsdWRlIHNyLW9ubHktZm9jdXNhYmxlKCk7XG59XG4iLCIvLyBPbmx5IGRpc3BsYXkgY29udGVudCB0byBzY3JlZW4gcmVhZGVyc1xuLy9cbi8vIFNlZTogaHR0cHM6Ly93d3cuYTExeXByb2plY3QuY29tL3Bvc3RzLzIwMTMtMDEtMTEtaG93LXRvLWhpZGUtY29udGVudC9cbi8vIFNlZTogaHR0cHM6Ly9raXR0eWdpcmF1ZGVsLmNvbS8yMDE2LzEwLzEzL2Nzcy1oaWRlLWFuZC1zZWVrL1xuXG5AbWl4aW4gc3Itb25seSgpIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAtMXB4OyAvLyBGaXggZm9yIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjU2ODZcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYm9yZGVyOiAwO1xufVxuXG4vLyBVc2UgaW4gY29uanVuY3Rpb24gd2l0aCAuc3Itb25seSB0byBvbmx5IGRpc3BsYXkgY29udGVudCB3aGVuIGl0J3MgZm9jdXNlZC5cbi8vXG4vLyBVc2VmdWwgZm9yIFwiU2tpcCB0byBtYWluIGNvbnRlbnRcIiBsaW5rczsgc2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi8yMDEzL05PVEUtV0NBRzIwLVRFQ0hTLTIwMTMwOTA1L0cxXG4vL1xuLy8gQ3JlZGl0OiBIVE1MNSBCb2lsZXJwbGF0ZVxuXG5AbWl4aW4gc3Itb25seS1mb2N1c2FibGUoKSB7XG4gICY6YWN0aXZlLFxuICAmOmZvY3VzIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBjbGlwOiBhdXRvO1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4uc2hhZG93LXNtIHsgYm94LXNoYWRvdzogJGJveC1zaGFkb3ctc20gIWltcG9ydGFudDsgfVxuLnNoYWRvdyB7IGJveC1zaGFkb3c6ICRib3gtc2hhZG93ICFpbXBvcnRhbnQ7IH1cbi5zaGFkb3ctbGcgeyBib3gtc2hhZG93OiAkYm94LXNoYWRvdy1sZyAhaW1wb3J0YW50OyB9XG4uc2hhZG93LW5vbmUgeyBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7IH1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBXaWR0aCBhbmQgaGVpZ2h0XG5cbkBlYWNoICRwcm9wLCAkYWJicmV2IGluICh3aWR0aDogdywgaGVpZ2h0OiBoKSB7XG4gIEBlYWNoICRzaXplLCAkbGVuZ3RoIGluICRzaXplcyB7XG4gICAgLiN7JGFiYnJldn0tI3skc2l6ZX0geyAjeyRwcm9wfTogJGxlbmd0aCAhaW1wb3J0YW50OyB9XG4gIH1cbn1cblxuLm13LTEwMCB7IG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG4ubWgtMTAwIHsgbWF4LWhlaWdodDogMTAwJSAhaW1wb3J0YW50OyB9XG5cbi8vIFZpZXdwb3J0IGFkZGl0aW9uYWwgaGVscGVyc1xuXG4ubWluLXZ3LTEwMCB7IG1pbi13aWR0aDogMTAwdncgIWltcG9ydGFudDsgfVxuLm1pbi12aC0xMDAgeyBtaW4taGVpZ2h0OiAxMDB2aCAhaW1wb3J0YW50OyB9XG5cbi52dy0xMDAgeyB3aWR0aDogMTAwdncgIWltcG9ydGFudDsgfVxuLnZoLTEwMCB7IGhlaWdodDogMTAwdmggIWltcG9ydGFudDsgfVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIE1hcmdpbiBhbmQgUGFkZGluZ1xuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICBAZWFjaCAkcHJvcCwgJGFiYnJldiBpbiAobWFyZ2luOiBtLCBwYWRkaW5nOiBwKSB7XG4gICAgICBAZWFjaCAkc2l6ZSwgJGxlbmd0aCBpbiAkc3BhY2VycyB7XG4gICAgICAgIC4jeyRhYmJyZXZ9I3skaW5maXh9LSN7JHNpemV9IHsgI3skcHJvcH06ICRsZW5ndGggIWltcG9ydGFudDsgfVxuICAgICAgICAuI3skYWJicmV2fXQjeyRpbmZpeH0tI3skc2l6ZX0sXG4gICAgICAgIC4jeyRhYmJyZXZ9eSN7JGluZml4fS0jeyRzaXplfSB7XG4gICAgICAgICAgI3skcHJvcH0tdG9wOiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLiN7JGFiYnJldn1yI3skaW5maXh9LSN7JHNpemV9LFxuICAgICAgICAuI3skYWJicmV2fXgjeyRpbmZpeH0tI3skc2l6ZX0ge1xuICAgICAgICAgICN7JHByb3B9LXJpZ2h0OiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLiN7JGFiYnJldn1iI3skaW5maXh9LSN7JHNpemV9LFxuICAgICAgICAuI3skYWJicmV2fXkjeyRpbmZpeH0tI3skc2l6ZX0ge1xuICAgICAgICAgICN7JHByb3B9LWJvdHRvbTogJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC4jeyRhYmJyZXZ9bCN7JGluZml4fS0jeyRzaXplfSxcbiAgICAgICAgLiN7JGFiYnJldn14I3skaW5maXh9LSN7JHNpemV9IHtcbiAgICAgICAgICAjeyRwcm9wfS1sZWZ0OiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBOZWdhdGl2ZSBtYXJnaW5zIChlLmcuLCB3aGVyZSBgLm1iLW4xYCBpcyBuZWdhdGl2ZSB2ZXJzaW9uIG9mIGAubWItMWApXG4gICAgQGVhY2ggJHNpemUsICRsZW5ndGggaW4gJHNwYWNlcnMge1xuICAgICAgQGlmIFwiI3skc2l6ZX1cIiAhPSBcIjBcIiB7XG4gICAgICAgIC5tI3skaW5maXh9LW4jeyRzaXplfSB7IG1hcmdpbjogLSRsZW5ndGggIWltcG9ydGFudDsgfVxuICAgICAgICAubXQjeyRpbmZpeH0tbiN7JHNpemV9LFxuICAgICAgICAubXkjeyRpbmZpeH0tbiN7JHNpemV9IHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAtJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC5tciN7JGluZml4fS1uI3skc2l6ZX0sXG4gICAgICAgIC5teCN7JGluZml4fS1uI3skc2l6ZX0ge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogLSRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAubWIjeyRpbmZpeH0tbiN7JHNpemV9LFxuICAgICAgICAubXkjeyRpbmZpeH0tbiN7JHNpemV9IHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC5tbCN7JGluZml4fS1uI3skc2l6ZX0sXG4gICAgICAgIC5teCN7JGluZml4fS1uI3skc2l6ZX0ge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU29tZSBzcGVjaWFsIG1hcmdpbiB1dGlsc1xuICAgIC5tI3skaW5maXh9LWF1dG8geyBtYXJnaW46IGF1dG8gIWltcG9ydGFudDsgfVxuICAgIC5tdCN7JGluZml4fS1hdXRvLFxuICAgIC5teSN7JGluZml4fS1hdXRvIHtcbiAgICAgIG1hcmdpbi10b3A6IGF1dG8gIWltcG9ydGFudDtcbiAgICB9XG4gICAgLm1yI3skaW5maXh9LWF1dG8sXG4gICAgLm14I3skaW5maXh9LWF1dG8ge1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5tYiN7JGluZml4fS1hdXRvLFxuICAgIC5teSN7JGluZml4fS1hdXRvIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IGF1dG8gIWltcG9ydGFudDtcbiAgICB9XG4gICAgLm1sI3skaW5maXh9LWF1dG8sXG4gICAgLm14I3skaW5maXh9LWF1dG8ge1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBTdHJldGNoZWQgbGlua1xuLy9cblxuLnN0cmV0Y2hlZC1saW5rIHtcbiAgJjo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogMTtcbiAgICAvLyBKdXN0IGluIGNhc2UgYHBvaW50ZXItZXZlbnRzOiBub25lYCBpcyBzZXQgb24gYSBwYXJlbnRcbiAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIC8vIElFMTAgYnVnZml4LCBzZWUgaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9xdWVzdGlvbnMvMTY5NDc5NjcvaWUxMC1ob3Zlci1wc2V1ZG8tY2xhc3MtZG9lc250LXdvcmstd2l0aG91dC1iYWNrZ3JvdW5kLWNvbG9yXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vXG4vLyBUZXh0XG4vL1xuXG4udGV4dC1tb25vc3BhY2UgeyBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZSAhaW1wb3J0YW50OyB9XG5cbi8vIEFsaWdubWVudFxuXG4udGV4dC1qdXN0aWZ5ICB7IHRleHQtYWxpZ246IGp1c3RpZnkgIWltcG9ydGFudDsgfVxuLnRleHQtd3JhcCAgICAgeyB3aGl0ZS1zcGFjZTogbm9ybWFsICFpbXBvcnRhbnQ7IH1cbi50ZXh0LW5vd3JhcCAgIHsgd2hpdGUtc3BhY2U6IG5vd3JhcCAhaW1wb3J0YW50OyB9XG4udGV4dC10cnVuY2F0ZSB7IEBpbmNsdWRlIHRleHQtdHJ1bmNhdGUoKTsgfVxuXG4vLyBSZXNwb25zaXZlIGFsaWdubWVudFxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAudGV4dCN7JGluZml4fS1sZWZ0ICAgeyB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7IH1cbiAgICAudGV4dCN7JGluZml4fS1yaWdodCAgeyB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50OyB9XG4gICAgLnRleHQjeyRpbmZpeH0tY2VudGVyIHsgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuXG4vLyBUcmFuc2Zvcm1hdGlvblxuXG4udGV4dC1sb3dlcmNhc2UgIHsgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZSAhaW1wb3J0YW50OyB9XG4udGV4dC11cHBlcmNhc2UgIHsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZSAhaW1wb3J0YW50OyB9XG4udGV4dC1jYXBpdGFsaXplIHsgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemUgIWltcG9ydGFudDsgfVxuXG4vLyBXZWlnaHQgYW5kIGl0YWxpY3NcblxuLmZvbnQtd2VpZ2h0LWxpZ2h0ICAgeyBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWxpZ2h0ICFpbXBvcnRhbnQ7IH1cbi5mb250LXdlaWdodC1saWdodGVyIHsgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1saWdodGVyICFpbXBvcnRhbnQ7IH1cbi5mb250LXdlaWdodC1ub3JtYWwgIHsgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWwgIWltcG9ydGFudDsgfVxuLmZvbnQtd2VpZ2h0LWJvbGQgICAgeyBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQgIWltcG9ydGFudDsgfVxuLmZvbnQtd2VpZ2h0LWJvbGRlciAgeyBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGRlciAhaW1wb3J0YW50OyB9XG4uZm9udC1pdGFsaWMgICAgICAgICB7IGZvbnQtc3R5bGU6IGl0YWxpYyAhaW1wb3J0YW50OyB9XG5cbi8vIENvbnRleHR1YWwgY29sb3JzXG5cbi50ZXh0LXdoaXRlIHsgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50OyB9XG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICBAaW5jbHVkZSB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoXCIudGV4dC0jeyRjb2xvcn1cIiwgJHZhbHVlLCB0cnVlKTtcbn1cblxuLnRleHQtYm9keSB7IGNvbG9yOiAkYm9keS1jb2xvciAhaW1wb3J0YW50OyB9XG4udGV4dC1tdXRlZCB7IGNvbG9yOiAkdGV4dC1tdXRlZCAhaW1wb3J0YW50OyB9XG5cbi50ZXh0LWJsYWNrLTUwIHsgY29sb3I6IHJnYmEoJGJsYWNrLCAuNSkgIWltcG9ydGFudDsgfVxuLnRleHQtd2hpdGUtNTAgeyBjb2xvcjogcmdiYSgkd2hpdGUsIC41KSAhaW1wb3J0YW50OyB9XG5cbi8vIE1pc2NcblxuLnRleHQtaGlkZSB7XG4gIEBpbmNsdWRlIHRleHQtaGlkZSgkaWdub3JlLXdhcm5pbmc6IHRydWUpO1xufVxuXG4udGV4dC1kZWNvcmF0aW9uLW5vbmUgeyB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDsgfVxuXG4udGV4dC1icmVhayB7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQgIWltcG9ydGFudDsgLy8gRGVwcmVjYXRlZCwgYnV0IGF2b2lkcyBpc3N1ZXMgd2l0aCBmbGV4IGNvbnRhaW5lcnNcbiAgd29yZC13cmFwOiBicmVhay13b3JkICFpbXBvcnRhbnQ7IC8vIFVzZWQgaW5zdGVhZCBvZiBgb3ZlcmZsb3ctd3JhcGAgZm9yIElFICYgRWRnZSBMZWdhY3lcbn1cblxuLy8gUmVzZXRcblxuLnRleHQtcmVzZXQgeyBjb2xvcjogaW5oZXJpdCAhaW1wb3J0YW50OyB9XG4iLCIvLyBUZXh0IHRydW5jYXRlXG4vLyBSZXF1aXJlcyBpbmxpbmUtYmxvY2sgb3IgYmxvY2sgZm9yIHByb3BlciBzdHlsaW5nXG5cbkBtaXhpbiB0ZXh0LXRydW5jYXRlKCkge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBUeXBvZ3JhcGh5XG5cbkBtaXhpbiB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yLCAkaWdub3JlLXdhcm5pbmc6IGZhbHNlKSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGNvbG9yOiAkY29sb3IgIWltcG9ydGFudDtcbiAgfVxuICBAaWYgJGVtcGhhc2l6ZWQtbGluay1ob3Zlci1kYXJrZW4tcGVyY2VudGFnZSAhPSAwIHtcbiAgICBhI3skcGFyZW50fSB7XG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgICAgY29sb3I6IGRhcmtlbigkY29sb3IsICRlbXBoYXNpemVkLWxpbmstaG92ZXItZGFya2VuLXBlcmNlbnRhZ2UpICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcImB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoKWBcIiwgXCJ2NC40LjBcIiwgXCJ2NVwiLCAkaWdub3JlLXdhcm5pbmcpO1xufVxuIiwiLy8gQ1NTIGltYWdlIHJlcGxhY2VtZW50XG5AbWl4aW4gdGV4dC1oaWRlKCRpZ25vcmUtd2FybmluZzogZmFsc2UpIHtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGZvbnQtZmFtaWx5LW5vLW1pc3NpbmctZ2VuZXJpYy1mYW1pbHkta2V5d29yZFxuICBmb250OiAwLzAgYTtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcblxuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJgdGV4dC1oaWRlKClgXCIsIFwidjQuMS4wXCIsIFwidjVcIiwgJGlnbm9yZS13YXJuaW5nKTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vL1xuLy8gVmlzaWJpbGl0eSB1dGlsaXRpZXNcbi8vXG5cbi52aXNpYmxlIHtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xufVxuXG4uaW52aXNpYmxlIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuICFpbXBvcnRhbnQ7XG59XG4iLCIvLyBDb250YWluZXIgd2lkdGhzXG4vL1xuLy8gU2V0IHRoZSBjb250YWluZXIgd2lkdGgsIGFuZCBvdmVycmlkZSBpdCBmb3IgZml4ZWQgbmF2YmFycyBpbiBtZWRpYSBxdWVyaWVzLlxuXG5AaWYgJGVuYWJsZS1ncmlkLWNsYXNzZXMge1xuICAvLyBTaW5nbGUgY29udGFpbmVyIGNsYXNzIHdpdGggYnJlYWtwb2ludCBtYXgtd2lkdGhzXG4gIC5jb250YWluZXIsXG4gIC8vIDEwMCUgd2lkZSBjb250YWluZXIgYXQgYWxsIGJyZWFrcG9pbnRzXG4gIC5jb250YWluZXItZmx1aWQge1xuICAgIEBpbmNsdWRlIG1ha2UtY29udGFpbmVyKCk7XG4gIH1cblxuICAvLyBSZXNwb25zaXZlIGNvbnRhaW5lcnMgdGhhdCBhcmUgMTAwJSB3aWRlIHVudGlsIGEgYnJlYWtwb2ludFxuICBAZWFjaCAkYnJlYWtwb2ludCwgJGNvbnRhaW5lci1tYXgtd2lkdGggaW4gJGNvbnRhaW5lci1tYXgtd2lkdGhzIHtcbiAgICAuY29udGFpbmVyLSN7JGJyZWFrcG9pbnR9IHtcbiAgICAgIEBleHRlbmQgLmNvbnRhaW5lci1mbHVpZDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cykge1xuICAgICAgJXJlc3BvbnNpdmUtY29udGFpbmVyLSN7JGJyZWFrcG9pbnR9IHtcbiAgICAgICAgbWF4LXdpZHRoOiAkY29udGFpbmVyLW1heC13aWR0aDtcbiAgICAgIH1cblxuICAgICAgLy8gRXh0ZW5kIGVhY2ggYnJlYWtwb2ludCB3aGljaCBpcyBzbWFsbGVyIG9yIGVxdWFsIHRvIHRoZSBjdXJyZW50IGJyZWFrcG9pbnRcbiAgICAgICRleHRlbmQtYnJlYWtwb2ludDogdHJ1ZTtcblxuICAgICAgQGVhY2ggJG5hbWUsICR3aWR0aCBpbiAkZ3JpZC1icmVha3BvaW50cyB7XG4gICAgICAgIEBpZiAoJGV4dGVuZC1icmVha3BvaW50KSB7XG4gICAgICAgICAgLmNvbnRhaW5lciN7YnJlYWtwb2ludC1pbmZpeCgkbmFtZSwgJGdyaWQtYnJlYWtwb2ludHMpfSB7XG4gICAgICAgICAgICBAZXh0ZW5kICVyZXNwb25zaXZlLWNvbnRhaW5lci0jeyRicmVha3BvaW50fTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAvLyBPbmNlIHRoZSBjdXJyZW50IGJyZWFrcG9pbnQgaXMgcmVhY2hlZCwgc3RvcCBleHRlbmRpbmdcbiAgICAgICAgICBAaWYgKCRicmVha3BvaW50ID09ICRuYW1lKSB7XG4gICAgICAgICAgICAkZXh0ZW5kLWJyZWFrcG9pbnQ6IGZhbHNlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vIFJvd1xuLy9cbi8vIFJvd3MgY29udGFpbiB5b3VyIGNvbHVtbnMuXG5cbkBpZiAkZW5hYmxlLWdyaWQtY2xhc3NlcyB7XG4gIC5yb3cge1xuICAgIEBpbmNsdWRlIG1ha2Utcm93KCk7XG4gIH1cblxuICAvLyBSZW1vdmUgdGhlIG5lZ2F0aXZlIG1hcmdpbiBmcm9tIGRlZmF1bHQgLnJvdywgdGhlbiB0aGUgaG9yaXpvbnRhbCBwYWRkaW5nXG4gIC8vIGZyb20gYWxsIGltbWVkaWF0ZSBjaGlsZHJlbiBjb2x1bW5zICh0byBwcmV2ZW50IHJ1bmF3YXkgc3R5bGUgaW5oZXJpdGFuY2UpLlxuICAubm8tZ3V0dGVycyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuXG4gICAgPiAuY29sLFxuICAgID4gW2NsYXNzKj1cImNvbC1cIl0ge1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB9XG4gIH1cbn1cblxuLy8gQ29sdW1uc1xuLy9cbi8vIENvbW1vbiBzdHlsZXMgZm9yIHNtYWxsIGFuZCBsYXJnZSBncmlkIGNvbHVtbnNcblxuQGlmICRlbmFibGUtZ3JpZC1jbGFzc2VzIHtcbiAgQGluY2x1ZGUgbWFrZS1ncmlkLWNvbHVtbnMoKTtcbn1cbiIsIi8vLyBHcmlkIHN5c3RlbVxuLy9cbi8vIEdlbmVyYXRlIHNlbWFudGljIGdyaWQgY29sdW1ucyB3aXRoIHRoZXNlIG1peGlucy5cblxuQG1peGluIG1ha2UtY29udGFpbmVyKCRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy1yaWdodDogJGd1dHRlciAqIC41O1xuICBwYWRkaW5nLWxlZnQ6ICRndXR0ZXIgKiAuNTtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbn1cblxuQG1peGluIG1ha2Utcm93KCRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbi1yaWdodDogLSRndXR0ZXIgKiAuNTtcbiAgbWFyZ2luLWxlZnQ6IC0kZ3V0dGVyICogLjU7XG59XG5cbi8vIEZvciBlYWNoIGJyZWFrcG9pbnQsIGRlZmluZSB0aGUgbWF4aW11bSB3aWR0aCBvZiB0aGUgY29udGFpbmVyIGluIGEgbWVkaWEgcXVlcnlcbkBtaXhpbiBtYWtlLWNvbnRhaW5lci1tYXgtd2lkdGhzKCRtYXgtd2lkdGhzOiAkY29udGFpbmVyLW1heC13aWR0aHMsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGVhY2ggJGJyZWFrcG9pbnQsICRjb250YWluZXItbWF4LXdpZHRoIGluICRtYXgtd2lkdGhzIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIG1heC13aWR0aDogJGNvbnRhaW5lci1tYXgtd2lkdGg7XG4gICAgfVxuICB9XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcIlRoZSBgbWFrZS1jb250YWluZXItbWF4LXdpZHRoc2AgbWl4aW5cIiwgXCJ2NC41LjJcIiwgXCJ2NVwiKTtcbn1cblxuQG1peGluIG1ha2UtY29sLXJlYWR5KCRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC8vIFByZXZlbnQgY29sdW1ucyBmcm9tIGJlY29taW5nIHRvbyBuYXJyb3cgd2hlbiBhdCBzbWFsbGVyIGdyaWQgdGllcnMgYnlcbiAgLy8gYWx3YXlzIHNldHRpbmcgYHdpZHRoOiAxMDAlO2AuIFRoaXMgd29ya3MgYmVjYXVzZSB3ZSB1c2UgYGZsZXhgIHZhbHVlc1xuICAvLyBsYXRlciBvbiB0byBvdmVycmlkZSB0aGlzIGluaXRpYWwgd2lkdGguXG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXJpZ2h0OiAkZ3V0dGVyICogLjU7XG4gIHBhZGRpbmctbGVmdDogJGd1dHRlciAqIC41O1xufVxuXG5AbWl4aW4gbWFrZS1jb2woJHNpemUsICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW5zKSB7XG4gIGZsZXg6IDAgMCBwZXJjZW50YWdlKGRpdmlkZSgkc2l6ZSwgJGNvbHVtbnMpKTtcbiAgLy8gQWRkIGEgYG1heC13aWR0aGAgdG8gZW5zdXJlIGNvbnRlbnQgd2l0aGluIGVhY2ggY29sdW1uIGRvZXMgbm90IGJsb3cgb3V0XG4gIC8vIHRoZSB3aWR0aCBvZiB0aGUgY29sdW1uLiBBcHBsaWVzIHRvIElFMTArIGFuZCBGaXJlZm94LiBDaHJvbWUgYW5kIFNhZmFyaVxuICAvLyBkbyBub3QgYXBwZWFyIHRvIHJlcXVpcmUgdGhpcy5cbiAgbWF4LXdpZHRoOiBwZXJjZW50YWdlKGRpdmlkZSgkc2l6ZSwgJGNvbHVtbnMpKTtcbn1cblxuQG1peGluIG1ha2UtY29sLWF1dG8oKSB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICB3aWR0aDogYXV0bztcbiAgbWF4LXdpZHRoOiAxMDAlOyAvLyBSZXNldCBlYXJsaWVyIGdyaWQgdGllcnNcbn1cblxuQG1peGluIG1ha2UtY29sLW9mZnNldCgkc2l6ZSwgJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMpIHtcbiAgJG51bTogZGl2aWRlKCRzaXplLCAkY29sdW1ucyk7XG4gIG1hcmdpbi1sZWZ0OiBpZigkbnVtID09IDAsIDAsIHBlcmNlbnRhZ2UoJG51bSkpO1xufVxuXG4vLyBSb3cgY29sdW1uc1xuLy9cbi8vIFNwZWNpZnkgb24gYSBwYXJlbnQgZWxlbWVudChlLmcuLCAucm93KSB0byBmb3JjZSBpbW1lZGlhdGUgY2hpbGRyZW4gaW50byBOTlxuLy8gbnVtYmVyb2YgY29sdW1ucy4gU3VwcG9ydHMgd3JhcHBpbmcgdG8gbmV3IGxpbmVzLCBidXQgZG9lcyBub3QgZG8gYSBNYXNvbnJ5XG4vLyBzdHlsZSBncmlkLlxuQG1peGluIHJvdy1jb2xzKCRjb3VudCkge1xuICA+ICoge1xuICAgIGZsZXg6IDAgMCBkaXZpZGUoMTAwJSwgJGNvdW50KTtcbiAgICBtYXgtd2lkdGg6IGRpdmlkZSgxMDAlLCAkY291bnQpO1xuICB9XG59XG4iLCIvLyBGcmFtZXdvcmsgZ3JpZCBnZW5lcmF0aW9uXG4vL1xuLy8gVXNlZCBvbmx5IGJ5IEJvb3RzdHJhcCB0byBnZW5lcmF0ZSB0aGUgY29ycmVjdCBudW1iZXIgb2YgZ3JpZCBjbGFzc2VzIGdpdmVuXG4vLyBhbnkgdmFsdWUgb2YgYCRncmlkLWNvbHVtbnNgLlxuXG5AbWl4aW4gbWFrZS1ncmlkLWNvbHVtbnMoJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMsICRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAvLyBDb21tb24gcHJvcGVydGllcyBmb3IgYWxsIGJyZWFrcG9pbnRzXG4gICVncmlkLWNvbHVtbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmctcmlnaHQ6ICRndXR0ZXIgKiAuNTtcbiAgICBwYWRkaW5nLWxlZnQ6ICRndXR0ZXIgKiAuNTtcbiAgfVxuXG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRicmVha3BvaW50cykge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKTtcblxuICAgIEBpZiAkY29sdW1ucyA+IDAge1xuICAgICAgLy8gQWxsb3cgY29sdW1ucyB0byBzdHJldGNoIGZ1bGwgd2lkdGggYmVsb3cgdGhlaXIgYnJlYWtwb2ludHNcbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGNvbHVtbnMge1xuICAgICAgICAuY29sI3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICBAZXh0ZW5kICVncmlkLWNvbHVtbjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5jb2wjeyRpbmZpeH0sXG4gICAgLmNvbCN7JGluZml4fS1hdXRvIHtcbiAgICAgIEBleHRlbmQgJWdyaWQtY29sdW1uO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cykge1xuICAgICAgLy8gUHJvdmlkZSBiYXNpYyBgLmNvbC17YnB9YCBjbGFzc2VzIGZvciBlcXVhbC13aWR0aCBmbGV4Ym94IGNvbHVtbnNcbiAgICAgIC5jb2wjeyRpbmZpeH0ge1xuICAgICAgICBmbGV4LWJhc2lzOiAwO1xuICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIH1cblxuICAgICAgQGlmICRncmlkLXJvdy1jb2x1bW5zID4gMCB7XG4gICAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtcm93LWNvbHVtbnMge1xuICAgICAgICAgIC5yb3ctY29scyN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSByb3ctY29scygkaSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5jb2wjeyRpbmZpeH0tYXV0byB7XG4gICAgICAgIEBpbmNsdWRlIG1ha2UtY29sLWF1dG8oKTtcbiAgICAgIH1cblxuICAgICAgQGlmICRjb2x1bW5zID4gMCB7XG4gICAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGNvbHVtbnMge1xuICAgICAgICAgIC5jb2wjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2woJGksICRjb2x1bW5zKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLm9yZGVyI3skaW5maXh9LWZpcnN0IHsgb3JkZXI6IC0xOyB9XG5cbiAgICAgIC5vcmRlciN7JGluZml4fS1sYXN0IHsgb3JkZXI6ICRjb2x1bW5zICsgMTsgfVxuXG4gICAgICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICRjb2x1bW5zIHtcbiAgICAgICAgLm9yZGVyI3skaW5maXh9LSN7JGl9IHsgb3JkZXI6ICRpOyB9XG4gICAgICB9XG5cbiAgICAgIEBpZiAkY29sdW1ucyA+IDAge1xuICAgICAgICAvLyBgJGNvbHVtbnMgLSAxYCBiZWNhdXNlIG9mZnNldHRpbmcgYnkgdGhlIHdpZHRoIG9mIGFuIGVudGlyZSByb3cgaXNuJ3QgcG9zc2libGVcbiAgICAgICAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAoJGNvbHVtbnMgLSAxKSB7XG4gICAgICAgICAgQGlmIG5vdCAoJGluZml4ID09IFwiXCIgYW5kICRpID09IDApIHsgLy8gQXZvaWQgZW1pdHRpbmcgdXNlbGVzcyAub2Zmc2V0LTBcbiAgICAgICAgICAgIC5vZmZzZXQjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbC1vZmZzZXQoJGksICRjb2x1bW5zKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8qKlxyXG4gKiBNSVhJTlNcclxuICovXHJcblxyXG4kaW5jcmVtZW50LWZyb206IG51bGw7XHJcbiRpbmNyZW1lbnQtdG86IG51bGw7XHJcbiRpbmNyZW1lbnQtZnJvbS1weDogbnVsbDtcclxuJGluY3JlbWVudC10by1weDogbnVsbDtcclxuXHJcbiRkZXNrOiAxNTAwcHg7XHJcbiR3aWRlOiAxMDI0cHg7XHJcbiRtZWRpdW06IDc2OXB4O1xyXG4kc21hbGw6IDY0MHB4O1xyXG5cclxuLy9NRURJQSBRVUVSSUVTXHJcblxyXG4vLyBUaGUgcmVzcG9uZC10byBtaXhpbiBpbiBpbnRlbmRlZCB0byBiZSB1c2VkIGdsb2JhbGx5IGFjY3Jvc3NcclxuLy8gbGF5b3V0cyBhbmQgY29tcG9uZW50c1xyXG5AbWl4aW4gcmVzcG9uZC10bygkbWVkaWEpe1xyXG4gICAgQGlmICRtZWRpYSA9PSBkZXNrLWFuZC11cHtcclxuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGggOiAkZGVzayl7IEBjb250ZW50O31cclxuICAgIH1cclxuICAgIEBlbHNlIGlmICRtZWRpYSA9PSBkZXNrLWFuZC1kb3due1xyXG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aCA6ICRkZXNrIC0xKXsgQGNvbnRlbnQ7fVxyXG4gICAgfVxyXG4gICAgQGVsc2UgaWYgJG1lZGlhID09IHdpZGUtYW5kLXVwe1xyXG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aCA6ICR3aWRlKXsgQGNvbnRlbnQ7fVxyXG4gICAgfVxyXG4gICAgQGVsc2UgaWYgJG1lZGlhID09IHdpZGUtYW5kLWRvd257XHJcbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoIDogJHdpZGUgLTEpeyBAY29udGVudDt9XHJcbiAgICB9XHJcbiAgICBAZWxzZSBpZiAkbWVkaWEgPT0gbWVkaXVtLWFuZC11cHtcclxuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGggOiAkbWVkaXVtKXsgQGNvbnRlbnQ7fVxyXG4gICAgfVxyXG4gICAgQGVsc2UgaWYgJG1lZGlhID09IG1lZGl1bS1hbmQtZG93bntcclxuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGggOiAkbWVkaXVtIC0gMSl7IEBjb250ZW50O31cclxuICAgIH1cclxuICAgIEBlbHNlIGlmICRtZWRpYSA9PSBzbWFsbC1hbmQtdXB7XHJcbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoIDogJHNtYWxsKXsgQGNvbnRlbnQ7fVxyXG4gICAgfVxyXG4gICAgQGVsc2UgaWYgJG1lZGlhID09IHNtYWxsLWFuZC1kb3due1xyXG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aCA6ICRzbWFsbCAtIDEpeyBAY29udGVudDt9XHJcbiAgICB9XHJcbiAgICBAZWxzZSBpZiAkbWVkaWEgPT0gZGVza3tcclxuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGggOiAkZGVzayAtIDEpIGFuZCAobWluLXdpZHRoIDogJHdpZGUgKyAxKXsgQGNvbnRlbnQ7fVxyXG4gICAgfVxyXG4gICAgQGVsc2UgaWYgJG1lZGlhID09IHdpZGV7XHJcbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoIDogJHdpZGUpIGFuZCAobWluLXdpZHRoIDogJG1lZGl1bSArIDEpeyBAY29udGVudDt9XHJcbiAgICB9XHJcbiAgICBAZWxzZSBpZiAkbWVkaWEgPT0gbWVkaXVte1xyXG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aCA6ICRtZWRpdW0pIGFuZCAobWluLXdpZHRoIDogJHNtYWxsICsgMSl7IEBjb250ZW50O31cclxuICAgIH1cclxuICAgIEBlbHNlIGlmICRtZWRpYSA9PSBzbWFsbHtcclxuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGggOiAkc21hbGwpeyBAY29udGVudDt9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vVGhlIG1lZGlhLXdpZHRoIG1peGluIGlzIHVzZWQgdG8gcGF0Y2ggYW55IGhvbGVzIGluIHRoZSBwcm9qZWN0XHJcbi8vVXNlIHNwYXJpbmdseSBhbmQgcGxhY2UgYW55IG5ldyBicmVha3BvaW50IHZhcmlhYmxlcyBpbiB0aGUgcHJvamVjdFxyXG4vL3RoZW1lIGZpbGUgZm9yIHNhZmUga2VlcGluZy5cclxuQG1peGluIG1lZGlhLXdpZHRoKCRicmVha3BvaW50KXtcclxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aCA6ICRicmVha3BvaW50KXsgQGNvbnRlbnQ7fVxyXG59XHJcblxyXG4vL0JST1dTRVJTIEZBTExCQUNLU1xyXG4vL2NhbiBiZSB1c2VkIHdpdGggb3Igd2l0aG91dCBnaXZpbmcgYSB3aWR0aCBpbiBweFxyXG5AbWl4aW4gaWUtZmFsbGJhY2soJHdpZHRoOiBudWxsKXtcclxuICAgIEBpZiAkd2lkdGgge1xyXG4gICAgICAgIEBtZWRpYSBhbGwgYW5kICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSkgYW5kIChtaW4td2lkdGg6ICR3aWR0aCksICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSBhbmQgKG1pbi13aWR0aDogJHdpZHRoKSB7XHJcbiAgICAgICAgICAgIEBjb250ZW50O1xyXG4gICAgICAgIH1cclxuICAgIH1AZWxzZXtcclxuICAgICAgICBAbWVkaWEgYWxsIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSkge1xyXG4gICAgICAgICAgICBAY29udGVudDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtaXhpbiBmaXJlZm94LWZhbGxiYWNre1xyXG4gICAgQC1tb3otZG9jdW1lbnQgdXJsLXByZWZpeCgpe1xyXG4gICAgICAgIEBjb250ZW50O1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWl4aW4gZWRnZS1mYWxsYmFja3tcclxuICAgIEBzdXBwb3J0cyAoLW1zLWltZS1hbGlnbjphdXRvKSB7XHJcbiAgICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtaXhpbiBzYWZhcmktZmFsbGJhY2t7XHJcbiAgICBAY29udGVudDtcclxufVxyXG5cclxuQG1peGluIGNocm9tZS1mYWxsYmFja3tcclxuICAgIEBjb250ZW50O1xyXG59XHJcblxyXG4vL0FTUEVDVCBSQVRJTyBDQUxDVUxBVE9SXHJcbkBtaXhpbiBhc3BlY3QtcmF0aW8oJHdpZHRoLCAkaGVpZ2h0KXtcclxuICAgIHBhZGRpbmctdG9wOiAoKCRoZWlnaHQgLyAkd2lkdGgpICogMTAwJSk7XHJcbn1cclxuXHJcbi8vQVNQRUNUIFJBVElPIEhBQ0tcclxuLy90aGlzIG1peGluIGFsbG93cyB5b3UgdG8gcGxhY2UgYSByZXNwb25zaXZlIGFzcGVjdCByYXRpb1xyXG4vL2Jhc2VkIG9uIHRoZSB2aWV3cG9ydCB3aWR0aC4gWW91IGNhbiBhbHNvIHNldCB0aGUgYnJlYWtwb2ludFxyXG4vL3doZXJlIHRoZSBjb21wb25lbnQgZ2V0cyB0byBpdCdzIGxhcmdlc3QgZGVzaXJhYmxlIHNpemUgYW5kXHJcbi8vYXBwbHkgYSBmaXhlZCBoZWlnaHQvXHJcbkBtaXhpbiBhci1oYWNrKCR2YWx1ZSwgJG1heC13aWR0aDogMTAwJSwgJGZpeC1oZWlnaHQ6IDApe1xyXG5cclxuICAgIEAtbW96LWRvY3VtZW50IHVybC1wcmVmaXgoKXtcclxuICAgICAgICBwYWRkaW5nLXRvcDogJHZhbHVlICsgdnc7XHJcbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoIDogJG1heC13aWR0aCl7XHJcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xyXG4gICAgICAgICAgICBoZWlnaHQ6ICRmaXgtaGVpZ2h0O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAc3VwcG9ydHMgKC1tcy1pbWUtYWxpZ246YXV0byl7XHJcbiAgICAgICAgcGFkZGluZy10b3A6ICR2YWx1ZSArIHZ3O1xyXG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aCA6ICRtYXgtd2lkdGgpe1xyXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAkZml4LWhlaWdodDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vQkFDS0dST1VORCBNSVhJTlNcclxuQG1peGluIGJhY2tncm91bmQoJG1lZGlhKXtcclxuICAgIEBpZiAkbWVkaWEgPT0gY292ZXJ7XHJcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciA7XHJcbiAgICB9XHJcbiAgICBAZWxzZSBpZiAkbWVkaWEgPT0gY29udGFpbntcclxuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XHJcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vQ09WRVIgTUlYSU5TXHJcbkBtaXhpbiBjb3ZlcigkbWVkaWEpe1xyXG4gICAgQGlmICRtZWRpYSA9PSBhYnNvbHV0ZXtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgfVxyXG4gICAgQGVsc2UgaWYgJG1lZGlhID09IGZpeGVke1xyXG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vQ0xFQVJGSVggTUlYSU5cclxuQG1peGluIGNsZWFyZml4e1xyXG4gICAgJjpiZWZvcmUsICY6YWZ0ZXJ7XHJcbiAgICAgICAgY29udGVudDogXCIgXCI7XHJcbiAgICAgICAgZGlzcGxheTogdGFibGU7XHJcbiAgICB9XHJcblxyXG4gICAgJjphZnRlcntcclxuICAgICAgICBjbGVhcjogYm90aDtcclxuICAgIH1cclxufVxyXG5cclxuLy9TQ1JPTExBQkxFIE1JWElOXHJcbkBtaXhpbiBzY3JvbGxhYmxlKCAkYXhpcyApe1xyXG4gICAgb3ZlcmZsb3ctI3skYXhpc306IHNjcm9sbDtcclxuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcclxufVxyXG5cclxuLy9UUkFOU0lUSU9OXHJcbkBtaXhpbiB0cmFuc2l0aW9uKCAkdHJhbnNpdGlvbiwgJGhhcmR3YXJlLWFjY2VsZXJhdGU6IHRydWUgKXtcclxuICAgIEBlYWNoICRwcmVmaXggaW4gJHByZWZpeGVze1xyXG4gICAgICAgICN7JHByZWZpeH0tdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XHJcbiAgICB9XHJcbiAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjtcclxuXHJcbiAgICBAaWYgJGhhcmR3YXJlLWFjY2VsZXJhdGV7XHJcbiAgICAgICAgQGV4dGVuZCAlaGE7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vQk9YIFNJWklOR1xyXG5AbWl4aW4gYm94LXNpemluZygkdHlwZSl7XHJcbiAgICAvLyBAZWFjaCAkcHJlZml4IGluICRwcmVmaXhlc3tcclxuICAgIC8vICAgICAjeyRwcmVmaXh9LWJveC1zaXppbmc6ICR0eXBlO1xyXG4gICAgLy8gfVxyXG4gICAgYm94LXNpemluZzogJHR5cGU7XHJcbn1cclxuXHJcblxyXG4vL0FOSU1BVEVcclxuQG1peGluIGFuaW1hdGUoJHg6IGFsbCAyMDBtcyl7XHJcbiAgICBAaWYoJHgpe1xyXG4gICAgICAgIHRyYW5zaXRpb246ICR4O1xyXG4gICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcclxuICAgIH1cclxuICAgIEBlbHNlIGlmKCR4ID09IG51bGwpe1xyXG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAyMDBtcyBlYXNlLWluLW91dDtcclxuICAgIH1cclxuICAgIC8vIC13ZWJraXQtdHJhbnNpdGlvbjogJHg7XHJcbiAgICAvLyAgICAtbW96LXRyYW5zaXRpb246ICR4O1xyXG4gICAgLy8gICAgIC1tcy10cmFuc2l0aW9uOiAkeDtcclxuICAgIC8vICAgICAgLW8tdHJhbnNpdGlvbjogJHg7XHJcbn1cclxuXHJcblxyXG4vL0ZMVUlEIEZPTlRcclxuLy8gZXhhbXBsZSB1c2UgaDEgeyBAaW5jbHVkZSBmbHVpZC10eXBlKCRtaW5fd2lkdGgsICRtYXhfd2lkdGgsICRtaW5fZm9udCwgJG1heF9mb250KTsgfVxyXG5cclxuQGZ1bmN0aW9uIHN0cmlwLXVuaXQoJHZhbHVlKSB7XHJcbiAgICBAcmV0dXJuICR2YWx1ZSAvICgkdmFsdWUgKiAwICsgMSk7XHJcbn1cclxuXHJcbkBtaXhpbiBmbHVpZC10eXBlKCRtaW4tdncsICRtYXgtdncsICRtaW4tZm9udC1zaXplLCAkbWF4LWZvbnQtc2l6ZSkge1xyXG4gICAgJHUxOiB1bml0KCRtaW4tdncpO1xyXG4gICAgJHUyOiB1bml0KCRtYXgtdncpO1xyXG4gICAgJHUzOiB1bml0KCRtaW4tZm9udC1zaXplKTtcclxuICAgICR1NDogdW5pdCgkbWF4LWZvbnQtc2l6ZSk7XHJcblxyXG4gICAgQGlmICR1MSA9PSAkdTIgYW5kICR1MSA9PSAkdTMgYW5kICR1MSA9PSAkdTQge1xyXG4gICAgICAgICYge1xyXG4gICAgICAgICAgICBmb250LXNpemU6ICRtaW4tZm9udC1zaXplO1xyXG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWluLXZ3KSB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IGNhbGMoI3skbWluLWZvbnQtc2l6ZX0gKyAje3N0cmlwLXVuaXQoJG1heC1mb250LXNpemUgLSAkbWluLWZvbnQtc2l6ZSl9ICogKCgxMDB2dyAtICN7JG1pbi12d30pIC8gI3tzdHJpcC11bml0KCRtYXgtdncgLSAkbWluLXZ3KX0pKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWF4LXZ3KSB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6ICRtYXgtZm9udC1zaXplO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vLyA9dHJhbnNpdGlvbiggJHRyYW5zaXRpb24sICRoYXJkd2FyZS1hY2NlbGVyYXRlOiB0cnVlIClcclxuLy8gICBAZWFjaCAkcHJlZml4IGluICRwcmVmaXhlc1xyXG4vLyAgICAgI3skcHJlZml4fS10cmFuc2l0aW9uOiB1bnF1b3RlKCR0cmFuc2l0aW9uKVxyXG4vLyAgIHRyYW5zaXRpb246IHVucXVvdGUoJHRyYW5zaXRpb24pXHJcbi8vICAgQGlmICRoYXJkd2FyZS1hY2NlbGVyYXRlXHJcbi8vICAgICBAZXh0ZW5kICVoYVxyXG5cclxuLy8gPXRyYW5zZm9ybSggJGFyZ3VtZW50cy4uLiApXHJcbi8vICAgQGVhY2ggJHByZWZpeCBpbiAkcHJlZml4ZXNcclxuLy8gICAgICN7JHByZWZpeH0tdHJhbnNmb3JtOiAkYXJndW1lbnRzXHJcbi8vICAgdHJhbnNmb3JtOiAkYXJndW1lbnRzXHJcblxyXG4vLyA9ZmlsdGVyKCAkYXJndW1lbnRzLi4uIClcclxuLy8gICBAZWFjaCAkcHJlZml4IGluICRwcmVmaXhlc1xyXG4vLyAgICAgI3skcHJlZml4fS1maWx0ZXI6ICRhcmd1bWVudHNcclxuLy8gICBmaWx0ZXI6ICRhcmd1bWVudHNcclxuXHJcbi8vID1jaXJjbGUoICRyYWRpdXMgKVxyXG4vLyAgIGRpc3BsYXk6IGJsb2NrXHJcbi8vICAgd2lkdGg6ICRyYWRpdXNcclxuLy8gICBoZWlnaHQ6ICRyYWRpdXNcclxuLy8gICBib3JkZXItcmFkaXVzOiAkcmFkaXVzXHJcblxyXG4vLyA9c3F1YXJlKCAkc2l6ZSApXHJcbi8vICAgd2lkdGg6ICRzaXplXHJcbi8vICAgaGVpZ2h0OiAkc2l6ZVxyXG5cclxuLy8gPWRpYW1vbmQoICRzaXplLCAkYmFja2dyb3VuZENvbG9yIClcclxuLy8gICArc3F1YXJlKCAkc2l6ZSApXHJcbi8vICAgK3RyYW5zZm9ybSggcm90YXRlKDQ1ZGVnKSApXHJcbi8vICAgYmFja2dyb3VuZDogJGJhY2tncm91bmRDb2xvclxyXG5cclxuLy8gPXRyaWFuZ2xlKCAkc2l6ZSwgJGRpcmVjdGlvbiwgJGNvbG9yIClcclxuLy8gICAkaGFsZi1zaXplOiAkc2l6ZSAvIDJcclxuLy8gICB3aWR0aDogMFxyXG4vLyAgIGhlaWdodDogMFxyXG4vLyAgIEBpZiAkZGlyZWN0aW9uID09IFwidXBcIlxyXG4vLyAgICAgYm9yZGVyLWxlZnQ6ICRoYWxmLXNpemUgc29saWQgdHJhbnNwYXJlbnRcclxuLy8gICAgIGJvcmRlci1yaWdodDogJGhhbGYtc2l6ZSBzb2xpZCB0cmFuc3BhcmVudFxyXG4vLyAgICAgYm9yZGVyLWJvdHRvbTogJHNpemUgc29saWQgJGNvbG9yXHJcbi8vICAgQGlmICRkaXJlY3Rpb24gPT0gXCJkb3duXCJcclxuLy8gICAgIGJvcmRlci1sZWZ0OiAkaGFsZi1zaXplIHNvbGlkIHRyYW5zcGFyZW50XHJcbi8vICAgICBib3JkZXItcmlnaHQ6ICRoYWxmLXNpemUgc29saWQgdHJhbnNwYXJlbnRcclxuLy8gICAgIGJvcmRlci10b3A6ICRzaXplIHNvbGlkICRjb2xvclxyXG4vLyAgIEBpZiAkZGlyZWN0aW9uID09IFwibGVmdFwiXHJcbi8vICAgICBib3JkZXItdG9wOiAkaGFsZi1zaXplIHNvbGlkIHRyYW5zcGFyZW50XHJcbi8vICAgICBib3JkZXItcmlnaHQ6ICRzaXplIHNvbGlkICRjb2xvclxyXG4vLyAgICAgYm9yZGVyLWJvdHRvbTogJGhhbGYtc2l6ZSBzb2xpZCB0cmFuc3BhcmVudFxyXG4vLyAgIEBpZiAkZGlyZWN0aW9uID09IFwicmlnaHRcIlxyXG4vLyAgICAgYm9yZGVyLXRvcDogJGhhbGYtc2l6ZSBzb2xpZCB0cmFuc3BhcmVudFxyXG4vLyAgICAgYm9yZGVyLWxlZnQ6ICRzaXplIHNvbGlkICRjb2xvclxyXG4vLyAgICAgYm9yZGVyLWJvdHRvbTogJGhhbGYtc2l6ZSBzb2xpZCB0cmFuc3BhcmVudFxyXG4vLyAgIEBpZiAkZGlyZWN0aW9uID09IFwidG9wbGVmdFwiXHJcbi8vICAgICBib3JkZXItdG9wOiAkc2l6ZSBzb2xpZCAkY29sb3JcclxuLy8gICAgIGJvcmRlci1yaWdodDogJHNpemUgc29saWQgdHJhbnNwYXJlbnRcclxuLy8gICBAaWYgJGRpcmVjdGlvbiA9PSBcInRvcHJpZ2h0XCJcclxuLy8gICAgIGJvcmRlci10b3A6ICRzaXplIHNvbGlkICRjb2xvclxyXG4vLyAgICAgYm9yZGVyLWxlZnQ6ICRzaXplIHNvbGlkIHRyYW5zcGFyZW50XHJcbi8vICAgQGlmICRkaXJlY3Rpb24gPT0gXCJib3R0b21yaWdodFwiXHJcbi8vICAgICBib3JkZXItYm90dG9tOiAkc2l6ZSBzb2xpZCAkY29sb3JcclxuLy8gICAgIGJvcmRlci1sZWZ0OiAkc2l6ZSBzb2xpZCB0cmFuc3BhcmVudFxyXG4vLyAgIEBpZiAkZGlyZWN0aW9uID09IFwiYm90dG9tbGVmdFwiXHJcbi8vICAgICBib3JkZXItYm90dG9tOiAkc2l6ZSBzb2xpZCAkY29sb3JcclxuLy8gICAgIGJvcmRlci1yaWdodDogJHNpemUgc29saWQgdHJhbnNwYXJlbnRcclxuXHJcblxyXG4vLyA9cmVzcG9uZC10by1pbmNyZW1lbnRhbC1yYW5nZSggJGZyb20sICR0bywgJGluY3JlbWVudCwgJGRpbWVuc2lvbiApXHJcblxyXG4vLyAgICRpbmNyZW1lbnQtZnJvbTogJGZyb21cclxuLy8gICAkaW5jcmVtZW50LXRvOiAkZnJvbSArICRpbmNyZW1lbnRcclxuXHJcbi8vICAgQHdoaWxlICRpbmNyZW1lbnQtdG8gPD0gJHRvXHJcbi8vICAgICAkaW5jcmVtZW50LWZyb20tcHg6ICRpbmNyZW1lbnQtZnJvbSArIHB4XHJcbi8vICAgICAkaW5jcmVtZW50LXRvLXB4OiAkaW5jcmVtZW50LXRvICsgcHhcclxuLy8gICAgIEBjb250ZW50XHJcbi8vICAgICAkaW5jcmVtZW50LWZyb206ICRpbmNyZW1lbnQtZnJvbSArICRpbmNyZW1lbnRcclxuLy8gICAgICRpbmNyZW1lbnQtdG86ICRpbmNyZW1lbnQtZnJvbSArICRpbmNyZW1lbnRcclxuXHJcbi8vID1mb250LWZhY2UoJG5hbWUsICRsb2NhbCwgJHVybCwgJGZvcm1hdClcclxuLy8gICBAZm9udC1mYWNlXHJcbi8vICAgICBmb250LXdlaWdodDogbm9ybWFsXHJcbi8vICAgICBmb250LXN0eWxlOiBub3JtYWxcclxuLy8gICAgIGZvbnQtZmFtaWx5OiBxdW90ZSgkbmFtZSlcclxuLy8gICAgIHNyYzogbG9jYWwocXVvdGUoJGxvY2FsKSksIHVybCgkdXJsKSBmb3JtYXQocXVvdGUoJGZvcm1hdCkpXHJcblxyXG4vLyA9Ym94LXNpemluZygkdHlwZSlcclxuLy8gICBAZWFjaCAkcHJlZml4IGluICRwcmVmaXhlc1xyXG4vLyAgICAgI3skcHJlZml4fS1ib3gtc2l6aW5nOiAkdHlwZVxyXG4vLyAgIGJveC1zaXppbmc6ICR0eXBlXHJcblxyXG4vLyA9c3RyZXRjaCgkb2Zmc2V0LXRvcDogMCwgJG9mZnNldC1yaWdodDogMCwgJG9mZnNldC1ib3R0b206IDAsICRvZmZzZXQtbGVmdDogMClcclxuLy8gICBwb3NpdGlvbjogYWJzb2x1dGVcclxuLy8gICBAaWYgJG9mZnNldC10b3BcclxuLy8gICAgIHRvcDogJG9mZnNldC10b3BcclxuLy8gICBAaWYgJG9mZnNldC1ib3R0b21cclxuLy8gICAgIGJvdHRvbTogJG9mZnNldC1ib3R0b21cclxuLy8gICBAaWYgJG9mZnNldC1sZWZ0XHJcbi8vICAgICBsZWZ0OiAkb2Zmc2V0LWxlZnRcclxuLy8gICBAaWYgJG9mZnNldC1yaWdodFxyXG4vLyAgICAgcmlnaHQ6ICRvZmZzZXQtcmlnaHRcclxuIiwiLyoqXHJcbiAqIFBMQUNFSE9MREVSU1xyXG4gKi9cclxuXHJcbiVjbGlja2FibGV7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbn1cclxuXHJcbiVpcntcclxuICAgIHRleHQtaW5kZW50OiAxMDAlO1xyXG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuXHJcbiVoYXtcclxuICAgIEBlYWNoICRwcmVmaXggaW4gJHByZWZpeGVze1xyXG4gICAgICAjeyRwcmVmaXh9LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoIDAsIDAsIDAgKTtcclxuICAgIH1cclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoIDAsIDAsIDAgKTtcclxufVxyXG5cclxuJW5vLW1hcmdpbi1wYWRkaW5ne1xyXG4gIG1hcmdpbjogMDtcclxuICBwYWRkaW5nOiAwO1xyXG59XHJcblxyXG4lZGlzYWJsZS1zZWxlY3Rpb257XHJcbiAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xyXG4gICAgLWtodG1sLXVzZXItc2VsZWN0OiBub25lO1xyXG4gICAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcclxuICAgIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcclxuICAgIHVzZXItc2VsZWN0OiBub25lO1xyXG59XHJcblxyXG4laG9yaXpvbnRhbC1saXN0e1xyXG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XHJcbiAgICBsaXtcclxuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgfVxyXG59XHJcblxyXG4lc2Nyb2xsYWJsZXtcclxuICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcclxuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcclxufSIsIi8qKlxyXG4gKiBGVU5DVElPTlNcclxuICovXHJcblxyXG4kZm9udC1iYXNlOiAxNjsgLy8gcHhcclxuXHJcbkBmdW5jdGlvbiByZW0oJHRhcmdldDogMTYpe1xyXG4gICAgQHJldHVybiB1bnF1b3RlKCR0YXJnZXQgLyAkZm9udC1iYXNlICsgXCJyZW1cIik7XHJcbn1cclxuXHJcbkBmdW5jdGlvbiBuZWFyZXN0LW11bHRpcGxlLWZsb29yKCAkbnVtLCAkbXVsdGlwbGUgKXtcclxuICAgIEByZXR1cm4gZmxvb3IoICggJG51bSAvICRtdWx0aXBsZSApICkgKiAkbXVsdGlwbGU7XHJcbn1cclxuXHJcbkBmdW5jdGlvbiBuZWFyZXN0LW11bHRpcGxlLWNlaWwoICRudW0sICRtdWx0aXBsZSApe1xyXG4gICAgQHJldHVybiBjZWlsKCAoICRudW0gLyAkbXVsdGlwbGUgKSApICogJG11bHRpcGxlO1xyXG59IiwiLyoqXHJcbiAqIFJFU0VUXHJcbiAqL1xyXG5cclxuYm9keXtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xyXG59XHJcblxyXG5ALW1zLXZpZXdwb3J0e1xyXG4gICAgd2lkdGg6IGRldmljZS13aWR0aDtcclxufVxyXG5ALW8tdmlld3BvcnR7XHJcbiAgICB3aWR0aDogZGV2aWNlLXdpZHRoO1xyXG59XHJcblxyXG5Admlld3BvcnR7XHJcbiAgICB3aWR0aDogZGV2aWNlLXdpZHRoO1xyXG59XHJcblxyXG5hLGFiYnIsYWNyb255bSxhZGRyZXNzLGFwcGxldCxhcmVhLGFydGljbGUsYXNpZGUsYXVkaW8sXHJcbmIsYmFzZSxiYXNlZm9udCxiZGksYmRvLGJpZyxibG9ja3F1b3RlLGJvZHksYnIsYnV0dG9uLFxyXG5jYW52YXMsY2FwdGlvbixjZW50ZXIsY2l0ZSxjb2RlLGNvbCxjb2xncm91cCxjb21tYW5kLFxyXG5kYXRhbGlzdCxkZCxkZWwsZGV0YWlscyxkZm4sZGlyLGRpdixkbCxkdCxlbSxlbWJlZCxcclxuZmllbGRzZXQsZmlnY2FwdGlvbixmaWd1cmUsZm9udCxmb290ZXIsZm9ybSxmcmFtZSxcclxuZnJhbWVzZXQsaDEsaDIsaDMsaDQsaDUsaDYsaGVhZCxoZWFkZXIsaGdyb3VwLGhyLFxyXG5odG1sLGksaWZyYW1lLGltZyxpbnB1dCxpbnB1dFt0eXBlXSxpbnMsa2JkLGtleWdlbixsYWJlbCxsZWdlbmQsXHJcbmxpLGxpbmssbWFwLG1hcmssbWVudSxtZXRhLG1ldGVyLG5hdixub2ZyYW1lcyxub3NjcmlwdCxcclxub2JqZWN0LG9sLG9wdGdyb3VwLG9wdGlvbixvdXRwdXQscCxwYXJhbSxwcmUscHJvZ3Jlc3MsXHJcbnEscnAscnQscnVieSxzLHNhbXAsc2NyaXB0LHNlY3Rpb24sc2VsZWN0LHNtYWxsLHNvdXJjZSxcclxuc3BhbixzdHJpa2Usc3Ryb25nLHN0eWxlLHN1YixzdW1tYXJ5LHN1cCx0YWJsZSx0Ym9keSxcclxudGQsdGV4dGFyZWEsdGZvb3QsdGgsdGhlYWQsdGltZSx0aXRsZSx0cix0cmFjayx0dCx1LFxyXG51bCx2YXIsdmlkZW8sd2Jye1xyXG4gICAgQGluY2x1ZGUgYm94LXNpemluZyggYm9yZGVyLWJveCApO1xyXG4gICAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xyXG4gICAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKCBibGFjaywgMCApO1xyXG59XHJcblxyXG5he1xyXG4gICAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgY29sb3I6aW5oZXJpdDtcclxufVxyXG5cclxuLy8gaDF7IGZvbnQtc2l6ZTogMzJweDsgfVxyXG5cclxuLy8gaDJ7IGZvbnQtc2l6ZTogMjRweDsgfVxyXG5cclxuLy8gaDN7IGZvbnQtc2l6ZTogMThweDsgfVxyXG5cclxuLy8gaDR7IGZvbnQtc2l6ZTogMTZweDsgfVxyXG5cclxuLy8gaDV7IGZvbnQtc2l6ZTogMTNweDsgfVxyXG5cclxuLy8gaDZ7IGZvbnQtc2l6ZTogMTBweDsgfVxyXG5cclxuaDEsXHJcbmgyLFxyXG5oMyxcclxuaDQsXHJcbmg1LFxyXG5oNixcclxuZW0sXHJcbnN0cm9uZ3tcclxuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbn1cclxuXHJcbmgxLFxyXG5oMixcclxuaDMsXHJcbmg0LFxyXG5oNSxcclxuaDYsXHJcbnAsXHJcbm9sLFxyXG51bCxcclxuZGwsXHJcbmR0LFxyXG5kZCxcclxuYmxvY2txdW90ZSxcclxuZmlndXJlLFxyXG5ib2R5e1xyXG4gICAgQGV4dGVuZCAlbm8tbWFyZ2luLXBhZGRpbmc7XHJcbiAgICAvL3dpZHRoOiAxMDAlO1xyXG59XHJcblxyXG51bCxcclxub2x7XHJcbiAgICBsaXN0LXN0eWxlOiBub25lO1xyXG59XHJcblxyXG5pbWd7XHJcbiAgICAvKndpZHRoOiAxMDAlOyovXHJcbiAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIG1heC13aWR0aDogMTAwJTtcclxufVxyXG5cclxuaXsgZm9udC1zdHlsZTogbm9ybWFsOyB9XHJcblxyXG4vLyByZW1vdmUgYnV0dG9uIGRlZmF1bHQgc3R5bGVzXHJcbmJ1dHRvbntcclxuICAgIGZvbnQtc2l6ZTogMTAwJTtcclxuICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xyXG4gICAgYm9yZGVyOiAwO1xyXG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgY29sb3I6IGluaGVyaXQ7XHJcbiAgICBvdXRsaW5lOiBub25lO1xyXG59XHJcblxyXG5pZnJhbWV7XHJcbiAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcblxyXG5zZWxlY3Q6Oi1tcy1leHBhbmQge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxufVxyXG4iLCIvKipcclxuICogVEhFTUVcclxuICpcclxuICogRm9yIGJhc2ljIHNpdGVzIHRoaXMgc2hvdWxkIHNpbXBseSBjb250YWluIGNvbG91ciB2YXJpYWJsZXMuXHJcbiAqIElmIGEgcHJvcGVyIHRoZW1lIGlzIHRvIGJlIGFwcGxpZWQgdGhpcyBmaWxlIHNob3VsZCBzaW1wbHlcclxuICogaW1wb3J0IHRoZSB0aGVtZSBmaWxlIGZvciBlYWNoIGNvbXBvbmVudCB3aGljaCBzaG91bGQgYmVcclxuICogY29udGFpbmVkIHdpdGhpbiBhIHRoZW1lIGZvbGRlci5cclxuICovXHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS1cclxuLy8gQlJBTkQgQ09MT1VSU1xyXG4vLy0tLS0tLS0tLS0tLS0tLS1cclxuJGJyYW5kLXB1cnBsZTogIzdBMUI3MjtcclxuJGJyYW5kLXBpbms6ICNjOTI4YjI7XHJcbiRicmFuZC1ibGFjazogIzFFMDAyODtcclxuJGJyYW5kLWdyZXk6ICM4ZTgwOTM7XHJcblxyXG4kYnJhbmQteWVsbG93OiAjRjdFMzEzOyAvL3RoaXMgaXMgYSBwbGFjZWhvbGRlciAtIG5vIHllbGxvdyBnaXZlbiBvciBjdXJyZW50bHkgdXNlZC5cclxuJGJyYW5kLWJsdWU6ICRicmFuZC1wdXJwbGU7IC8vIEJSQU5EIEJMVUUgTUFQUEVEIFRPIEJSQU5EIFBVUlBMRVxyXG4kYnJhbmQtbGlnaHQtYmx1ZTogJGJyYW5kLXBpbms7IC8vIEJSQU5EIExJR0hUIEJMVUUgTUFQUEVEIFRPIEJSQU5EIFBJTktcclxuJGJyYW5kLWdyZWVuOiAjNTBhZDQ1O1xyXG4kYnJhbmQtYnJpZ2h0LWdyZWVuOiAjOWZjYzNmO1xyXG4kYnJhbmQtZGFyay1ncmVlbjogZ3JlZW47XHJcbiRicmFuZC1yZWQ6ICNlYjUzM2I7XHJcblxyXG4kYnJhbmQtY3JlbWU6IHJnYigyNTUsMjQ1LDIxNCk7XHJcbiRicmFuZC1zaWx2ZXItZm94OiAjMTkxODFhO1xyXG4kYnJhbmQtZmxhbWluZ286ICNkMjViNWU7XHJcblxyXG4kZm9ybS1pbnB1dC1ib3JkZXI6ICNkYWMwZDg7XHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBTRU1BTlRJQyBDT0xPUlNcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS1cclxuJGJsYWNrOiAkYnJhbmQtYmxhY2s7XHJcbiRkYXJrLWdsYXNzOiByZ2JhKCRibGFjaywgMC44KTtcclxuJGdyZXk6ICRicmFuZC1ibGFjaztcclxuJGxpZ2h0LXB1cnBsZSA6ICNmYWU2ZmE7XHJcbiRsaWdodC1ncmV5OiAjYjdiN2I3O1xyXG4kcGxhY2Vob2xkOiAjYjdiN2I3O1xyXG4kd2hpdGU6IHdoaXRlO1xyXG5cclxuJHR3aXR0ZXItYmx1ZTogIzdkYjZkZjtcclxuJGZhY2Vib29rLWJsdWU6ICMzYjU5OTg7XHJcbiRwYXlwYWwtYmx1ZTogIzAwOWJkZDtcclxuJHBheXBhbC1kYXJrLWJsdWU6ICMwMDMzODY7XHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS1cclxuLy8gQ09MT1VSIE1BUFxyXG4vLy0tLS0tLS0tLS0tLS0tLS1cclxuJGNvbG9ycy1tYXA6KFxyXG4gICAgcHJpbWFyeTogJGJyYW5kLXB1cnBsZSxcclxuICAgIHNlY29uZGFyeTogJGJyYW5kLWJsdWUsXHJcbiAgICBvcmFuZ2U6ICRicmFuZC1wdXJwbGUsIC8vIFlFTExPVyBNQVBQRUQgVE8gUFVSUExFXHJcbiAgICBibHVlOiAkYnJhbmQtcGluaywgLy8gQkxVRSBNQVBQRUQgVE8gUElOS1xyXG4gICAgbGlnaHQtYmx1ZTogJGJyYW5kLWxpZ2h0LWJsdWUsXHJcbiAgICBncmVlbjogJGJyYW5kLXB1cnBsZSxcclxuICAgIGRhcmstZ3JlZW46ICRicmFuZC1wdXJwbGUsXHJcbiAgICBicmlnaHQtZ3JlZW46ICRicmFuZC1icmlnaHQtZ3JlZW4sXHJcbiAgICB5ZWxsb3c6ICRicmFuZC15ZWxsb3csXHJcbiAgICByZWQ6ICRicmFuZC1waW5rLFxyXG4gICAgcHVycGxlOiAkYnJhbmQtcHVycGxlLFxyXG4gICAgZ3JleTogJGJyYW5kLXB1cnBsZSxcclxuICAgIG1pZC1ncmV5OiAkbGlnaHQtcHVycGxlLCAvLyBNSUQgR1JFWSBNQVBQRUQgVE8gTElHSFQgUFVSUExFXHJcbiAgICBsaWdodC1ncmV5OiAkbGlnaHQtcHVycGxlLCAvLyBMSUdIVCBHUkVZIE1BUFBFRCBUTyBMSUdIVCBQVVJQTEVcclxuICAgIGJyYW5kLWJsYWNrOiAkYmxhY2ssXHJcbiAgICBsaWdodC1yZWQ6ICRsaWdodC1wdXJwbGUsXHJcbiAgICB3aGl0ZTogJHdoaXRlLFxyXG4gICAgdHdpdHRlcjogJHR3aXR0ZXItYmx1ZSxcclxuICAgIGZhY2Vib29rOiAkZmFjZWJvb2stYmx1ZSxcclxuICAgIHRpbnQ6IHJnYmEoJGJsYWNrLCAwLjUpLFxyXG4gICAgY3JlbWU6ICRicmFuZC1jcmVtZSxcclxuICAgIHNpbHZlci1mb3g6ICRicmFuZC1zaWx2ZXItZm94LFxyXG4gICAgZmxhbWluZ286ICRicmFuZC1mbGFtaW5nbyxcclxuXHJcbik7XHJcblxyXG5cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tXHJcbi8vIFRIRU1FIENPTkZJR1xyXG4vLy0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLy9CVVRUT05TXHJcbiRidG4tcHJpbWFyeS1jb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuJGJ0bi1wcmltYXJ5LWhpZ2hsaWdodC1jb2xvcjogJGJyYW5kLWJsdWU7XHJcbiRidG4tc2Vjb25kYXJ5LWNvbG9yOiAkYnJhbmQtYmx1ZTtcclxuJGJ0bi1zZWNvbmRhcnktaGlnaGxpZ2h0LWNvbG9yOiB3aGl0ZTtcclxuXHJcbi8vSEFNQlVSR0VSXHJcbiRoYW1idXJnZXItY29sb3I6ICR3aGl0ZTtcclxuJGhhbWJ1cmdlci1ob3Zlci1jb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuXHJcbi8vTElTVCBTVFlMRVNcclxuJGxpc3Qtc3R5bGUtY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcblxyXG4vL1NVQk5BVlxyXG4kc3VibmF2LWJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsMC45NSk7XHJcbiRzdWJuYXYtbGluay1jb2xvcjogJGJyYW5kLWJsYWNrO1xyXG5cclxuLy9TSURFQkFSXHJcbiRzaWRlYmFyLWJhY2tncm91bmQtY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcbiRzaWRlYmFyLWxpbmstY29sb3I6ICRicmFuZC1ibHVlO1xyXG5cclxuLy9UWVBFXHJcbiRoZWFkaW5nLWZvbnQtY29sb3I6ICRicmFuZC1ibGFjaztcclxuJGltYWdlLWNhcHRpb24tY29sb3I6ICRicmFuZC1ibGFjaztcclxuJGxpbmstY29sb3I6ICRicmFuZC1waW5rO1xyXG4kbGluay1ob3Zlci1jb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuJGxpbmUtaGVpZ2h0OiAyNXB4O1xyXG5cclxuLy9DVVNUT00gVkFMVUVTXHJcbiRuYXZpZ2F0aW9uLWJyZWFrcG9pbnQ6IDEyMDBweDsgLy8xMDgwcHg7XHJcbiRnbG9iYWwtYW5pbWF0aW9uLXNwZWVkOiAzMDBtcztcclxuXHJcbi5kcm9wLXNoYWRvdyxcclxuJWRyb3Atc2hhZG93e1xyXG4gICAgYm94LXNoYWRvdzogMCA2cHggMCAwIHJnYmEoJGJsYWNrLCAwLjA4KTtcclxufVxyXG5cclxuXHJcbjo6c2VsZWN0aW9uIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcbiAgICBjb2xvcjogd2hpdGU7XHJcbn1cclxuXHJcbjo6LW1vei1lbGVjdGlvbiB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgY29sb3I6IHdoaXRlO1xyXG59XHJcblxyXG5cclxuJWhvdmVyLXNoYWRvdy1saWdodCB7XHJcbiAgICBib3gtc2hhZG93OiBub25lO1xyXG4gICAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAyMDBtcyBlYXNlLWluLW91dDtcclxuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XHJcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcbiAgICB9XHJcblxyXG4gICAgJi5pcy1zZWxlY3RlZCxcclxuICAgICYuaXMtYWN0aXZlIHtcclxuICAgICAgICBib3gtc2hhZG93OiBub25lO1xyXG4gICAgfVxyXG59XHJcblxyXG4lc2V0LXNoYWRvdy1saWdodCB7XHJcbiAgICBib3gtc2hhZG93OiBub25lO1xyXG59XHJcblxyXG46Oi1tb3otc2VsZWN0aW9uLFxyXG46OnNlbGVjdGlvbiB7IGJhY2tncm91bmQ6ICRicmFuZC1wdXJwbGU7IH1cclxuXHJcbi8vLS0tLS0tLS0tLS0tLVxyXG4vLyBBTklNQVRJT05TXHJcbi8vLS0tLS0tLS0tLS0tLVxyXG5cclxuLy8tLS0tLS0tLS0tXHJcbi8vIEZBREUgSU5cclxuLy8tLS0tLS0tLS0tXHJcbi8vIEEgc2VsZWN0b3IgdG8gc2V0IGEgc3RhdGUgZm9yIGEgZmFkZS1pbiBvbiBwYWdlIGxvYWQuXHJcbi8vIEl0IHVzZXMgYW4gaXMtdmlzaWJsZSBjbGFzcyB0byBpbml0aWF0ZSB0aGUgYW5pbWF0aW9uLlxyXG5cclxuLmZhZGUtaW57XHJcbiAgb3BhY2l0eTogMDtcclxuXHJcbiAgJi5pcy12aXNpYmxle1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIGFuaW1hdGlvbjogRkFERUlOIDI1MG1zIGVhc2UtaW4tb3V0O1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vLS0tLS0tLS0tLS0tXHJcbi8vIEtFWUZSQU1FU1xyXG4vLy0tLS0tLS0tLS0tLVxyXG5cclxuQGtleWZyYW1lcyBGQURFSU57XHJcbiAgICAwJSAgIHsgb3BhY2l0eTogMDsgfVxyXG4gICAgMTAwJSB7IG9wYWNpdHk6IDE7IH1cclxufVxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS1cclxuLy8gVEhFTUUgQ0xBU1NFU1xyXG4vLy0tLS0tLS0tLS0tLS0tXHJcblxyXG5bY2xhc3MqPSdiZy0nXXtcclxuICAgIC8vIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gICAgJi5iZy1pbWFnZXtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgLy8gUHJvdmlkZSBiYWNrZ3JvdW5kIGNvbG9yIGFzIGZhbGxiYWNrXHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuXHJcbiAgICAgICAgJjpiZWZvcmV7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBjb3ZlcihhYnNvbHV0ZSk7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuMjtcclxuICAgICAgICAgICAgei1pbmRleDogMDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgID4gKntcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICB6LWluZGV4OiAxO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLmJnLWltYWdlLS1kYXJrZXJ7XHJcbiAgICAgICAgJjpiZWZvcmV7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuNztcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gVEVYVCBUSEVNRSBDT0xPVVJTXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICRjb2xvcnMtbWFwe1xyXG4gICAgJXRleHQtI3tcIlwiICsgJGNvbG9yfXtjb2xvcjogJHZhbHVlfVxyXG4gICAgLnRleHQtI3tcIlwiICsgJGNvbG9yfXtjb2xvcjogJHZhbHVlfVxyXG59XHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBCQUNLR1JPVU5EIFRIRU1FIENPTE9VUlNcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJGNvbG9ycy1tYXB7XHJcbiAgICAlYmctI3tcIlwiICsgJGNvbG9yfXtiYWNrZ3JvdW5kLWNvbG9yOiAkdmFsdWV9XHJcbiAgICAuYmctI3tcIlwiICsgJGNvbG9yfXtiYWNrZ3JvdW5kLWNvbG9yOiAkdmFsdWV9XHJcbn1cclxuXHJcbi5iZy1jcmVtZS1ncmFkaWVudCB7XHJcbi8qICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMjU1LDI0NSwyMTQsMSkgMCUsIHJnYmEoMjM5LDIzMCwyMTQsMSkgMTAwJSk7Ki9cclxuICAgIGJhY2tncm91bmQ6IHJnYmEoMjM5LDIzMCwyMTQsMSk7XHJcbn1cclxuLmJnLXJlZC1zdW5zZXQge1xyXG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgyMjEsMTUyLDEwMCwxKSAwJSwgcmdiYSgyMDUsOTIsOTMsMSkgMTAwJSk7XHJcbn1cclxuLmJnLXJlZC1zdW5zZXQtcmV2ZXJzZSB7XHJcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDIwNSw5Miw5MywxKSAwJSwgcmdiYSgyMjEsMTUyLDEwMCwxKSAxMDAlKTtcclxufVxyXG4uYmctbW9ybmluZy10YW5nZXJpbmUge1xyXG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgyMjEsMTUyLDEwMCwxKSAwJSwgcmdiYSgyMzksMjMwLDIxNCwgMSkgMTAwJSk7XHJcbn1cclxuLmJnLXN0b25lLFxyXG4lYmctc3RvbmUge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LXB1cnBsZTtcclxuICAgIC8qYm94LXNoYWRvdzpcclxuICAgICAgICBpbnNldCAyNXB4IDAgNTBweCAjZDFkMWQxLFxyXG4gICAgICAgIGluc2V0IC0yNXB4IDAgNTBweCAjZDFkMWQxOyovXHJcbn1cclxuXHJcbi5iZy1pbWFnZXtcclxuICAgIEBpbmNsdWRlIGJhY2tncm91bmQoY292ZXIpO1xyXG59XHJcblxyXG4uYmctYnRuIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuXHJcbiAgICAmLmlzLWFjdGl2ZSxcclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1ibHVlO1xyXG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcbiAgICB9XHJcbn1cclxuLyogTWFrZSBidWxsZXRzIHdoaXRlIG9uIHB1cnBsZSBiYWNrZ3JvdW5kICovXHJcbi5iZy1ncmVlbiwgLmJnLWJsdWUge1xyXG4gICAgYTpub3QoLmJ0bikge1xyXG4gICAgICAgIGNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDsgXHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBjb2xvcjogJGJyYW5kLXB1cnBsZSAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICB1bCB7XHJcbiAgICAgICAgbGkge1xyXG4gICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4uYmctYmx1ZSB7XHJcbiAgICAubWVkaWEtLXRoZW1lLWFscGhhIC5tZWRpYV9faGVhZGluZywgLm1lZGlhLS10aGVtZS1hbHBoYSAubWVkaWFfX2NvcHkge1xyXG4gICAgICAgIGNvbG9yOiAkYnJhbmQtcHVycGxlICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn1cclxuLmJnLWdyZXkge1xyXG4gICAgdWwge1xyXG4gICAgICAgIGxpIHtcclxuICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLmJnLXBpbmsge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXBpbmsgIWltcG9ydGFudDtcclxufVxyXG4vLyBUaGlzIGlzIGEgbGl0dGxlIHRvbyBzcGVjaWZpYyBhcyBpdCdzIHNlcnZpbmcganVzdFxyXG4vLyBvbmUgY2FzZSByaWdodCBub3cuIExlYXZpbmcgaXQgaGVyZSBmb3IgcG90ZW50aWFsXHJcbi8vIGV4cGFuc2lvbi5cclxuQG1peGluIGhlYWRpbmctdW5lcmxpbmUge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcclxuXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICB3aWR0aDogNDAlO1xyXG4gICAgICAgIG1pbi13aWR0aDogMTUwcHg7XHJcbiAgICAgICAgaGVpZ2h0OiA1cHg7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMzVweDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcclxuICAgIH1cclxufVxyXG5cclxuLmFzaWRle1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LXB1cnBsZTtcclxuICAgIHBhZGRpbmc6IDMwcHggMzBweCAwO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuXHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBFWFRFUk5BTCBJRlJBTUVcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gQWRkaW5nIHNvbWUgc3VwcG9ydCBmb3IgaWZyYW1lcyB0aGF0XHJcbi8vIGhhdmVuJ3QgbG9hZGVkIHlldC5cclxuLmV4dGVybmFsLWlmcmFtZSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtYmxhY2s7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2Jhc2U2NC9TVkcvdGFpbC1zcGluLnN2Zyk7XHJcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHRvcCA1MHB4O1xyXG4gICAgYmFja2dyb3VuZC1zaXplOiA1MHB4O1xyXG5cclxuICAgIGlmcmFtZSB7XHJcbiAgICAgICAgd2lkdGg6IDEwMSU7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAwcHg7XHJcbiAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgIG92ZXJmbG93OiBzY3JvbGw7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIFRFTVAgVEVYVFxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLVxyXG5Aa2V5ZnJhbWVzIEhJREUtVEVYVHtcclxuICAgIDAleyBvcGFjaXR5OiAxIH1cclxuICAgIDgwJXsgb3BhY2l0eTogMSB9XHJcbiAgICAxMDAleyBvcGFjaXR5OiAwIH1cclxufVxyXG5cclxuLnRleHQtdGVtcHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICBhbmltYXRpb24tbmFtZTogSElERS1URVhUO1xyXG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiA1c1xyXG59XHJcblxyXG5cclxuLmJhY2tncm91bmQtYWx0ZXJuYXRle1xyXG4gICAgJjpudGgtY2hpbGQob2RkKXtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtcHVycGxlO1xyXG4gICAgICAgIC5idG46aG92ZXIge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiR3aGl0ZTtcclxuICAgICAgICAgICAgY29sb3I6JGJyYW5kLXBpbms7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5ocntcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGxpZ2h0LWdyZXk7XHJcbiAgICBtYXJnaW46IDMwcHggMDtcclxufVxyXG4jc3BvbnNvckNhdHMgLm1lZGlhLS1saW5rIHtcclxuICAgIC8qYmFja2dyb3VuZDogJGJyYW5kLXB1cnBsZTsqL1xyXG4gICAgLypjb2xvcjogJHdoaXRlOyovXHJcblxyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIC8qYmFja2dyb3VuZDogJGJyYW5kLXB1cnBsZSAhaW1wb3J0YW50OyovXHJcbiAgICB9XHJcblxyXG4gICAgYSB7XHJcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn1cclxuIiwiLyoqXHJcbiAqIFRIRU1FXHJcbiAqIElMTFVTVFJBVElPTlxyXG4gKi9cclxuXHJcbi8vICRuYW1lOiB2b2x1bnRlZXI7XHJcblxyXG5cclxuXHJcbi8vLS0tLS0tLS0tLS1cclxuLy8gVk9MVU5URUVSXHJcbi8vLS0tLS0tLS0tLS1cclxuXHJcbi8vIC4jeyRuYW1lfS12b2x1bnRlZXJ7XHJcbi8vICAgICAuaGFpcntmaWxsOiM3MjZGNzA7fVxyXG4vLyAgICAgLmhlYXJ0c3tmaWxsOiNGOEJBMzc7fVxyXG4vLyAgICAgLmZhY2V7ZmlsbDojRkZGRkZGO31cclxuLy8gICAgIC5zaGlydHtmaWxsOiNEMUQxRDE7fVxyXG4vLyAgICAgLmNhdF9oYWlye2ZpbGw6IzcyNkY3MDt9XHJcblxyXG4vLyAgICAgOmhvdmVyIHtcclxuLy8gICAgICAgICAuaGFpcntmaWxsOnJlZDt9XHJcbi8vICAgICAgICAgLmhlYXJ0c3tmaWxsOiNGOEJBMzc7fVxyXG4vLyAgICAgICAgIC5mYWNle2ZpbGw6I0ZGRkZGRjt9XHJcbi8vICAgICAgICAgLnNoaXJ0e2ZpbGw6I0QxRDFEMTt9XHJcbi8vICAgICAgICAgLmNhdF9oYWlye2ZpbGw6IzcyNkY3MDt9XHJcbi8vICAgICB9XHJcbi8vIH1cclxuXHJcbi8vIC5pbGx1c3RyYXRpb24tdm9sdW50ZWVyOmhvdmVyIC5oYWlye1xyXG4vLyAgICAgZmlsbDogcmVkO1xyXG4vLyB9IiwiLyogVGV4dCBDb2xvcnMgKi9cclxuLnRleHQtd2hpdGU6bm90KC5zaXRlLWJhbm5lcikge1xyXG4gICAgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xyXG5cclxuICAgIGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xyXG4gICAgICAgIGNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcclxuICAgIH1cclxufVxyXG5cclxuLnRleHQtYnJhbmQtYmxhY2sge1xyXG4gICAgY29sb3I6ICRicmFuZC1ibGFjayAhaW1wb3J0YW50O1xyXG5cclxuICAgIGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xyXG4gICAgICAgIGNvbG9yOiAkYnJhbmQtYmxhY2sgIWltcG9ydGFudDtcclxuICAgIH1cclxufVxyXG5cclxuLnRleHQtYnJhbmQtcGluayB7XHJcbiAgICBjb2xvcjogJGJyYW5kLXBpbmsgIWltcG9ydGFudDtcclxuXHJcbiAgICBoMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcclxuICAgICAgICBjb2xvcjogJGJyYW5kLXBpbmsgIWltcG9ydGFudDtcclxuICAgIH1cclxufVxyXG5cclxuLnRleHQtYnJhbmQtcHVycGxlIHtcclxuICAgIGNvbG9yOiAkYnJhbmQtcHVycGxlICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XHJcbiAgICAgICAgY29sb3I6ICRicmFuZC1wdXJwbGUgIWltcG9ydGFudDtcclxuICAgIH1cclxufVxyXG5cclxuLnRleHQtbGlnaHQtcHVycGxlIHtcclxuICAgIGNvbG9yOiAkbGlnaHQtcHVycGxlICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XHJcbiAgICAgICAgY29sb3I6ICRsaWdodC1wdXJwbGUgIWltcG9ydGFudDtcclxuICAgIH1cclxufVxyXG4vKiBCYWNrZ3JvdW5kcyAqL1xyXG4uYmctd2hpdGUge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XHJcbiAgICAgICAgLy9jb2xvcjogJGJyYW5kLXB1cnBsZSAhaW1wb3J0YW50O1xyXG4gICAgICAgIGNvbG9yOiAkYmxhY2sgIWltcG9ydGFudDtcclxuICAgIH1cclxufVxyXG5cclxuLmJnLWJyYW5kLWJsYWNrIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1ibGFjayAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uYmctYnJhbmQtcGluayB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcGluayAhaW1wb3J0YW50O1xyXG5cclxuICAgIGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xyXG4gICAgICAgIGNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcclxuICAgIH1cclxuXHJcbiAgICBhIHtcclxuICAgICAgICBjb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBjb2xvcjogJGJyYW5kLXB1cnBsZSAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuYnRuLS1zZWNvbmRhcnkge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xyXG4gICAgICAgIGNvbG9yOiAkYnJhbmQtcGluayAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LXB1cnBsZSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICBjb2xvcjogJGJyYW5kLXBpbmsgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi50ZXh0LXdoaXRlIHtcclxuICAgICAgICBsaTpiZWZvcmUge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi50ZXh0LWJyYW5kLWJsYWNrIHtcclxuICAgICAgICBsaTpiZWZvcmUge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtcHVycGxlICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYudGV4dC1icmFuZC1wdXJwbGUge1xyXG4gICAgICAgIGxpOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1wdXJwbGUgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi50ZXh0LWxpZ2h0LXB1cnBsZSB7XHJcbiAgICAgICAgbGk6YmVmb3JlIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LXB1cnBsZSAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmJnLWJyYW5kLXB1cnBsZSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcHVycGxlICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgYTpob3ZlciB7XHJcbiAgICAgICAgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgIGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xyXG4gICAgICAgIGNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcclxuICAgIH1cclxuXHJcbiAgICAuYnRuIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcclxuICAgICAgICBjb2xvcjogJGJyYW5kLXB1cnBsZSAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LXB1cnBsZSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICBjb2xvcjogJGJyYW5kLXB1cnBsZSAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuYnRuLS1zZWNvbmRhcnkge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1waW5rICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgICYudGV4dC13aGl0ZSB7XHJcbiAgICAgICAgbGk6YmVmb3JlIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYudGV4dC1icmFuZC1ibGFjayB7XHJcbiAgICAgICAgbGk6YmVmb3JlIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LXB1cnBsZSAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLnRleHQtYnJhbmQtcGluayB7XHJcbiAgICAgICAgbGk6YmVmb3JlIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LXB1cnBsZSAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLnRleHQtbGlnaHQtcHVycGxlIHtcclxuICAgICAgICBsaTpiZWZvcmUge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtcHVycGxlICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uYmctbGlnaHQtcHVycGxlIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1wdXJwbGUgIWltcG9ydGFudDtcclxuXHJcbiAgICBoMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcclxuICAgICAgICBjb2xvcjogJGJyYW5kLXB1cnBsZSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgIC5idG4ge1xyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgY29sb3I6ICRicmFuZC1waW5rICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5idG4tLXNlY29uZGFyeSB7XHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4vLyBBREJPWEVTXHJcbi5icmFuZGluZy1wdXJwbGUge1xyXG5cclxuICAgIGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xyXG4gICAgICAgIGNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcclxuICAgIH1cclxuXHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcHVycGxlICFpbXBvcnRhbnQ7XHJcbiAgICBjb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgLm1lZGlhX19pbWFnZSB7XHJcbiAgICAgICAgYm9yZGVyOiAwcHggIWltcG9ydGFudDtcclxuICAgIH1cclxufVxyXG5cclxuLmJyYW5kaW5nLXBpbmsge1xyXG5cclxuICAgIGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xyXG4gICAgICAgIGNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcclxuICAgIH1cclxuXHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcGluayAhaW1wb3J0YW50O1xyXG4gICAgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xyXG5cclxuICAgIC5tZWRpYV9faW1hZ2Uge1xyXG4gICAgICAgIGJvcmRlcjogMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5saWdodC1wdXJwbGUge1xyXG5cclxuICAgIGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xyXG4gICAgICAgIGNvbG9yOiAkYnJhbmQtcHVycGxlICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LXB1cnBsZSAhaW1wb3J0YW50O1xyXG4gICAgY29sb3I6ICRicmFuZC1wdXJwbGUgIWltcG9ydGFudDtcclxuXHJcbiAgICAubWVkaWFfX2ltYWdlIHtcclxuICAgICAgICBib3JkZXI6IDBweCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG59XHJcblxyXG4ubm8tdGhlbWUge1xyXG5cclxuICAgIGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xyXG4gICAgICAgIGNvbG9yOiAkYnJhbmQtcHVycGxlICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XHJcbiAgICBjb2xvcjogJGJyYW5kLXB1cnBsZSAhaW1wb3J0YW50O1xyXG5cclxuICAgIC5tZWRpYV9faW1hZ2Uge1xyXG4gICAgICAgIGJvcmRlcjogMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn1cclxuLy8gRkFRJ3NcclxuLmZhcS1icmFuZGluZyB7XHJcbiAgICBwYWRkaW5nOiAxMHB4IDE2cHg7XHJcbiAgICBmb250LWZhbWlseTogQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcclxufVxyXG5cclxuLmJnLXdoaXRlIHtcclxuICAgIC5mYXEtYnJhbmRpbmcge1xyXG4gICAgICAgIGNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcclxuICAgIH1cclxufVxyXG5cclxuLmJnLWJyYW5kLXB1cnBsZSB7XHJcbiAgICAuZmFxLWJyYW5kaW5nIHtcclxuICAgICAgICBjb2xvcjogJGJyYW5kLXB1cnBsZSAhaW1wb3J0YW50O1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1wdXJwbGUgIWltcG9ydGFudDtcclxuICAgIH1cclxuXHJcbiAgICAuZmFxLWEge1xyXG4gICAgICAgIGNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcclxuICAgIH1cclxufVxyXG5cclxuLmJnLWJyYW5kLXBpbmsge1xyXG4gICAgLmZhcS1hIHtcclxuICAgICAgICBjb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5iZy1saWdodC1wdXJwbGUge1xyXG4gICAgLmZhcS1icmFuZGluZyB7XHJcbiAgICAgICAgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG59XHJcbi8vIERPV05MT0FEIEdSSURcclxuLmJyYW5kaW5nLWRvd25sb2FkLWdyaWQge1xyXG4gICAgLm1lZGlhX19jYXB0aW9uIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsMCwwLDAuMjUpO1xyXG4gICAgfVxyXG5cclxuICAgIGgyLnRzLTMge1xyXG4gICAgICAgIGNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcclxuICAgIH1cclxufVxyXG4iLCJAZm9udC1mYWNlIHtcclxuICAgIGZvbnQtZmFtaWx5OiAnbWV0cmlmeS1saWdodCc7XHJcbiAgICBzcmM6IHVybCgnZm9udHMvbmFubWV0cmlmeWMtU3RkLWxpZ2h0LndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLCAvKiBTdXBlciBNb2Rlcm4gQnJvd3NlcnMgKi9cclxuICAgIHVybCgnZm9udHMvbmFubWV0cmlmeWMtU3RkLWxpZ2h0LndvZmYnKSBmb3JtYXQoJ3dvZmYnKTsgLyogUHJldHR5IE1vZGVybiBCcm93c2VycyAqL1xyXG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxufVxyXG5cclxuQGZvbnQtZmFjZSB7XHJcbiAgICBmb250LWZhbWlseTogJ21ldHJpZnktcmVndWxhcic7XHJcbiAgICBzcmM6IHVybCgnZm9udHMvbmFubWV0cmlmeWMtU3RkLXJlZy53b2ZmMicpIGZvcm1hdCgnd29mZjInKSwgLyogU3VwZXIgTW9kZXJuIEJyb3dzZXJzICovXHJcbiAgICB1cmwoJ2ZvbnRzL25hbm1ldHJpZnljLVN0ZC1yZWcud29mZicpIGZvcm1hdCgnd29mZicpOyAvKiBQcmV0dHkgTW9kZXJuIEJyb3dzZXJzICovXHJcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG59XHJcblxyXG5AZm9udC1mYWNlIHtcclxuICAgIGZvbnQtZmFtaWx5OiAnbWV0cmlmeS1ib2xkJztcclxuICAgIHNyYzogdXJsKCdmb250cy9uYW5tZXRyaWZ5Yy1TdGQtYmxkLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLCAvKiBTdXBlciBNb2Rlcm4gQnJvd3NlcnMgKi9cclxuICAgIHVybCgnZm9udHMvbmFubWV0cmlmeWMtU3RkLWJsZC53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7IC8qIFByZXR0eSBNb2Rlcm4gQnJvd3NlcnMgKi9cclxuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbn1cclxuQGZvbnQtZmFjZSB7XHJcbiAgICBmb250LWZhbWlseTogJ2NhdHMtaGVhZGxpbmUnO1xyXG4gICAgc3JjOiB1cmwoJ2ZvbnRzL0NhdHNIZWFkbGluZS1SZWd1bGFyLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLCAvKiBTdXBlciBNb2Rlcm4gQnJvd3NlcnMgKi9cclxuICAgIHVybCgnZm9udHMvQ2F0c0hlYWRsaW5lLVJlZ3VsYXIud29mZicpIGZvcm1hdCgnd29mZicpOyAvKiBQcmV0dHkgTW9kZXJuIEJyb3dzZXJzICovXHJcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG59XHJcbiIsIi8qIFRZUEVTVFlMRVNcclxuICogQkFTRVxyXG4gKiBUaGVzZSBhcmUgdGhlIGJhc2UgdHlwZXN0eWxlcy5cclxuICovXHJcblxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIFRZUEVTVFlMRSBDT05GSUdcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kY2F0czogJ21ldHJpZnktbGlnaHQnLCBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xyXG4kY2F0cy1tZWQ6ICdtZXRyaWZ5LXJlZ3VsYXInLCBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xyXG4kY2F0cy1ib2xkOiAnbWV0cmlmeS1ib2xkJywgQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcclxuJGNhdHMtaGVhZGxpbmU6ICdjYXRzLWhlYWRsaW5lJywgQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcclxuXHJcbiRoZWFkaW5nLWZvbnQ6ICRjYXRzO1xyXG4kaGVhZGluZy1tZWQtZm9udDogJGNhdHMtbWVkO1xyXG4kaGVhZGluZy1ib2xkLWZvbnQ6ICRjYXRzLWJvbGQ7XHJcblxyXG4kc2FuczogQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcclxuJHNlcmlmOiBzZXJpZjtcclxuXHJcbiRidG4tZm9udDogJHNhbnM7XHJcblxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIEdMT0JBTCBUWVBFU1RZTEVTXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuQG1peGluIGJvZHktY29weXtcclxuICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XHJcblxyXG4gICAgc21hbGx7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNXB4O1xyXG4gICAgfVxyXG5cclxuICAgIHN0cm9uZ3tcclxuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuXHJcbiAgICAgICAgZW17XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGVte1xyXG4gICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcclxuXHJcbiAgICAgICAgc3Ryb25ne1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bS1hbmQtdXApe1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTdweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0O1xyXG4gICAgfVxyXG59XHJcblxyXG5ib2R5e1xyXG4gICAgZm9udC1mYW1pbHk6ICAkc2FucztcclxuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICBjb2xvcjogJGJyYW5kLWJsYWNrO1xyXG59XHJcblxyXG5wLFxyXG5saSxcclxubGFiZWwge1xyXG4gICAgQGluY2x1ZGUgYm9keS1jb3B5O1xyXG5cclxuICAgIGEge1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICAgIGNvbG9yOiAkbGluay1jb2xvcjtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNXB4O1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgICAgIEBpbmNsdWRlIGFuaW1hdGUoY29sb3IgMTAwbXMpO1xyXG4gICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5pbnRyb3tcclxuICAgIGZvbnQtZmFtaWx5OiAkY2F0cy1ib2xkO1xyXG4gICAgZm9udC1zaXplOiAxMTAlO1xyXG59XHJcblxyXG4udGV4dC1jZW50ZXIsXHJcbi5jZW50cmUtY29weXtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxufVxyXG5cclxuLmZvbnQtZmFjZS1iYXNpYyB7XHJcbiAgICBmb250LWZhbWlseTogJHNhbnMgIWltcG9ydGFudDtcclxufVxyXG5cclxuLnVwe1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxufVxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIE5BVklHQVRJT04gTElOS1NcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbkBtaXhpbiBtYWluLW5hdmlnYXRpb24tc3R5bGUge1xyXG4gICAgY29sb3I6IGluaGVyaXQ7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICBmb250LWZhbWlseTogJGhlYWRpbmctYm9sZC1mb250O1xyXG4gICAgZm9udC1zaXplOiAyMHB4O1xyXG59XHJcblxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIERBVEVcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbltjbGFzcyo9XCJkYXRlXCJde1xyXG4gICAgQGV4dGVuZCAldHMtOTtcclxuXHJcbiAgICAmOm5vdChbY2xhc3MqPVwidGV4dC1cIl0pe1xyXG4gICAgICAgIGNvbG9yOiAkYnJhbmQtYmxhY2s7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBIUlxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS1cclxuaHJ7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtZ3JleTtcclxuICAgIGhlaWdodDogMXB4O1xyXG4gICAgbWFyZ2luOiAkbGluZS1oZWlnaHQgMDtcclxufVxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIEdJRlRBSURcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbmg1LmdpZnRhaWR7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxMnB4O1xyXG4gICAgY29sb3I6JGJyYW5kLXB1cnBsZTtcclxufVxyXG5cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBSRUdJT05BTFxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLnRzLXJlZ2lvbmFse1xyXG4gICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgZm9udC1mYW1pbHk6ICRjYXRzLW1lZDtcclxuICAgIGxldHRlci1zcGFjaW5nOiAwLjdweDtcclxuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgY29sb3I6IHdoaXRlO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXJlZDtcclxuICAgIHBhZGRpbmc6IDVweCAyMHB4O1xyXG4gICAgd2lkdGg6IGF1dG87XHJcblxyXG4gICAgJjpiZWZvcmV7XHJcbiAgICAgICAgY29udGVudDogJ1JlZ2lvbmFsOiAnO1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcclxuICAgIH1cclxufVxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIExJTktcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIC5saW5re31cclxuXHJcbi5saW5rLS1pbmZvIHtcclxuICAgIGNvbG9yOiAkYnJhbmQtbGlnaHQtYmx1ZTtcclxuICAgIGZvbnQtZmFtaWx5OiAkY2F0cy1tZWQ7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICBjb2xvcjogJGJyYW5kLWJsYWNrO1xyXG4gICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG5cclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1ibGFjaztcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6ICdpJztcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xyXG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtbGlnaHQtYmx1ZTtcclxuICAgICAgICBwYWRkaW5nOiAycHggOHB4O1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgICAgICBmb250LXNpemU6IDgwJTtcclxuICAgIH1cclxufVxyXG4iLCIvKipcclxuICogVFlQRVNUWUxFU1xyXG4gKiBNQVNURVIgU0VUXHJcbiAqXHJcbiAqL1xyXG5cclxuLy8gTWFpbnRhaW5pbmcgU3ViaGVhZCBSZWZlcmVuY2VzIGZvciBiYWNrd2FyZHMgY29tcGF0YWJpbGl0eS5cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tXHJcbi8vIFRZUEVTVFlMRSAtIDBcclxuLy8tLS0tLS0tLS0tLS0tLS1cclxuLnRzLTAsXHJcbiV0cy0we1xyXG4gICAgZm9udC1mYW1pbHk6ICRjYXRzLWhlYWRsaW5lO1xyXG4gICAgQGluY2x1ZGUgZmx1aWQtdHlwZSgzMjBweCwgMTAyNHB4LCAyMHB4LCA0NnB4KTtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XHJcbn1cclxuLmJnLXdoaXRlIHtcclxuICAgIC50cy0wIHtcclxuICAgICAgICBjb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuICAgIH1cclxufVxyXG4vLy0tLS0tLS0tLS0tLS0tLVxyXG4vLyBUWVBFU1RZTEUgLSAxXHJcbi8vLS0tLS0tLS0tLS0tLS0tXHJcbi5zdWJoZWFkLTEsXHJcbi50cy0xLFxyXG4ldHMtMSB7XHJcbiAgICBmb250LWZhbWlseTogJGNhdHMtaGVhZGxpbmU7XHJcbiAgICBAaW5jbHVkZSBmbHVpZC10eXBlKDMyMHB4LCAxMDI0cHgsIDE5cHgsIDQ2cHgpO1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcclxufVxyXG4uYmctd2hpdGUsIC5iZy1saWdodC1ncmV5IHtcclxuICAgIC5zdWJoZWFkLTEsXHJcbiAgICAudHMtMSB7XHJcbiAgICAgICAgY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcbiAgICB9XHJcbn1cclxuLmJnLWJsdWUsIC5iZy1vcmFuZ2Uge1xyXG4gICAgLnN1YmhlYWQtMSxcclxuICAgIC50cy0xIHtcclxuICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgfVxyXG59XHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLVxyXG4vLyBUWVBFU1RZTEUgLSAyXHJcbi8vLS0tLS0tLS0tLS0tLS0tXHJcbi5zdWJoZWFkLTIsXHJcbi50cy0yLFxyXG4ldHMtMiB7XHJcbiAgICBmb250LWZhbWlseTogJGNhdHMtaGVhZGxpbmU7XHJcbiAgICBmb250LXNpemU6IDMxcHg7XHJcbiAgICBsaW5lLWhlaWdodDogMS4yZW07XHJcbiAgICBjb2xvcjogJGJyYW5kLXB1cnBsZTtcclxufVxyXG4uYmctd2hpdGUsIC5iZy1saWdodC1ncmV5IHtcclxuICAgIC5zdWJoZWFkLTIsXHJcbiAgICAudHMtMiB7XHJcbiAgICAgICAgY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcbiAgICB9XHJcbn1cclxuLmJnLWJsdWUsIC5iZy1vcmFuZ2Uge1xyXG4gICAgLnN1YmhlYWQtMixcclxuICAgIC50cy0yIHtcclxuICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgfVxyXG59XHJcbi8vLS0tLS0tLS0tLS0tLS0tXHJcbi8vIFRZUEVTVFlMRSAtIDNcclxuLy8tLS0tLS0tLS0tLS0tLS1cclxuLnN1YmhlYWQtMyxcclxuLnRzLTMsXHJcbiV0cy0zIHtcclxuICAgIGZvbnQtZmFtaWx5OiAkY2F0cy1oZWFkbGluZTtcclxuICAgIGZvbnQtc2l6ZTogMjZweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAyOXB4O1xyXG4gICAgY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcbn1cclxuLmJnLXdoaXRlLCAuYmctbGlnaHQtZ3JleSB7XHJcbiAgICAuc3ViaGVhZC0zLFxyXG4gICAgLnRzLTMge1xyXG4gICAgICAgIGNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgfVxyXG59XHJcbi5iZy1ibHVlLCAuYmctb3JhbmdlLCAuYmctbGlnaHQtYmx1ZSB7XHJcbiAgICAuc3ViaGVhZC0zLFxyXG4gICAgLnRzLTMge1xyXG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tXHJcbi8vIFRZUEVTVFlMRSAtIDRcclxuLy8tLS0tLS0tLS0tLS0tLS1cclxuLnN1YmhlYWQtNCxcclxuLnRzLTQsXHJcbiV0cy00IHtcclxuICAgIGZvbnQtZmFtaWx5OiAkY2F0cy1oZWFkbGluZTtcclxuICAgIGZvbnQtc2l6ZTogMjZweDtcclxuICAgIC8qdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsqL1xyXG59XHJcbi5iZy13aGl0ZSwgLmJnLWxpZ2h0LWdyZXkge1xyXG4gICAgLnN1YmhlYWQtNCxcclxuICAgIC50cy00IHtcclxuICAgICAgICBjb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuICAgIH1cclxufVxyXG4uYmctYmx1ZSwgLmJnLW9yYW5nZSB7XHJcbiAgICAuc3ViaGVhZC00LFxyXG4gICAgLnRzLTQge1xyXG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tXHJcbi8vIFRZUEVTVFlMRSAtIDVcclxuLy8tLS0tLS0tLS0tLS0tLS1cclxuLnN1YmhlYWQtNSxcclxuLnRzLTUsXHJcbiV0cy01IHtcclxuICAgIGZvbnQtZmFtaWx5OiAkY2F0cy1oZWFkbGluZTtcclxuICAgIGZvbnQtc2l6ZTogMjNweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAyOXB4O1xyXG59XHJcbi5iZy13aGl0ZSwgLmJnLWxpZ2h0LWdyZXkge1xyXG4gICAgLnN1YmhlYWQtNSxcclxuICAgIC50cy01IHtcclxuICAgICAgICBjb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuICAgIH1cclxufVxyXG4uYmctYmx1ZSwgLmJnLW9yYW5nZSB7XHJcbiAgICAuc3ViaGVhZC01LFxyXG4gICAgLnRzLTV7XHJcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgIH1cclxufVxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS1cclxuLy8gVFlQRVNUWUxFIC0gNlxyXG4vLy0tLS0tLS0tLS0tLS0tLVxyXG4uc3ViaGVhZC02LFxyXG4udHMtNixcclxuJXRzLTZ7XHJcbiAgICBmb250LWZhbWlseTogJGNhdHM7XHJcbiAgICBmb250LXNpemU6IDIxcHg7XHJcbn1cclxuLmJnLXdoaXRlLCAuYmctbGlnaHQtZ3JleSB7XHJcbiAgICAuc3ViaGVhZC02LFxyXG4gICAgLnRzLTYge1xyXG4gICAgICAgIGNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgfVxyXG59XHJcbi5iZy1ibHVlLCAuYmctb3JhbmdlIHtcclxuICAgIC5zdWJoZWFkLTYsXHJcbiAgICAudHMtNiB7XHJcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgIH1cclxufVxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS1cclxuLy8gVFlQRVNUWUxFIC0gN1xyXG4vLy0tLS0tLS0tLS0tLS0tLVxyXG4udHMtNyxcclxuJXRzLTcge1xyXG4gICAgZm9udC1mYW1pbHk6ICRjYXRzLWJvbGQ7XHJcbiAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICBsaW5lLWhlaWdodDogMjZweDtcclxuICAgIC8qbGV0dGVyLXNwYWNpbmc6IDAuNHB4OyovXHJcbiAgICBjb2xvcjogJGJyYW5kLXB1cnBsZTtcclxufVxyXG4uYmctd2hpdGUsIC5iZy1saWdodC1ncmV5IHtcclxuICAgIC50cy03IHtcclxuICAgICAgICBjb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuICAgIH1cclxufVxyXG4uYmctYmx1ZSwgLmJnLW9yYW5nZSB7XHJcbiAgICAudHMtNyB7XHJcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgIH1cclxufVxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS1cclxuLy8gVFlQRVNUWUxFIC0gOFxyXG4vLy0tLS0tLS0tLS0tLS0tLVxyXG4udHMtOCxcclxuJXRzLTgge1xyXG4gICAgZm9udC1mYW1pbHk6IEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XHJcbiAgICBmb250LXNpemU6IDE3cHg7XHJcbiAgICBsaW5lLWhlaWdodDogMjRweDtcclxuICAgIGxldHRlci1zcGFjaW5nOiAwLjdweDtcclxufVxyXG4uYmctd2hpdGUsIC5iZy1saWdodC1ncmV5IHtcclxuICAgIC50cy04IHtcclxuICAgICAgICBjb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuICAgIH1cclxufVxyXG4uYmctYmx1ZSwgLmJnLW9yYW5nZSB7XHJcbiAgICAudHMtOCB7XHJcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgIH1cclxufVxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS1cclxuLy8gVFlQRVNUWUxFIC0gOVxyXG4vLy0tLS0tLS0tLS0tLS0tLVxyXG4udHMtOSxcclxuJXRzLTl7IFxyXG4gICAgZm9udC1mYW1pbHk6ICRjYXRzO1xyXG4gICAgZm9udC1zaXplOiAxNXB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDE4cHg7XHJcbn1cclxuLmJnLXdoaXRlIHtcclxuICAgIC50cy05LFxyXG4gICAgLmJnLWxpZ2h0LWdyZXkge1xyXG4gICAgICAgIGNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgfVxyXG59XHJcbi5iZy1ibHVlLCAuYmctb3JhbmdlIHtcclxuICAgIC50cy05IHtcclxuICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgfVxyXG59XHJcbi50cy0xMHtcclxuICAgIGZvbnQtZmFtaWx5OiAkY2F0cztcclxuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG59XHJcbi5iZy13aGl0ZSwgLmJnLWxpZ2h0LWdyZXkge1xyXG4gICAgLnRzLTEwIHtcclxuICAgICAgICBjb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuICAgIH1cclxufVxyXG4uYmctYmx1ZSwgLmJnLW9yYW5nZSB7XHJcbiAgICAudHMtMTAge1xyXG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5pbmhlcml0LWNvbG9ye1xyXG4gICAgY29sb3I6IGluaGVyaXQ7XHJcbn1cclxuXHJcbi50ZXh0LWRlY29yYXRpb24tbm9uZXtcclxuICAgIHRleHQtZGVjb3JhdGlvbjpub25lO1xyXG59IiwiLyoqXHJcbiAqIFRZUEVTVFlMRVNcclxuICogSEVBREVSXHJcbiAqIFR5cGVzdHlsZXMgYXNzaWduZWQgdG8gZWxlbWVudHMgaW5zaWRlIHRoZSBIZWFkZXIuXHJcbiAqL1xyXG5cclxuXHJcbmhlYWRlcntcclxuICAgIGgxOm5vdChbY2xhc3NdKXtcclxuICAgICAgICBAZXh0ZW5kICV0cy0xO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgaDI6bm90KFtjbGFzc10pe1xyXG4gICAgICAgIEBleHRlbmQgJXRzLTE7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgIH1cclxuXHJcbiAgICBoMzpub3QoW2NsYXNzXSl7XHJcbiAgICAgICAgQGV4dGVuZCAldHMtMjtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIGg0Om5vdChbY2xhc3NdKXtcclxuICAgICAgICBAZXh0ZW5kICV0cy0zO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgaDU6bm90KFtjbGFzc10pe1xyXG4gICAgICAgIEBleHRlbmQgJXRzLTQ7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgIH1cclxuXHJcbiAgICBoNjpub3QoW2NsYXNzXSl7XHJcbiAgICAgICAgQGV4dGVuZCAldHMtNTtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIHA6bm90KFtjbGFzc10pe1xyXG4gICAgICAgIEBleHRlbmQgJXRzLTg7XHJcbiAgICB9XHJcblxyXG4gICAgaDEsXHJcbiAgICBoMixcclxuICAgIGgzLFxyXG4gICAgaDQsXHJcbiAgICBoNSxcclxuICAgIGg2e1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICB9XHJcbn1cclxuIiwiLyoqXHJcbiAqIFRZUEVTVFlMRVNcclxuICogQVJUSUNMRVxyXG4gKiBUeXBlc3R5bGVzIGFzc2lnbmVkIHRvIGVsZW1lbnRzIGluc2lkZSB0aGUgQXJ0aWNsZS5cclxuICovXHJcblxyXG5AbWl4aW4gYXJ0aWNsZS10eXBlc3R5bGVzIHtcclxuICAgIGgxIHtcclxuICAgICAgICBAZXh0ZW5kICV0cy0xO1xyXG4gICAgfVxyXG5cclxuICAgIC5oMS1saWtlIHtcclxuICAgICAgICBAZXh0ZW5kICV0cy0xO1xyXG4gICAgfVxyXG5cclxuICAgIGgyIHtcclxuICAgICAgICBAZXh0ZW5kICV0cy0yO1xyXG4gICAgfVxyXG5cclxuICAgIC5oMi1saWtlIHtcclxuICAgICAgICBAZXh0ZW5kICV0cy0yO1xyXG4gICAgfVxyXG5cclxuICAgIGgzIHtcclxuICAgICAgICBAZXh0ZW5kICV0cy0zO1xyXG4gICAgfVxyXG5cclxuICAgIC5oMy1saWtlIHtcclxuICAgICAgICBAZXh0ZW5kICV0cy0zO1xyXG4gICAgfVxyXG5cclxuICAgIGg0IHtcclxuICAgICAgICBAZXh0ZW5kICV0cy00O1xyXG4gICAgfVxyXG5cclxuICAgIC5oNC1saWtlIHtcclxuICAgICAgICBAZXh0ZW5kICV0cy00O1xyXG4gICAgfVxyXG5cclxuICAgIGg1IHtcclxuICAgICAgICBAZXh0ZW5kICV0cy01O1xyXG4gICAgfVxyXG5cclxuICAgIC5oNS1saWtlIHtcclxuICAgICAgICBAZXh0ZW5kICV0cy01O1xyXG4gICAgfVxyXG5cclxuICAgIGg2IHtcclxuICAgICAgICBAZXh0ZW5kICV0cy02O1xyXG4gICAgfVxyXG5cclxuICAgIC5oNi1saWtlIHtcclxuICAgICAgICBAZXh0ZW5kICV0cy02O1xyXG4gICAgfVxyXG5cclxuICAgIHA6bm90KFtjbGFzc10pIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIGEuYnRuIHtcclxuICAgICAgICArIGEuYnRuIHtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uYXJ0aWNsZS10eXBlc3R5bGVze1xyXG4gICAgQGluY2x1ZGUgYXJ0aWNsZS10eXBlc3R5bGVzO1xyXG59XHJcbiIsIi8qIFRZUEVTVFlMRVNcclxuICogSWNvbW9vbiBpY29uIHNldFxyXG4gKiBQbGFjZSBhbmQgaWNvbnMgZm9yIHRoZSBzaXRlIGhlcmVcclxuICovXHJcblxyXG4gQGZvbnQtZmFjZSB7XHJcbiAgICBmb250LWZhbWlseTogJ2ljb21vb24nO1xyXG4gICAgc3JjOiAgdXJsKCcuLi9kaXN0L2ZvbnRzL2ljb21vb24uZW90Jyk7XHJcbiAgICBzcmM6ICB1cmwoJy4uL2Rpc3QvZm9udHMvaWNvbW9vbi5lb3QjaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXHJcbiAgICAgIHVybCgnLi4vZGlzdC9mb250cy9pY29tb29uLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxyXG4gICAgICB1cmwoJy4uL2Rpc3QvZm9udHMvaWNvbW9vbi50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyksXHJcbiAgICAgIHVybCgnLi4vZGlzdC9mb250cy9pY29tb29uLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcclxuICAgICAgdXJsKCcuLi9kaXN0L2ZvbnRzL2ljb21vb24uc3ZnJykgZm9ybWF0KCdzdmcnKTtcclxuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgfVxyXG5cclxuJWljb25ze1xyXG4gICAgZm9udC1mYW1pbHk6ICdpY29tb29uJyAhaW1wb3J0YW50O1xyXG4gICAgc3BlYWs6IG5vbmU7XHJcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgZm9udC12YXJpYW50OiBub3JtYWw7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG59XHJcblxyXG4kaWNvbnMtbWFwOiAoXHJcbiAgICBjbG9zZTogJ1xcZTkwNycsXHJcbiAgICBhcnJvdy1sZWZ0OiAnXFxlOTA1JyxcclxuICAgIGFycm93LXJpZ2h0OiAnXFxlOTA2JyxcclxuICAgIGFycm93LWRvd246ICdcXGU5MDgnLFxyXG4gICAgdGljazogJ1xcZTkwMycsXHJcbiAgICBzZWFyY2g6ICdcXGU5MDInLFxyXG4gICAgcGxheTogJ1xcZTkwMCcsXHJcbiAgICBwbHVzOiAnXFxlOTAxJyxcclxuICAgIG1pbnVzOiAnXFxlOTBiJyxcclxuICAgIGZiazogJ1xcZTkwOScsXHJcbiAgICBsaW46ICdcXGU5MGEnLFxyXG4gICAgaW5zdDogJ1xcZTkxNycsXHJcbiAgICB5b3V0OiAnXFxlOTFhJyxcclxuICAgIHR3dDogJ1xcZTkwNCcsXHJcbiAgICBwaW46ICdcXGU5MGMnLFxyXG4gICAgbWFwLXBpbjogJ1xcZTkwZScsXHJcbiAgICBwaG9uZTogJ1xcZTkwZCcsXHJcbiAgICBtYWlsOiAnXFxlOTJjJyxcclxuICAgIGNoYXJpdHk6ICdcXGU5MGYnLFxyXG4gICAgY2FsZW5kYXI6ICdcXGU5MTAnLFxyXG4gICAgbWFwLXBpbi0yOiAnXFxlOTExJyxcclxuICAgIHBkZjogJ1xcZTkxMicsXHJcbiAgICBmYW1pbHk6ICdcXGU5MTMnLFxyXG4gICAgZG9nOiAnXFxlOTE0JyxcclxuICAgIGNhdDogJ1xcZTkxNicsXHJcbiAgICBjaGlsZHJlbjogJ1xcZTkxNScsXHJcbiAgICBmaW5kLWEtY2F0OiAnXFxlOTE4JyxcclxuICAgIGxpa2U6ICdcXGU5MWMnLFxyXG4gICAgY29tbWVudDogJ1xcZTkxYicsXHJcbiAgICBwYXlwYWw6ICdcXGU5MjYnLFxyXG4gICAgZmVtYWxlOiAnXFxlOTI3JyxcclxuICAgIG1hbGU6ICdcXGU5MjknLFxyXG4gICAgZ2lmdDogJ1xcZTkyOCcsXHJcbiAgICBtZTogJ1xcZTkyYScsXHJcbiAgICBob3VzZTogJ1xcZTkyYicsXHJcbiAgICBsb2dpbjogJ1xcZTkyZScsXHJcbiAgICBiYXNrZXQ6ICdcXGU5MmQnLFxyXG4gICAgcm90YXRlOiAnXFxlOTJmJyxcclxuICAgIGNoZXYtZG93bjogJ1xcZTkzMSdcclxuKTtcclxuXHJcblxyXG5AbWl4aW4gaWNvbigkaWNvbi1uYW1lKXtcclxuICAgICRpY29uOiBtYXAtZ2V0KCRpY29ucy1tYXAsICRpY29uLW5hbWUpO1xyXG4gICAgQGV4dGVuZCAlaWNvbnM7XHJcbiAgICBjb250ZW50OiAkaWNvbjtcclxufVxyXG5cclxuQG1peGluIGZpbmQtYS1jYXQtbm8tdGV4dHtcclxuICAgIEBleHRlbmQgJWljb25zO1xyXG4gICAgY29udGVudDogXCJcXGU5MTlcIjtcclxufVxyXG5cclxuQG1peGluIGNsb3NlLWljb257XHJcbiAgICBAZXh0ZW5kICVpY29ucztcclxuICAgIGNvbnRlbnQ6IFwiXFxlOTA3XCI7XHJcbn1cclxuXHJcbkBtaXhpbiBhcnJvdy1sZWZ0LWljb257XHJcbiAgICBAZXh0ZW5kICVpY29ucztcclxuICAgIGNvbnRlbnQ6IFwiXFxlOTA1XCI7XHJcbn1cclxuXHJcbkBtaXhpbiBhcnJvdy1yaWdodC1pY29ue1xyXG4gICAgQGV4dGVuZCAlaWNvbnM7XHJcbiAgICBjb250ZW50OiBcIlxcZTkwNlwiO1xyXG59XHJcblxyXG5AbWl4aW4gYXJyb3ctZG93bi1pY29ue1xyXG4gICAgQGV4dGVuZCAlaWNvbnM7XHJcbiAgICBjb250ZW50OiBcIlxcZTkwOFwiO1xyXG59XHJcblxyXG5AbWl4aW4gdGljay1pY29ue1xyXG4gICAgQGV4dGVuZCAlaWNvbnM7XHJcbiAgICBjb250ZW50OiBcIlxcZTkwM1wiO1xyXG59XHJcblxyXG5AbWl4aW4gc2VhcmNoLWljb257XHJcbiAgICBAZXh0ZW5kICVpY29ucztcclxuICAgIGNvbnRlbnQ6IFwiXFxlOTAyXCI7XHJcbn1cclxuXHJcbkBtaXhpbiBwbGF5LWljb257XHJcbiAgICBAZXh0ZW5kICVpY29ucztcclxuICAgIGNvbnRlbnQ6IFwiXFxlOTAwXCI7XHJcbn1cclxuXHJcbkBtaXhpbiBwbHVzLWljb257XHJcbiAgICBAZXh0ZW5kICVpY29ucztcclxuICAgIGNvbnRlbnQ6IFwiXFxlOTAxXCI7XHJcbn1cclxuXHJcbkBtaXhpbiBtaW51cy1pY29ue1xyXG4gICAgQGV4dGVuZCAlaWNvbnM7XHJcbiAgICBjb250ZW50OiBcIlxcZTkwYlwiO1xyXG59XHJcblxyXG5AbWl4aW4gcm90YXRlLWljb24ge1xyXG4gICAgQGV4dGVuZCAlaWNvbnM7XHJcbiAgICBjb250ZW50OiBcIlxcZTkyZlwiO1xyXG59XHJcblxyXG5AbWl4aW4gZmJrLWljb257XHJcbiAgICBAZXh0ZW5kICVpY29ucztcclxuICAgIGNvbnRlbnQ6IFwiXFxlOTA5XCI7XHJcbn1cclxuXHJcbkBtaXhpbiBsaW4taWNvbntcclxuICAgIEBleHRlbmQgJWljb25zO1xyXG4gICAgY29udGVudDogXCJcXGU5MGFcIjtcclxufVxyXG5cclxuQG1peGluIGluc3QtaWNvbntcclxuICAgIEBleHRlbmQgJWljb25zO1xyXG4gICAgY29udGVudDogXCJcXGU5MTdcIjtcclxufVxyXG5cclxuQG1peGluIHlvdXQtaWNvbiB7XHJcbiAgICBAZXh0ZW5kICVpY29ucztcclxuICAgIGNvbnRlbnQ6IFwiXFxlOTFhXCI7XHJcbn1cclxuXHJcbkBtaXhpbiB0d3QtaWNvbntcclxuICAgIEBleHRlbmQgJWljb25zO1xyXG4gICAgY29udGVudDogXCJcXGU5MDRcIjtcclxufVxyXG5cclxuQG1peGluIHBpbi1pY29ue1xyXG4gICAgQGV4dGVuZCAlaWNvbnM7XHJcbiAgICBjb250ZW50OiBcIlxcZTkwY1wiO1xyXG59XHJcblxyXG5AbWl4aW4gbWFwLXBpbi1pY29ue1xyXG4gICAgQGV4dGVuZCAlaWNvbnM7XHJcbiAgICBjb250ZW50OiBcIlxcZTkwZVwiO1xyXG59XHJcblxyXG5AbWl4aW4gcGhvbmUtaWNvbntcclxuICAgIEBleHRlbmQgJWljb25zO1xyXG4gICAgY29udGVudDogXCJcXGU5MGRcIjtcclxufVxyXG5cclxuQG1peGluIG1haWwtaWNvbntcclxuICAgIEBleHRlbmQgJWljb25zO1xyXG4gICAgY29udGVudDogXCJcXGU5MmNcIjtcclxufVxyXG5cclxuQG1peGluIGNoYXJpdHktaWNvbntcclxuICAgIEBleHRlbmQgJWljb25zO1xyXG4gICAgY29udGVudDogXCJcXGU5MGZcIjtcclxufVxyXG5cclxuQG1peGluIGNhbGVuZGFyLWljb257XHJcbiAgICBAZXh0ZW5kICVpY29ucztcclxuICAgIGNvbnRlbnQ6IFwiXFxlOTEwXCI7XHJcbn1cclxuXHJcbkBtaXhpbiBtYXAtcGluLTItaWNvbntcclxuICAgIEBleHRlbmQgJWljb25zO1xyXG4gICAgY29udGVudDogXCJcXGU5MTFcIjtcclxufVxyXG5cclxuQG1peGluIHBkZi1pY29ue1xyXG4gICAgQGV4dGVuZCAlaWNvbnM7XHJcbiAgICBjb250ZW50OiBcIlxcZTkxMlwiO1xyXG59XHJcblxyXG5AbWl4aW4gZmFtaWx5LWljb257XHJcbiAgICBAZXh0ZW5kICVpY29ucztcclxuICAgIGNvbnRlbnQ6IFwiXFxlOTEzXCI7XHJcbn1cclxuXHJcbkBtaXhpbiBkb2ctaWNvbntcclxuICAgIEBleHRlbmQgJWljb25zO1xyXG4gICAgY29udGVudDogXCJcXGU5MTRcIjtcclxufVxyXG5cclxuQG1peGluIGNhdC1pY29ue1xyXG4gICAgQGV4dGVuZCAlaWNvbnM7XHJcbiAgICBjb250ZW50OiBcIlxcZTkxNlwiO1xyXG59XHJcblxyXG5AbWl4aW4gY2hpbGRyZW4taWNvbntcclxuICAgIEBleHRlbmQgJWljb25zO1xyXG4gICAgY29udGVudDogXCJcXGU5MTVcIjtcclxufVxyXG5cclxuQG1peGluIGZpbmQtYS1jYXQtaWNvbntcclxuICAgIEBleHRlbmQgJWljb25zO1xyXG4gICAgY29udGVudDogXCJcXGU5MThcIjtcclxufVxyXG5cclxuQG1peGluIGxpa2UtaWNvbntcclxuICAgIEBleHRlbmQgJWljb25zO1xyXG4gICAgY29udGVudDogXCJcXGU5MWNcIjtcclxufVxyXG5cclxuQG1peGluIGNvbW1lbnQtaWNvbntcclxuICAgIEBleHRlbmQgJWljb25zO1xyXG4gICAgY29udGVudDogXCJcXGU5MWJcIjtcclxufVxyXG5cclxuQG1peGluIHBheXBhbC1pY29ue1xyXG4gICAgQGV4dGVuZCAlaWNvbnM7XHJcbiAgICBjb250ZW50OiBcIlxcZTkyNlwiO1xyXG59XHJcblxyXG5AbWl4aW4gZmVtYWxlLWljb257XHJcbiAgICBAZXh0ZW5kICVpY29ucztcclxuICAgIGNvbnRlbnQ6IFwiXFxlOTI3XCI7XHJcbn1cclxuXHJcbkBtaXhpbiBtYWxlLWljb257XHJcbiAgICBAZXh0ZW5kICVpY29ucztcclxuICAgIGNvbnRlbnQ6IFwiXFxlOTI5XCI7XHJcbn1cclxuXHJcbkBtaXhpbiBnaWZ0LWljb257XHJcbiAgICBAZXh0ZW5kICVpY29ucztcclxuICAgIGNvbnRlbnQ6IFwiXFxlOTI4XCI7XHJcbn1cclxuXHJcbkBtaXhpbiBtZS1pY29ue1xyXG4gICAgQGV4dGVuZCAlaWNvbnM7XHJcbiAgICBjb250ZW50OiBcIlxcZTkyYVwiO1xyXG59XHJcblxyXG5AbWl4aW4gaG91c2UtaWNvbntcclxuICAgIEBleHRlbmQgJWljb25zO1xyXG4gICAgY29udGVudDogXCJcXGU5MmJcIjtcclxufVxyXG5cclxuQG1peGluIGxvZ2luLWljb257XHJcbiAgICBAZXh0ZW5kICVpY29ucztcclxuICAgIGNvbnRlbnQ6IFwiXFxlOTJlXCI7XHJcbn1cclxuXHJcbkBtaXhpbiBiYXNrZXQtaWNvbntcclxuICAgIEBleHRlbmQgJWljb25zO1xyXG4gICAgY29udGVudDogXCJcXGU5MmRcIjtcclxufVxyXG5cclxuQG1peGluIGNoZXYtZG93bi1pY29uIHtcclxuICAgIEBleHRlbmQgJWljb25zO1xyXG4gICAgY29udGVudDogXCJcXGU5MzFcIjtcclxufVxyXG5cclxuXHJcbkBtaXhpbiB1c2VyLWljb24oJHNpemUpe1xyXG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgd2lkdGg6ICRzaXplO1xyXG4gICAgaGVpZ2h0OiAkc2l6ZTtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBib3gtc2hhZG93OiAwIDdweCAxMnB4IC0xcHggcmdiYSgkYmxhY2ssIDAuMik7XHJcblxyXG4gICAgJjpub3QoW2NsYXNzKj1cImJnLXRoZW1lXCJdKXtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtZ3JleTtcclxuICAgIH1cclxuXHJcbiAgICAmW3N0eWxlKj1cImJhY2tncm91bmQtaW1hZ2VcIl17XHJcbiAgICAgICAgQGluY2x1ZGUgYmFja2dyb3VuZChjb3Zlcik7XHJcbiAgICB9XHJcblxyXG4gICAgJltzdHlsZSo9J2JhY2tncm91bmQtaW1hZ2U6IHVybChcIi9cIik7J10sXHJcbiAgICAmW3N0eWxlKj1cImJhY2tncm91bmQtaW1hZ2U6IHVybCgnLycpO1wiXXtcclxuICAgICAgICAmOmFmdGVye1xyXG4gICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogODAlO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBib3R0b20gLTFweCBjZW50ZXI7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9iYXNlNjQvU1ZHL3VzZXItaWNvbi5zdmdcIik7XHJcblxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuXHJcbi8vIC51c2VyLWljb257XHJcbi8vICAgICBAaW5jbHVkZSB1c2VyLWljb24oMTAwcHgpO1xyXG4vLyB9XHJcblxyXG5cclxuLmdpZnRhaWQtbG9nb3tcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIHdpZHRoOiAxMDBweDtcclxuICAgIGhlaWdodDogNTBweDtcclxuICAgIG1hcmdpbi1ib3R0b206IC0xNXB4O1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9iYXNlNjQvU1ZHL2dpZnRhaWQtZ3JleS5zdmcpO1xyXG4gICAgQGluY2x1ZGUgYmFja2dyb3VuZChjb250YWluKTtcclxufVxyXG4iLCIvKiBUWVBFU1RZTEVTXHJcbiAqIExpc3Qgc3R5bGVzXHJcbiAqL1xyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIEdMT0JBTCAtIExJU1QgU1RZTEVTXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuQG1peGluIGxpc3Qtc3R5bGVzIHtcclxuICAgIHVsOm5vdChbY2xhc3NdKSwgb2w6bm90KFtjbGFzc10pIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgbWFyZ2luOiAxMHB4IDA7XHJcbiAgICAgICAgLypjb2xvcjogcmdiYSgkYmxhY2ssIDAuOCk7Ki9cclxuICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xyXG5cclxuICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiA0cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgdWw6bm90KFtjbGFzc10pIGxpOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgd2lkdGg6IDEwcHg7XHJcbiAgICAgICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1zdHlsZS1jb2xvcjtcclxuICAgICAgICB0b3A6IDhweDtcclxuICAgIH1cclxuXHJcbiAgICBvbDpub3QoW2NsYXNzXSkge1xyXG4gICAgICAgIGNvdW50ZXItcmVzZXQ6IGNvdW50ZXI7XHJcblxyXG4gICAgICAgIGxpOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6IGNvdW50ZXIoY291bnRlcikgXCIuXCI7XHJcbiAgICAgICAgICAgIGNvdW50ZXItaW5jcmVtZW50OiBjb3VudGVyO1xyXG4gICAgICAgICAgICB0b3A6IDBweDtcclxuICAgICAgICAgICAgbGVmdDo0cHg7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkbGlzdC1zdHlsZS1jb2xvcjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5ib2R5LWNvcHl7XHJcbiAgICBAaW5jbHVkZSBsaXN0LXN0eWxlcztcclxufVxyXG5cclxuLmJ1bGxldHN7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgbGkge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMzBweDtcclxuXHJcbiAgICAgICAgLmxpbmt7XHJcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6YmVmb3Jle1xyXG4gICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgbGVmdDogNHB4O1xyXG4gICAgICAgICAgICB3aWR0aDogMTBweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1ncmVlbjtcclxuICAgICAgICAgICAgdG9wOiA4cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gSUNPTiAtIExJU1QgU1RZTEVTXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLmljb24tbGlzdCB7XHJcblxyXG4gICAgbGkge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDU0cHg7XHJcblxyXG4gICAgICAgIGEge1xyXG4gICAgICAgICAgICBjb2xvcjogaW5oZXJpdDtcclxuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcblxyXG4gICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAzM3B4O1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuaWNvbi1saXN0X19waW46YmVmb3JlIHtcclxuICAgICAgICBAaW5jbHVkZSBtYXAtcGluLWljb247XHJcbiAgICAgICAgYWxpZ24tc2VsZjogZmxleC1zdGFydDtcclxuICAgICAgICBtYXJnaW4tdG9wOiA2cHg7XHJcbiAgICB9XHJcblxyXG4gICAgLmljb24tbGlzdF9fbWFpbDpiZWZvcmUge1xyXG4gICAgICAgIEBpbmNsdWRlIG1haWwtaWNvbjtcclxuICAgIH1cclxuXHJcbiAgICAuaWNvbi1saXN0X19waG9uZTpiZWZvcmUge1xyXG4gICAgICAgIEBpbmNsdWRlIHBob25lLWljb247XHJcbiAgICB9XHJcblxyXG4gICAgLmljb24tbGlzdF9fY2hhcml0eTpiZWZvcmUge1xyXG4gICAgICAgIEBpbmNsdWRlIGNoYXJpdHktaWNvbjtcclxuICAgIH1cclxuXHJcbiAgICAuaWNvbi1saXN0X19waW4yOmJlZm9yZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgbWFwLXBpbi0yLWljb247XHJcbiAgICB9XHJcblxyXG4gICAgLmljb24tbGlzdF9fY2FsZW5kYXI6YmVmb3JlIHtcclxuICAgICAgICBAaW5jbHVkZSBjYWxlbmRhci1pY29uO1xyXG4gICAgfVxyXG5cclxuICAgIC5pY29uLWxpc3RfX3BsYXk6YmVmb3JlIHtcclxuICAgICAgICBAaW5jbHVkZSBwbGF5LWljb247XHJcbiAgICB9XHJcbiAgICAvKiBGb250IGF3ZXNvbWUgLSBzdGFydCAqL1xyXG4gICAgLmljb24tbGlzdC1mYTpiZWZvcmUge1xyXG4gICAgICAgIC8qIFxyXG4gICAgICAgIHNhbWUgc2l6ZSBhcyBvcmlnaW5hbFxyXG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA2IEZyZWVcIjtcclxuICAgICAgICBmb250LXdlaWdodDogOTAwO1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICB3aWR0aDogMS43NWVtO1xyXG4gICAgICAgIGhlaWdodDogMS43NWVtO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjc1ZW07XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkIHdoaXRlO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgICAgICBjb2xvcjogd2hpdGU7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgZm9udC1zaXplOiAwLjg3NWVtO1xyXG4gICAgICAgICovXHJcblxyXG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA2IEZyZWVcIjtcclxuICAgICAgICBmb250LXdlaWdodDogOTAwO1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICB3aWR0aDogMmVtO1xyXG4gICAgICAgIGhlaWdodDogMmVtO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyZW07XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkIHdoaXRlO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgICAgICBjb2xvcjogd2hpdGU7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgZm9udC1zaXplOiAxZW07XHJcbiAgICB9XHJcblxyXG4gICAgLmljb24tbGlzdC1mYS5waW46YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlxcZjA0MVwiO1xyXG4gICAgICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XHJcbiAgICB9XHJcblxyXG4gICAgLmljb24tbGlzdC1mYS5tYWlsOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGYwZTBcIjtcclxuICAgIH1cclxuXHJcbiAgICAuaWNvbi1saXN0LWZhLnBob25lOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcXGYwOTVcIjtcclxuICAgIH1cclxuICAgIC8qIEZvbnQgYXdlc29tZSAtIGVuZCAqL1xyXG5cclxuICAgICZbY2xhc3MqPVwibGFyZ2VcIl0ge1xyXG4gICAgICAgIGxpIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAyMXB4O1xyXG4gICAgICAgICAgICBmb250LWZhbWlseTogJGNhdHMtbWVkO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xyXG5cclxuICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiA0MHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4ucGRmIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuXHJcbiAgICBsaSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiAkY2F0cy1tZWQ7XHJcbiAgICAgICAgQGluY2x1ZGUgYW5pbWF0ZShjb2xvciAyMDBtcyk7XHJcbiAgICAgICAgcGFkZGluZzogMTBweDtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgICAgICAgICB3aWR0aDogNTAlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xyXG4gICAgICAgICAgICB3aWR0aDogMzMuMzMlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBjb2xvcjogJGJyYW5kLWxpZ2h0LWJsdWU7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBhIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgY29sb3I6IGluaGVyaXQ7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBpbmhlcml0O1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xyXG5cclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHBkZi1pY29uO1xyXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDM1cHg7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA0NXB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmJ0bi1saXN0IHtcclxuICAgIG1hcmdpbi10b3A6IDEwcHg7XHJcblxyXG4gICAgbGkge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBoZWlnaHQ6IDcwcHg7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuICAgICAgICBtYXJnaW46IDAgYXV0byAxMHB4O1xyXG4gICAgICAgIG1heC13aWR0aDogNTAwcHg7XHJcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMjJweCA0cHggcmdiYSgkYnJhbmQtYmxhY2ssIDAuNCk7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gU1RBVElTVElDUyAtIExJU1QgU1RZTEVTXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi5zdGF0LWxpc3R7XHJcbiAgICBwYWRkaW5nOiAxMHB4IDMwcHg7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC13cmFwOiB3cmFwO1xyXG5cclxuICAgIGxpe1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiAkY2F0cy1ib2xkO1xyXG4gICAgICAgIHBhZGRpbmc6IDEwcHggMDtcclxuXHJcbiAgICAgICAgJjpub3QoOm50aC1sYXN0LWNoaWxkKC1uICsgMikpe1xyXG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSh3aGl0ZSwgMC40KTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICAgICAgcGFkZGluZzogMCA1cHg7XHJcblxyXG4gICAgICAgICAgICAmOmZpcnN0LW9mLXR5cGV7XHJcbiAgICAgICAgICAgICAgICAmOmFmdGVye1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICc6JztcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBbY2xhc3MqPVwiZnVsbFwiXSAme1xyXG4gICAgICAgIGxpe1xyXG4gICAgICAgICAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bS1hbmQtdXApIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiA1MCU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG5cclxuLmRldGFpbC1saXN0e1xyXG4gICAgbGl7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6ICRjYXRzLW1lZDtcclxuICAgICAgICBmb250LXNpemU6IDI1cHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDMwcHg7XHJcbiAgICAgICAgc3Ryb25ne1xyXG4gICAgICAgICAgICBmb250LWZhbWlseTogJGNhdHMtYm9sZDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYgKyBsaXtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTNweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIiwiLm9wZW5pbmctcGFnZS1oZWFkaW5ne1xyXG4gIGZvbnQtZmFtaWx5OiBcImJhcm1lbm8tYm9sZFwiLCBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xyXG4gIGZvbnQtc2l6ZTogMjBweDtcclxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKXtcclxuICAgIGZvbnQtc2l6ZTogMzFweDtcclxuICB9XHJcbn1cclxuIiwiLyogU2xpZGVyICovXHJcblxyXG4uc2xpY2stc2xpZGVyIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcclxuICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgICAta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xyXG4gICAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xyXG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgICAtbXMtdG91Y2gtYWN0aW9uOiBwYW4teTtcclxuICAgIHRvdWNoLWFjdGlvbjogcGFuLXk7XHJcbiAgICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG59XHJcbi5zbGljay1saXN0IHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIG1hcmdpbjogMDtcclxuICAgIHBhZGRpbmc6IDA7XHJcblxyXG4gICAgJjpmb2N1cyB7XHJcbiAgICAgICAgb3V0bGluZTogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICAmLmRyYWdnaW5nIHtcclxuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgY3Vyc29yOiBoYW5kO1xyXG4gICAgfVxyXG59XHJcbi5zbGljay1zbGlkZXIgLnNsaWNrLXRyYWNrLFxyXG4uc2xpY2stc2xpZGVyIC5zbGljay1saXN0IHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbn1cclxuXHJcbi5zbGljay10cmFjayB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcblxyXG4gICAgJjpiZWZvcmUsXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xyXG4gICAgfVxyXG5cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGNsZWFyOiBib3RoO1xyXG4gICAgfVxyXG5cclxuICAgIC5zbGljay1sb2FkaW5nICYge1xyXG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgIH1cclxufVxyXG4uc2xpY2stc2xpZGUge1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICBtaW4taGVpZ2h0OiAxcHg7XHJcbiAgICBbZGlyPVwicnRsXCJdICYge1xyXG4gICAgICAgIGZsb2F0OiByaWdodDtcclxuICAgIH1cclxuICAgIGltZyB7XHJcbiAgICAgICAgLy9kaXNwbGF5OiBibG9jaztcclxuICAgIH1cclxuICAgICYuc2xpY2stbG9hZGluZyBpbWcge1xyXG4gICAgICAgLy8gZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG5cclxuICAgICYuZHJhZ2dpbmcgaW1nIHtcclxuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICAuc2xpY2staW5pdGlhbGl6ZWQgJiB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB9XHJcblxyXG4gICAgLnNsaWNrLWxvYWRpbmcgJiB7XHJcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgfVxyXG5cclxuICAgIC5zbGljay12ZXJ0aWNhbCAmIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgICB9XHJcbn1cclxuLnNsaWNrLWFycm93LnNsaWNrLWhpZGRlbiB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG59XHJcbiIsIi8qIVxyXG4gKiBDcm9wcGVyLmpzIHYxLjYuMVxyXG4gKiBodHRwczovL2Zlbmd5dWFuY2hlbi5naXRodWIuaW8vY3JvcHBlcmpzXHJcbiAqXHJcbiAqIENvcHlyaWdodCAyMDE1LXByZXNlbnQgQ2hlbiBGZW5neXVhblxyXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2VcclxuICpcclxuICogRGF0ZTogMjAyMy0wOS0xN1QwMzo0NDoxNy41NjVaXHJcbiAqL1xyXG5cclxuLmNyb3BwZXItY29udGFpbmVyIHtcclxuICAgIGRpcmVjdGlvbjogbHRyO1xyXG4gICAgZm9udC1zaXplOiAwO1xyXG4gICAgbGluZS1oZWlnaHQ6IDA7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAtbXMtdG91Y2gtYWN0aW9uOiBub25lO1xyXG4gICAgdG91Y2gtYWN0aW9uOiBub25lO1xyXG4gICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcclxuICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcclxufVxyXG5cclxuLmNyb3BwZXItY29udGFpbmVyIGltZyB7XHJcbiAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIGltYWdlLW9yaWVudGF0aW9uOiAwZGVnO1xyXG4gICAgbWF4LWhlaWdodDogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgbWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICBtaW4taGVpZ2h0OiAwICFpbXBvcnRhbnQ7XHJcbiAgICBtaW4td2lkdGg6IDAgIWltcG9ydGFudDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4uY3JvcHBlci13cmFwLWJveCxcclxuLmNyb3BwZXItY2FudmFzLFxyXG4uY3JvcHBlci1kcmFnLWJveCxcclxuLmNyb3BwZXItY3JvcC1ib3gsXHJcbi5jcm9wcGVyLW1vZGFsIHtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICByaWdodDogMDtcclxuICAgIHRvcDogMDtcclxufVxyXG5cclxuLmNyb3BwZXItd3JhcC1ib3gsXHJcbi5jcm9wcGVyLWNhbnZhcyB7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4uY3JvcHBlci1kcmFnLWJveCB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG4gICAgb3BhY2l0eTogMDtcclxufVxyXG5cclxuLmNyb3BwZXItbW9kYWwge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcclxuICAgIG9wYWNpdHk6IDAuNTtcclxufVxyXG5cclxuLmNyb3BwZXItdmlldy1ib3gge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICBvdXRsaW5lOiAxcHggc29saWQgIzM5ZjtcclxuICAgIG91dGxpbmUtY29sb3I6IHJnYmEoNTEsIDE1MywgMjU1LCAwLjc1KTtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICB3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLmNyb3BwZXItZGFzaGVkIHtcclxuICAgIGJvcmRlcjogMCBkYXNoZWQgI2VlZTtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgb3BhY2l0eTogMC41O1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG59XHJcblxyXG4uY3JvcHBlci1kYXNoZWQuZGFzaGVkLWgge1xyXG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMXB4O1xyXG4gICAgYm9yZGVyLXRvcC13aWR0aDogMXB4O1xyXG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgLyAzKTtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB0b3A6IGNhbGMoMTAwJSAvIDMpO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi5jcm9wcGVyLWRhc2hlZC5kYXNoZWQtdiB7XHJcbiAgICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xyXG4gICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAxcHg7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICBsZWZ0OiBjYWxjKDEwMCUgLyAzKTtcclxuICAgIHRvcDogMDtcclxuICAgIHdpZHRoOiBjYWxjKDEwMCUgLyAzKTtcclxufVxyXG5cclxuLmNyb3BwZXItY2VudGVyIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgaGVpZ2h0OiAwO1xyXG4gICAgbGVmdDogNTAlO1xyXG4gICAgb3BhY2l0eTogMC43NTtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogNTAlO1xyXG4gICAgd2lkdGg6IDA7XHJcbn1cclxuXHJcbi5jcm9wcGVyLWNlbnRlcjo6YmVmb3JlLFxyXG4uY3JvcHBlci1jZW50ZXI6OmFmdGVyIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNlZWU7XHJcbiAgICBjb250ZW50OiAnICc7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxufVxyXG5cclxuLmNyb3BwZXItY2VudGVyOjpiZWZvcmUge1xyXG4gICAgaGVpZ2h0OiAxcHg7XHJcbiAgICBsZWZ0OiAtM3B4O1xyXG4gICAgdG9wOiAwO1xyXG4gICAgd2lkdGg6IDdweDtcclxufVxyXG5cclxuLmNyb3BwZXItY2VudGVyOjphZnRlciB7XHJcbiAgICBoZWlnaHQ6IDdweDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB0b3A6IC0zcHg7XHJcbiAgICB3aWR0aDogMXB4O1xyXG59XHJcblxyXG4uY3JvcHBlci1mYWNlLFxyXG4uY3JvcHBlci1saW5lLFxyXG4uY3JvcHBlci1wb2ludCB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIG9wYWNpdHk6IDAuMTtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4uY3JvcHBlci1mYWNlIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgdG9wOiAwO1xyXG59XHJcblxyXG4uY3JvcHBlci1saW5lIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICMzOWY7XHJcbn1cclxuXHJcbi5jcm9wcGVyLWxpbmUubGluZS1lIHtcclxuICAgIGN1cnNvcjogZXctcmVzaXplO1xyXG4gICAgcmlnaHQ6IC0zcHg7XHJcbiAgICB0b3A6IDA7XHJcbiAgICB3aWR0aDogNXB4O1xyXG59XHJcblxyXG4uY3JvcHBlci1saW5lLmxpbmUtbiB7XHJcbiAgICBjdXJzb3I6IG5zLXJlc2l6ZTtcclxuICAgIGhlaWdodDogNXB4O1xyXG4gICAgbGVmdDogMDtcclxuICAgIHRvcDogLTNweDtcclxufVxyXG5cclxuLmNyb3BwZXItbGluZS5saW5lLXcge1xyXG4gICAgY3Vyc29yOiBldy1yZXNpemU7XHJcbiAgICBsZWZ0OiAtM3B4O1xyXG4gICAgdG9wOiAwO1xyXG4gICAgd2lkdGg6IDVweDtcclxufVxyXG5cclxuLmNyb3BwZXItbGluZS5saW5lLXMge1xyXG4gICAgYm90dG9tOiAtM3B4O1xyXG4gICAgY3Vyc29yOiBucy1yZXNpemU7XHJcbiAgICBoZWlnaHQ6IDVweDtcclxuICAgIGxlZnQ6IDA7XHJcbn1cclxuXHJcbi5jcm9wcGVyLXBvaW50IHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICMzOWY7XHJcbiAgICBoZWlnaHQ6IDVweDtcclxuICAgIG9wYWNpdHk6IDAuNzU7XHJcbiAgICB3aWR0aDogNXB4O1xyXG59XHJcblxyXG4uY3JvcHBlci1wb2ludC5wb2ludC1lIHtcclxuICAgIGN1cnNvcjogZXctcmVzaXplO1xyXG4gICAgbWFyZ2luLXRvcDogLTNweDtcclxuICAgIHJpZ2h0OiAtM3B4O1xyXG4gICAgdG9wOiA1MCU7XHJcbn1cclxuXHJcbi5jcm9wcGVyLXBvaW50LnBvaW50LW4ge1xyXG4gICAgY3Vyc29yOiBucy1yZXNpemU7XHJcbiAgICBsZWZ0OiA1MCU7XHJcbiAgICBtYXJnaW4tbGVmdDogLTNweDtcclxuICAgIHRvcDogLTNweDtcclxufVxyXG5cclxuLmNyb3BwZXItcG9pbnQucG9pbnQtdyB7XHJcbiAgICBjdXJzb3I6IGV3LXJlc2l6ZTtcclxuICAgIGxlZnQ6IC0zcHg7XHJcbiAgICBtYXJnaW4tdG9wOiAtM3B4O1xyXG4gICAgdG9wOiA1MCU7XHJcbn1cclxuXHJcbi5jcm9wcGVyLXBvaW50LnBvaW50LXMge1xyXG4gICAgYm90dG9tOiAtM3B4O1xyXG4gICAgY3Vyc29yOiBzLXJlc2l6ZTtcclxuICAgIGxlZnQ6IDUwJTtcclxuICAgIG1hcmdpbi1sZWZ0OiAtM3B4O1xyXG59XHJcblxyXG4uY3JvcHBlci1wb2ludC5wb2ludC1uZSB7XHJcbiAgICBjdXJzb3I6IG5lc3ctcmVzaXplO1xyXG4gICAgcmlnaHQ6IC0zcHg7XHJcbiAgICB0b3A6IC0zcHg7XHJcbn1cclxuXHJcbi5jcm9wcGVyLXBvaW50LnBvaW50LW53IHtcclxuICAgIGN1cnNvcjogbndzZS1yZXNpemU7XHJcbiAgICBsZWZ0OiAtM3B4O1xyXG4gICAgdG9wOiAtM3B4O1xyXG59XHJcblxyXG4uY3JvcHBlci1wb2ludC5wb2ludC1zdyB7XHJcbiAgICBib3R0b206IC0zcHg7XHJcbiAgICBjdXJzb3I6IG5lc3ctcmVzaXplO1xyXG4gICAgbGVmdDogLTNweDtcclxufVxyXG5cclxuLmNyb3BwZXItcG9pbnQucG9pbnQtc2Uge1xyXG4gICAgYm90dG9tOiAtM3B4O1xyXG4gICAgY3Vyc29yOiBud3NlLXJlc2l6ZTtcclxuICAgIGhlaWdodDogMjBweDtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICByaWdodDogLTNweDtcclxuICAgIHdpZHRoOiAyMHB4O1xyXG59XHJcblxyXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcclxuXHJcbiAgICAuY3JvcHBlci1wb2ludC5wb2ludC1zZSB7XHJcbiAgICAgICAgaGVpZ2h0OiAxNXB4O1xyXG4gICAgICAgIHdpZHRoOiAxNXB4O1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcclxuXHJcbiAgICAuY3JvcHBlci1wb2ludC5wb2ludC1zZSB7XHJcbiAgICAgICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgICAgIHdpZHRoOiAxMHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XHJcblxyXG4gICAgLmNyb3BwZXItcG9pbnQucG9pbnQtc2Uge1xyXG4gICAgICAgIGhlaWdodDogNXB4O1xyXG4gICAgICAgIG9wYWNpdHk6IDAuNzU7XHJcbiAgICAgICAgd2lkdGg6IDVweDtcclxuICAgIH1cclxufVxyXG5cclxuLmNyb3BwZXItcG9pbnQucG9pbnQtc2U6OmJlZm9yZSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzlmO1xyXG4gICAgYm90dG9tOiAtNTAlO1xyXG4gICAgY29udGVudDogJyAnO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBoZWlnaHQ6IDIwMCU7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgcmlnaHQ6IC01MCU7XHJcbiAgICB3aWR0aDogMjAwJTtcclxufVxyXG5cclxuLmNyb3BwZXItaW52aXNpYmxlIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbn1cclxuXHJcbi5jcm9wcGVyLWJnIHtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFCQUFBQUFRQVFNQUFBQWxQVzBpQUFBQUEzTkNTVlFJQ0FqYjRVL2dBQUFBQmxCTVZFWE16TXovLy8vVGpSVjJBQUFBQ1hCSVdYTUFBQXJyQUFBSzZ3R0NpdzFhQUFBQUhIUkZXSFJUYjJaMGQyRnlaUUJCWkc5aVpTQkdhWEpsZDI5eWEzTWdRMU0yNkx5eWpBQUFBQkZKUkVGVUNKbGorTS9BZ0JWaEYvMFBBSDYvRC9Ia0R4T0dBQUFBQUVsRlRrU3VRbUNDJyk7XHJcbn1cclxuXHJcbi5jcm9wcGVyLWhpZGUge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBoZWlnaHQ6IDA7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB3aWR0aDogMDtcclxufVxyXG5cclxuLmNyb3BwZXItaGlkZGVuIHtcclxuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxufVxyXG5cclxuLmNyb3BwZXItbW92ZSB7XHJcbiAgICBjdXJzb3I6IG1vdmU7XHJcbn1cclxuXHJcbi5jcm9wcGVyLWNyb3Age1xyXG4gICAgY3Vyc29yOiBjcm9zc2hhaXI7XHJcbn1cclxuXHJcbi5jcm9wcGVyLWRpc2FibGVkIC5jcm9wcGVyLWRyYWctYm94LFxyXG4uY3JvcHBlci1kaXNhYmxlZCAuY3JvcHBlci1mYWNlLFxyXG4uY3JvcHBlci1kaXNhYmxlZCAuY3JvcHBlci1saW5lLFxyXG4uY3JvcHBlci1kaXNhYmxlZCAuY3JvcHBlci1wb2ludCB7XHJcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xyXG59XHJcblxyXG4jaW1hZ2VDYW52YXMge1xyXG4gICAgaGVpZ2h0OiAzMDBweCAhaW1wb3J0YW50O1xyXG4gICAgd2lkdGg6IDMwMHB4ICFpbXBvcnRhbnQ7XHJcbn1cclxuLmltYWdlLWNyb3BwZXItcG9wdXAge1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgYmFja2dyb3VuZDogcmdiYSg1Nyw0OCwxMTIsLjkpO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIHotaW5kZXg6IDEwMDtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxufVxyXG5cclxuLmltYWdlLWNyb3BwZXItcG9wdXBfX2lubmVyIHtcclxuICAgIHBhZGRpbmc6IDIwcHg7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xyXG4gICAgYm94LXNoYWRvdzogMCAwIDIwcHggNXB4IHJnYmEoMzIsMzIsMzIsLjIpO1xyXG4gICAgbWF4LXdpZHRoOiA0NDBweDtcclxuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG59XHJcblxyXG4uaW1hZ2UtY3JvcHBlci1wb3B1cF9fY2FudmFzIHtcclxuICAgIHdpZHRoOiAzMDBweDtcclxuICAgIGhlaWdodDogMzAwcHg7XHJcbiAgICBtYXJnaW46IDAgYXV0byAyMHB4O1xyXG59XHJcblxyXG4uaW1hZ2UtY3JvcHBlci1wb3B1cF9fYnV0dG9ucyAuYnRuIHtcclxuICAgIG1hcmdpbjogMCAycHggMTBweDtcclxufVxyXG5cclxuLmltYWdlLWNyb3BwZXItcG9wdXBfX2J1dHRvbnMge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxufVxyXG5cclxuLmltYWdlLWNyb3BwZXItcG9wdXAuaXMtYWN0aXZlIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICBwb2ludGVyLWV2ZW50czogYWxsO1xyXG59XHJcbiAgIiwiW2RhdGEtc2ltcGxlYmFyXSB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG4gICAgYWxpZ24tY29udGVudDogZmxleC1zdGFydDtcclxuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG4gICAgd2lkdGg6IGluaGVyaXQ7XHJcbiAgICBoZWlnaHQ6IGluaGVyaXQ7XHJcbiAgICBtYXgtd2lkdGg6IGluaGVyaXQ7XHJcbiAgICBtYXgtaGVpZ2h0OiBpbmhlcml0O1xyXG59XHJcblxyXG4uc2ltcGxlYmFyLXdyYXBwZXIge1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIHdpZHRoOiBpbmhlcml0O1xyXG4gICAgaGVpZ2h0OiBpbmhlcml0O1xyXG4gICAgbWF4LXdpZHRoOiBpbmhlcml0O1xyXG4gICAgbWF4LWhlaWdodDogaW5oZXJpdDtcclxufVxyXG5cclxuLnNpbXBsZWJhci1tYXNrIHtcclxuICAgIGRpcmVjdGlvbjogaW5oZXJpdDtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHRvcDogMDtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcclxuICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xyXG4gICAgei1pbmRleDogMDtcclxufVxyXG5cclxuLnNpbXBsZWJhci1vZmZzZXQge1xyXG4gICAgZGlyZWN0aW9uOiBpbmhlcml0ICFpbXBvcnRhbnQ7XHJcbiAgICBib3gtc2l6aW5nOiBpbmhlcml0ICFpbXBvcnRhbnQ7XHJcbiAgICByZXNpemU6IG5vbmUgIWltcG9ydGFudDtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICBib3R0b206IDA7XHJcbiAgICByaWdodDogMDtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XHJcbn1cclxuXHJcbi5zaW1wbGViYXItY29udGVudCB7XHJcbiAgICBkaXJlY3Rpb246IGluaGVyaXQ7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94ICFpbXBvcnRhbnQ7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGhlaWdodDogMTAwJTsgLyogUmVxdWlyZWQgZm9yIGhvcml6b250YWwgbmF0aXZlIHNjcm9sbGJhciB0byBub3QgYXBwZWFyIGlmIHBhcmVudCBpcyB0YWxsZXIgdGhhbiBuYXR1cmFsIGhlaWdodCAqL1xyXG4gICAgd2lkdGg6IGF1dG87XHJcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gICAgb3ZlcmZsb3c6IHNjcm9sbDsgLyogU2Nyb2xsIG9uIHRoaXMgZWxlbWVudCBvdGhlcndpc2UgZWxlbWVudCBjYW4ndCBoYXZlIGEgcGFkZGluZyBhcHBsaWVkIHByb3Blcmx5ICovXHJcbiAgICBtYXgtd2lkdGg6IDEwMCU7IC8qIE5vdCByZXF1aXJlZCBmb3IgaG9yaXpvbnRhbCBzY3JvbGwgdG8gdHJpZ2dlciAqL1xyXG4gICAgbWF4LWhlaWdodDogMTAwJTsgLyogTmVlZGVkIGZvciB2ZXJ0aWNhbCBzY3JvbGwgdG8gdHJpZ2dlciAqL1xyXG59XHJcblxyXG4uc2ltcGxlYmFyLXBsYWNlaG9sZGVyIHtcclxuICAgIG1heC1oZWlnaHQ6IDEwMCU7XHJcbiAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG59XHJcblxyXG4uc2ltcGxlYmFyLWhlaWdodC1hdXRvLW9ic2VydmVyLXdyYXBwZXIge1xyXG4gICAgYm94LXNpemluZzogaW5oZXJpdCAhaW1wb3J0YW50O1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgd2lkdGg6IGluaGVyaXQ7XHJcbiAgICBtYXgtd2lkdGg6IDFweDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgbWF4LWhlaWdodDogMXB4O1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIHotaW5kZXg6IC0xO1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgZmxleC1ncm93OiBpbmhlcml0O1xyXG4gICAgZmxleC1zaHJpbms6IDA7XHJcbiAgICBmbGV4LWJhc2lzOiAwO1xyXG59XHJcblxyXG4uc2ltcGxlYmFyLWhlaWdodC1hdXRvLW9ic2VydmVyIHtcclxuICAgIGJveC1zaXppbmc6IGluaGVyaXQ7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgaGVpZ2h0OiAxMDAwJTtcclxuICAgIHdpZHRoOiAxMDAwJTtcclxuICAgIG1pbi1oZWlnaHQ6IDFweDtcclxuICAgIG1pbi13aWR0aDogMXB4O1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgei1pbmRleDogLTE7XHJcbn1cclxuXHJcbi5zaW1wbGViYXItdHJhY2sge1xyXG4gICAgei1pbmRleDogMTtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbn1cclxuXHJcbi5zaW1wbGViYXItc2Nyb2xsYmFyIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHJpZ2h0OiAycHg7XHJcbiAgICB3aWR0aDogN3B4O1xyXG4gICAgbWluLWhlaWdodDogMTBweDtcclxufVxyXG5cclxuLnNpbXBsZWJhci1zY3JvbGxiYXI6YmVmb3JlIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICBiYWNrZ3JvdW5kOiBibGFjaztcclxuICAgIGJvcmRlci1yYWRpdXM6IDdweDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICByaWdodDogMDtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgbGluZWFyO1xyXG59XHJcblxyXG4uc2ltcGxlYmFyLXRyYWNrIC5zaW1wbGViYXItc2Nyb2xsYmFyLnNpbXBsZWJhci12aXNpYmxlOmJlZm9yZSB7XHJcbiAgICAvKiBXaGVuIGhvdmVyZWQsIHJlbW92ZSBhbGwgdHJhbnNpdGlvbnMgZnJvbSBkcmFnIGhhbmRsZSAqL1xyXG4gICAgb3BhY2l0eTogMC41O1xyXG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwcyBsaW5lYXI7XHJcbn1cclxuXHJcbi5zaW1wbGViYXItdHJhY2suc2ltcGxlYmFyLXZlcnRpY2FsIHtcclxuICAgIHRvcDogMDtcclxuICAgIHdpZHRoOiAxMXB4O1xyXG59XHJcblxyXG4uc2ltcGxlYmFyLXRyYWNrLnNpbXBsZWJhci12ZXJ0aWNhbCAuc2ltcGxlYmFyLXNjcm9sbGJhcjpiZWZvcmUge1xyXG4gICAgdG9wOiAycHg7XHJcbiAgICBib3R0b206IDJweDtcclxufVxyXG5cclxuLnNpbXBsZWJhci10cmFjay5zaW1wbGViYXItaG9yaXpvbnRhbCB7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgaGVpZ2h0OiAxMXB4O1xyXG59XHJcblxyXG4uc2ltcGxlYmFyLXRyYWNrLnNpbXBsZWJhci1ob3Jpem9udGFsIC5zaW1wbGViYXItc2Nyb2xsYmFyOmJlZm9yZSB7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICBsZWZ0OiAycHg7XHJcbiAgICByaWdodDogMnB4O1xyXG59XHJcblxyXG4uc2ltcGxlYmFyLXRyYWNrLnNpbXBsZWJhci1ob3Jpem9udGFsIC5zaW1wbGViYXItc2Nyb2xsYmFyIHtcclxuICAgIHJpZ2h0OiBhdXRvO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHRvcDogMnB4O1xyXG4gICAgaGVpZ2h0OiA3cHg7XHJcbiAgICBtaW4taGVpZ2h0OiAwO1xyXG4gICAgbWluLXdpZHRoOiAxMHB4O1xyXG4gICAgd2lkdGg6IGF1dG87XHJcbn1cclxuXHJcbi8qIFJ0bCBzdXBwb3J0ICovXHJcbltkYXRhLXNpbXBsZWJhci1kaXJlY3Rpb249XCJydGxcIl0gLnNpbXBsZWJhci10cmFjay5zaW1wbGViYXItdmVydGljYWwge1xyXG4gICAgcmlnaHQ6IGF1dG87XHJcbiAgICBsZWZ0OiAwO1xyXG59XHJcblxyXG4uaHMtZHVtbXktc2Nyb2xsYmFyLXNpemUge1xyXG4gICAgZGlyZWN0aW9uOiBydGw7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgaGVpZ2h0OiA1MDBweDtcclxuICAgIHdpZHRoOiA1MDBweDtcclxuICAgIG92ZXJmbG93LXk6IGhpZGRlbjtcclxuICAgIG92ZXJmbG93LXg6IHNjcm9sbDtcclxufVxyXG4iLCLvu78vKipcclxuICogU3dpcGVyIDExLjIuMTBcclxuICogTW9zdCBtb2Rlcm4gbW9iaWxlIHRvdWNoIHNsaWRlciBhbmQgZnJhbWV3b3JrIHdpdGggaGFyZHdhcmUgYWNjZWxlcmF0ZWQgdHJhbnNpdGlvbnNcclxuICogaHR0cHM6Ly9zd2lwZXJqcy5jb21cclxuICpcclxuICogQ29weXJpZ2h0IDIwMTQtMjAyNSBWbGFkaW1pciBLaGFybGFtcGlkaVxyXG4gKlxyXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2VcclxuICpcclxuICogUmVsZWFzZWQgb246IEp1bmUgMjgsIDIwMjVcclxuICovXHJcblxyXG5AZm9udC1mYWNlIHtcclxuICAgIGZvbnQtZmFtaWx5OiBzd2lwZXItaWNvbnM7XHJcbiAgICBzcmM6IHVybCgnZGF0YTphcHBsaWNhdGlvbi9mb250LXdvZmY7Y2hhcnNldD11dGYtODtiYXNlNjQsIGQwOUdSZ0FCQUFBQUFBWmdBQkFBQUFBQURBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFCR1JsUk5BQUFHUkFBQUFCb0FBQUFjaTZxSGtVZEVSVVlBQUFXZ0FBQUFJd0FBQUNRQVlBQlhSMUJQVXdBQUJoUUFBQUF1QUFBQU51QVk3K3hIVTFWQ0FBQUZ4QUFBQUZBQUFBQm0yZlBjelU5VEx6SUFBQUhjQUFBQVNnQUFBR0JQOVY1UlkyMWhjQUFBQWtRQUFBQ0lBQUFCWXQ2RjBjQmpkblFnQUFBQ3pBQUFBQVFBQUFBRUFCRUJSR2RoYzNBQUFBV1lBQUFBQ0FBQUFBai8vd0FEWjJ4NVpnQUFBeXdBQUFETUFBQUQyTUh0cnlWb1pXRmtBQUFCYkFBQUFEQUFBQUEyRTIrZW9XaG9aV0VBQUFHY0FBQUFId0FBQUNRQzlnRHphRzEwZUFBQUFpZ0FBQUFaQUFBQXJnSmtBQkZzYjJOaEFBQUMwQUFBQUZvQUFBQmFGUUFVR0cxaGVIQUFBQUc4QUFBQUh3QUFBQ0FBY0FCQWJtRnRaUUFBQS9nQUFBRTVBQUFDWHZGZEJ3bHdiM04wQUFBRk5BQUFBR0lBQUFDRTVzNzRoWGphWTJCa1lHQUFZcGY1SHUvaitXMitNbkF6TVlEQXphWDZRakQ2LzQvL0J4ajVHQThBdVJ3TVlHa0FQeXdMMTNqYVkyQmtZR0E4OFA4QWd4NGorLzhmUURZZkExQUVCV2dEQUlCMkJPb0FlTnBqWUdSZ1lOQmg0R2RnWWdBQkVNbklBQkp6WU5BRENRQUFDV2dBc1FCNDJtTmdZZnpDT0lHQmxZR0IwWWN4allHQndSMUtmMldRWkdoaFlHQmlZR1ZtZ0FGR0JpUVFrT2Fhd3REQW9NQlF4WGpnL3dFR1BjWUREQTR3TlVBMkNDZ3dzQUFBTzRFTDZnQUFlTnBqMk0wZ3lBQUNxeGdHTldCa1oyRDQvd01BK3hrRGRnQUFBSGphWTJCZ1lHYUFZQmtHUmdZUWlBSHlHTUY4RmdZSElNM0R3TUhBQkdRck1PZ3lXRExFTTFUOS93OFVCZkVNZ0x6RS8vLy9QLzUvL2YvVi94dityNGVhQUFlTWJBeHdJVVltSU1IRWdLWUFZalVjc0RBd3NMS3hjM0J5Y2ZQdzhqRVFBL2daQkFTRmhFVkV4Y1FsSktXa1pXVGw1QlVVbFpSVlZOWFVOVFFaQmdNQUFNUitFK2dBRVFGRUFBQUFLZ0FxQUNvQU5BQStBRWdBVWdCY0FHWUFjQUI2QUlRQWpnQ1lBS0lBckFDMkFNQUF5Z0RVQU40QTZBRHlBUHdCQmdFUUFSb0JKQUV1QVRnQlFnRk1BVllCWUFGcUFYUUJmZ0dJQVpJQm5BR21BYklCemdIc0FBQjQydTJOTVE2Q1VBeUdXNTY4eDlBbmVZWWdtNE1KYmhLRmFFeElPQVZYOEFwZXdTdDRCaWM0QWZlQWlkM1ZPQml4RHhmUFlFemE1TytYZmkwNFlBRGdnaVVJVUxDdUVKSzhWaE80YlN2cGRua3RISTVRQ1l0ZGkyc2w4Wm5YYUhscVVyTkt6ZEtjVDhjamxxK3J3WlN2SVZjek5pZXpzZm5QL3V6bm1mUEZCTk9ETTJLN01UUTQ1WUVBWnFHUDgxQW1HR2NGM2lQcU9vcDByMVNQVGFUYlZrZlVlNEhYajk3d1lFK3lOd1dZeHdXdTR2MXVnV0hnbzNTMVhkWkVWcVdNN0VUMGNmbkxHeFdma2dSNDJvMlB2V3JETUJTRmovSUhMYUYwektqUmdkaVZNd1NjTlJBb1dVb0g3OFkyaWNCL3lJWTA5QW42QUgyQmR1L1VCK3l4b3BZc2hRaUV2bnZ1MGRVUmdEdDhRZUM4UER3N0ZwamkzZkVBNHovUEVKNllPQjVoS2g0ZGozRXZYaHhQcUgvU0tVWTNySjdzclo0RlpuaDFQTUF0UGh3UDZmbDJQTUpNUERnZVE0clk4WVQ2R3phbzBlQUVBNDA5RHVnZ21UbkZuT2NTQ2lFaUxNZ3hDaVRJNkNxNURaVWQzUW1wMTB2TzBMYUxUZDJjak40Zk91bWxjN2xVWWJTUWNaRmt1dFJHN2c2SktaS3kwUm1kTFk2ODBDRG5FSitVTWtwRkZlMVJON254ZFZwWHJDNGFUdG5hdXJPblllcmNaZzJZVm1MTi9kL2djemZFaW1yRS9mcy9iT3VxMjlabW44dGxvT1JhWGdaZ0dhNzh5TzkvY25YbTJCcGFHdnEyNUR2OVM0RTkrNVNJYzlQcXVwSktoWUZTU2w0NytRY3IxbVlOQUFBQWVOcHR3MGNLd2tBQUFNRFpKQThRN09VSnZrTHNQZlo2ekZWRVJQeThxSGgyWUVSKzNpL0JQODN2SUJMTHlTc29LaW1ycUtxcGEyaHA2K2pxNlJzWUdobWJtSnFaU3kwc3JheHRiTzNzSFJ5ZG5FTVU0dVI2eXg3SkpYdmVQN1dyRHljQUFBQUFBQUgvL3dBQ2VOcGpZR1JnWU9BQlloa2daZ0pDWmdaTkJrWUdMUVp0SUpzRkxNWUFBQXczQUxnQWVOb2xpekVLZ0RBUUJDY2hSYkMyc0ZFUjBZRDZxVlFpQkN2L0g5ZXpHSTZaNVhCQXc4Q0JLL201aVFRVmF1VmJYTG5Pck1adjJvTGRLRmE4UGp1cnUyaEp6R2FibU9TTHpOTXp2dXRwQjNONDJtTmdaR0JnNEdLUVl6QmhZTXhKTE1sajRHQmdBWW93L1AvUEFKSmhMTTZzU29XS2ZXQ0FBd0RBamdiUkFBQjQybU5nWUdCa0FJSWJDWm81SVBybVVuMGhHQTBBTzhFRlRRQUEnKTtcclxuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICBmb250LXN0eWxlOiBub3JtYWxcclxufVxyXG5cclxuOnJvb3Qge1xyXG4gICAgLS1zd2lwZXItdGhlbWUtY29sb3I6ICMwMDdhZmZcclxufVxyXG5cclxuOmhvc3Qge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgIG1hcmdpbi1yaWdodDogYXV0bztcclxuICAgIHotaW5kZXg6IDFcclxufVxyXG5cclxuLnN3aXBlciB7XHJcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgIG1hcmdpbi1yaWdodDogYXV0bztcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIHotaW5kZXg6IDE7XHJcbiAgICBkaXNwbGF5OiBibG9ja1xyXG59XHJcblxyXG4uc3dpcGVyLXZlcnRpY2FsID4gLnN3aXBlci13cmFwcGVyIHtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW5cclxufVxyXG5cclxuLnN3aXBlci13cmFwcGVyIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgei1pbmRleDogMTtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XHJcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogdmFyKC0tc3dpcGVyLXdyYXBwZXItdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24saW5pdGlhbCk7XHJcbiAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveFxyXG59XHJcblxyXG4uc3dpcGVyLWFuZHJvaWQgLnN3aXBlci1zbGlkZSwgLnN3aXBlci1pb3MgLnN3aXBlci1zbGlkZSwgLnN3aXBlci13cmFwcGVyIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LDAsMClcclxufVxyXG5cclxuLnN3aXBlci1ob3Jpem9udGFsIHtcclxuICAgIHRvdWNoLWFjdGlvbjogcGFuLXlcclxufVxyXG5cclxuLnN3aXBlci12ZXJ0aWNhbCB7XHJcbiAgICB0b3VjaC1hY3Rpb246IHBhbi14XHJcbn1cclxuXHJcbi5zd2lwZXItc2xpZGUge1xyXG4gICAgZmxleC1zaHJpbms6IDA7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcclxuICAgIGRpc3BsYXk6IGJsb2NrXHJcbn1cclxuXHJcbi5zd2lwZXItc2xpZGUtaW52aXNpYmxlLWJsYW5rIHtcclxuICAgIHZpc2liaWxpdHk6IGhpZGRlblxyXG59XHJcblxyXG4uc3dpcGVyLWF1dG9oZWlnaHQsIC5zd2lwZXItYXV0b2hlaWdodCAuc3dpcGVyLXNsaWRlIHtcclxuICAgIGhlaWdodDogYXV0b1xyXG59XHJcblxyXG4gICAgLnN3aXBlci1hdXRvaGVpZ2h0IC5zd2lwZXItd3JhcHBlciB7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLGhlaWdodFxyXG4gICAgfVxyXG5cclxuLnN3aXBlci1iYWNrZmFjZS1oaWRkZW4gLnN3aXBlci1zbGlkZSB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XHJcbiAgICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlblxyXG59XHJcblxyXG4uc3dpcGVyLTNkLnN3aXBlci1jc3MtbW9kZSAuc3dpcGVyLXdyYXBwZXIge1xyXG4gICAgcGVyc3BlY3RpdmU6IDEyMDBweFxyXG59XHJcblxyXG4uc3dpcGVyLTNkIC5zd2lwZXItd3JhcHBlciB7XHJcbiAgICB0cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkXHJcbn1cclxuXHJcbi5zd2lwZXItM2Qge1xyXG4gICAgcGVyc3BlY3RpdmU6IDEyMDBweFxyXG59XHJcblxyXG4gICAgLnN3aXBlci0zZCAuc3dpcGVyLWN1YmUtc2hhZG93LCAuc3dpcGVyLTNkIC5zd2lwZXItc2xpZGUge1xyXG4gICAgICAgIHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2RcclxuICAgIH1cclxuXHJcbi5zd2lwZXItY3NzLW1vZGUgPiAuc3dpcGVyLXdyYXBwZXIge1xyXG4gICAgb3ZlcmZsb3c6IGF1dG87XHJcbiAgICBzY3JvbGxiYXItd2lkdGg6IG5vbmU7XHJcbiAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IG5vbmVcclxufVxyXG5cclxuICAgIC5zd2lwZXItY3NzLW1vZGUgPiAuc3dpcGVyLXdyYXBwZXI6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lXHJcbiAgICB9XHJcblxyXG4gICAgLnN3aXBlci1jc3MtbW9kZSA+IC5zd2lwZXItd3JhcHBlciA+IC5zd2lwZXItc2xpZGUge1xyXG4gICAgICAgIHNjcm9sbC1zbmFwLWFsaWduOiBzdGFydCBzdGFydFxyXG4gICAgfVxyXG5cclxuLnN3aXBlci1jc3MtbW9kZS5zd2lwZXItaG9yaXpvbnRhbCA+IC5zd2lwZXItd3JhcHBlciB7XHJcbiAgICBzY3JvbGwtc25hcC10eXBlOiB4IG1hbmRhdG9yeVxyXG59XHJcblxyXG4uc3dpcGVyLWNzcy1tb2RlLnN3aXBlci12ZXJ0aWNhbCA+IC5zd2lwZXItd3JhcHBlciB7XHJcbiAgICBzY3JvbGwtc25hcC10eXBlOiB5IG1hbmRhdG9yeVxyXG59XHJcblxyXG4uc3dpcGVyLWNzcy1tb2RlLnN3aXBlci1mcmVlLW1vZGUgPiAuc3dpcGVyLXdyYXBwZXIge1xyXG4gICAgc2Nyb2xsLXNuYXAtdHlwZTogbm9uZVxyXG59XHJcblxyXG4gICAgLnN3aXBlci1jc3MtbW9kZS5zd2lwZXItZnJlZS1tb2RlID4gLnN3aXBlci13cmFwcGVyID4gLnN3aXBlci1zbGlkZSB7XHJcbiAgICAgICAgc2Nyb2xsLXNuYXAtYWxpZ246IG5vbmVcclxuICAgIH1cclxuXHJcbi5zd2lwZXItY3NzLW1vZGUuc3dpcGVyLWNlbnRlcmVkID4gLnN3aXBlci13cmFwcGVyOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogJyc7XHJcbiAgICBmbGV4LXNocmluazogMDtcclxuICAgIG9yZGVyOiA5OTk5XHJcbn1cclxuXHJcbi5zd2lwZXItY3NzLW1vZGUuc3dpcGVyLWNlbnRlcmVkID4gLnN3aXBlci13cmFwcGVyID4gLnN3aXBlci1zbGlkZSB7XHJcbiAgICBzY3JvbGwtc25hcC1hbGlnbjogY2VudGVyIGNlbnRlcjtcclxuICAgIHNjcm9sbC1zbmFwLXN0b3A6IGFsd2F5c1xyXG59XHJcblxyXG4uc3dpcGVyLWNzcy1tb2RlLnN3aXBlci1jZW50ZXJlZC5zd2lwZXItaG9yaXpvbnRhbCA+IC5zd2lwZXItd3JhcHBlciA+IC5zd2lwZXItc2xpZGU6Zmlyc3QtY2hpbGQge1xyXG4gICAgbWFyZ2luLWlubGluZS1zdGFydDogdmFyKC0tc3dpcGVyLWNlbnRlcmVkLW9mZnNldC1iZWZvcmUpXHJcbn1cclxuXHJcbi5zd2lwZXItY3NzLW1vZGUuc3dpcGVyLWNlbnRlcmVkLnN3aXBlci1ob3Jpem9udGFsID4gLnN3aXBlci13cmFwcGVyOjpiZWZvcmUge1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgbWluLWhlaWdodDogMXB4O1xyXG4gICAgd2lkdGg6IHZhcigtLXN3aXBlci1jZW50ZXJlZC1vZmZzZXQtYWZ0ZXIpXHJcbn1cclxuXHJcbi5zd2lwZXItY3NzLW1vZGUuc3dpcGVyLWNlbnRlcmVkLnN3aXBlci12ZXJ0aWNhbCA+IC5zd2lwZXItd3JhcHBlciA+IC5zd2lwZXItc2xpZGU6Zmlyc3QtY2hpbGQge1xyXG4gICAgbWFyZ2luLWJsb2NrLXN0YXJ0OiB2YXIoLS1zd2lwZXItY2VudGVyZWQtb2Zmc2V0LWJlZm9yZSlcclxufVxyXG5cclxuLnN3aXBlci1jc3MtbW9kZS5zd2lwZXItY2VudGVyZWQuc3dpcGVyLXZlcnRpY2FsID4gLnN3aXBlci13cmFwcGVyOjpiZWZvcmUge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBtaW4td2lkdGg6IDFweDtcclxuICAgIGhlaWdodDogdmFyKC0tc3dpcGVyLWNlbnRlcmVkLW9mZnNldC1hZnRlcilcclxufVxyXG5cclxuLnN3aXBlci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdywgLnN3aXBlci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1ib3R0b20sIC5zd2lwZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctbGVmdCwgLnN3aXBlci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1yaWdodCwgLnN3aXBlci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy10b3Age1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHRvcDogMDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICB6LWluZGV4OiAxMFxyXG59XHJcblxyXG4uc3dpcGVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93IHtcclxuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwwLDAsLjE1KVxyXG59XHJcblxyXG4uc3dpcGVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWxlZnQge1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGxlZnQscmdiYSgwLDAsMCwuNSkscmdiYSgwLDAsMCwwKSlcclxufVxyXG5cclxuLnN3aXBlci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1yaWdodCB7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQscmdiYSgwLDAsMCwuNSkscmdiYSgwLDAsMCwwKSlcclxufVxyXG5cclxuLnN3aXBlci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy10b3Age1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHRvcCxyZ2JhKDAsMCwwLC41KSxyZ2JhKDAsMCwwLDApKVxyXG59XHJcblxyXG4uc3dpcGVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWJvdHRvbSB7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLHJnYmEoMCwwLDAsLjUpLHJnYmEoMCwwLDAsMCkpXHJcbn1cclxuXHJcbi5zd2lwZXItbGF6eS1wcmVsb2FkZXIge1xyXG4gICAgd2lkdGg6IDQycHg7XHJcbiAgICBoZWlnaHQ6IDQycHg7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBsZWZ0OiA1MCU7XHJcbiAgICB0b3A6IDUwJTtcclxuICAgIG1hcmdpbi1sZWZ0OiAtMjFweDtcclxuICAgIG1hcmdpbi10b3A6IC0yMXB4O1xyXG4gICAgei1pbmRleDogMTA7XHJcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCU7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgYm9yZGVyOiA0cHggc29saWQgdmFyKC0tc3dpcGVyLXByZWxvYWRlci1jb2xvcix2YXIoLS1zd2lwZXItdGhlbWUtY29sb3IpKTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgIGJvcmRlci10b3AtY29sb3I6IHRyYW5zcGFyZW50XHJcbn1cclxuXHJcbi5zd2lwZXItd2F0Y2gtcHJvZ3Jlc3MgLnN3aXBlci1zbGlkZS12aXNpYmxlIC5zd2lwZXItbGF6eS1wcmVsb2FkZXIsIC5zd2lwZXI6bm90KC5zd2lwZXItd2F0Y2gtcHJvZ3Jlc3MpIC5zd2lwZXItbGF6eS1wcmVsb2FkZXIge1xyXG4gICAgYW5pbWF0aW9uOiBzd2lwZXItcHJlbG9hZGVyLXNwaW4gMXMgaW5maW5pdGUgbGluZWFyXHJcbn1cclxuXHJcbi5zd2lwZXItbGF6eS1wcmVsb2FkZXItd2hpdGUge1xyXG4gICAgLS1zd2lwZXItcHJlbG9hZGVyLWNvbG9yOiAjZmZmXHJcbn1cclxuXHJcbi5zd2lwZXItbGF6eS1wcmVsb2FkZXItYmxhY2sge1xyXG4gICAgLS1zd2lwZXItcHJlbG9hZGVyLWNvbG9yOiAjMDAwXHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgc3dpcGVyLXByZWxvYWRlci1zcGluIHtcclxuICAgIDAlIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKVxyXG4gICAgfVxyXG5cclxuICAgIDEwMCUge1xyXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZylcclxuICAgIH1cclxufVxyXG5cclxuLnN3aXBlci12aXJ0dWFsIC5zd2lwZXItc2xpZGUge1xyXG4gICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMClcclxufVxyXG5cclxuLnN3aXBlci12aXJ0dWFsLnN3aXBlci1jc3MtbW9kZSAuc3dpcGVyLXdyYXBwZXI6OmFmdGVyIHtcclxuICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHRvcDogMDtcclxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lXHJcbn1cclxuXHJcbi5zd2lwZXItdmlydHVhbC5zd2lwZXItY3NzLW1vZGUuc3dpcGVyLWhvcml6b250YWwgLnN3aXBlci13cmFwcGVyOjphZnRlciB7XHJcbiAgICBoZWlnaHQ6IDFweDtcclxuICAgIHdpZHRoOiB2YXIoLS1zd2lwZXItdmlydHVhbC1zaXplKVxyXG59XHJcblxyXG4uc3dpcGVyLXZpcnR1YWwuc3dpcGVyLWNzcy1tb2RlLnN3aXBlci12ZXJ0aWNhbCAuc3dpcGVyLXdyYXBwZXI6OmFmdGVyIHtcclxuICAgIHdpZHRoOiAxcHg7XHJcbiAgICBoZWlnaHQ6IHZhcigtLXN3aXBlci12aXJ0dWFsLXNpemUpXHJcbn1cclxuXHJcbjpyb290IHtcclxuICAgIC0tc3dpcGVyLW5hdmlnYXRpb24tc2l6ZTogNDRweFxyXG59XHJcblxyXG4uc3dpcGVyLWJ1dHRvbi1uZXh0LCAuc3dpcGVyLWJ1dHRvbi1wcmV2IHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogdmFyKC0tc3dpcGVyLW5hdmlnYXRpb24tdG9wLW9mZnNldCw1MCUpO1xyXG4gICAgd2lkdGg6IGNhbGModmFyKC0tc3dpcGVyLW5hdmlnYXRpb24tc2l6ZSkvIDQ0ICogMjcpO1xyXG4gICAgaGVpZ2h0OiB2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi1zaXplKTtcclxuICAgIG1hcmdpbi10b3A6IGNhbGMoMHB4IC0gKHZhcigtLXN3aXBlci1uYXZpZ2F0aW9uLXNpemUpLyAyKSk7XHJcbiAgICB6LWluZGV4OiAxMDtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBjb2xvcjogdmFyKC0tc3dpcGVyLW5hdmlnYXRpb24tY29sb3IsdmFyKC0tc3dpcGVyLXRoZW1lLWNvbG9yKSlcclxufVxyXG5cclxuICAgIC5zd2lwZXItYnV0dG9uLW5leHQuc3dpcGVyLWJ1dHRvbi1kaXNhYmxlZCwgLnN3aXBlci1idXR0b24tcHJldi5zd2lwZXItYnV0dG9uLWRpc2FibGVkIHtcclxuICAgICAgICBvcGFjaXR5OiAuMzU7XHJcbiAgICAgICAgY3Vyc29yOiBhdXRvO1xyXG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lXHJcbiAgICB9XHJcblxyXG4gICAgLnN3aXBlci1idXR0b24tbmV4dC5zd2lwZXItYnV0dG9uLWhpZGRlbiwgLnN3aXBlci1idXR0b24tcHJldi5zd2lwZXItYnV0dG9uLWhpZGRlbiB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICBjdXJzb3I6IGF1dG87XHJcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmVcclxuICAgIH1cclxuXHJcbi5zd2lwZXItbmF2aWdhdGlvbi1kaXNhYmxlZCAuc3dpcGVyLWJ1dHRvbi1uZXh0LCAuc3dpcGVyLW5hdmlnYXRpb24tZGlzYWJsZWQgLnN3aXBlci1idXR0b24tcHJldiB7XHJcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnRcclxufVxyXG5cclxuLnN3aXBlci1idXR0b24tbmV4dCBzdmcsIC5zd2lwZXItYnV0dG9uLXByZXYgc3ZnIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgb2JqZWN0LWZpdDogY29udGFpbjtcclxuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlclxyXG59XHJcblxyXG4uc3dpcGVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1uZXh0IHN2ZywgLnN3aXBlci1ydGwgLnN3aXBlci1idXR0b24tcHJldiBzdmcge1xyXG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKVxyXG59XHJcblxyXG4uc3dpcGVyLWJ1dHRvbi1wcmV2LCAuc3dpcGVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1uZXh0IHtcclxuICAgIGxlZnQ6IHZhcigtLXN3aXBlci1uYXZpZ2F0aW9uLXNpZGVzLW9mZnNldCwxMHB4KTtcclxuICAgIHJpZ2h0OiBhdXRvXHJcbn1cclxuXHJcbi5zd2lwZXItYnV0dG9uLW5leHQsIC5zd2lwZXItcnRsIC5zd2lwZXItYnV0dG9uLXByZXYge1xyXG4gICAgcmlnaHQ6IHZhcigtLXN3aXBlci1uYXZpZ2F0aW9uLXNpZGVzLW9mZnNldCwxMHB4KTtcclxuICAgIGxlZnQ6IGF1dG9cclxufVxyXG5cclxuLnN3aXBlci1idXR0b24tbG9jayB7XHJcbiAgICBkaXNwbGF5OiBub25lXHJcbn1cclxuXHJcbi5zd2lwZXItYnV0dG9uLW5leHQ6YWZ0ZXIsIC5zd2lwZXItYnV0dG9uLXByZXY6YWZ0ZXIge1xyXG4gICAgZm9udC1mYW1pbHk6IHN3aXBlci1pY29ucztcclxuICAgIGZvbnQtc2l6ZTogdmFyKC0tc3dpcGVyLW5hdmlnYXRpb24tc2l6ZSk7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IDA7XHJcbiAgICBmb250LXZhcmlhbnQ6IGluaXRpYWw7XHJcbiAgICBsaW5lLWhlaWdodDogMVxyXG59XHJcblxyXG4uc3dpcGVyLWJ1dHRvbi1wcmV2OmFmdGVyLCAuc3dpcGVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1uZXh0OmFmdGVyIHtcclxuICAgIGNvbnRlbnQ6ICdwcmV2J1xyXG59XHJcblxyXG4uc3dpcGVyLWJ1dHRvbi1uZXh0LCAuc3dpcGVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1wcmV2IHtcclxuICAgIHJpZ2h0OiB2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi1zaWRlcy1vZmZzZXQsMTBweCk7XHJcbiAgICBsZWZ0OiBhdXRvXHJcbn1cclxuXHJcbiAgICAuc3dpcGVyLWJ1dHRvbi1uZXh0OmFmdGVyLCAuc3dpcGVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1wcmV2OmFmdGVyIHtcclxuICAgICAgICBjb250ZW50OiAnbmV4dCdcclxuICAgIH1cclxuXHJcbi5zd2lwZXItcGFnaW5hdGlvbiB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB0cmFuc2l0aW9uOiAuM3Mgb3BhY2l0eTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwwLDApO1xyXG4gICAgei1pbmRleDogMTBcclxufVxyXG5cclxuICAgIC5zd2lwZXItcGFnaW5hdGlvbi5zd2lwZXItcGFnaW5hdGlvbi1oaWRkZW4ge1xyXG4gICAgICAgIG9wYWNpdHk6IDBcclxuICAgIH1cclxuXHJcbiAgICAuc3dpcGVyLXBhZ2luYXRpb24tZGlzYWJsZWQgPiAuc3dpcGVyLXBhZ2luYXRpb24sIC5zd2lwZXItcGFnaW5hdGlvbi5zd2lwZXItcGFnaW5hdGlvbi1kaXNhYmxlZCB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50XHJcbiAgICB9XHJcblxyXG4uc3dpcGVyLWhvcml6b250YWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cywgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMuc3dpcGVyLXBhZ2luYXRpb24taG9yaXpvbnRhbCwgLnN3aXBlci1wYWdpbmF0aW9uLWN1c3RvbSwgLnN3aXBlci1wYWdpbmF0aW9uLWZyYWN0aW9uIHtcclxuICAgIGJvdHRvbTogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYm90dG9tLDhweCk7XHJcbiAgICB0b3A6IHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLXRvcCxhdXRvKTtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB3aWR0aDogMTAwJVxyXG59XHJcblxyXG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIHtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBmb250LXNpemU6IDBcclxufVxyXG5cclxuICAgIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSguMzMpO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZVxyXG4gICAgfVxyXG5cclxuICAgIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUge1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSlcclxuICAgIH1cclxuXHJcbiAgICAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlLW1haW4ge1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSlcclxuICAgIH1cclxuXHJcbiAgICAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlLXByZXYge1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoLjY2KVxyXG4gICAgfVxyXG5cclxuICAgIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUtcHJldi1wcmV2IHtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKC4zMylcclxuICAgIH1cclxuXHJcbiAgICAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlLW5leHQge1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoLjY2KVxyXG4gICAgfVxyXG5cclxuICAgIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUtbmV4dC1uZXh0IHtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKC4zMylcclxuICAgIH1cclxuXHJcbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xyXG4gICAgd2lkdGg6IHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC13aWR0aCx2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtc2l6ZSw4cHgpKTtcclxuICAgIGhlaWdodDogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWhlaWdodCx2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtc2l6ZSw4cHgpKTtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1ib3JkZXItcmFkaXVzLDUwJSk7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtaW5hY3RpdmUtY29sb3IsIzAwMCk7XHJcbiAgICBvcGFjaXR5OiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtaW5hY3RpdmUtb3BhY2l0eSwgLjIpXHJcbn1cclxuXHJcbmJ1dHRvbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIGJveC1zaGFkb3c6IG5vbmU7XHJcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XHJcbiAgICBhcHBlYXJhbmNlOiBub25lXHJcbn1cclxuXHJcbi5zd2lwZXItcGFnaW5hdGlvbi1jbGlja2FibGUgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXJcclxufVxyXG5cclxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldDpvbmx5LWNoaWxkIHtcclxuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudFxyXG59XHJcblxyXG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZSB7XHJcbiAgICBvcGFjaXR5OiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtb3BhY2l0eSwgMSk7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1jb2xvcix2YXIoLS1zd2lwZXItdGhlbWUtY29sb3IpKVxyXG59XHJcblxyXG4uc3dpcGVyLXBhZ2luYXRpb24tdmVydGljYWwuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cywgLnN3aXBlci12ZXJ0aWNhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzIHtcclxuICAgIHJpZ2h0OiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1yaWdodCw4cHgpO1xyXG4gICAgbGVmdDogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tbGVmdCxhdXRvKTtcclxuICAgIHRvcDogNTAlO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsLTUwJSwwKVxyXG59XHJcblxyXG4gICAgLnN3aXBlci1wYWdpbmF0aW9uLXZlcnRpY2FsLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCwgLnN3aXBlci12ZXJ0aWNhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xyXG4gICAgICAgIG1hcmdpbjogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LXZlcnRpY2FsLWdhcCw2cHgpIDA7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2tcclxuICAgIH1cclxuXHJcbiAgICAuc3dpcGVyLXBhZ2luYXRpb24tdmVydGljYWwuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMsIC5zd2lwZXItdmVydGljYWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMge1xyXG4gICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICAgICAgICB3aWR0aDogOHB4XHJcbiAgICB9XHJcblxyXG4gICAgICAgIC5zd2lwZXItcGFnaW5hdGlvbi12ZXJ0aWNhbC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LCAuc3dpcGVyLXZlcnRpY2FsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IC4ycyB0cmFuc2Zvcm0sLjJzIHRvcFxyXG4gICAgICAgIH1cclxuXHJcbi5zd2lwZXItaG9yaXpvbnRhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQsIC5zd2lwZXItcGFnaW5hdGlvbi1ob3Jpem9udGFsLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XHJcbiAgICBtYXJnaW46IDAgdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWhvcml6b250YWwtZ2FwLDRweClcclxufVxyXG5cclxuLnN3aXBlci1ob3Jpem9udGFsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljLCAuc3dpcGVyLXBhZ2luYXRpb24taG9yaXpvbnRhbC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyB7XHJcbiAgICBsZWZ0OiA1MCU7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XHJcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwXHJcbn1cclxuXHJcbiAgICAuc3dpcGVyLWhvcml6b250YWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCwgLnN3aXBlci1wYWdpbmF0aW9uLWhvcml6b250YWwuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogLjJzIHRyYW5zZm9ybSwuMnMgbGVmdFxyXG4gICAgfVxyXG5cclxuLnN3aXBlci1ob3Jpem9udGFsLnN3aXBlci1ydGwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xyXG4gICAgdHJhbnNpdGlvbjogLjJzIHRyYW5zZm9ybSwuMnMgcmlnaHRcclxufVxyXG5cclxuLnN3aXBlci1wYWdpbmF0aW9uLWZyYWN0aW9uIHtcclxuICAgIGNvbG9yOiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1mcmFjdGlvbi1jb2xvcixpbmhlcml0KVxyXG59XHJcblxyXG4uc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIge1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItYmctY29sb3IscmdiYSgwLDAsMCwuMjUpKTtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZVxyXG59XHJcblxyXG4gICAgLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyIC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1maWxsIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1jb2xvcix2YXIoLS1zd2lwZXItdGhlbWUtY29sb3IpKTtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCB0b3BcclxuICAgIH1cclxuXHJcbi5zd2lwZXItcnRsIC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2JhciAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItZmlsbCB7XHJcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCB0b3BcclxufVxyXG5cclxuLnN3aXBlci1ob3Jpem9udGFsID4gLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLCAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIuc3dpcGVyLXBhZ2luYXRpb24taG9yaXpvbnRhbCwgLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLnN3aXBlci1wYWdpbmF0aW9uLXZlcnRpY2FsLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLW9wcG9zaXRlLCAuc3dpcGVyLXZlcnRpY2FsID4gLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLW9wcG9zaXRlIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1zaXplLDRweCk7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgdG9wOiAwXHJcbn1cclxuXHJcbiAgICAuc3dpcGVyLWhvcml6b250YWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItb3Bwb3NpdGUsIC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci5zd2lwZXItcGFnaW5hdGlvbi1ob3Jpem9udGFsLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLW9wcG9zaXRlLCAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIuc3dpcGVyLXBhZ2luYXRpb24tdmVydGljYWwsIC5zd2lwZXItdmVydGljYWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIge1xyXG4gICAgICAgIHdpZHRoOiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1zaXplLDRweCk7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgdG9wOiAwXHJcbiAgICB9XHJcblxyXG4uc3dpcGVyLXBhZ2luYXRpb24tbG9jayB7XHJcbiAgICBkaXNwbGF5OiBub25lXHJcbn1cclxuXHJcbi5zd2lwZXItc2Nyb2xsYmFyIHtcclxuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXN3aXBlci1zY3JvbGxiYXItYm9yZGVyLXJhZGl1cywxMHB4KTtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHRvdWNoLWFjdGlvbjogbm9uZTtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLXN3aXBlci1zY3JvbGxiYXItYmctY29sb3IscmdiYSgwLDAsMCwuMSkpXHJcbn1cclxuXHJcbiAgICAuc3dpcGVyLXNjcm9sbGJhci1kaXNhYmxlZCA+IC5zd2lwZXItc2Nyb2xsYmFyLCAuc3dpcGVyLXNjcm9sbGJhci5zd2lwZXItc2Nyb2xsYmFyLWRpc2FibGVkIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnRcclxuICAgIH1cclxuXHJcbiAgICAuc3dpcGVyLWhvcml6b250YWwgPiAuc3dpcGVyLXNjcm9sbGJhciwgLnN3aXBlci1zY3JvbGxiYXIuc3dpcGVyLXNjcm9sbGJhci1ob3Jpem9udGFsIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgbGVmdDogdmFyKC0tc3dpcGVyLXNjcm9sbGJhci1zaWRlcy1vZmZzZXQsMSUpO1xyXG4gICAgICAgIGJvdHRvbTogdmFyKC0tc3dpcGVyLXNjcm9sbGJhci1ib3R0b20sNHB4KTtcclxuICAgICAgICB0b3A6IHZhcigtLXN3aXBlci1zY3JvbGxiYXItdG9wLGF1dG8pO1xyXG4gICAgICAgIHotaW5kZXg6IDUwO1xyXG4gICAgICAgIGhlaWdodDogdmFyKC0tc3dpcGVyLXNjcm9sbGJhci1zaXplLDRweCk7XHJcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDIgKiB2YXIoLS1zd2lwZXItc2Nyb2xsYmFyLXNpZGVzLW9mZnNldCwxJSkpXHJcbiAgICB9XHJcblxyXG4gICAgLnN3aXBlci1zY3JvbGxiYXIuc3dpcGVyLXNjcm9sbGJhci12ZXJ0aWNhbCwgLnN3aXBlci12ZXJ0aWNhbCA+IC5zd2lwZXItc2Nyb2xsYmFyIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgbGVmdDogdmFyKC0tc3dpcGVyLXNjcm9sbGJhci1sZWZ0LGF1dG8pO1xyXG4gICAgICAgIHJpZ2h0OiB2YXIoLS1zd2lwZXItc2Nyb2xsYmFyLXJpZ2h0LDRweCk7XHJcbiAgICAgICAgdG9wOiB2YXIoLS1zd2lwZXItc2Nyb2xsYmFyLXNpZGVzLW9mZnNldCwxJSk7XHJcbiAgICAgICAgei1pbmRleDogNTA7XHJcbiAgICAgICAgd2lkdGg6IHZhcigtLXN3aXBlci1zY3JvbGxiYXItc2l6ZSw0cHgpO1xyXG4gICAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMiAqIHZhcigtLXN3aXBlci1zY3JvbGxiYXItc2lkZXMtb2Zmc2V0LDElKSlcclxuICAgIH1cclxuXHJcbi5zd2lwZXItc2Nyb2xsYmFyLWRyYWcge1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zd2lwZXItc2Nyb2xsYmFyLWRyYWctYmctY29sb3IscmdiYSgwLDAsMCwuNSkpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tc3dpcGVyLXNjcm9sbGJhci1ib3JkZXItcmFkaXVzLDEwcHgpO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHRvcDogMFxyXG59XHJcblxyXG4uc3dpcGVyLXNjcm9sbGJhci1jdXJzb3ItZHJhZyB7XHJcbiAgICBjdXJzb3I6IG1vdmVcclxufVxyXG5cclxuLnN3aXBlci1zY3JvbGxiYXItbG9jayB7XHJcbiAgICBkaXNwbGF5OiBub25lXHJcbn1cclxuXHJcbi5zd2lwZXItem9vbS1jb250YWluZXIge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyXHJcbn1cclxuXHJcbiAgICAuc3dpcGVyLXpvb20tY29udGFpbmVyID4gY2FudmFzLCAuc3dpcGVyLXpvb20tY29udGFpbmVyID4gaW1nLCAuc3dpcGVyLXpvb20tY29udGFpbmVyID4gc3ZnIHtcclxuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgbWF4LWhlaWdodDogMTAwJTtcclxuICAgICAgICBvYmplY3QtZml0OiBjb250YWluXHJcbiAgICB9XHJcblxyXG4uc3dpcGVyLXNsaWRlLXpvb21lZCB7XHJcbiAgICBjdXJzb3I6IG1vdmU7XHJcbiAgICB0b3VjaC1hY3Rpb246IG5vbmVcclxufVxyXG5cclxuLnN3aXBlciAuc3dpcGVyLW5vdGlmaWNhdGlvbiB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgei1pbmRleDogLTEwMDBcclxufVxyXG5cclxuLnN3aXBlci1mcmVlLW1vZGUgPiAuc3dpcGVyLXdyYXBwZXIge1xyXG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xyXG4gICAgbWFyZ2luOiAwIGF1dG9cclxufVxyXG5cclxuLnN3aXBlci1ncmlkID4gLnN3aXBlci13cmFwcGVyIHtcclxuICAgIGZsZXgtd3JhcDogd3JhcFxyXG59XHJcblxyXG4uc3dpcGVyLWdyaWQtY29sdW1uID4gLnN3aXBlci13cmFwcGVyIHtcclxuICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW5cclxufVxyXG5cclxuLnN3aXBlci1mYWRlLnN3aXBlci1mcmVlLW1vZGUgLnN3aXBlci1zbGlkZSB7XHJcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXRcclxufVxyXG5cclxuLnN3aXBlci1mYWRlIC5zd2lwZXItc2xpZGUge1xyXG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5XHJcbn1cclxuXHJcbiAgICAuc3dpcGVyLWZhZGUgLnN3aXBlci1zbGlkZSAuc3dpcGVyLXNsaWRlIHtcclxuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZVxyXG4gICAgfVxyXG5cclxuLnN3aXBlci1mYWRlIC5zd2lwZXItc2xpZGUtYWN0aXZlIHtcclxuICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvXHJcbn1cclxuXHJcbiAgICAuc3dpcGVyLWZhZGUgLnN3aXBlci1zbGlkZS1hY3RpdmUgLnN3aXBlci1zbGlkZS1hY3RpdmUge1xyXG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvXHJcbiAgICB9XHJcblxyXG4uc3dpcGVyLnN3aXBlci1jdWJlIHtcclxuICAgIG92ZXJmbG93OiB2aXNpYmxlXHJcbn1cclxuXHJcbi5zd2lwZXItY3ViZSAuc3dpcGVyLXNsaWRlIHtcclxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICB6LWluZGV4OiAxO1xyXG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDEwMCVcclxufVxyXG5cclxuICAgIC5zd2lwZXItY3ViZSAuc3dpcGVyLXNsaWRlIC5zd2lwZXItc2xpZGUge1xyXG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lXHJcbiAgICB9XHJcblxyXG4uc3dpcGVyLWN1YmUuc3dpcGVyLXJ0bCAuc3dpcGVyLXNsaWRlIHtcclxuICAgIHRyYW5zZm9ybS1vcmlnaW46IDEwMCUgMFxyXG59XHJcblxyXG4uc3dpcGVyLWN1YmUgLnN3aXBlci1zbGlkZS1hY3RpdmUsIC5zd2lwZXItY3ViZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSB7XHJcbiAgICBwb2ludGVyLWV2ZW50czogYXV0b1xyXG59XHJcblxyXG4uc3dpcGVyLWN1YmUgLnN3aXBlci1zbGlkZS1hY3RpdmUsIC5zd2lwZXItY3ViZSAuc3dpcGVyLXNsaWRlLW5leHQsIC5zd2lwZXItY3ViZSAuc3dpcGVyLXNsaWRlLXByZXYge1xyXG4gICAgcG9pbnRlci1ldmVudHM6IGF1dG87XHJcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlXHJcbn1cclxuXHJcbi5zd2lwZXItY3ViZSAuc3dpcGVyLWN1YmUtc2hhZG93IHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICBib3R0b206IDBweDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgb3BhY2l0eTogLjY7XHJcbiAgICB6LWluZGV4OiAwXHJcbn1cclxuXHJcbiAgICAuc3dpcGVyLWN1YmUgLnN3aXBlci1jdWJlLXNoYWRvdzpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICMwMDA7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICByaWdodDogMDtcclxuICAgICAgICBmaWx0ZXI6IGJsdXIoNTBweClcclxuICAgIH1cclxuXHJcbi5zd2lwZXItY3ViZSAuc3dpcGVyLXNsaWRlLW5leHQgKyAuc3dpcGVyLXNsaWRlIHtcclxuICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xyXG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZVxyXG59XHJcblxyXG4uc3dpcGVyLWN1YmUgLnN3aXBlci1zbGlkZS1zaGFkb3ctY3ViZS5zd2lwZXItc2xpZGUtc2hhZG93LWJvdHRvbSwgLnN3aXBlci1jdWJlIC5zd2lwZXItc2xpZGUtc2hhZG93LWN1YmUuc3dpcGVyLXNsaWRlLXNoYWRvdy1sZWZ0LCAuc3dpcGVyLWN1YmUgLnN3aXBlci1zbGlkZS1zaGFkb3ctY3ViZS5zd2lwZXItc2xpZGUtc2hhZG93LXJpZ2h0LCAuc3dpcGVyLWN1YmUgLnN3aXBlci1zbGlkZS1zaGFkb3ctY3ViZS5zd2lwZXItc2xpZGUtc2hhZG93LXRvcCB7XHJcbiAgICB6LWluZGV4OiAwO1xyXG4gICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW5cclxufVxyXG5cclxuLnN3aXBlci5zd2lwZXItZmxpcCB7XHJcbiAgICBvdmVyZmxvdzogdmlzaWJsZVxyXG59XHJcblxyXG4uc3dpcGVyLWZsaXAgLnN3aXBlci1zbGlkZSB7XHJcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgei1pbmRleDogMVxyXG59XHJcblxyXG4gICAgLnN3aXBlci1mbGlwIC5zd2lwZXItc2xpZGUgLnN3aXBlci1zbGlkZSB7XHJcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmVcclxuICAgIH1cclxuXHJcbi5zd2lwZXItZmxpcCAuc3dpcGVyLXNsaWRlLWFjdGl2ZSwgLnN3aXBlci1mbGlwIC5zd2lwZXItc2xpZGUtYWN0aXZlIC5zd2lwZXItc2xpZGUtYWN0aXZlIHtcclxuICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvXHJcbn1cclxuXHJcbi5zd2lwZXItZmxpcCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1mbGlwLnN3aXBlci1zbGlkZS1zaGFkb3ctYm90dG9tLCAuc3dpcGVyLWZsaXAgLnN3aXBlci1zbGlkZS1zaGFkb3ctZmxpcC5zd2lwZXItc2xpZGUtc2hhZG93LWxlZnQsIC5zd2lwZXItZmxpcCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1mbGlwLnN3aXBlci1zbGlkZS1zaGFkb3ctcmlnaHQsIC5zd2lwZXItZmxpcCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1mbGlwLnN3aXBlci1zbGlkZS1zaGFkb3ctdG9wIHtcclxuICAgIHotaW5kZXg6IDA7XHJcbiAgICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlblxyXG59XHJcblxyXG4uc3dpcGVyLWNyZWF0aXZlIC5zd2lwZXItc2xpZGUge1xyXG4gICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLG9wYWNpdHksaGVpZ2h0XHJcbn1cclxuXHJcbi5zd2lwZXIuc3dpcGVyLWNhcmRzIHtcclxuICAgIG92ZXJmbG93OiB2aXNpYmxlXHJcbn1cclxuXHJcbi5zd2lwZXItY2FyZHMgLnN3aXBlci1zbGlkZSB7XHJcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tO1xyXG4gICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuXHJcbn1cclxuIiwi77u/QG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcbiAgICAud2lkdGgtbWQtMTAwIHtcclxuICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG59XHJcbiIsIiNhcHBlYWxzLWRhdGEge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XHJcblxyXG5cclxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY5cHgpIHtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICAvKmRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsqL1xyXG4gICAgfVxyXG5cclxuICAgIC5hcHBlYWxzLXRvdGFsaXNlciB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiA2MCU7XHJcblxyXG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY5cHgpIHtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiAzNSU7XHJcbiAgICAgICAgICAgIGFsaWduLXNlbGY6IHN0YXJ0O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmpzLWFwcGVhbHMtdG90YWwtcGNudCB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRsaWdodC1wdXJwbGU7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgaGVpZ2h0OiAwO1xyXG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogOTYlO1xyXG4gICAgICAgICAgICB3aWR0aDogOTYlO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgICAgICAgICBtYXJnaW46IDAlIDIlIDFlbTtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgICBmZm9udC1mYW1pbHk6ICRjYXRzLWhlYWRsaW5lO1xyXG5cclxuICAgICAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjlweCkge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDMwMHB4O1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAzMDBweDtcclxuICAgICAgICAgICAgICAgIC8qbWFyZ2luOiBhdXRvOyovXHJcbiAgICAgICAgICAgIH1cclxuXHJcblxyXG4gICAgICAgICAgICBzcGFuIHtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgICAgICAgICAgbGVmdDogNTAlO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwtNTAlKTtcclxuICAgICAgICAgICAgICAgIHotaW5kZXg6IDk5O1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAzZW07XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwLjVlbSAwLjM1ZW07XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkbGlnaHQtcHVycGxlO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJSAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgICAgICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY5cHgpIHtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDRlbTtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnJSc7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5qcy1hcHBlYWxzLXRvdGFsLXBjbnQtYmcge1xyXG4gICAgICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYnJhbmQtcGluaztcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICB0b3A6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICByaWdodDogMCU7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDUwMCU7XHJcblxyXG4gICAgICAgICAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjlweCkge1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAzMDBweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmpzLWFwcGVhbHMtdG90YWwtcmFpc2VkIHtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG5cclxuICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgY29udGVudDogJ1xcMDBBMyc7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogM2VtO1xyXG5cclxuICAgICAgICAgICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY5cHgpIHtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDRlbTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogM2VtO1xyXG5cclxuICAgICAgICAgICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY5cHgpIHtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDRlbTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuYXBwZWFscy1sYiB7XHJcbiAgICAgICAgbWluLXdpZHRoOiA5MCU7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cclxuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OXB4KSB7XHJcbiAgICAgICAgICAgIG1pbi13aWR0aDogNjAlO1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDYwJTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5hcHBlYWxzLWxiLWJyYW5jaCB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBncmV5O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cclxuICAgICAgICAgICAgLmFwcGVhbHMtbGItZGF0YSB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjVlbTtcclxuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblxyXG4gICAgICAgICAgICAgICAgLmFwcGVhbHMtbGItbmFtZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjRlbTtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMTVweDtcclxuICAgICAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJGNhdHMtaGVhZGxpbmU7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJyYW5kLXBpbms7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAuYXBwZWFscy1sYi1yb3cge1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgLmFwcGVhbHMtbGItcmFpc2VkIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjVlbTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIC5hcHBlYWxzLWxiLXN1cHBvcnRlcnMge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuanMtYXBwZWFscy10b3RhbC1wY250LWJyYW5jaCB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYnJhbmQtcGluaztcclxuICAgICAgICAgICAgICAgIHdpZHRoOiA1MHB4O1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA1MHB4O1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gICAgICAgICAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLC01MCUpO1xyXG4gICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDk5O1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyUnO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAuanMtYXBwZWFscy10b3RhbC1wY250LWJnLWJyYW5jaCB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGJyYW5kLXB1cnBsZTtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMzAwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAzMDBweDtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IGF1dG87XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwJTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuYWN0aXZlLWJyYW5jaCB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogMTBweDtcclxuICAgIH1cclxuXHJcbiAgICAuYXBwZWFscy1sZy1idG4ge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgLmFwcGVhbHMtbWQtc20tYnRuIHtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICB9XHJcblxyXG4gICAgLmFwcGVhbHMtdG90YWxpc2VyLWZpeCB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblxyXG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjAwcHgpIHtcclxuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmpzLWFwcGVhbHMtdG90YWwtcGNudC1maXgge1xyXG4gICAgICAgIG1heC13aWR0aDogMzAwcHg7XHJcbiAgICAgICAgbWF4LWhlaWdodDogMzAwcHg7XHJcbiAgICAgICAgaGVpZ2h0OiAzMDBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgIHdpZHRoOiAzMDBweDtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMCUgIWltcG9ydGFudDtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMWVtO1xyXG4gICAgfVxyXG5cclxuICAgIC5qcy1hcHBlYWxzLXRvdGFsLXBjbnQtYmcge1xyXG4gICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICRicmFuZC1wdXJwbGU7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiAxMDAlO1xyXG4gICAgICAgIHJpZ2h0OiAwJTtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcclxuICAgICAgICAuYXBwZWFscy1sZy1idG4ge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuYXBwZWFscy1tZC1zbS1idG4ge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCIvKipcclxuICogQ09NUE9ORU5UU1xyXG4gKiBCYXNrZXRcclxuICovXHJcblxyXG4kbmFtZTogYmFza2V0O1xyXG5cclxuLy8tLS0tLS0tLS0tXHJcbi8vIEJMT0NLXHJcbi8vLS0tLS0tLS0tLVxyXG4uI3skbmFtZX0ge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcblxyXG5cclxuLy8tLS0tLS0tLS0tXHJcbi8vIEVMRU1FTlRcclxuLy8tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfV9faXRlbSxcclxuLiN7JG5hbWV9X19zdW1tYXJ5IHtcclxuICAgIHBhZGRpbmc6IDIwcHg7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblxyXG4gICAgQGluY2x1ZGUgbWVkaWEtd2lkdGgoJG5hdmlnYXRpb24tYnJlYWtwb2ludCkge1xyXG4gICAgICAgIHBhZGRpbmc6IDIwcHggMTAwcHg7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgIH1cclxuXHJcbiAgICAubWVkaWEge1xyXG4gICAgICAgIG1pbi13aWR0aDogMjAwcHg7XHJcbiAgICAgICAgd2lkdGg6IGF1dG87XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLXdpZHRoKCRuYXZpZ2F0aW9uLWJyZWFrcG9pbnQpIHtcclxuICAgICAgICAgICAgd2lkdGg6IDIwMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBkaXYge1xyXG4gICAgICAgIHBhZGRpbmc6IDVweDtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtd2lkdGgoJG5hdmlnYXRpb24tYnJlYWtwb2ludCkge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwIDUlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBoMyB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gICAgICAgIGNvbG9yOiRicmFuZC1wdXJwbGU7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLXdpZHRoKCRuYXZpZ2F0aW9uLWJyZWFrcG9pbnQpIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi4jeyRuYW1lfV9faXRlbSB7XHJcbiAgICAmOm50aC1jaGlsZChvZGQpIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtcHVycGxlO1xyXG4gICAgfVxyXG5cclxuICAgICY6bnRoLWNoaWxkKGV2ZW4pIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcclxuICAgIH1cclxufVxyXG5cclxuXHJcblxyXG5Aa2V5ZnJhbWVzIEZMQVNIIHtcclxuICAgIDAlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgfVxyXG5cclxuICAgIDEwMCUge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ncmV5O1xyXG4gICAgfVxyXG59XHJcblxyXG4uI3skbmFtZX1fX3N1bW1hcnkge1xyXG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxuXHJcbiAgICBoMyB7XHJcbiAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICBtYXJnaW46IDAgMjBweDtcclxuICAgIH1cclxufVxyXG5cclxuXHJcbi8vLS0tLS0tLS0tLVxyXG4vLyBSRUxBVEVEXHJcbi8vLS0tLS0tLS0tLVxyXG5cclxuLmJhc2tldC1pdGVtcyB7XHJcbiAgICB0b3A6IDA7XHJcbn1cclxuXHJcbi5iYXNrZXQtaXRlbS12YWx1ZSB7XHJcbiAgICBmb250LWZhbWlseTogJGNhdHMtaGVhZGxpbmU7XHJcbiAgICBjb2xvcjokYnJhbmQtcHVycGxlO1xyXG4gICAgcGFkZGluZy1ib3R0b206OHB4O1xyXG4gICAgZm9udC1zaXplOiA1MHB4O1xyXG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYS13aWR0aCgkbmF2aWdhdGlvbi1icmVha3BvaW50KSB7XHJcbiAgICAgICAgZmxvYXQ6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgc3BhbiB7XHJcbiAgICAgICAgZm9udC1zaXplOiAzMyU7XHJcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgICAgICBwYWRkaW5nOiAwIDIwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLiN7JG5hbWV9X19zdW1tYXJ5ICYge1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgZm9udC1zaXplOiA3MHB4O1xyXG5cclxuICAgICAgICBzcGFuIHtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uYmFza2V0LWl0ZW0tYnRuIHtcclxuICAgIGZsb2F0OiByaWdodDtcclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYS13aWR0aCgkbmF2aWdhdGlvbi1icmVha3BvaW50KSB7XHJcbiAgICAgICAgZmxvYXQ6IG5vbmU7XHJcbiAgICB9XHJcbn1cclxuIiwiLyoqXHJcbiAqIENPTVBPTkVOVFNcclxuICogQmFza2V0IFRyYWNrZXJcclxuICovXHJcblxyXG4kbmFtZTogYmFza2V0LXRyYWNrZXI7XHJcblxyXG4vLy0tLS0tLS0tLS1cclxuLy8gQkxPQ0tcclxuLy8tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfXtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIG1hcmdpbi1yaWdodDogNDVweDtcclxuICAgICY6YmVmb3Jle1xyXG4gICAgICBAaW5jbHVkZSBiYXNrZXQtaWNvbjtcclxuICAgICAgICBmb250LXNpemU6IDQ1cHg7XHJcbiAgICAgICAgY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcbiAgICB9XHJcblxyXG4gICAgJjphZnRlcntcclxuICAgICAgICBjb250ZW50OiBcInBlbnMgYWRkZWRcIjtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOjUwJTtcclxuICAgICAgICBsZWZ0OiAxMDAlO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIEBleHRlbmQgJXRzLTM7XHJcbiAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNXB4O1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICAgICAgICBsaW5lLWhlaWdodDogMTtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDVweDtcclxuICAgIH1cclxufVxyXG5cclxuLmJhc2tldC10cmFja2VyLS1zcG9uc29ye1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAzMHB4O1xyXG4gICAgJjpiZWZvcmV7XHJcbiAgICAgICAgZm9udC1zaXplOiAzMHB4O1xyXG4gICAgfVxyXG5cclxuICAgICY6YWZ0ZXJ7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICAuYmFza2V0LXRyYWNrZXJfX3ZhbHVle1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDtcclxuICAgICAgICBwYWRkaW5nLXRvcDogLjRlbTtcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG5hdmlnYXRpb24tYnJlYWtwb2ludCl7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA0NXB4O1xyXG4gICAgICAgICY6YmVmb3Jle1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDQ1cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6YWZ0ZXJ7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIH1cclxuICAgICAgICAuYmFza2V0LXRyYWNrZXJfX3ZhbHVle1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDI0cHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAuMWVtO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG5cclxuLy8tLS0tLS0tLS0tXHJcbi8vIEVMRU1FTlRcclxuLy8tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfV9fdmFsdWV7XHJcbiAgICBmb250LXNpemU6IDI0cHg7XHJcbiAgICBwYWRkaW5nLXRvcDogLjFlbTtcclxuICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgQGV4dGVuZCAldHMtMTtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGNvbG9yOiAkYnJhbmQtYmxhY2s7XHJcbiAgICB0b3A6IDUwJTtcclxuICAgIGxlZnQ6IDUwJTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsLTUwJSk7XHJcbn1cclxuIiwiLyoqXHJcbiAqIENPTVBPTkVOVFNcclxuICogQkxPQ0tRVU9URVxyXG4gKi9cclxuXHJcbiRuYW1lOiBibG9ja3F1b3RlO1xyXG5cclxuLy8tLS0tLS0tLS0tXHJcbi8vIEJMT0NLXHJcbi8vLS0tLS0tLS0tLVxyXG4uI3skbmFtZX17XHJcbiAgICBAZXh0ZW5kICV0cy0zO1xyXG4gICAgQGV4dGVuZCAlYmctbGlnaHQtZ3JleTtcclxuICAgIHBhZGRpbmc6IDMwcHggNzBweCAyNXB4O1xyXG4gICAgY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcbiAgICAmOmJlZm9yZXtcclxuICAgICAgICBjb250ZW50OiAnXFwyMDFDJztcclxuICAgICAgICBAZXh0ZW5kICV0ZXh0LW9yYW5nZTtcclxuICAgICAgICBmb250LXNpemU6IDEzMHB4O1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICBtYXJnaW4tbGVmdDogLTU3cHg7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAwO1xyXG4gICAgfVxyXG5cclxuICAgICY6YWZ0ZXJ7XHJcbiAgICAgICAgY29udGVudDogJ1xcMjAxRCc7XHJcbiAgICAgICAgQGV4dGVuZCAldGV4dC1vcmFuZ2U7XHJcbiAgICAgICAgZm9udC1zaXplOiAxMDBweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMDtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtNTBweDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAtMjVweDtcclxuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIH1cclxufVxyXG5cclxuXHJcblxyXG4iLCIvKipcclxuICogQ09NUE9ORU5UU1xyXG4gKiBCVVRUT05TXHJcbiAqIGJ0biBidG4tLWNvbG9yIGJ0bi0taWNvbiBidG4tLW1vcmVcclxuICovXHJcblxyXG4vLyBUT0RPIC0gT1JERVIgQkVMT1cgSU5UTyBMT0dJQ0FMIFNURVBTLCBCQVNFIC0gREVDT1JBVElPTiAtIFRIRU1FIC8gQkxPQ0sgLSBFTEVNRU5UIC0gTU9ESUZJRVJcclxuXHJcbiRuYW1lOiBidG47XHJcblxyXG4vLy0tLS0tLS0tLS1cclxuLy8gQkxPQ0tcclxuLy8tLS0tLS0tLS0tXHJcblxyXG5AbWl4aW4gYnV0dG9uIHtcclxuICAgIC8vIERFRkFVTFQgQlVUVE9OIEJBU0UgQ09NUFxyXG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjVzO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgLy93aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgIG91dGxpbmU6IG5vbmU7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgcGFkZGluZzogMTBweCAyM3B4O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgLy8gREVGQVVMVCBCVVRUT04gVFlQRVNUWUxFXHJcbiAgICBAZXh0ZW5kICV0cy03O1xyXG4gICAgLy9saW5lLWhlaWdodDogMDtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIGJvcmRlci1yYWRpdXM6IDZweDtcclxuICAgIC8vIERFRkFVTFQgQlVUVE9OIFRIRU1FXHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgY29sb3I6ICR3aGl0ZTtcclxuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1wdXJwbGU7XHJcbiAgICAgICAgY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG4uI3skbmFtZX0ge1xyXG4gICAgQGluY2x1ZGUgYnV0dG9uO1xyXG4gICAgLy8gQ0VOVEVSIC0gSEVMUEVSXHJcbiAgICAmLmNlbnRlcixcclxuICAgICYtLWNlbnRlciB7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gICAgICAgIG1heC13aWR0aDogMjUwcHg7XHJcbiAgICB9XHJcbiAgICAvKlxyXG4gICAgLy8gQlROIFNUWUxFUyBXSElMRSBTSU1CSVRUSU5HXHJcbiAgICAvLyBVU0lORyBET1VCTEUgU0VMRUNUT1IgRk9SIEhJR0hFUiBTUEVDSUZJQ0lUWVxyXG4gICAgJi5pcy1zdWJtaXR0aW5nLmlzLXN1Ym1pdHRpbmd7XHJcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICAgICAgY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgLy8gSElERSBBUlJPV1NcclxuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgIC8vIFNFVCBCQUNLR1JPVU5EIFNUWUxFU1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1ibGFjaztcclxuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2Jhc2U2NC9TVkcvdGFpbC1zcGluLmdpZik7XHJcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XHJcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAzMHB4O1xyXG4gICAgfVxyXG5cclxuICAgICAqL1xyXG59XHJcblxyXG4uYmctZ3JleSAuYnRuLCAuYmctZ3JlZW4gLmJ0biB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XHJcbiAgICBjb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtcHVycGxlO1xyXG4gICAgICAgIGNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgfVxyXG59XHJcblxyXG4uYmctbGlnaHQtZ3JleSAuYnRuIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcbiAgICBjb2xvcjogJHdoaXRlO1xyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1waW5rO1xyXG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICB9XHJcblxyXG4gICAgJi5idG4tLXdoaXRlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcGluaztcclxuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi4jeyRuYW1lfS0td2hpdGUtYmxhY2sge1xyXG4gICAgQGluY2x1ZGUgYnV0dG9uO1xyXG4gICAgYmFja2dyb3VuZDogJHdoaXRlO1xyXG4gICAgY29sb3I6ICRibGFjayAhaW1wb3J0YW50O1xyXG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogJGxpZ2h0LXB1cnBsZTtcclxuICAgICAgICBjb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuICAgIH1cclxufVxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBNT0RJRklFUiAtIFNFQ09ORCBTVFlMRVxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfS0tc2Vjb25kYXJ5IHtcclxuICAgIEBpbmNsdWRlIGJ1dHRvbjtcclxuICAgIGJhY2tncm91bmQ6ICRicmFuZC1waW5rO1xyXG4gICAgY29sb3I6IHdoaXRlO1xyXG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogJGxpZ2h0LXB1cnBsZTtcclxuICAgICAgICBjb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuICAgIH1cclxufVxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIE1PRElGSUVSIC0gVEhJUkQgU1RZTEVcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4uI3skbmFtZX0tLXRoaXJkbHkge1xyXG4gICAgQGluY2x1ZGUgYnV0dG9uO1xyXG4gICAgYmFja2dyb3VuZDogJGxpZ2h0LXB1cnBsZTtcclxuICAgIGNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuICAgICAgICBjb2xvcjogd2hpdGU7XHJcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcbiAgICB9XHJcbn1cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBNT0RJRklFUiAtIFRISVJEIFNUWUxFXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLiN7JG5hbWV9LS1mb3VydGhseSB7XHJcbiAgICBAaW5jbHVkZSBidXR0b247XHJcbiAgICBiYWNrZ3JvdW5kOiAkd2hpdGUgIWltcG9ydGFudDtcclxuICAgIGNvbG9yOiAkYnJhbmQtcGluayAhaW1wb3J0YW50O1xyXG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LXB1cnBsZSAhaW1wb3J0YW50O1xyXG4gICAgICAgIGNvbG9yOiAkYnJhbmQtcGluayAhaW1wb3J0YW50O1xyXG4gICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG4gICAgfVxyXG59XHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIE1PRElGSUVSIC0gTEFSR0VcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLiN7JG5hbWV9LS1sZyB7XHJcbiAgICBmb250LXNpemU6IDI2cHg7XHJcbiAgICBwYWRkaW5nOiAxNnB4IDMwcHg7XHJcbn1cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gTU9ESUZJRVIgLSBTTUFMTFxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4uI3skbmFtZX0tLXNtIHtcclxuICAgIEBleHRlbmQgJXRzLTg7XHJcbiAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICBwYWRkaW5nOiA1cHggMTVweDtcclxufVxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBNT0RJRklFUiAtIFNFQVJDSFxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4uI3skbmFtZX0tLXNlYXJjaCB7XHJcbiAgICB3aWR0aDogNDBweDtcclxuICAgIG1pbi13aWR0aDogNDBweDtcclxuICAgIGhlaWdodDogNDBweDtcclxuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgY29sb3I6ICRicmFuZC1ibGFjaztcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgYm9yZGVyLXJhZGl1czogMnB4O1xyXG5cclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgICBAaW5jbHVkZSBzZWFyY2gtaWNvbjtcclxuICAgICAgICBmb250LXNpemU6IDQ0cHg7XHJcbiAgICAgICAgd2lkdGg6IDQwcHg7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcblxyXG4gICAgJjpob3ZlcixcclxuICAgIC5pcy1hY3RpdmUgJiB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG5cclxuXHJcbi5idG4tLWJsb2NrIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIE1PRElGSUVSIC0gVEhFTUVTXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIE1BUElORyBCRyBDT0xPVVIsIFRYVCBDT0xPVVQsIEhPVkVSIElOVkVSVCBUSEVNRSBUUlVFLydmYWxzZSc7XHJcbiRidG4tdGhlbWUtbWFwOiAoIHByaW1hcnk6ICgkYnJhbmQtcHVycGxlLCAkd2hpdGUsICdmYWxzZScpLCBvcmFuZ2U6ICgkYnJhbmQtcHVycGxlLCAkYnJhbmQtYmxhY2ssICdmYWxzZScpLCBibHVlOiAoJGJyYW5kLWJsdWUsICR3aGl0ZSwgJ2ZhbHNlJyksIGdyZWVuOiAoJGJyYW5kLWdyZWVuLCAkd2hpdGUsICdmYWxzZScpLCBkYXJrLWdyZWVuOiAoJGJyYW5kLWRhcmstZ3JlZW4sICR3aGl0ZSwgJ2ZhbHNlJyksIGJyaWdodC1ncmVlbjogKCRicmFuZC1icmlnaHQtZ3JlZW4sICR3aGl0ZSwgJ2ZhbHNlJyksIGxpZ2h0LWJsdWU6ICgkYnJhbmQtbGlnaHQtYmx1ZSwgJHdoaXRlLCAnZmFsc2UnKSwgeWVsbG93OiAoJGJyYW5kLXllbGxvdywgJGJyYW5kLWJsYWNrLCAnZmFsc2UnKSwgcmVkOiAoJGJyYW5kLXJlZCwgJHdoaXRlLCAnZmFsc2UnKSwgcHVycGxlOiAoJGJyYW5kLXB1cnBsZSwgJHdoaXRlLCAnZmFsc2UnKSwgZ3JleTogKCRicmFuZC1ibGFjaywgJHdoaXRlLCAnZmFsc2UnKSwgbWlkLWdyZXk6ICgkbGlnaHQtcHVycGxlLCAkd2hpdGUsICdmYWxzZScpLCBsaWdodC1ncmV5OiAoJGxpZ2h0LWdyZXksICRicmFuZC1ibGFjaywgJ2ZhbHNlJyksIGJsYWNrOiAoJGJsYWNrLCAkd2hpdGUsICdmYWxzZScpLCB3aGl0ZTogKCR3aGl0ZSwgJGJyYW5kLXB1cnBsZSwgJ2ZhbHNlJyksIHR3dDogKCR0d2l0dGVyLWJsdWUsICR3aGl0ZSwgJ2ZhbHNlJyksIGZiazogKCRmYWNlYm9vay1ibHVlLCAkd2hpdGUsICdmYWxzZScpLCB0d3QyOiAoJHdoaXRlLCAkYnJhbmQtYmxhY2ssICd0cnVlJyksIGZiazI6ICgkd2hpdGUsICcjMUEwMDZCJywgJ3RydWUnKSwgcGF5cGFsOiAoJGJyYW5kLXB1cnBsZSwgJHdoaXRlLCAnZmFsc2UnKSApOyBAZWFjaCAkYnRuLXRoZW1lLW5hbWUsICRidG4tdGhlbWUtdmFsdWUgaW4gJGJ0bi10aGVtZS1tYXAge1xyXG4gICAgLiN7JG5hbWV9LS0je1wiXCIgKyAkYnRuLXRoZW1lLW5hbWV9IHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAje250aCgkYnRuLXRoZW1lLXZhbHVlLCAxKX07XHJcbiAgICAgICAgY29sb3I6ICN7bnRoKCRidG4tdGhlbWUtdmFsdWUsIDIpfTtcclxuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuXHJcbiAgICAgICAgQGlmIG50aCgkYnRuLXRoZW1lLXZhbHVlLCAzKSA9PSAndHJ1ZScge1xyXG4gICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICN7bnRoKCRidG4tdGhlbWUtdmFsdWUsIDIpfTtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAje250aCgkYnRuLXRoZW1lLXZhbHVlLCAxKX07XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4vKiBGaXggUHJpbWFyeSAqL1xyXG4uYnRuLS1wcmltYXJ5OmhvdmVyIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6JHdoaXRlO1xyXG4gICAgY29sb3I6JGJyYW5kLXBpbms7XHJcbn1cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBNT0RJRklFUiAtIFRBQlMgVEhFTUVcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4uI3skbmFtZX0tLXRhYnMge1xyXG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgIHBhZGRpbmc6IDI2cHggMzBweDtcclxuXHJcbiAgICAmLmlzLWFjdGl2ZSxcclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICBjb2xvcjogJGJyYW5kLWJsYWNrO1xyXG4gICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG4gICAgfVxyXG59XHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gTU9ESUZJRVIgLSBFRElUIENBVFxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfS0tZWRpdC1jYXQge1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xyXG59XHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gTU9ESUZJRVIgLSBNT1JFXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLiN7JG5hbWV9LS1tb3JlIHtcclxuXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgICBAaW5jbHVkZSBwbHVzLWljb247XHJcbiAgICAgICAgZm9udC1zaXplOiAyNHB4O1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg1MCUpO1xyXG4gICAgfVxyXG5cclxuICAgICYuaXMtYWN0aXZlOmFmdGVyIHtcclxuICAgICAgICBAaW5jbHVkZSBtaW51cy1pY29uO1xyXG4gICAgfVxyXG5cclxuICAgICZbY2xhc3MqPVwiLS1sZ1wiXTphZnRlciB7XHJcbiAgICAgICAgZm9udC1zaXplOiAzMHB4O1xyXG4gICAgfVxyXG5cclxuICAgICZbY2xhc3MqPVwiLS1zbVwiXTphZnRlciB7XHJcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgfVxyXG59XHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gTU9ESUZJRVIgLSBDT1ZFUlxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfS0tY292ZXIge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG59XHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBNT0RJRklFUiAtIEhBUyBMT0dPXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4kbG9nby1tYXA6ICggZmJrOiBmYmssIHR3dDogdHd0LCBmYmsyOiBmYmssIHR3dDI6IHR3dCwgbWFpbDogbWFpbCwgcGhvbmU6IHBob25lLCBwYXlwYWw6IHBheXBhbCApO1xyXG5cclxuQGVhY2ggJGxvZ28tbmFtZSwgJGxvZ28tdmFsdWUgaW4gJGxvZ28tbWFwIHtcclxuICAgIC4jeyRuYW1lfS0tI3skbG9nby1uYW1lfSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IDQ0cHg7XHJcblxyXG4gICAgICAgIEBpZiAkbG9nby1uYW1lID09ICdwYXlwYWwnIHtcclxuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBpY29uKCRsb2dvLXZhbHVlKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0zNSUpO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDM2cHg7XHJcblxyXG4gICAgICAgICAgICBAaWYgJGxvZ28tbmFtZSA9PSAncGF5cGFsJyB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDI4cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLy8tLS0tLS0tLS0tXHJcbi8vIFJFTEFURURcclxuLy8tLS0tLS0tLS0tXHJcbltkYXRhLXJldmVhbF0sXHJcbltkYXRhLXRvZ2dsZV0ge1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG59XHJcbi8vLS0tLS0tLS0tLS0tLVxyXG4vLyBTVEFUIEJUTlxyXG4vLy0tLS0tLS0tLS0tLS1cclxuLy8gVE9ET1xyXG4vLyBTUE9OU09SIFBPUlRBTFxyXG4vLyBUSEVTRSBBUkUgTk9XIE5PVCBCVVRUT05TIFNPIFRISVMgU1RZTElORyBDQU4gQkUgTU9WRUQgVE8gT1dOIENPTVBPTkVOVC5cclxuLypcclxuYnV0dG9uW2RhdGEtc3RhdF17XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIEBleHRlbmQgJXRzLTg7XHJcbiAgICBjb2xvcjogJGJyYW5kLWJsYWNrO1xyXG4gICAgbWF4LXdpZHRoOiAxODBweDtcclxuICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICBsaW5lLWhlaWdodDogMjBweDtcclxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG5cclxuICAgIHNwYW57XHJcbiAgICAgICAgd2lkdGg6IDQwcHg7XHJcbiAgICAgICAgbWluLXdpZHRoOiA0MHB4O1xyXG4gICAgICAgIGhlaWdodDogNDBweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogNDBweDtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgY29sb3I6IHdoaXRlO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1yZWQ7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcclxuICAgIH1cclxuXHJcbiAgICAmOmhvdmVye1xyXG4gICAgICAgIHNwYW57XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiovXHJcbi8vLS0tLS0tLS0tLS0tLVxyXG4vLyBUT0dHTEUgUEVOU1xyXG4vLy0tLS0tLS0tLS0tLS1cclxuLy8gVmlldyB5b3VyIHByZXZpb3VzIHNwb25zb3IgY2F0c1xyXG4vLyBidG4gb24gc3BvbnNvcnMgcG9ydGFsLlxyXG4vLyBUb2dnbGUgYnRuIGxhYmVsLlxyXG5idXR0b25bZGF0YS10b2dnbGU9XCJwcmV2aW91cy1ndWVzdHNcIl0ge1xyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6ICdWaWV3IHlvdXIgcHJldmlvdXMgc3BvbnNvciBjYXRzJztcclxuICAgIH1cclxuXHJcbiAgICAmLmlzLWFjdGl2ZSB7XHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICBjb250ZW50OiAnQ2xvc2UnO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIE1PRElGSUVSIC0gQ1JPUFBFUlxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfVtjbGFzcyo9XCItLWNyb3BcIl0ge1xyXG4gICAgZm9udC1zaXplOiAyMnB4O1xyXG4gICAgcGFkZGluZzogNHB4IDRweDtcclxufVxyXG5cclxuLiN7JG5hbWV9LS1jcm9wLXJvdGF0ZSB7XHJcbiAgICBmb250LXNpemU6IDIwcHhcclxufVxyXG5cclxuLiN7JG5hbWV9LS1jcm9wLWluOmJlZm9yZSB7XHJcbiAgICBAaW5jbHVkZSBwbHVzLWljb247XHJcbn1cclxuXHJcbi4jeyRuYW1lfS0tY3JvcC1vdXQ6YmVmb3JlIHtcclxuICAgIEBpbmNsdWRlIG1pbnVzLWljb247XHJcbn1cclxuXHJcbi4jeyRuYW1lfS0tY3JvcC1yb3RhdGU6YmVmb3JlIHtcclxuICAgIEBpbmNsdWRlIHJvdGF0ZS1pY29uO1xyXG4gICAgZm9udC1zaXplOiAyMnB4XHJcbn1cclxuXHJcbi4jeyRuYW1lfS0tY3JvcC1sZWZ0OmJlZm9yZSB7XHJcbiAgICBAaW5jbHVkZSBhcnJvdy1sZWZ0LWljb247XHJcbn1cclxuXHJcbi4jeyRuYW1lfS0tY3JvcC1yaWdodDpiZWZvcmUge1xyXG4gICAgQGluY2x1ZGUgYXJyb3ctcmlnaHQtaWNvbjtcclxufVxyXG5cclxuLiN7JG5hbWV9LS1jcm9wLXVwOmJlZm9yZSB7XHJcbiAgICBAaW5jbHVkZSBhcnJvdy1sZWZ0LWljb247XHJcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XHJcbn1cclxuXHJcbi4jeyRuYW1lfS0tY3JvcC1kb3duOmJlZm9yZSB7XHJcbiAgICBAaW5jbHVkZSBhcnJvdy1sZWZ0LWljb247XHJcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xyXG59XHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBNT0RJRklFUiAtIE5FWFQvUFJFVlxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLiN7JG5hbWV9LS1uZXh0LFxyXG4uI3skbmFtZX0tLXByZXYge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG4uI3skbmFtZX0tLW5leHQge1xyXG4gICAgcGFkZGluZy1yaWdodDogMTBweDtcclxuICAgIHdpZHRoOiAxNDRweDtcclxuXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgICBAaW5jbHVkZSBhcnJvdy1yaWdodC1pY29uO1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4uI3skbmFtZX0tLXByZXYge1xyXG4gICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xyXG5cclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgICBAaW5jbHVkZSBhcnJvdy1sZWZ0LWljb247XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xyXG4gICAgfVxyXG59XHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBNT0RJRklFUiAtIFJJR0hUXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4uI3skbmFtZX0tLXJpZ2h0IHtcclxuICAgIGZsb2F0OiByaWdodDtcclxufVxyXG4vLy0tLS0tLS0tLVxyXG4vLyBSRUxBVEVEXHJcbi8vLS0tLS0tLS0tXHJcbi8vIFJURSBTVVBQT1JUIEZPUiBORVNUSU5HXHJcbi4jeyRuYW1lfSB7XHJcbiAgICBhIHtcclxuICAgICAgICBjb2xvcjogaW5oZXJpdCAhaW1wb3J0YW50O1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogaW5oZXJpdCAhaW1wb3J0YW50O1xyXG4gICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcclxuICAgIH1cclxuXHJcbiAgICAmW3N0eWxlKj1cInRleHQtYWxpZ246IHJpZ2h0O1wiXSB7XHJcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgfVxyXG59XHJcblxyXG5wIHtcclxuICAgIC4jeyRuYW1lfSB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLiN7JG5hbWV9LS1mdWxsLXdpZHRoIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbn1cclxuXHJcblxyXG4uI3skbmFtZX0tLW1vYmlsZS1zZWFyY2gge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICBjb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuICAgIHBhZGRpbmc6IDVweDtcclxuXHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAzNXB4O1xyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLiN7JG5hbWV9LS1jbG9zZSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgIGNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgd2lkdGg6IDQ0cHg7XHJcbiAgICBoZWlnaHQ6IDQ0cHg7XHJcbiAgICBmb250LXNpemU6IDM1cHg7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG5cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIEBpbmNsdWRlIGNsb3NlLWljb247XHJcbiAgICB9XHJcblxyXG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgY29sb3I6IGluaGVyaXQ7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG4uYnRuLS1sb25nIHtcclxuICAgIHBhZGRpbmc6IDIwcHggNTBweDtcclxufVxyXG4iLCIvKipcclxuICogQ09NUE9ORU5UU1xyXG4gKiBDQVQgQ09NTVVOSVRZXHJcbiAqIFNlXHJcbiAqL1xyXG5cclxuJG5hbWU6IGNhdC1jb21tdW5pdHk7XHJcblxyXG5cclxuLmNhdHMtY29tbXVuaXR5LWNvbnRhaW5lcntcclxuICAgIG1heC13aWR0aDogNDYwcHg7XHJcbiAgICBtYXJnaW46IDAgYXV0bztcclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKXtcclxuICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgfVxyXG59XHJcblxyXG4vLy0tLS0tLS0tXHJcbi8vIEJMT0NLXHJcbi8vLS0tLS0tLS1cclxuLiN7JG5hbWV9e1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWdyZXk7XHJcbiAgICBAZXh0ZW5kICVwZC1ibS1sZztcclxufVxyXG5cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBFTEVNRU5UIC0gSEVBREVSXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4uI3skbmFtZX1fX2hlYWRlciB7XHJcbiAgICBAZXh0ZW5kICVwZC12dC1tZDtcclxuXHJcblxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgfVxyXG5cclxuICAgIHBhZGRpbmctdG9wOiAxMHB4O1xyXG4gICAgcGFkZGluZy1ib3R0b206IDEwcHg7XHJcblxyXG5cclxuICAgIGJ1dHRvbixcclxuICAgIC5saW5rIHtcclxuICAgICAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgIGJ1dHRvbiB7XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgICAgICAgICAvLyAgICAgbWFyZ2luOiAwIDIwcHggMCAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAubGluayB7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6ICRjYXRzO1xyXG4gICAgICAgIGNvbG9yOiAkYnJhbmQtYmxhY2s7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIG1hcmdpbjogMCAwIDEwcHg7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCAyMHB4IDAgMDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6Zmlyc3Qtb2YtdHlwZSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcclxuICAgICAgICAgICAgICAgIC8vIG1hcmdpbjogMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcblxyXG4gICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgJi5pcy1hY3RpdmUge1xyXG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLWJsYWNrO1xyXG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgICBib3R0b206IDRweDtcclxuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLmlzLWFjdGl2ZSB7XHJcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkY2F0cy1tZWQ7XHJcbiAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJiArIC5saW5rIHtcclxuICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogLTEwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMjBweDtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtYmxhY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLmNhdC1jb21tdW5pdHlfX2xpbmtze1xyXG5cclxufVxyXG5cclxuLmNhdHMtY29tbXVuaXR5LWhlYWRpbmd7XHJcbiAgICBtYXJnaW46IDAgMCAyMHB4O1xyXG59XHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIEVMRU1FTlQgLSBDQVRTXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS1cclxuLiN7JG5hbWV9X19jYXRze1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XHJcbiAgICBAZXh0ZW5kICVwZC12dC1sZztcclxufVxyXG4iLCIvKipcclxuICogQ09NUE9ORU5UU1xyXG4gKiBDb21tZW50c1xyXG4gKiBUaGVzZSBzdHlsZXMgaGFuZGxlIHRoZSBjb21tZW50cyBzZWN0aW9uIGZvdW5kIGluIHRoZSBzcG9uc29yc2hpcCB0ZW1wbGF0ZXMuXHJcbiAqL1xyXG5cclxuJG5hbWU6IGNvbW1lbnRzO1xyXG5cclxuXHJcbi8vLS0tLS0tLS1cclxuLy8gQkxPQ0tcclxuLy8tLS0tLS0tLVxyXG4uI3skbmFtZX17XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47XHJcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG5cclxuICAgIC8qXHJcbiAgICAubWVkaWEgJntcclxuICAgICAgICAmOmFmdGVye1xyXG4gICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIGhlaWdodDogNzVweDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgICovXHJcbn1cclxuXHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS1cclxuLy8gRUxFTUVOVCBIRUFERVJcclxuLy8tLS0tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfV9faGVhZGVyIHtcclxuXHJcbiAgICAubWVkaWEgJiB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAgbWFyZ2luOiAwIDAgMWVtO1xyXG5cclxuICAgICAgICBoMyB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcblxyXG4gICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDUwcHg7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDUwcHg7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvYmFzZTY0L1NWRy9nYWxsZXJ5LWljb24teWVsbG93LnN2Zyk7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBiYWNrZ3JvdW5kKGNvbnRhaW4pO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBoMiB7XHJcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkY2F0cy1ib2xkO1xyXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogNnB4XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBoNCB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgICAgICAgICBmb250LWZhbWlseTogJGNhdHMtbWVkO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnVzZXItaWNvbiB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHVzZXItaWNvbig2MHB4KTtcclxuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgID4gZGl2Om50aC1jaGlsZCgxKSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiA2MCU7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICA+IGRpdjpudGgtY2hpbGQoMikge1xyXG4gICAgICAgICAgICB3aWR0aDogNDAlO1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmNvbW1lbnRzLS1wYWdlICYge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDIwcHg7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRsaWdodC1ncmV5O1xyXG5cclxuICAgICAgICBidXR0b24sXHJcbiAgICAgICAgLmxpbmsge1xyXG4gICAgICAgICAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMjBweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5saW5rIHtcclxuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRjYXRzO1xyXG4gICAgICAgICAgICBjb2xvcjogJGJyYW5kLWJsYWNrO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkY2F0cztcclxuICAgICAgICAgICAgY29sb3I6ICRicmFuZC1ibGFjaztcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcblxyXG4gICAgICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICAgICAmLmlzLWFjdGl2ZSB7XHJcbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDFweDtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtYmxhY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogNHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICYuaXMtYWN0aXZlIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkY2F0cy1tZWQ7XHJcbiAgICAgICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJiArIC5saW5rIHtcclxuXHJcbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDFweDtcclxuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAtMTBweDtcclxuICAgICAgICAgICAgICAgICAgICB0b3A6IDEwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAyMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1ibGFjaztcclxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBFTEVNRU5UIEZFRURcclxuLy8tLS0tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfV9fZmVlZHtcclxuICAgIC5tZWRpYSAme1xyXG4gICAgICAgIHBhZGRpbmc6IDIwcHggMCA1MHB4O1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICBtYXgtaGVpZ2h0OiA0MDBweDtcclxuICAgICAgICAvL2JvcmRlci10b3A6IDFweCBzb2xpZCAkbGlnaHQtZ3JleTtcclxuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gICAgICAgIG92ZXJmbG93OiBhdXRvO1xyXG4gICAgICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmNvbW1lbnRzLS1wYWdlICZ7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcclxuICAgICAgICBjbGVhcjogYm90aDtcclxuXHJcblxyXG4gICAgICAgIC5idG57XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDtcclxuICAgICAgICB9XHJcblxyXG4gICAgfVxyXG5cclxuICAgIHVse1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6MDtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICBwYWRkaW5nOiAwIDEwcHggMCAwO1xyXG4gICAgfVxyXG59XHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gRUxFTUVOVCBDT01NRU5UIEJPWFxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLiN7JG5hbWV9X19pbnB1dHtcclxuICAgIGJvcmRlcjogbm9uZTtcclxuICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDA7XHJcbiAgICBwYWRkaW5nLXRvcDogMTVweDtcclxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkbGlnaHQtZ3JleTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4uY29tbWVudHNfX2lucHV0LXdyYXBwZXJ7XHJcblxyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgei1pbmRleDogMjAwO1xyXG4gICAgbGVmdDogMjBweDtcclxuICAgIHJpZ2h0OiAyMHB4O1xyXG4gICAgYm90dG9tOiAyMHB4O1xyXG59XHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS1cclxuLy8gRUxFTUVOVCBIRUxQRVJcclxuLy8tLS0tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfV9faGVscGVye1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLWJsYWNrO1xyXG4gICAgY29sb3I6IHdoaXRlO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgcGFkZGluZzogMjBweDtcclxuICAgIGJvdHRvbTogNTBweDtcclxuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDI1MG1zO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpO1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgei1pbmRleDogMzAwO1xyXG59XHJcblxyXG4uI3skbmFtZX1fX2lucHV0OmZvY3VzICsgLiN7JG5hbWV9X19oZWxwZXJ7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIHBvaW50ZXItZXZlbnRzOiBhbGw7XHJcbn1cclxuXHJcblxyXG4vLy0tLS0tLS0tLS0tXHJcbi8vIE1PRElGSUVSXHJcbi8vLS0tLS0tLS0tLS1cclxuLiN7JG5hbWV9LS1tb2RpZmllcnt9XHJcblxyXG4uI3skbmFtZX1fX2VsZW1lbnQtLW1vZGlmaWVye31cclxuXHJcblxyXG4vLy0tLS0tLS0tLS0tXHJcbi8vIFJFTEFURURcclxuLy8tLS0tLS0tLS0tLVxyXG4uY29tbWVudHtcclxuICAgIC8qXHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgIHBhZGRpbmctbGVmdDogNDVweDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIG1hcmdpbi1ib3R0b206IDEycHg7XHJcbiAgICAgKi9cclxuXHJcbiAgICAuY29tbWVudF9faGVhZHNob3R7XHJcbiAgICAgICAgQGluY2x1ZGUgdXNlci1pY29uKDM1cHgpO1xyXG4gICAgICAgIC8vcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIC8vbGVmdDogMDtcclxuICAgICAgICAvL3RvcDogMDtcclxuICAgICAgICBAaW5jbHVkZSBiYWNrZ3JvdW5kKGNvdmVyKTtcclxuICAgIH1cclxuXHJcbiAgICAuY29tbWVudF9fbmFtZXtcclxuICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICBmb250LWZhbWlseTogJGNhdHMtYm9sZDtcclxuICAgICAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogM3B4O1xyXG4gICAgfVxyXG5cclxuICAgIC5jb21tZW50X19kYXRle1xyXG4gICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgfVxyXG5cclxuICAgIC5jb21tZW50cy0tcGFnZSAme1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMTAwcHg7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxuICAgICAgICBmb250LWZhbWlseTogJGNhdHMtbWVkO1xyXG5cclxuICAgICAgICBwe1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDE5cHg7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkYnJhbmQtYmxhY2s7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuODtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5jb21tZW50X19oZWFkc2hvdHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgdXNlci1pY29uKDYwcHgpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmNvbW1lbnRfX2RhdGV7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgICAgICAgICBmb250LWZhbWlseTogJGNhdHMtbWVkO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuY29tbWVudF9fbmFtZXtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA3cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5jb21tZW50cy0tbm8taGVhZHNob3QgJntcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jb21tZW50e1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjFmMTtcclxuICAgIHBhZGRpbmc6IDFlbTtcclxuICAgIG1hcmdpbjogMCAwIDFlbTtcclxuICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDAuNGVtO1xyXG59XHJcblxyXG4uY29tbWVudF9faGVhZGVye1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIG1hcmdpbjogMCAwIDAuNWVtO1xyXG59XHJcblxyXG4uY29tbWVudF9fY29weXtcclxuICAgIGZvbnQtc2l6ZTogMTJweDtcclxufVxyXG5cclxuLmNvbW1lbnRfX2RhdGV7XHJcbiAgICBmb250LXNpemU6IDEycHg7XHJcbn1cclxuIiwiLyoqXHJcbiAqIENPTVBPTkVOVFNcclxuICogQ09VTlRFUlxyXG4gKiBUaGVzZSBjb21wb25lbnRzIGFyZSB1c2VkIHRvIGtlZXAgdHJhY2sgb2YgY29tbWVudCBhbmQgbGlrZSBjb3VudHMgaW4gdGhlIENhdCBDb21tdW5pdHkgU2VjdGlvbnMuXHJcbiAqL1xyXG5cclxuJG5hbWU6IGNvdW50ZXI7XHJcblxyXG4vLy0tLS0tLS0tXHJcbi8vIEJMT0NLXHJcbi8vLS0tLS0tLS1cclxuLiN7JG5hbWV9e1xyXG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICB3aWR0aDogYXV0bztcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG4gICAgZm9udC1mYW1pbHk6ICRjYXRzLWJvbGQ7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAycHg7XHJcbiAgICBjb2xvcjogJGJyYW5kLWJsYWNrO1xyXG5cclxuICAgICY6YmVmb3Jle1xyXG4gICAgICAgIHdpZHRoOiAzMHB4O1xyXG4gICAgICAgIGhlaWdodDogMzBweDtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcclxuICAgICAgICBmb250LXNpemU6IDI1cHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDMwcHg7XHJcbiAgICAgICAgY29sb3I6ICRsaWdodC1ncmV5O1xyXG4gICAgfVxyXG5cclxuICAgIGgzICZ7XHJcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgICAgIGZsb2F0OiByaWdodDtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcclxuICAgIH1cclxufVxyXG5cclxuLy8tLS0tLS0tLS0tLVxyXG4vLyBNT0RJRklFUlxyXG4vLy0tLS0tLS0tLS0tXHJcblxyXG5idXR0b24uI3skbmFtZX17XHJcbiAgICBvdXRsaW5lOiBub25lO1xyXG5cclxuICAgICYuaXMtYWN0aXZle1xyXG4gICAgICAgICY6YmVmb3Jle1xyXG4gICAgICAgICAgICBjb2xvcjogJGJyYW5kLXJlZFxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy8gT3B0aW5nIHRvIGp1c3Qgc2NhbGUgdGhlIGNvbXBvbmVudCB1cFxyXG4vLyBmb3Igbm93IGFuZCBub3QgcmVzZXQgc3R5bGVzLlxyXG4uI3skbmFtZX0tLWxhcmdle1xyXG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjIpO1xyXG5cclxuICAgIC8vIFdoZW4gcGFpcmVkLCBhbGxvdyBmb3Igc29tZSBicmVhdGhpbmcgcm9vbS5cclxuICAgIC8vIENvbnRleHQ6IFNwb25zb3JzaGlwIHBvcnRhbCwgbWFpbiBwZW4gQ2FyZC5cclxuICAgICYgKyAuI3skbmFtZX0tLWxhcmdlLFxyXG4gICAgJiArIGZvcm0gLiN7JG5hbWV9LS1sYXJnZXtcclxuICAgICAgICBtYXJnaW4tbGVmdDogMjRweDtcclxuICAgICAgICAvLyBtYXJnaW4tdG9wOiA1cHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi4jeyRuYW1lfS0tbGlrZXtcclxuXHJcbiAgICAmW2RhdGEtbGlrZT1cInRydWVcIl17XHJcbiAgICAgICAgJjpiZWZvcmV7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkYnJhbmQtcmVkO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvLyBNaXhpbiB0aGUgbGlrZSBpY29uXHJcbiAgICAmOmJlZm9yZXtcclxuICAgICAgICBAaW5jbHVkZSBsaWtlLWljb247XHJcbiAgICAgICAgLy8gcGFkZGluZy10b3A6IDJweDtcclxuICAgIH1cclxufVxyXG5cclxuLiN7JG5hbWV9LS1jb21tZW50czpiZWZvcmV7IFxyXG4gICAgQGluY2x1ZGUgY29tbWVudC1pY29uO1xyXG4gICAgZm9udC1zaXplOiAzNHB4O1xyXG4gICAgcGFkZGluZy1yaWdodDogNHB4O1xyXG59XHJcblxyXG5cclxuLmNvdW50ZXItc3VtbWFyeXtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHJpZ2h0OiAzdnc7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjIpO1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xyXG5cclxuICAgIC4jeyRuYW1lfXtcclxuICAgICAgICBjb2xvcjogd2hpdGU7XHJcbiAgICAgICAgXHJcbiAgICAgICAgJjpiZWZvcmV7XHJcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0iLCIvKipcclxuICogQ09NUE9ORU5UU1xyXG4gKiBDQVJEXHJcbiAqIFxyXG4gKi9cclxuXHJcbiRuYW1lOiBjYXJkO1xyXG5cclxuLy8tLS0tLS0tLVxyXG4vLyBCTE9DS1xyXG4vLy0tLS0tLS0tXHJcbi4jeyRuYW1lfXtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgcGFkZGluZzogMjBweCAxNXB4O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgJGxpZ2h0LWdyZXk7XHJcblxyXG4gICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0tYW5kLXVwKXtcclxuICAgICAgICBwYWRkaW5nOiAzMHB4O1xyXG4gICAgfSBcclxufVxyXG5cclxuYS4jeyRuYW1lfS4jeyRuYW1lfS4jeyRuYW1lfS4jeyRuYW1lfSB7XHJcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtZ3JlZW47XHJcbiAgICAgICAgY29sb3I6IHdoaXRlO1xyXG4gICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLy8tLS0tLS0tLVxyXG4vLyBNT0RJRklFUlxyXG4vLy0tLS0tLS0tXHJcbi4jeyRuYW1lfS0tYnRue1xyXG4gICAgcGFkZGluZy1ib3R0b206IDcwcHg7XHJcblxyXG4gICAgLmJ0bntcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgYm90dG9tOiAzMHB4O1xyXG4gICAgfVxyXG5cclxufSIsIi8qKlxyXG4gKiBDT01QT05FTlRTXHJcbiAqIENvb2tpZXNcclxuICogVGhpcyBpcyBhbiBleGFtcGxlIG9mIGEgY29tcG9uZW50IHBhcnRpYWxcclxuICovXHJcblxyXG4kbmFtZTogY29va2llcztcclxuXHJcbi4jeyRuYW1lfXtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgIHotaW5kZXg6IDEwMDtcclxuICAgIHBhZGRpbmc6IDIwcHg7XHJcbiAgICB0b3A6IC0zMDBweDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xyXG4gICAgQGluY2x1ZGUgYW5pbWF0ZSh0b3AgNTAwbXMgNTAwbXMpO1xyXG5cclxuICAgIC5vcGVuLW5vdGlmaWNhdGlvbnMgJntcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICB9XHJcbn1cclxuXHJcbi4jeyRuYW1lfV9fbWVzc2FnZXtcclxuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbn1cclxuXHJcblxyXG4vL0JSRUFLUE9JTlRTXHJcbkBpbmNsdWRlIHJlc3BvbmQtdG8obWVkaXVtLWFuZC11cCl7XHJcbiAgICAuI3skbmFtZX17XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcclxuICAgIH1cclxuXHJcbiAgICAuI3skbmFtZX1fX21lc3NhZ2V7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgIH1cclxufVxyXG4iLCIvKipcclxuICogQ09NUE9ORU5UU1xyXG4gKiBDUk9QIFdJTkRPV1xyXG4gKiBUaGlzIGlzIHRoZSBzdWIgcG9wdXAgZm9yIG1hbmFnaW5nIGltYWdlIGNyb3BzIGJlZm9yZSB1cGxvYWQuXHJcbiAqL1xyXG5cclxuJG5hbWU6IGNyb3Atd2luZG93O1xyXG5cclxuXHJcbiNjcm9wLW1leyBtYXgtd2lkdGg6IDEwMCU7fVxyXG5cclxuLy8tLS0tLS0tLVxyXG4vLyBCTE9DS1xyXG4vLy0tLS0tLS0tXHJcbi4jeyRuYW1lfXtcclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIGJhY2tncm91bmQ6IHJnYmEoJGJyYW5kLWJsdWUsIDAuOSk7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG5cclxuICAgICYuaXMtYWN0aXZle1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IGFsbDtcclxuICAgIH1cclxufVxyXG5cclxuLy8tLS0tLS0tLS0tLVxyXG4vLyBFTEVNRU5UXHJcbi8vLS0tLS0tLS0tLS1cclxuLiN7JG5hbWV9X19pbm5lcntcclxuICAgIHBhZGRpbmc6IDIwcHg7XHJcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcclxuICAgIGJveC1zaGFkb3c6IDAgMCAyMHB4IDVweCByZ2JhKCRibGFjaywgMC4yKTtcclxuICAgIG1heC13aWR0aDogNDQwcHg7XHJcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgIG1hcmdpbi1yaWdodDogYXV0bztcclxufVxyXG5cclxuLy8tLS0tLS0tLS0tLVxyXG4vLyBDQU5WQVNcclxuLy8tLS0tLS0tLS0tLVxyXG4uI3skbmFtZX1fX2NhbnZhc3tcclxuICAgIHdpZHRoOiAzMDBweDtcclxuICAgIGhlaWdodDogMzAwcHg7XHJcbiAgICBtYXJnaW46IDAgYXV0byAyMHB4O1xyXG59XHJcblxyXG4vLy0tLS0tLS0tLS0tXHJcbi8vIEJVVFRPTlNcclxuLy8tLS0tLS0tLS0tLVxyXG4uI3skbmFtZX1fX2J0bnN7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgYWxpZ24tY29udGVudDogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cclxuICAgIC5idG57XHJcbiAgICAgICAgbWFyZ2luOiAwIDJweCAxMHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLy8tLS0tLS0tLS0tLVxyXG4vLyBSRVNVTFRcclxuLy8tLS0tLS0tLS0tLVxyXG4jY3JvcFJlc3VsdHtcclxuICAgIGNhbnZhc3tcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxufVxyXG4iLCIvKipcclxuICogQ09NUE9ORU5UU1xyXG4gKiBDVEEgV0FMTFxyXG4gKiBcclxuICovXHJcblxyXG4kbmFtZTogY3RhLXdhbGw7XHJcblxyXG5cclxuLy8tLS0tLS0tLVxyXG4vLyBCTE9DS1xyXG4vLy0tLS0tLS0tXHJcbi4jeyRuYW1lfXtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAmLmlzLWFjdGl2ZXtcclxuICAgICAgICBAZXh0ZW5kICVwZC10cC1sZztcclxuICAgICAgICAmOmFmdGVye1xyXG4gICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGJsYWNrLCAwLjMpO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBjb3ZlcihhYnNvbHV0ZSk7XHJcbiAgICAgICAgICAgIC8vIHRvcDogLTQwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLy8tLS0tLS0tLS0tXHJcbi8vIEVMRU1FTlRcclxuLy8tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfV9fcG9wdXB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDEwMHB4O1xyXG4gICAgei1pbmRleDogMTtcclxuICAgIGNvbG9yOiB3aGl0ZTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGJsYWNrLCAwLjgpO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBwYWRkaW5nOiAzMHB4O1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuXHJcbiAgICBoM3tcclxuICAgICAgICBjb2xvcjogd2hpdGUgIWltcG9ydGFudDtcclxuICAgICAgICBmb250LXNpemU6IDQwcHggIWltcG9ydGFudDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xyXG4gICAgfVxyXG5cclxuICAgIGg2e1xyXG4gICAgICAgIGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgIC5pcy1hY3RpdmUgJntcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIH1cclxufVxyXG5cclxuXHJcbi8vLS0tLS0tLS0tLS1cclxuLy8gTU9ESUZJRVJcclxuLy8tLS0tLS0tLS0tLSIsIi8qKlxyXG4gKiBDT01QT05FTlRTXHJcbiAqIERPVFMgZm9yIHNsaWNrIHNsaWRlcnNcclxuICovXHJcblxyXG5cclxuJG5hbWU6IHNsaWNrLWRvdHM7XHJcblxyXG4uc2xpY2stZG90cyB7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICB0b3A6IDYwcHg7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG5cclxuXHJcbiAgICBsaTpvbmx5LWNoaWxkIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICBsaSB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICBoZWlnaHQ6IDIwcHg7XHJcbiAgICAgICAgd2lkdGg6IDIwcHg7XHJcbiAgICAgICAgbWFyZ2luOiAwIDJweDtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuXHJcbiAgICAgICAgYnV0dG9uIHtcclxuICAgICAgICAgICAgYm9yZGVyOiAwO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIGhlaWdodDogaW5oZXJpdDtcclxuICAgICAgICAgICAgd2lkdGg6IGluaGVyaXQ7XHJcbiAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAwcHg7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMHB4O1xyXG4gICAgICAgICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDVweDtcclxuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuXHJcbiAgICAgICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcclxuXHJcbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IGluaGVyaXQ7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGluaGVyaXQ7XHJcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGxhY2Vob2xkO1xyXG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG4gICAgICAgICAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIFtjbGFzcyo9XCJ0d2l0dGVyXCJdICYsXHJcbiAgICAgICAgW2NsYXNzKj1cImZhY2Vib29rXCJdICYge1xyXG4gICAgICAgICAgICB3aWR0aDogMTJweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxMnB4O1xyXG5cclxuICAgICAgICAgICAgYnV0dG9uOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2NjY2NjO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLnNsaWNrLWFjdGl2ZSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAyNXB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDI1cHg7XHJcblxyXG4gICAgICAgICAgICBidXR0b24ge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IGluaGVyaXQ7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGluaGVyaXQ7XHJcblxyXG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiBpbmhlcml0O1xyXG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogaW5oZXJpdDtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBbY2xhc3MqPVwidHdpdHRlclwiXSAmLFxyXG4gICAgICAgICAgICBbY2xhc3MqPVwiZmFjZWJvb2tcIl0gJiB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTZweDtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMTZweDtcclxuXHJcbiAgICAgICAgICAgICAgICBidXR0b246YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjN2E3YTdhO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59IiwiLyoqXHJcbiAqIENPTVBPTkVOVFNcclxuICogRXhhbXBsZVxyXG4gKiBUaGlzIGlzIGFuIGV4YW1wbGUgb2YgYSBjb21wb25lbnQgcGFydGlhbFxyXG4gKi9cclxuXHJcbiRuYW1lOiBleGFtcGxlO1xyXG5cclxuXHJcbi8vLS0tLS0tLS1cclxuLy8gQkxPQ0tcclxuLy8tLS0tLS0tLVxyXG4uI3skbmFtZX17XHJcbiAgICAmOmJlZm9yZXtcclxuICAgICAgICBjb250ZW50OiAnIFRoaXMgaXMgdGhlIFxcJyAjeyRuYW1lfSBcXCcgY29tcG9uZW50LiDwn6STIEhFWSBUSEVSRSEnO1xyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLy8tLS0tLS0tLS0tXHJcbi8vIEVMRU1FTlRcclxuLy8tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfV9fZWxlbWVudHt9XHJcblxyXG5cclxuLy8tLS0tLS0tLS0tLVxyXG4vLyBNT0RJRklFUlxyXG4vLy0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfS0tbW9kaWZpZXJ7fVxyXG5cclxuLiN7JG5hbWV9X19lbGVtZW50LS1tb2RpZmllcnt9XHJcbiIsIi8qKlxyXG4gKiBDT01QT05FTlRTIC8gTEFZT1VUXHJcbiAqIGV6IFNlYXJjaFxyXG4gKi9cclxuXHJcbiRuYW1lOiBlenNlYXJjaDtcclxuXHJcbi4jeyRuYW1lfXt9XHJcblxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS1cclxuLy8gU1VNTUFSWVxyXG4vLy0tLS0tLS0tLS0tLS0tLVxyXG4uI3skbmFtZX0tc3VtbWFyeSB7fVxyXG5cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tXHJcbi8vIFJFU1VMVCBDT1VOVFxyXG4vLy0tLS0tLS0tLS0tLS0tLVxyXG4uI3skbmFtZX0tcmVzdWx0LWNvdW50e31cclxuXHJcblxyXG4vLy0tLS0tLS0tLS1cclxuLy8gUkVTVUxUU1xyXG4vLy0tLS0tLS0tLS1cclxuLiN7JG5hbWV9LXJlc3VsdHN7fVxyXG5cclxuXHJcbi8vLS0tLS0tLS0tXHJcbi8vIFJFU1VMVFxyXG4vLy0tLS0tLS0tLVxyXG4uI3skbmFtZX0tcmVzdWx0e1xyXG5cclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA2MDBweCl7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIH1cclxufVxyXG5cclxuXHJcbi8vLS0tLS0tLS1cclxuLy8gUEFHRVJcclxuLy8tLS0tLS0tLVxyXG4uI3skbmFtZX0tcGFnZXIge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBwYWRkaW5nOiAwIDAgNDBweDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICBkaXYge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAgbWFyZ2luOiAwIDAgMjBweDtcclxuICAgIH1cclxuICAgIC5wYWdlLS1saW5re1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgfVxyXG5cclxuICAgIC5wcmV2IHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICBib3R0b206IDA7XHJcblxyXG4gICAgICAgICY6YmVmb3Jle1xyXG4gICAgICAgIEBpbmNsdWRlIGFycm93LWxlZnQtaWNvbjtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLm5leHQge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICByaWdodDogMDtcclxuICAgICAgICBib3R0b206IDA7XHJcblxyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIEBpbmNsdWRlIGFycm93LXJpZ2h0LWljb247XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgc3Bhbi5wcmV2LFxyXG4gICAgc3Bhbi5uZXh0IHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgIC5wYWdlIHtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgd2lkdGg6IDMwcHg7XHJcbiAgICAgICAgaGVpZ2h0OiAzMHB4O1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIH1cclxuXHJcbn1cclxuXHJcblxyXG4vLy0tLS0tLS1cclxuLy8gRk9STVxyXG4vLy0tLS0tLS1cclxuLiN7JG5hbWV9LWZvcm17XHJcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbn1cclxuIiwiLyoqXHJcbiAqIENPTVBPTkVOVFNcclxuICogRkFRXHJcbiAqL1xyXG5cclxuXHJcbi5mYXEtcSwgLmZhcS1saW5rIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcbiAgICBwYWRkaW5nOiAxMHB4IDMwcHg7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgY29sb3I6ICRicmFuZC1ibGFjaztcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIHRleHQtaW5kZW50OiAwO1xyXG4gICAgdHJhbnNpdGlvbjogdGV4dC1pbmRlbnQgMjAwbXMgZWFzZS1pbi1vdXQ7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICBjb2xvcjogJGJyYW5kLWJsYWNrO1xyXG4gICAgICAgIHRleHQtaW5kZW50OiA1cHg7XHJcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcbiAgICB9XHJcblxyXG5cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIEBpbmNsdWRlIHBsdXMtaWNvbjtcclxuICAgICAgICBtYXJnaW4tdG9wOiAycHg7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XHJcbiAgICAgICAgdGV4dC1pbmRlbnQ6IDA7XHJcbiAgICB9XHJcblxyXG4gICAgJi5pcy1hY3RpdmUge1xyXG4gICAgICAgIHRleHQtaW5kZW50OiA1cHg7XHJcblxyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBtaW51cy1pY29uO1xyXG4gICAgICAgICAgICB0ZXh0LWluZGVudDogMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLmZhcS1xLS1hbHQge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICBwYWRkaW5nOiAzMHB4IDA7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRsaWdodC1ncmV5O1xyXG5cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIEBpbmNsdWRlIGNoZXYtZG93bi1pY29uO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICByaWdodDogMTVweDtcclxuICAgIH1cclxuXHJcbiAgICAmLmlzLWFjdGl2ZSB7XHJcblxyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBjaGV2LWRvd24taWNvbjtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJjpmaXJzdC1vZi10eXBlIHtcclxuICAgICAgICBib3JkZXItdG9wOiBub25lO1xyXG4gICAgfVxyXG59XHJcblxyXG4gICAgLmZhcS1saW5rIHtcclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLmlzLWFjdGl2ZSB7XHJcbiAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4uZmFxLWEge1xyXG4gICAgcGFkZGluZzogMCAwIDAgMDtcclxuICAgIC8vcGFkZGluZzogMzBweCAzMHB4IDIwcHg7XHJcbiAgICAvL2JhY2tncm91bmQtY29sb3I6ICRwbGFjZWhvbGQ7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG5cclxuXHJcbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKHdpZGUtYW5kLXVwKSB7XHJcbiAgICAgICAgcGFkZGluZzogMCAwIDAgMDtcclxuICAgIH1cclxuXHJcbiAgICA+IHAge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XHJcbiAgICB9XHJcblxyXG4gICAgLmZhcS1hIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcclxuICAgICAgICBwYWRkaW5nOiAwIDAgMCAxMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5ib2R5LWNvcHkge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDBweDtcclxuICAgIH1cclxuICAgIC8vIEFjY291bnQgZm9yIGlmIG1heCBoZWlnaHQgd2FzIHNldCBvbiBhIGxhcmdlIHNjcmVlbiBidXQgcm90YXRlcyB0byBhIHNtYWxsZXIgc2NyZWVuXHJcbiAgICAmW3N0eWxlKj1cIm1heC1oZWlnaHRcIl0ge1xyXG4gICAgICAgIG92ZXJmbG93LXk6IGF1dG8gIWltcG9ydGFudDtcclxuICAgIH1cclxufVxyXG5cclxuICAgIC5mYXEtYS0tYWx0IHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8od2lkZS1hbmQtdXApIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMHB4IDVweCAyMHB4IDVweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiIsIu+7vy5ldmVudHNfY2FydCB7XHJcbiAgICB3aWR0aDoxMDAlO1xyXG4gICAgcGFkZGluZzoxZW0gMWVtIDA7XHJcbiAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xyXG4gICAgfVxyXG59XHJcblxyXG4uY2FydF9pdGVtIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgcGFkZGluZzogMCAwIDFlbTtcclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICB9XHJcblxyXG59XHJcblxyXG4uY2FydF9pbmZvX2NvbCB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIG1pbi1oZWlnaHQ6NzBweDtcclxuICAgIC50cy01XHJcbiAgICB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IC43NWVtO1xyXG4gICAgfVxyXG59XHJcbi5jYXJ0X2l0ZW1fZGV0YWlscyB7XHJcbiAgICBkaXNwbGF5OmZsZXg7XHJcbn1cclxuLmNhcnRfaXRlbV90aXRsZSB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxufVxyXG4uY2FydF9pdGVtX3ByaWNlIHtcclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xyXG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgfVxyXG59XHJcbi5jYXJ0X2l0ZW1fcXVhbnRpdHkge1xyXG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbiAgICAuZm9ybV9fc2VsZWN0XHJcbiAgICB7XHJcbiAgICAgICAgd2lkdGg6IDEyMHB4O1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmYgIWltcG9ydGFudDtcclxuICAgICAgICBtYXJnaW46IDAuNWVtIDAgMDtcclxuICAgIH1cclxufVxyXG4uY2FydF9kaXNjb3VudF9jb2RlIHtcclxuICAgIG1heC13aWR0aDoyMDBweDtcclxufVxyXG4iLCJcclxuJGxvZ2luLWltYWdlLXNpemU6IDQ1cHg7XHJcblxyXG4ubG9naW4tYnV0dG9ue1xyXG4gIEBleHRlbmQgJXRzLTM7XHJcbiAgY29sb3I6ICNmZmY7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBmb250LXNpemU6IDE1cHg7XHJcbiAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHJcbiAgJjpiZWZvcmV7XHJcbiAgICBAaW5jbHVkZSBsb2dpbi1pY29uO1xyXG4gICAgZm9udC1zaXplOiA0NXB4O1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBjb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuICB9XHJcbn1cclxuXHJcblxyXG4ubG9naW4tYnV0dG9uLS1zcG9uc29ye1xyXG4gIG1hcmdpbi1yaWdodDogMzBweDtcclxuICBzcGFue1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcbiAgJjpiZWZvcmV7XHJcbiAgICBmb250LXNpemU6IDMwcHg7XHJcbiAgfVxyXG5cclxuICBAbWVkaWEgKG1pbi13aWR0aDogJG5hdmlnYXRpb24tYnJlYWtwb2ludCl7XHJcbiAgICBtYXJnaW46IDAgMjBweDtcclxuICAgIHNwYW57XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZTtcclxuICAgIH1cclxuICAgICY6YmVmb3Jle1xyXG4gICAgICBmb250LXNpemU6IDQ1cHg7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcblN1cGVyIEZvcm0gUmVzZXRcclxuXHJcbkEgY291cGxlIG9mIHRoaW5ncyB0byB3YXRjaCBvdXQgZm9yOlxyXG5cclxuLSBJRTg6IElmIGEgdGV4dCBpbnB1dCBkb2Vzbid0IGhhdmUgcGFkZGluZyBvbiBhbGwgc2lkZXMgb3Igbm9uZSB0aGUgdGV4dCB3b24ndCBiZSBjZW50ZXJlZC5cclxuLSBUaGUgZGVmYXVsdCBib3JkZXIgc2l6ZXMgb24gdGV4dCBpbnB1dHMgaW4gYWxsIFVBcyBzZWVtIHRvIGJlIHNsaWdodGx5IGRpZmZlcmVudC4gWW91J3JlIGJldHRlciBvZmYgdXNpbmcgY3VzdG9tIGJvcmRlcnMuXHJcbi0gWW91IE5FRUQgdG8gc2V0IHRoZSBmb250LXNpemUgYW5kIGZhbWlseSBvbiBhbGwgZm9ybSBlbGVtZW50c1xyXG4tIFNlYXJjaCBpbnB1dHMgbmVlZCB0byBoYXZlIHRoZWlyIGFwcGVhcmFuY2UgcmVzZXQgYW5kIHRoZSBib3gtc2l6aW5nIHNldCB0byBjb250ZW50LWJveCB0byBtYXRjaCBvdGhlciBVQXNcclxuLSBZb3UgY2FuIHN0eWxlIHRoZSB1cGxvYWQgYnV0dG9uIGluIHdlYmtpdCB1c2luZyA6Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uXHJcbi0gOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiBzZWxlY3RvcnMgY2FuJ3QgYmUgdXNlZCBpbiB0aGUgc2FtZSBzZWxlY3RvciBhcyBub3JtYWwgb25lcy4gRkYgYW5kIElFIGZyZWFrIG91dC5cclxuLSBJRTogWW91IGRvbid0IG5lZWQgdG8gZmFrZSBpbmxpbmUtYmxvY2sgd2l0aCBsYWJlbHMgYW5kIGZvcm0gY29udHJvbHMgaW4gSUUuIFRoZXkgZnVuY3Rpb24gYXMgaW5saW5lLWJsb2NrLlxyXG4tIEJ5IHR1cm5pbmcgb2ZmIDo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiwgaXQgcmVtb3ZlcyB0aGUgZXh0cmEgd2hpdGVzcGFjZSBvbiB0aGUgbGVmdCBvbiBzZWFyY2ggaW5wdXRzXHJcblxyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuXHJcbmlucHV0LFxyXG5sYWJlbCxcclxuc2VsZWN0LFxyXG5idXR0b24sXHJcbnRleHRhcmVhe1xyXG5cdG1hcmdpbjogMDtcclxuXHRib3JkZXI6IDA7XHJcblx0cGFkZGluZzogMDtcclxuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuXHR3aGl0ZS1zcGFjZTogbm9ybWFsO1xyXG5cdGJhY2tncm91bmQ6IG5vbmU7XHJcblx0bGluZS1oZWlnaHQ6IDE7XHJcbn1cclxuXHJcbi8qIFJlbW92ZSB0aGUgc3R1cGlkIG91dGVyIGdsb3cgaW4gV2Via2l0ICovXHJcbmlucHV0OmZvY3Vze1xyXG5cdG91dGxpbmU6IDA7XHJcbn1cclxuXHJcbi8qIEJveCBTaXppbmcgUmVzZXRcclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG5cclxuLyogQWxsIG9mIG91ciBjdXN0b20gY29udHJvbHMgc2hvdWxkIGJlIHdoYXQgd2UgZXhwZWN0IHRoZW0gdG8gYmUgKi9cclxuaW5wdXQsXHJcbnRleHRhcmVhXHJcbntcclxuXHQtd2Via2l0LWJveC1zaXppbmc6Y29udGVudC1ib3g7XHJcblx0LW1vei1ib3gtc2l6aW5nOmNvbnRlbnQtYm94O1xyXG5cdGJveC1zaXppbmc6Y29udGVudC1ib3g7XHJcbn1cclxuXHJcbi8qIFRoZXNlIGVsZW1lbnRzIGFyZSB1c3VhbGx5IHJlbmRlcmVkIGEgY2VydGFpbiB3YXkgYnkgdGhlIGJyb3dzZXIgKi9cclxuYnV0dG9uLFxyXG5pbnB1dFt0eXBlPXJlc2V0XSxcclxuaW5wdXRbdHlwZT1idXR0b25dLFxyXG5pbnB1dFt0eXBlPXN1Ym1pdF0sXHJcbmlucHV0W3R5cGU9Y2hlY2tib3hdLFxyXG5pbnB1dFt0eXBlPXJhZGlvXSxcclxuc2VsZWN0XHJcbntcclxuXHQtd2Via2l0LWJveC1zaXppbmc6Ym9yZGVyLWJveDtcclxuXHQtbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtcclxuXHRib3gtc2l6aW5nOmJvcmRlci1ib3g7XHJcbn1cclxuXHJcbi8qIEJ1dHRvbiBDb250cm9sc1xyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcblxyXG5pbnB1dFt0eXBlPWNoZWNrYm94XSxcclxuaW5wdXRbdHlwZT1yYWRpb11cclxue1xyXG5cdHdpZHRoOjEzcHg7XHJcblx0aGVpZ2h0OjEzcHg7XHJcbn1cclxuXHJcbi8qIEZpbGUgVXBsb2Fkc1xyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcblxyXG5pbnB1dFt0eXBlPWZpbGVdXHJcbntcclxuXHJcbn1cclxuXHJcbi8qIFNlYXJjaCBJbnB1dFxyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcblxyXG4vKiBNYWtlIHdlYmtpdCByZW5kZXIgdGhlIHNlYXJjaCBpbnB1dCBsaWtlIGEgbm9ybWFsIHRleHQgZmllbGQgKi9cclxuaW5wdXRbdHlwZT1zZWFyY2hdXHJcbntcclxuXHQtd2Via2l0LWFwcGVhcmFuY2U6dGV4dGZpZWxkO1xyXG5cdC13ZWJraXQtYm94LXNpemluZzpjb250ZW50LWJveDtcclxufVxyXG5cclxuLyogVHVybiBvZmYgdGhlIHJlY2VudCBzZWFyY2ggZm9yIHdlYmtpdC4gSXQgYWRkcyBhYm91dCAxNXB4IHBhZGRpbmcgb24gdGhlIGxlZnQgKi9cclxuOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uXHJcbntcclxuXHRkaXNwbGF5Om5vbmU7XHJcbn1cclxuXHJcbi8qIEJ1dHRvbnNcclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG5cclxuYnV0dG9uLFxyXG5pbnB1dFt0eXBlPVwicmVzZXRcIl0sXHJcbmlucHV0W3R5cGU9XCJidXR0b25cIl0sXHJcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl1cclxue1xyXG5cdC8qIEZpeCBJRTcgZGlzcGxheSBidWcgKi9cclxuXHRvdmVyZmxvdzp2aXNpYmxlO1xyXG5cdHdpZHRoOmF1dG87XHJcbn1cclxuXHJcbi8qIElFOCBhbmQgRkYgZnJlYWsgb3V0IGlmIHRoaXMgcnVsZSBpcyB3aXRoaW4gYW5vdGhlciBzZWxlY3RvciAqL1xyXG46Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uXHJcbntcdFxyXG5cdHBhZGRpbmc6MDtcclxuXHRib3JkZXI6MDtcclxuXHRiYWNrZ3JvdW5kOm5vbmU7XHJcbn1cclxuXHJcbi8qIFRleHRhcmVhXHJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuXHJcbnRleHRhcmVhIFxyXG57XHJcblx0LyogTW92ZSB0aGUgbGFiZWwgdG8gdGhlIHRvcCAqL1xyXG5cdHZlcnRpY2FsLWFsaWduOnRvcDtcclxuXHRcclxuXHQvKiBUdXJuIG9mZiBzY3JvbGwgYmFycyBpbiBJRSB1bmxlc3MgbmVlZGVkICovXHJcblx0b3ZlcmZsb3c6YXV0bztcclxufVxyXG5cclxuLyogU2VsZWN0c1xyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcblxyXG5zZWxlY3Rcclxue1xyXG5cclxufVxyXG5cclxuc2VsZWN0W211bHRpcGxlXSBcclxue1xyXG5cdC8qIE1vdmUgdGhlIGxhYmVsIHRvIHRoZSB0b3AgKi9cclxuXHR2ZXJ0aWNhbC1hbGlnbjp0b3A7XHJcbn1cclxuXHJcbmZpZWxkc2V0e1xyXG5cdGJvcmRlcjogbm9uZTtcclxuXHR3aWR0aDogYXV0bztcclxuXHRwYWRkaW5nOiAwO1xyXG59IiwiLyoqXHJcbiAqIENPTVBPTkVOVFNcclxuICogRk9STSAtIEJBU0VcclxuICovXHJcblxyXG4kbmFtZTogZm9ybTtcclxuXHJcbi4jeyRuYW1lfSB7XHJcbn1cclxuXHJcblxyXG4vL01JWElOXHJcblxyXG5AbWl4aW4gcGxhY2Vob2xkLWNvbG9yKCRjb2xvcikge1xyXG4gICAgJjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7IC8qIENocm9tZS9PcGVyYS9TYWZhcmkgKi9cclxuICAgICAgICBjb2xvcjogJGNvbG9yO1xyXG4gICAgfVxyXG5cclxuICAgICY6Oi1tb3otcGxhY2Vob2xkZXIgeyAvKiBGaXJlZm94IDE5KyAqL1xyXG4gICAgICAgIGNvbG9yOiAkY29sb3I7XHJcbiAgICB9XHJcblxyXG4gICAgJjotbXMtaW5wdXQtcGxhY2Vob2xkZXIgeyAvKiBJRSAxMCsgKi9cclxuICAgICAgICBjb2xvcjogJGNvbG9yO1xyXG4gICAgfVxyXG5cclxuICAgICY6LW1vei1wbGFjZWhvbGRlciB7IC8qIEZpcmVmb3ggMTgtICovXHJcbiAgICAgICAgY29sb3I6ICRjb2xvcjtcclxuICAgIH1cclxufVxyXG5cclxuQG1peGluIHBsYWNlaG9sZCgkcHJvcGVydHksICR2YWx1ZSkge1xyXG4gICAgJjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7IC8qIENocm9tZS9PcGVyYS9TYWZhcmkgKi9cclxuICAgICAgICAkcHJvcGVydHk6ICR2YWx1ZTtcclxuICAgIH1cclxuXHJcbiAgICAmOjotbW96LXBsYWNlaG9sZGVyIHsgLyogRmlyZWZveCAxOSsgKi9cclxuICAgICAgICAkcHJvcGVydHk6ICR2YWx1ZTtcclxuICAgIH1cclxuXHJcbiAgICAmOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7IC8qIElFIDEwKyAqL1xyXG4gICAgICAgICRwcm9wZXJ0eTogJHZhbHVlO1xyXG4gICAgfVxyXG5cclxuICAgICY6LW1vei1wbGFjZWhvbGRlciB7IC8qIEZpcmVmb3ggMTgtICovXHJcbiAgICAgICAgJHByb3BlcnR5OiAkdmFsdWU7XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG4vKiBUZXh0IElucHV0c1xyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcbi8vIGlucHV0W3R5cGU9J2RhdGUnXSxcclxuLy8gaW5wdXRbdHlwZT0nZGF0ZXRpbWUnXSxcclxuLy8gaW5wdXRbdHlwZT0nZGF0ZXRpbWUtbG9jYWwnXSxcclxuLy8gaW5wdXRbdHlwZT0nZW1haWwnXSxcclxuLy8gaW5wdXRbdHlwZT0nbW9udGgnXSxcclxuLy8gaW5wdXRbdHlwZT0nbnVtYmVyJ10sXHJcbi8vIGlucHV0W3R5cGU9J3Bhc3N3b3JkJ10sXHJcbi8vIGlucHV0W3R5cGU9J3JhbmdlJ10sXHJcbi8vIGlucHV0W3R5cGU9J3NlYXJjaCddLFxyXG4vLyBpbnB1dFt0eXBlPSd0ZWwnXSxcclxuLy8gaW5wdXRbdHlwZT0ndGV4dCddLFxyXG4vLyBpbnB1dFt0eXBlPSd0aW1lJ10sXHJcbi8vIGlucHV0W3R5cGU9J3VybCddLFxyXG4vLyBpbnB1dFt0eXBlPSd3ZWVrJ10sXHJcbi8vIGlucHV0W3R5cGVdLFxyXG4uaW5wdXQsXHJcbi4jeyRuYW1lfV9faW5wdXQsXHJcbi4jeyRuYW1lfV9fbWVzc2FnZSxcclxuLnNlbGVjdCxcclxuLiN7JG5hbWV9X19zZWxlY3QsXHJcbi4jeyRuYW1lfV9fZGF0ZSB7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKCRicmFuZC1ibGFjaywgMCk7XHJcbiAgICAvLyBAaW5jbHVkZSBwbGFjZWhvbGQtY29sb3IocmdiYSgkYnJhbmQtYmxhY2ssIDAuNSkpO1xyXG4gICAgaGVpZ2h0OiA0NHB4O1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBwYWRkaW5nOiAwIDEycHg7XHJcbiAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICByZXNpemU6IG5vbmU7XHJcbiAgICBAaW5jbHVkZSBib2R5LWNvcHk7XHJcbiAgICBmb250LWZhbWlseTogJHNhbnM7XHJcbiAgICAvKmJvcmRlci1yYWRpdXM6NnB4OyovXHJcblxyXG4gICAgJltjbGFzcyo9XCJsYXJnZVwiXSB7XHJcbiAgICAgICAgaGVpZ2h0OiA1NnB4O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgIH1cclxuXHJcbiAgICAmW3R5cGU9J3Bhc3N3b3JkJ10ge1xyXG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAycHg7XHJcblxyXG4gICAgICAgICY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIgeyAvKiBDaHJvbWUvT3BlcmEvU2FmYXJpICovXHJcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjo6LW1vei1wbGFjZWhvbGRlciB7IC8qIEZpcmVmb3ggMTkrICovXHJcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjotbXMtaW5wdXQtcGxhY2Vob2xkZXIgeyAvKiBJRSAxMCsgKi9cclxuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOi1tb3otcGxhY2Vob2xkZXIgeyAvKiBGaXJlZm94IDE4LSAqL1xyXG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5pbnB1dCxcclxuLiN7JG5hbWV9X19pbnB1dCxcclxuLiN7JG5hbWV9X19zZWxlY3QsXHJcbi4jeyRuYW1lfV9fbWVzc2FnZSxcclxuLiN7JG5hbWV9X19jaGVja2JveCxcclxuLiN7JG5hbWV9X19yYWRpbyxcclxuLiN7JG5hbWV9X19kYXRlIHtcclxuICAgIC8vIGNvbG9yOiBpbmhlcml0O1xyXG4gICAgYm9yZGVyLXJhZGl1czo2cHg7XHJcbiAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcclxuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcclxuICAgIEBpbmNsdWRlIGFuaW1hdGUoYm94LXNoYWRvdyA1MG1zKTtcclxuXHJcbiAgICAmOmZvY3VzIHtcclxuICAgICAgICBvdXRsaW5lOiAwO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICAvKmJveC1zaGFkb3c6IDAgMCA1cHggMnB4IHJnYmEoOTQsIDk0LCA5NCwgMC4xNSk7Ki9cclxuICAgIH1cclxufVxyXG5cclxuLiN7JG5hbWV9X19tZXNzYWdlIHtcclxuICAgIHBhZGRpbmctdG9wOiAxMnB4O1xyXG4gICAgcGFkZGluZy1ib3R0b206IDEycHg7XHJcbiAgICBoZWlnaHQ6IGF1dG87XHJcbn1cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIElOUFVUXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi5pbnB1dCxcclxuLiN7JG5hbWV9X19pbnB1dCxcclxuW3R5cGU9XCJ0ZXh0XCJdIHtcclxuICAgIEBpbmNsdWRlIHBsYWNlaG9sZC1jb2xvcihyZ2JhKCRicmFuZC1ibGFjaywgMC41KSk7XHJcblxyXG4gICAgJjpmb2N1cyB7XHJcbiAgICAgICAgLy8gaGlkZSBwbGFjZWhvbGRlciBjb3B5IG9uIGZvY3VzXHJcbiAgICAgICAgQGluY2x1ZGUgcGxhY2Vob2xkLWNvbG9yKHJnYmEoJGJyYW5kLWJsYWNrLCAwKSk7XHJcbiAgICB9XHJcbn1cclxuXHJcbmlucHV0W3R5cGU9J2ltYWdlJ10ge1xyXG4gICAgd2lkdGg6IGF1dG87XHJcbiAgICBtYXgtd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgJjpjaGVja2VkLFxyXG4gICAgJjpmb2N1cyB7XHJcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgJGJyYW5kLXB1cnBsZTtcclxuICAgIH1cclxufVxyXG5cclxuXHJcbi4jeyRuYW1lfV9faW5wdXQtLWJldGEge1xyXG4gICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtcHVycGxlICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIENBUFRJT05cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLiN7JG5hbWV9X19pbmxpbmVjYXB0aW9uIHtcclxuICAgIG1hcmdpbjowIDJlbSAwIDAgIWltcG9ydGFudDtcclxufVxyXG5cclxuLiN7JG5hbWV9X19jYXB0aW9uIHtcclxuICAgIGZvbnQtZmFtaWx5OiBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xyXG4gICAgZm9udC1zaXplOiAxN3B4O1xyXG59XHJcblxyXG4uI3skbmFtZX1fX2NhcHRpb24tLWdyaWVmLW1lbW9yeS13YWxsLXVwbG9hZC10ZXh0IHtcclxuICAgIGZvbnQtc2l6ZTogMTZweDtcclxufVxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBTRUxFQ1RcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLnNlbGVjdCxcclxuLiN7JG5hbWV9X19zZWxlY3Qge1xyXG4gICAgLy9jb2xvcjogJGdyZXk7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltYWdlcy9iYXNlNjQvUE5HL3NlbGVjdC1hcnJvdy5wbmcnKTtcclxuICAgIGJhY2tncm91bmQtc2l6ZTogMjBweDtcclxuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAxOHB4IHRvcCAxM3B4O1xyXG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xyXG4gICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xyXG4gICAgYXBwZWFyYW5jZTogbm9uZTtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDYwcHg7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxMnB4O1xyXG4gICAgLyptYXgtd2lkdGg6IDI0MHB4OyovXHJcbiAgICAvL2NvbG9yOiByZ2JhKCRicmFuZC1ibGFjaywgMC41KTtcclxuXHJcbiAgICAmOmZvY3VzIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcclxuICAgIH1cclxufVxyXG5cclxuLiN7JG5hbWV9X19zZWxlY3QtLW5hcnJvdyB7XHJcbiAgICBtYXgtd2lkdGg6IDI0MHB4O1xyXG59XHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIFJBRElPXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfV9fcmFkaW8ge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgd2lkdGg6IDIycHg7XHJcbiAgICBoZWlnaHQ6IDIycHg7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgkYnJhbmQtcHVycGxlLCAwLjI1KTtcclxuICAgIGJveC1zaGFkb3c6IDAgLTJweCA5cHggM3B4IHJnYmEoOTQsIDk0LCA5NCwgMC4xNSk7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAtNHB4O1xyXG5cclxuICAgICZbdHlwZT0ncmFkaW8nXSB7XHJcbiAgICAgICAgd2lkdGg6IDI0cHg7XHJcbiAgICAgICAgaGVpZ2h0OiAyMXB4O1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMjZweDtcclxuICAgICAgICBtYXJnaW4tdG9wOiAtMTJweDtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgICZbdHlwZT0ncmFkaW8nXTpjaGVja2VkICsgJiB7XHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgd2lkdGg6IDEycHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTJweDtcclxuICAgICAgICAgICAgbWFyZ2luOiA1cHg7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICArIC4jeyRuYW1lfV9fbGFiZWwsXHJcbiAgICArIC4jeyRuYW1lfV9fY2FwdGlvbiB7XHJcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4uI3skbmFtZX1fX3JhZGlvLS13aGl0ZSB7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZmZmO1xyXG59XHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIENIRUNLQk9YXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfV9fY2hlY2tib3gge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgd2lkdGg6IDI2cHg7XHJcbiAgICBoZWlnaHQ6IDIycHg7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDZweDtcclxuICAgIG1hcmdpbi1yaWdodDogMTBweDtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkICNkYWMwZDggIWltcG9ydGFudDtcclxuICAgIGJveC1zaGFkb3c6IDAgLTJweCA5cHggM3B4IHJnYmEoOTQsIDk0LCA5NCwgMC4xNSk7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAtNHB4O1xyXG5cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGNvbG9yOiAkYnJhbmQtZ3JlZW47XHJcbiAgICB9XHJcblxyXG4gICAgJlt0eXBlPSdjaGVja2JveCddLFxyXG4gICAgJlt0eXBlPSdyYWRpbyddIHtcclxuICAgICAgICB3aWR0aDogNjBweDtcclxuICAgICAgICBoZWlnaHQ6IDIxcHg7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IC02MHB4O1xyXG4gICAgICAgIG1hcmdpbi10b3A6IC0xMnB4O1xyXG4gICAgICAgIHotaW5kZXg6IDI7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgJlt0eXBlPSdjaGVja2JveCddOmNoZWNrZWQgfiAmLFxyXG4gICAgJlt0eXBlPSdyYWRpbyddOmNoZWNrZWQgfiAmIHtcclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgdGljay1pY29uO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDMycHg7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNXB4O1xyXG4gICAgICAgICAgICBjb2xvcjogJGJyYW5kLXBpbms7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJltjbGFzcyo9XCItaWNvblwiXSB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiA0MHB4O1xyXG5cclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMzBweDtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XHJcbiAgICAgICAgICAgIHRvcDogLTZweDtcclxuICAgICAgICAgICAgbGVmdDogLTQwcHg7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJltjbGFzcyo9XCItLWNhdFwiXTpiZWZvcmUge1xyXG4gICAgICAgIEBpbmNsdWRlIGNhdC1pY29uO1xyXG4gICAgfVxyXG5cclxuICAgICZbY2xhc3MqPVwiLS1kb2dcIl06YmVmb3JlIHtcclxuICAgICAgICBAaW5jbHVkZSBkb2ctaWNvbjtcclxuICAgIH1cclxuXHJcbiAgICAmW2NsYXNzKj1cIi0tZmFtaWx5XCJdOmJlZm9yZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgZmFtaWx5LWljb247XHJcbiAgICB9XHJcblxyXG4gICAgJltjbGFzcyo9XCItLWNoaWxkcmVuXCJdOmJlZm9yZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgY2hpbGRyZW4taWNvbjtcclxuICAgIH1cclxuXHJcbiAgICAmW2NsYXNzKj1cIi0taW5kb29yXCJdOmJlZm9yZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgaG91c2UtaWNvbjtcclxuICAgIH1cclxuXHJcbiAgICArIC4jeyRuYW1lfV9fbGFiZWwsXHJcbiAgICArIC4jeyRuYW1lfV9fY2FwdGlvbiB7XHJcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA5cHg7XHJcbiAgICB9XHJcbn1cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gQ0hFQ0tCT1ggLSBSZXN1bHRzXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIFRoaXMgaXMgYSBsaXR0bGUgY2hlZWt5IHBsYWNpbmcgdGhpcyBoZXJlIGJ1dCBhcyBpdCByZWxhdGVzXHJcbi8vIGl0IGNhbiBsaXZlIGhlcmUgZm9yIHRoZSB0aW1lIGJlaW5nLiBUaGUgc3J5bGVzIGNvdWxkIGJlXHJcbi8vIGV4cG9ydGVkIHRvIGEgYmFzZSBsZXZlbCBhbmQgaW5jbHVkZSBpbiB0aGUgZm9ybSBlbGVtZW50XHJcbi8vIGFuZCBiZWxvdyBjb21wb25lbnQgYXQgc29tZSBwb2ludCBpZiBkZXNpcmVkLlxyXG5cclxuLmNoZWNrYm94LXJlc3VsdHMge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgZm9udC1mYW1pbHk6ICRjYXRzLW1lZDtcclxuICAgIGZvbnQtc2l6ZTogMTdweDtcclxuICAgIG1hcmdpbi1yaWdodDogMTlweDtcclxuICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuXHJcbiAgICBbY2xhc3MqPSdjaGVja2JveC1yZXN1bHRzX18nXSB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7XHJcbiAgICAgICAgaGVpZ2h0OiA0MHB4O1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xyXG5cclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHRpY2staWNvbjtcclxuICAgICAgICAgICAgY29sb3I6ICRicmFuZC1ncmVlbjtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAzMnB4O1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTVweDtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIG9yZGVyOiAwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMzJweDtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDM1cHg7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgW2NsYXNzKj0nY2F0J106YWZ0ZXIge1xyXG4gICAgICAgIEBpbmNsdWRlIGNhdC1pY29uO1xyXG4gICAgfVxyXG5cclxuICAgIFtjbGFzcyo9J2RvZyddOmFmdGVyIHtcclxuICAgICAgICBAaW5jbHVkZSBkb2ctaWNvbjtcclxuICAgIH1cclxuXHJcbiAgICBbY2xhc3MqPSdjaGlsZHJlbiddOmFmdGVyIHtcclxuICAgICAgICBAaW5jbHVkZSBjaGlsZHJlbi1pY29uO1xyXG4gICAgfVxyXG5cclxuICAgIFtjbGFzcyo9J2ZhbWlseSddOmFmdGVyIHtcclxuICAgICAgICBAaW5jbHVkZSBmYW1pbHktaWNvbjtcclxuICAgIH1cclxuXHJcbiAgICBbY2xhc3MqPSdpbmRvb3JzJ106YWZ0ZXIge1xyXG4gICAgICAgIEBpbmNsdWRlIGhvdXNlLWljb247XHJcbiAgICB9XHJcbn1cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gREFURVxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4uI3skbmFtZX1fX2RhdGUge1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWFnZXMvYmFzZTY0L1BORy9jYWxlbmRhci1ncmV5LnBuZycpO1xyXG4gICAgYmFja2dyb3VuZC1zaXplOiAzMHB4O1xyXG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IDEzcHggdG9wIDZweDtcclxuICAgIG1heC13aWR0aDogMjAwcHg7XHJcbiAgICBjb2xvcjogJGJyYW5kLWJsYWNrO1xyXG5cclxuICAgICY6bm90KDpmb2N1cykge1xyXG4gICAgICAgIGNvbG9yOiByZ2JhKCAkYnJhbmQtYmxhY2ssIDAuNzUpO1xyXG4gICAgfVxyXG5cclxuICAgICY6Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXHJcbiAgICAmOjotd2Via2l0LWNhbGVuZGFyLXBpY2tlci1pbmRpY2F0b3Ige1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcclxuICAgIH1cclxufVxyXG5cclxuLiN7JG5hbWV9X19kYXRlLS13aWR0aCB7XHJcbiAgICBtYXgtd2lkdGg6IG5vbmU7XHJcbn1cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gTEFCRUxcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLiN7JG5hbWV9X19sYWJlbCB7XHJcbiAgICBmb250LWZhbWlseTogJGNhdHMtbWVkO1xyXG4gICAgZm9udC1zaXplOiAxN3B4O1xyXG4gICAgLy8gd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxufVxyXG5cclxuLiN7JG5hbWV9X19sYWJlbC0tY2hlY2tib3gge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbn1cclxuXHJcbi4jeyRuYW1lfV9fbGFiZWwtLWlubGluZSB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbn1cclxuXHJcbi4jeyRuYW1lfV9fbGFiZWwtLWZpbmQtYS1jYXQge1xyXG4gICAgdGV4dC1pbmRlbnQ6IDEwMCU7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9iYXNlNjQvc3ZnL2ZpbmQtYS1jYXQtZ3JleS5zdmcpO1xyXG4gICAgQGluY2x1ZGUgYmFja2dyb3VuZChjb250YWluKTtcclxufVxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBCVVRUT05cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLiN7JG5hbWV9X19idG4ge1xyXG4gICAgYm9yZGVyLXdpZHRoOiAwO1xyXG59XHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIFJJQkJPTlxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4uI3skbmFtZX0tLXJpYmJvbiB7XHJcbiAgICBwYWRkaW5nOiAxZW07XHJcblxyXG4gICAgLmZvcm1fX2xhYmVsLFxyXG4gICAgLmZvcm1fX2J0bixcclxuICAgIC5mb3JtX19pbnB1dCxcclxuICAgIC5mb3JtX19kYXRlIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XHJcbiAgICAgICAgbWFyZ2luOiAwIDAgMjBweDtcclxuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgfVxyXG5cclxuICAgIC5mb3JtX19sYWJlbC0tY2hlY2tib3gge1xyXG4gICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKHdpZGUtYW5kLXVwKSB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBwYWRkaW5nOiAyNHB4IDMwcHg7XHJcblxyXG5cclxuICAgICAgICAuZm9ybV9fbGFiZWwsXHJcbiAgICAgICAgLmZvcm1fX2J0bixcclxuICAgICAgICAuZm9ybV9faW5wdXQsXHJcbiAgICAgICAgLmZvcm1fX2RhdGUge1xyXG4gICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLiN7JG5hbWV9X19sYWJlbCB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCAyMHB4O1xyXG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgICAgICAgICBjb2xvcjogaW5oZXJpdDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gSU5MTklFXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfS0taW5saW5lIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblxyXG4gICAgPiBoMyB7XHJcbiAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0xNDNweDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgfVxyXG5cclxuICAgIC4jeyRuYW1lfV9fc2VsZWN0IHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgfVxyXG5cclxuICAgIC4jeyRuYW1lfV9fY2FwdGlvbiB7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xyXG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG4uZmllbGRzZXQge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xyXG4gICAgbWFyZ2luLWxlZnQ6IC02MHB4O1xyXG5cclxuICAgID4gKiB7XHJcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDYwcHggc29saWQgd2hpdGU7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcbn1cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gTU9ESUZJRVJTXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4uI3skbmFtZX0tLWdyZXkge1xyXG4gICAgLiN7JG5hbWV9X19pbnB1dCxcclxuICAgIC4jeyRuYW1lfV9fc2VsZWN0LFxyXG4gICAgLiN7JG5hbWV9X19tZXNzYWdlLFxyXG4gICAgLiN7JG5hbWV9X19jaGVja2JveCB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xyXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNkYWMwZDggIWltcG9ydGFudDtcclxuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XHJcblxyXG4gICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcclxuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkbGlnaHQtZ3JleTtcclxuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDVweCAycHggcmdiYSg5NCwgOTQsIDk0LCAwLjE1KTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYuaW5wdXQtdmFsaWRhdGlvbi1lcnJvciB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1wdXJwbGU7XHJcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNkYWMwZDggIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLiN7JG5hbWV9X19tZXNzYWdlIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IDIwMHB4O1xyXG4gICAgICAgIHJlc2l6ZTogbm9uZTtcclxuICAgICAgICBwYWRkaW5nOiAyMHB4IDEycHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi4jeyRuYW1lfS0tbWFpbiB7XHJcbiAgICAuI3skbmFtZX1fX2lucHV0LFxyXG4gICAgLiN7JG5hbWV9X19tZXNzYWdlLFxyXG4gICAgLiN7JG5hbWV9X19sYWJlbCB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuICAgIH1cclxuXHJcbiAgICAuI3skbmFtZX1fX2NoZWNrYm94ICsgLiN7JG5hbWV9X19jYXB0aW9uIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiA0cHg7XHJcbiAgICB9XHJcblxyXG4gICAgLmZpZWxkLXZhbGlkYXRpb24tZXJyb3IgKyAuI3skbmFtZX1fX2xhYmVsLFxyXG4gICAgLiN7JG5hbWV9X19pbnB1dCArIC4jeyRuYW1lfV9fbGFiZWwsXHJcbiAgICAuI3skbmFtZX1fX21lc3NhZ2UgKyAuI3skbmFtZX1fX2xhYmVsIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC4jeyRuYW1lfV9fbGFiZWwgKyAuI3skbmFtZX1fX2xhYmVsIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC4jeyRuYW1lfV9fbGFiZWwge1xyXG4gICAgICAgIEBleHRlbmQgJXRzLTU7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAvKmZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IC0gY29tbWVudGVkIG91dCB0byBwcmV2ZW50IHJlcXVpcmVkIGFzdGVyaXNrIHdyYXBwaW5nIHRvIG5leHQgbGluZSAqL1xyXG4gICAgICAgIGNvbG9yOiRicmFuZC1wdXJwbGU7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6J2NhdHMtaGVhZGxpbmUnLCBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xyXG4gICAgICAgIC4jeyRuYW1lfV9faW5wdXQsXHJcbiAgICAgICAgLiN7JG5hbWV9X19zZWxlY3Qge1xyXG4gICAgICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLiN7JG5hbWV9X19saW5rIHtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuICAgICAgICBjb2xvcjogJGJyYW5kLWJsdWU7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBjb2xvcjogJGJyYW5kLWJsYWNrO1xyXG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuI3skbmFtZX1fX2NhcHRpb24ge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDExcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLiN7JG5hbWV9X19sYWJlbC0taW5saW5lIHtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICB9XHJcbn1cclxuXHJcbi4jeyRuYW1lfS0tbWFwIHtcclxuICAgIGhlaWdodDogMzAwcHg7XHJcbiAgICBwYWRkaW5nOiAxZW07XHJcblxyXG4gICAgLiN7JG5hbWV9X19pbnB1dCB7XHJcbiAgICAgICAgY29sb3I6ICRicmFuZC1ibGFjaztcclxuICAgIH1cclxufVxyXG5cclxuLmZpZWxkLXZhbGlkYXRpb24tZXJyb3Ige1xyXG4gICAgZm9udC1mYW1pbHk6ICRjYXRzLWhlYWRsaW5lO1xyXG4gICAgY29sb3I6ICRicmFuZC1waW5rO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6ICcqICc7XHJcbiAgICAgICAgZm9udC1zaXplOiAyNnB4O1xyXG4gICAgICAgIGhlaWdodDogMjFweDtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1cHg7XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG5cclxuLiN7JG5hbWV9LS15b3VyLWRldGFpbHMge1xyXG4gICAgLiN7JG5hbWV9X19sYWJlbCB7XHJcbiAgICAgICAgLy9tYXJnaW4tYm90dG9tOiAzcHg7XHJcbiAgICAgICAgQGV4dGVuZCAldHMtODtcclxuXHJcbiAgICAgICAgJi5yZXF1aXJlZCB7XHJcbiAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgY29udGVudDogJyonO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC4jeyRuYW1lfV9fc2VsZWN0IHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgfVxyXG5cclxuICAgIC5maWVsZC12YWxpZGF0aW9uLWVycm9yIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XHJcbiAgICB9XHJcblxyXG4gICAgcCxcclxuICAgIC4jeyRuYW1lfV9fY2FwdGlvbiB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuICAgIH1cclxuXHJcbiAgICAuI3skbmFtZX1fX2l0ZW0ge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XHJcbiAgICB9XHJcblxyXG4gICAgLiN7JG5hbWV9X19tZXNzYWdlIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IDE0MHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLmNhdC1mb3JtLS1leHBhbmRhYmxlIHtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBtYXgtaGVpZ2h0OiAxMjVweDtcclxuICAgIHRyYW5zaXRpb246IDAuM3MgbWF4LWhlaWdodDtcclxuXHJcbiAgICAmLmlzLWFjdGl2ZSB7XHJcbiAgICAgICAgbWF4LWhlaWdodDogMjAwMHB4O1xyXG5cclxuICAgICAgICAuY2F0LWZvcm1fX2NvbnRhaW5lciB7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmNhdC1mb3JtIHtcclxuICAgIHBhZGRpbmc6IDIwcHg7XHJcblxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xyXG4gICAgICAgIHBhZGRpbmc6IDIwcHggMTMwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgJjpsYXN0LW9mLXR5cGUge1xyXG4gICAgICAgIGJvcmRlcjogMDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgfVxyXG5cclxuICAgICY6bnRoLWNoaWxkKG9kZCkge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlN2U4ZTY7XHJcblxyXG4gICAgICAgIHRleHRhcmVhLFxyXG4gICAgICAgIGlucHV0IHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jYXQtZm9ybV9faGVhZGVyIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICBwYWRkaW5nOiAyMHB4IDA7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG59XHJcblxyXG4uY2F0LWZvcm1fX2NvbnRhaW5lciB7XHJcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICB0cmFuc2l0aW9uOiAwLjNzIG9wYWNpdHk7XHJcbn1cclxuLy8gaW5wdXRzIHRoYXQgdXBsb2FkIGZpbGVzXHJcblxyXG4uZm9ybV9fZmlsZS11cGxvYWQge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLmZvcm1fX2ZpbGUtdXBsb2FkLWxhYmVsIHtcclxuICAgIEBpbmNsdWRlIGJ1dHRvbjtcclxufVxyXG5cclxuLyogQ2hhbmdlIEF1dG9jb21wbGV0ZSBzdHlsZXMgaW4gQ2hyb21lKi9cclxuaW5wdXQ6LXdlYmtpdC1hdXRvZmlsbCxcclxuaW5wdXQ6LXdlYmtpdC1hdXRvZmlsbDpob3ZlcixcclxuaW5wdXQ6LXdlYmtpdC1hdXRvZmlsbDpmb2N1cyxcclxudGV4dGFyZWE6LXdlYmtpdC1hdXRvZmlsbCxcclxudGV4dGFyZWE6LXdlYmtpdC1hdXRvZmlsbDpob3ZlcixcclxudGV4dGFyZWE6LXdlYmtpdC1hdXRvZmlsbDpmb2N1cyxcclxuc2VsZWN0Oi13ZWJraXQtYXV0b2ZpbGwsXHJcbnNlbGVjdDotd2Via2l0LWF1dG9maWxsOmhvdmVyLFxyXG5zZWxlY3Q6LXdlYmtpdC1hdXRvZmlsbDpmb2N1cyB7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZGFjMGQ4ICFpbXBvcnRhbnQ7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtcHVycGxlICFpbXBvcnRhbnQ7XHJcbiAgICAtd2Via2l0LXRleHQtZmlsbC1jb2xvcjogJGJyYW5kLWJsYWNrO1xyXG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDAgMHB4IDEwMDBweCAjZmZmIGluc2V0O1xyXG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciA1MDAwcyBlYXNlLWluLW91dCAwcztcclxufVxyXG4iLCIvKipcclxuICogQ09NUE9ORU5UU1xyXG4gKiBGT1JNIC0gQ0FUIENPTU1VTklUWVxyXG4gKi9cclxuXHJcbi4jeyRuYW1lfS0tY2F0LWNvbW11bml0eXtcclxuICAgIC8qXHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHJcbiAgICAgKi9cclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRwbGFjZWhvbGQ7XHJcbiAgICAvL3dpZHRoOiAxMDAwcHg7XHJcblxyXG4gICAgLypcclxuICAgID4gZGl2e1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMTAwcHggNDBweDtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxuXHJcbiAgICAgKi9cclxuXHJcbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAgLy8gTEFCRUxcclxuICAgIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgICAuI3skbmFtZX1fX2xhYmVse1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcclxuICAgIH1cclxuXHJcbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAgLy8gQ0FQVElPTlxyXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgIC4jeyRuYW1lfV9fY2FwdGlvbntcclxuICAgICAgICBmb250LXNpemU6IDE1cHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgICAvLyBJTlBVVFxyXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgICAuI3skbmFtZX1fX2lucHV0e1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgIC8vIEhFQURFUlxyXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgIC55b3VyLW93bi1jYXQtaGVhZGVye1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvYmFzZTY0L1NWRy9jYXQtY29tbXVuaXR5LnN2Zyk7XHJcbiAgICAgICAgcGFkZGluZzogMjBweDtcclxuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogNTBweDtcclxuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBib3R0b20gLTEwcHggcmlnaHQgMzBweDtcclxuICAgICAgICBtYXJnaW46IDAgMCAxMHB4O1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTIwcHg7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGJvdHRvbSAtMjRweCByaWdodCA2MHB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nOiA1MHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAueW91ci1vd24tY2F0LWhlYWRlcl9fY29weSB7XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xyXG5cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgIC8vIEZPUk0gR0FMTEVSWVxyXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgIC5mb3JtLWdhbGxlcnl7XHJcbiAgICAgICAgLy9tYXgtd2lkdGg6IDM1MHB4O1xyXG5cclxuICAgICAgICAucGhvdG9ze1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLTEwcHg7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuXHJcbiAgICAgICAgICAgIC5tZWRpYXtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcblxyXG4gICAgICAgICAgICAgICAgLm1lZGlhX19pbWFnZXtcclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBiYWNrZ3JvdW5kKGNvdmVyKTtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtZ3JleTtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2Jhc2U2NC9TVkcvY2F0LWNvbW11bml0eS10aWxlLnBuZyk7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgJiArIC5tZWRpYXtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMzMuMzMzMzMlO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuYnRue1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5jYXQtY29tbXVuaXR5LWZvcm0tY29udGFpbmVyIHtcclxuICAgICAgICBwYWRkaW5nOiAyMHB4O1xyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpe1xyXG4gICAgICAgICAgICBwYWRkaW5nOiA1MHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICB9XHJcblxyXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgIC8vIEZPUk0gREVUQUlMU1xyXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgIC5mb3JtLWRldGFpbHN7XHJcbiAgICAgICAgLypcclxuICAgICAgICB3aWR0aDogNDkwcHg7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA1MHB4O1xyXG4gICAgICAgICovXHJcblxyXG4gICAgICAgIC5idG57XHJcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgfVxyXG5cclxuICAgIHRleHRhcmVhe1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAxNXB4O1xyXG4gICAgICAgIGhlaWdodDogMjQwcHg7XHJcbiAgICB9XHJcbiB9XHJcblxyXG5cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIFNFTEVDVFxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyAuI3skbmFtZX1fX3NlbGVjdHt9XHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBSQURJT1xyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyAuI3skbmFtZX1fX3JhZGlve31cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIENIRUNLQk9YXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIC4jeyRuYW1lfV9fY2hlY2tib3h7fVxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gTEFCRUxcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gLiN7JG5hbWV9X19sYWJlbHt9XHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBCVVRUT05cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gLiN7JG5hbWV9X19idG57fVxyXG4iLCIvKipcclxuICogQ09NUE9ORU5UU1xyXG4gKiBGT1JNIC0gQkFTRVxyXG4gKi9cclxuXHJcbiAuI3skbmFtZX0tLWNlbnRlcntcclxuICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAvL2hlaWdodDogMTAwJTtcclxuXHJcbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAgLy8gSU5QVVRcclxuICAgIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgICAuI3skbmFtZX1fX2lucHV0e1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgICAgIG1heC13aWR0aDogNDAwcHg7IC8vdGhpcyBpcyBhIGJpdCBjaGVlY2t5IHN0aWNraW5nIHRoaXMgaGVyZS5cclxuICAgIH1cclxuXHJcbiAgICAuI3skbmFtZX1fX2J0bntcclxuICAgICAgICAvLyBAZXh0ZW5kICVidG4tdHlwbztcclxuICAgICAgICAvLyBAZXh0ZW5kICVidG4tdGhlbWUtcHJpbWFyeTtcclxuICAgICAgICAvLyBAZXh0ZW5kICVidG4tY29tcDtcclxuICAgIH1cclxuIH1cclxuXHJcblxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gU0VMRUNUXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIC4jeyRuYW1lfV9fc2VsZWN0e31cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIFJBRElPXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIC4jeyRuYW1lfV9fcmFkaW97fVxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gQ0hFQ0tCT1hcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gLiN7JG5hbWV9X19jaGVja2JveHt9XHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBMQUJFTFxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyAuI3skbmFtZX1fX2xhYmVse31cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIEJVVFRPTlxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyAuI3skbmFtZX1fX2J0bnt9XHJcbiIsIi8qKlxyXG4gKiBDT01QT05FTlRTXHJcbiAqIEZPUk0gLSBDT05UQUNUXHJcbiAqL1xyXG5cclxuLiN7JG5hbWV9LS1jb250YWN0e1xyXG4gICAgLy9kaXNwbGF5OiBmbGV4O1xyXG4gICAgLy9mbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAvL21hcmdpbi1sZWZ0OiAtMzBweDtcclxuICAgIC8vcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgLy9qdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcblxyXG4gICAgLmZvcm1fX2l0ZW17XHJcbiAgICAgICAgLy9wYWRkaW5nLWxlZnQ6IDMwcHg7XHJcbiAgICAgICAgLy9tYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgICAgIC8vd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgLy9tYXJnaW46IDAgMCAyMHB4O1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bS1hbmQtdXApe1xyXG4gICAgICAgIC5mb3JtX19pdGVte1xyXG4gICAgICAgICAgICB3aWR0aDogNTAlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKGRlc2stYW5kLXVwKXtcclxuICAgICAgICAuZm9ybV9faXRlbXtcclxuICAgICAgICAgICAgd2lkdGg6IDMzLjMzMzMzJTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmZvcm1fX2l0ZW0tLWhhbGZ7XHJcbiAgICAgICAgICAgIHdpZHRoOiA1MCU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgICAvLyBMQUJFTFxyXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgIC4jeyRuYW1lfV9fbGFiZWx7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuXHJcbiAgICAgICAgJi5yZXF1aXJlZHtcclxuICAgICAgICAgICAgJjphZnRlcntcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcgKic7XHJcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJHNhbnM7XHJcblxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgICAvLyBNRVNTQUdFXHJcbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAgLiN7JG5hbWV9X19tZXNzYWdle1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IDE1MHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgICAvLyBpbmxpbmVcclxuICAgIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4gICAgLypcclxuICAgIC4jeyRuYW1lfV9faW5saW5le1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjVweDtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XHJcblxyXG4gICAgICAgIC4jeyRuYW1lfV9fY2FwdGlvbntcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgKi9cclxuXHJcblxyXG4gICAgcHtcclxuICAgICAgICAvL3BhZGRpbmctbGVmdDogMzBweDtcclxuICAgIH1cclxuXHJcbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAgLy8gQ0FQVElPTlxyXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgIC4jeyRuYW1lfV9fY2FwdGlvbnt9XHJcblxyXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgICAvLyBTRUxFQ1RcclxuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAgLiN7JG5hbWV9X19zZWxlY3R7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgIH1cclxuXHJcbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgIC8vIEJVVFRPTlxyXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgICAuYnRue1xyXG4gICAgICAgIGZsb2F0OiByaWdodDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5maWVsZC12YWxpZGF0aW9uLWVycm9ye1xyXG4gICAgICAgIHBhZGRpbmc6IDEwcHggMCAwO1xyXG4gICAgfVxyXG59XHJcblxyXG5cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIFNFTEVDVFxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyAuI3skbmFtZX1fX3NlbGVjdHt9XHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBSQURJT1xyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyAuI3skbmFtZX1fX3JhZGlve31cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIENIRUNLQk9YXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIC4jeyRuYW1lfV9fY2hlY2tib3h7fVxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gTEFCRUxcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gLiN7JG5hbWV9X19sYWJlbHt9XHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBCVVRUT05cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gLiN7JG5hbWV9X19idG57fVxyXG4iLCIvKipcclxuICogQ09NUE9ORU5UU1xyXG4gKiBGT1JNIC0gTE9HSU5cclxuICovXHJcblxyXG4kbmFtZTogZm9ybTtcclxuXHJcbi4jeyRuYW1lfS0tbG9naW57XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIG1heC13aWR0aDogODIwcHg7XHJcbiAgICBtYXJnaW46IDIwcHggYXV0byAzMHB4O1xyXG5cclxuICAgIGgzLFxyXG4gICAgcHtcclxuICAgICAgICBtYXgtd2lkdGg6IDY1MHB4O1xyXG4gICAgfVxyXG5cclxuICAgIGgze1xyXG4gICAgICAgIEBleHRlbmQgJXRzLTM7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgIH1cclxuXHJcbiAgICBwe1xyXG4gICAgICAgIEBleHRlbmQgJXRzLTg7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjVweDtcclxuICAgIH1cclxuXHJcbiAgICBhe1xyXG4gICAgICAgIGNvbG9yOiAkYnJhbmQtYmx1ZTtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuICAgICAgICBmb250LXNpemU6IDgwJTtcclxuICAgIH1cclxuXHJcbiAgICAuI3skbmFtZX1fX2lucHV0e1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAzMDBweDtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB9XHJcblxyXG4gICAgLiN7JG5hbWV9X19idG57XHJcbiAgICAgICAgLy9taW4td2lkdGg6IDMwMHB4O1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLmZvcm1fX3NvY2lhbC1sb2dpbntcclxuICAgICAgICBidXR0b257XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCAxMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCIvKipcclxuICogQ09NUE9ORU5UU1xyXG4gKiBGT1JNIC0gbGVhdmUtY29tbWVudFxyXG4gKi9cclxuXHJcbi4jeyRuYW1lfS0tbGVhdmUtY29tbWVudHtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gICAgJjpub3QoOm9ubHktY2hpbGQpe1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAyNnB4O1xyXG4gICAgfVxyXG5cclxuICAgIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgICAvLyBJTlBVVFxyXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgIC4jeyRuYW1lfV9faW5wdXR7XHJcbiAgICAgICAgbWFyZ2luOiAyMHB4IDAgMDtcclxuICAgICAgICBwYWRkaW5nOiAxOHB4O1xyXG4gICAgfVxyXG5cclxuICAgIHRleHRhcmVhLiN7JG5hbWV9X19pbnB1dHtcclxuICAgICAgICBtaW4taGVpZ2h0OiAyMDBweDtcclxuICAgICAgICBtYXJnaW46IDIwcHggMCAzMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC4jeyRuYW1lfV9fYnRue1xyXG4gICAgICAgIGZsb2F0OiByaWdodDtcclxuICAgIH1cclxufSIsIi8qKlxyXG4gKiBDT01QT05FTlRTXHJcbiAqIEZPUk0gLSBORVdTTEVUVEVSXHJcbiAqL1xyXG5cclxuLiN7JG5hbWV9LS1uZXdzbGV0dGVye1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgcGFkZGluZy10b3A6IDI0cHg7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMjRweDtcclxuXHJcbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKHdpZGUtYW5kLXVwKXtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgfVxyXG5cclxuICAgIC4jeyRuYW1lfV9fbGFiZWx7XHJcbiAgICAgICAgQGV4dGVuZCAldHMtMjtcclxuICAgICAgICBjb2xvcjogJGJyYW5kLWJsdWU7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8od2lkZS1hbmQtdXApe1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuI3skbmFtZX1fX2lucHV0e1xyXG4gICAgICAgIG1heC13aWR0aDogMzEwcHg7XHJcbiAgICAgICAgbWFyZ2luOiAwIDcwcHggMTVweDtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC10byh3aWRlLWFuZC11cCl7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiAiLCIvKipcclxuICogQ09NUE9ORU5UU1xyXG4gKiBGT1JNIC0gUE9MTFxyXG4gKi9cclxuXHJcbi4jeyRuYW1lfS0tcG9sbHtcclxuXHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogNDRweDtcclxuXHJcbiAgICBsaSB7IHBvc2l0aW9uOiByZWxhdGl2ZTt9XHJcblxyXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgIC8vIENIRUNLQk9YXHJcbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAgLiN7JG5hbWV9X19jaGVja2JveHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiAzcHg7XHJcbiAgICAgICAgbGVmdDogMDtcclxuXHJcbiAgICAgICAgJjphZnRlcntcclxuICAgICAgICAgICAgY29sb3I6ICRicmFuZC1ibGFjaztcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgIC8vIExBQkVMXHJcbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAgLiN7JG5hbWV9X19sYWJlbHtcclxuICAgICAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI2cHg7XHJcbiAgICAgICAgd2hpdGUtc3BhY2U6IGluaXRpYWw7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA0MHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC4jeyRuYW1lfV9fY2hlY2tib3g6Y2hlY2tlZCB+IC4jeyRuYW1lfV9fbGFiZWx7XHJcbiAgICAgICAgZm9udC1zaXplOiAyMnB4O1xyXG4gICAgfVxyXG5cclxuICAgIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgICAvLyBCVVRUT05cclxuICAgIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgICAuI3skbmFtZX1fX2J0bntcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgfVxyXG59XHJcbiIsIi8qKlxyXG4gKiBDT01QT05FTlRTXHJcbiAqIEZPUk0gLSBQUk9GSUxFXHJcbiAqL1xyXG5cclxuLiN7JG5hbWV9LS1wcm9maWxle1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XHJcblxyXG4gICAgLy9wYWRkaW5nOiAyMHB4O1xyXG4gICAgLypcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cclxuICAgICAqL1xyXG5cclxuICAgIC8qXHJcbiAgICAmOmJlZm9yZXtcclxuICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICB3aWR0aDogNThweDtcclxuICAgICAgICBoZWlnaHQ6IDU0cHg7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9iYXNlNjQvU1ZHL2VkaXQtaWNvbi5zdmcpO1xyXG4gICAgICAgIEBpbmNsdWRlIGJhY2tncm91bmQoY29udGFpbik7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgcmlnaHQ6IDEwMHB4O1xyXG4gICAgfVxyXG4gICAgKi9cclxuXHJcblxyXG4gICAgLypcclxuICAgID4gZGl2e1xyXG4gICAgICAgIC8vcGFkZGluZzogMCAxMDBweDtcclxuXHJcbiAgICAgICAgLy8gUHJvZmlsZSBibG9jayBpbWFnZVxyXG4gICAgICAgICY6bnRoLWNoaWxkKDEpe1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG5cclxuICAgICAgICAgICAgJjphZnRlcntcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDU4cHg7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDU0cHg7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvYmFzZTY0L1NWRy9lZGl0LWljb24uc3ZnKTtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJhY2tncm91bmQoY29udGFpbik7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xyXG4gICAgICAgICAgICAgICAgcmlnaHQ6IDEwMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvL1Zpc2libGUgZm9ybSBlbGVtZW50cy5cclxuICAgICAgICAmOm50aC1jaGlsZCgyKXtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvLyBFZGl0IHBhc3N3b3JkIHJldmVhbCBmZWlsZHNcclxuICAgICAgICAvLyBUaGVzZSBoYXZlbid0IGJlZW4gYWdyZWVkIHdpdGggY2xpZW50IHlldC5cclxuICAgICAgICAvLyBTcGVhayB0byBPd2VuLy5OZXRcclxuICAgICAgICAmOm50aC1jaGlsZCgzKXtcclxuICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLy9Uc0NzICYgU2F2ZSBDaGFuZ2VzIGJ1dHRvblxyXG4gICAgICAgICY6bnRoLWNoaWxkKDQpe1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cclxuICAgICAgICAgICAgLmJ0bnsgbWFyZ2luLWxlZnQ6IDIwcHggfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAgKi9cclxuXHJcbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAgLy8gSU1BR0VcclxuICAgIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgICAudXNlci1pY29ue1xyXG4gICAgICAgIEBpbmNsdWRlIHVzZXItaWNvbigxMTBweCk7XHJcbiAgICAgICAgbWluLXdpZHRoOiAxMTBweDtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDI1cHg7XHJcbiAgICB9XHJcblxyXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgIC8vIElOUFVUXHJcbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAgLiN7JG5hbWV9X19pbnB1dHtcclxuICAgICAgLy8gIG1heC13aWR0aDogMjkwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgIC8vIFBBU1NXT1JEXHJcbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAgLiN7JG5hbWV9X19pbnB1dFt0eXBlPVwicGFzc3dvcmRcIl17XHJcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9iYXNlNjQvU1ZHL3BhZGxvY2stdW5sb2NrZWQuc3ZnKTtcclxuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCAxMHB4IHJpZ2h0IDEwcHg7XHJcblxyXG5cclxuICAgICAgICAmLmxvY2tlZHtcclxuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogd2hpdGU7XHJcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA1M3B4O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2Jhc2U2NC9TVkcvcGFkbG9jay1sb2NrZWQuc3ZnKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgIC8vIExBQkVMXHJcbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAgLiN7JG5hbWV9X19sYWJlbHtcclxuICAgICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xyXG4gICAgICAgIG1pbi13aWR0aDogMTAwcHg7XHJcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiAkY2F0cy1tZWQ7XHJcbiAgICB9XHJcblxyXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgIC8vIENBUFRJT05cclxuICAgIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgICAuI3skbmFtZX1fX2NhcHRpb257XHJcbiAgICAgICAgZm9udC1zaXplOiAxNXB4O1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiAkY2F0cztcclxuICAgICAgICBtYXJnaW4tdG9wOiA3cHg7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogN3B4O1xyXG4gICAgfVxyXG5cclxuICAgIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgICAvLyBCVVRUT05cclxuICAgIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgICAuI3skbmFtZX1fX2J0bntcclxuICAgIH1cclxuXHJcbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAgLy8gR1JJRFxyXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgIC5ncmlkX19pdGVte1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIH1cclxufVxyXG4iLCIvKipcclxuICogQ09NUE9ORU5UU1xyXG4gKiBGT1JNIC0gU0VBUkNIXHJcbiAqL1xyXG5cclxuJG5hbWU6IGZvcm07XHJcblxyXG5cclxuLmJ0bi0tc2VhcmNoOmhvdmVye1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG4uI3skbmFtZX0tLXNlYXJjaCB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBwYWRkaW5nLXRvcDogMHB4O1xyXG5cclxuICAgIC4jeyRuYW1lfV9faW5wdXQge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIG1heC13aWR0aDogMDtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIHRvcDogLTRweDtcclxuICAgICAgICBsZWZ0OiA3MHB4O1xyXG4gICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDtcclxuICAgICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LXB1cnBsZSAhaW1wb3J0YW50O1xyXG4gICAgICAgIEBpbmNsdWRlIGFuaW1hdGUoYWxsIDIwMG1zKTtcclxuICAgIH1cclxuICAgIC8vIC4jeyRuYW1lfV9fc3VibWl0LFxyXG4gICAgLiN7JG5hbWV9X19idG4ge1xyXG4gICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgJiArIC4jeyRuYW1lfV9faW5wdXQge1xyXG4gICAgICAgICAgICAgICAgbGVmdDogNzBweDtcclxuICAgICAgICAgICAgICAgIHRvcDogLTRweDtcclxuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyOiAwcHg7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuI3skbmFtZX1fX3N1Ym1pdCB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICAmLmlzLWFjdGl2ZSB7XHJcbiAgICAgICAgLiN7JG5hbWV9X19pbnB1dCB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAwcHg7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogMzAwcHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMTJweDtcclxuICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgLypib3JkZXI6IDFweCBzb2xpZCByZ2JhKDk0LCA5NCwgOTQsIDAuMjUpOyovXHJcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCA5cHggM3B4IHJnYmEoOTQsIDk0LCA5NCwgMC4xNSk7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XHJcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRmb3JtLWlucHV0LWJvcmRlciAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgICAgICAvKlxyXG4gICAgICAgIC4jeyRuYW1lfV9fc3VibWl0eyBkaXNwbGF5OiBmbGV4OyB9XHJcbiAgICAgICAgLiN7JG5hbWV9X19idG57IGRpc3BsYXk6IG5vbmU7IH1cclxuXHJcbiAgICAgICAgICovXHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG4uI3skbmFtZX0tLXNlYXJjaC1taW5pIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHBhZGRpbmctdG9wOiA0cHg7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgLiN7JG5hbWV9X19pbnB1dCB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICBib3JkZXItY29sb3I6IHdoaXRlO1xyXG4gICAgICAgIHRvcDogNHB4O1xyXG4gICAgICAgIHJpZ2h0OiA0MHB4O1xyXG4gICAgICAgIGNvbG9yOiAkYnJhbmQtYmxhY2s7XHJcbiAgICB9XHJcblxyXG4gICAgLiN7JG5hbWV9X19zdWJtaXQge1xyXG4gICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgICAgIGNvbG9yOiAkYnJhbmQtYmx1ZTtcclxuICAgICAgICBib3gtc2hhZG93OiAwIDAgOXB4IDNweCByZ2JhKDk0LCA5NCwgOTQsIDAuMTUpO1xyXG4gICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG5cclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMzZweDtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDVweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtZ3JleTtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiIsIi8qKlxyXG4gKiBDT01QT05FTlRTXHJcbiAqIFNFTEVDVElPTiBCT1hcclxuICovXHJcblxyXG4gXHJcbiAvLy0tLS0tLS0tLS0tLS0tLS1cclxuIC8vIEJMT0NLIE1PRElGSUVSXHJcbiAvLy0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi4jeyRuYW1lfS0tc2VsZWN0aW9uIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgIHBhZGRpbmc6IDIwcHggMTVweDtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIG1pbi1oZWlnaHQ6IDMwMHB4O1xyXG5cclxuICAgIEBleHRlbmQgJWhvdmVyLXNoYWRvdy1saWdodDtcclxuXHJcbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bS1hbmQtdXApIHtcclxuICAgICAgICBwYWRkaW5nOiA0MHB4IDMwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgcCB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGllLWZhbGxiYWNrKCkge1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAvLy0tLS0tLS0tLS1cclxuICAgIC8vIEVMRU1FTlRcclxuICAgIC8vLS0tLS0tLS0tLVxyXG4gICAgLiN7JG5hbWV9X19pbnB1dCB7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIG1heC13aWR0aDogMzAwcHg7XHJcbiAgICAgICAgY29sb3I6ICRicmFuZC1ibGFjaztcclxuICAgICAgICAvLyBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgfVxyXG4gICAgLy8tLS0tLS0tLS0tXHJcbiAgICAvLyBFTEVNRU5UXHJcbiAgICAvLy0tLS0tLS0tLS1cclxuICAgIC4jeyRuYW1lfV9fYnRuIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgfVxyXG5cclxuICAgICYuaXMtc2VsZWN0ZWQge1xyXG4gICAgICAgIC4jeyRuYW1lfV9fYnRuIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuICAgICAgICAgICAgY29sb3I6ICRicmFuZC1ibGFjaztcclxuXHJcbiAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgY29udGVudDogJ1NlbGVjdGVkJztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmOm5vdCguaXMtc2VsZWN0ZWQpIHtcclxuICAgICAgICAuI3skbmFtZX1fX2J0biB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1ibHVlO1xyXG4gICAgICAgICAgICBjb2xvcjogd2hpdGU7XHJcblxyXG4gICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICdQbGVhc2UgU2VsZWN0JztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAuI3skbmFtZX1fX2J0biB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICRicmFuZC1ibGFjaztcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vLy0tLS0tLS0tLS1cclxuLy8gUkVMQVRFRFxyXG4vLy0tLS0tLS0tLS1cclxuXHJcbltkYXRhLXNlbGVjdF17XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbn1cclxuIFxyXG5cclxuIiwiLyoqXHJcbiAqIENPTVBPTkVOVFNcclxuICogRk9STSAtIEZJTkQgQSBTSE9QXHJcbiAqL1xyXG5cclxuICRuYW1lOiBmb3JtO1xyXG5cclxuLiN7JG5hbWV9LS1maW5kLWEtY2F0IHtcclxuICAgIC8qXHJcbiAgICAuI3skbmFtZX1fX2lucHV0e1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIH1cclxuXHJcbiAgICAuI3skbmFtZX1fX2J0bntcclxuICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgID4gZGl2e1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0tYW5kLXVwKXtcclxuXHJcbiAgICAgICAgLiN7JG5hbWV9X19pbnB1dHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgID4gZGl2e1xyXG4gICAgICAgICAgICB3aWR0aDogMjAlO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICovXHJcblxyXG4gICAgLmZvcm1fX2lucHV0IHtcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkZm9ybS1pbnB1dC1ib3JkZXIgIWltcG9ydGFudDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGUgIWltcG9ydGFudDtcclxuICAgIH1cclxufVxyXG4uZm9ybV9fYnRuLS1maW5kLWEtY2F0e1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gICY6aG92ZXIge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRicmFuZC1waW5rO1xyXG4gICAgICBjb2xvcjokd2hpdGU7XHJcbiAgfVxyXG59XHJcbiIsIi8qKlxyXG4gKiBDT01QT05FTlRTXHJcbiAqIEZPUk0gLSBGSU5EIEEgU0hPUFxyXG4gKi9cclxuXHJcbi4jeyRuYW1lfS0tZmluZC1hLWNhdC1iYW5uZXJ7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XHJcbiAgICBwYWRkaW5nOiAyMHB4IDE1cHg7XHJcbiAgICBtYXJnaW46IDAgYXV0bztcclxuXHJcbiAgICAuI3skbmFtZX1fX2xhYmVsLS1maW5kLWEtY2F0e1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcclxuICAgICAgICBwYWRkaW5nLXRvcDogOTBweDtcclxuICAgICAgICB3aWR0aDogMjE1cHg7XHJcbiAgICAgICAgaGVpZ2h0OiAwO1xyXG4gICAgfVxyXG5cclxuICAgIC4jeyRuYW1lfV9faW5wdXR7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC4jeyRuYW1lfV9fYnRue1xyXG4gICAgICAgIC8vIEBleHRlbmQgJWJ0bi10eXBvO1xyXG4gICAgICAgIC8vIEBleHRlbmQgJWJ0bi10aGVtZS1wcmltYXJ5O1xyXG4gICAgICAgIC8vIEBleHRlbmQgJWJ0bi1jb21wLWxhcmdlO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcblxyXG4gICAgPiBkaXZ7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bS1hbmQtdXApe1xyXG4gICAgICAgIG1heC13aWR0aDogNzUwcHg7XHJcblxyXG4gICAgICAgIC4jeyRuYW1lfV9fbGFiZWx7XHJcbiAgICAgICAgICAgIC8vIHdpZHRoOiAzNCU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuI3skbmFtZX1fX2lucHV0e1xyXG4gICAgICAgICAgICB3aWR0aDogNjMlO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xyXG4gICAgICAgICAgICBhbGlnbi1zZWxmOiBmbGV4LWVuZDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgID4gZGl2e1xyXG4gICAgICAgICAgICB3aWR0aDogNDAlO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4gIiwiLyoqXHJcbiAqIENPTVBPTkVOVFNcclxuICogRk9STSAtIEZJTkQgQSBTSE9QXHJcbiAqL1xyXG5cclxuICRuYW1lOiBmb3JtO1xyXG5cclxuLiN7JG5hbWV9LS1vcHBzIHtcclxuICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcbiAgICBwYWRkaW5nLXRvcDogNDBweDtcclxuICAgIHBhZGRpbmctYm90dG9tOiA0MHB4O1xyXG5cclxuICAgIC5mb3JtX19zZWxlY3QtLW5hcnJvdyB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgIC5mb3JtX19zZWxlY3QsXHJcbiAgICAuZm9ybV9faW5wdXQge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGZvcm0taW5wdXQtYm9yZGVyICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgLmZvcm1fX2J0biB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcGluaztcclxuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgcmVzcG9uZC10byh3aWRlLWFuZC11cCkge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG5cclxuICAgICAgICAuZm9ybV9fdG93biB7XHJcbiAgICAgICAgICAgIHdpZHRoOiA0NSU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZm9ybV9fZGlzdGFuY2Uge1xyXG4gICAgICAgICAgICB3aWR0aDogMjUlO1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5mb3JtX19idG4ge1xyXG4gICAgICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLypcclxuICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8od2lkZS1hbmQtdXApe1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgICAgPiAuI3skbmFtZX1fX2lucHV0e1xyXG4gICAgICAgICAgICB3aWR0aDogNjUlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLiN7JG5hbWV9X19zZWxlY3R7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA1JTtcclxuICAgICAgICAgICAgbWluLXdpZHRoOiAzMCU7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IDE4cHggdG9wIDIwcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuI3skbmFtZX1fX2J0bntcclxuICAgICAgICAgICAgLy8gQGV4dGVuZCAlYnRuLXR5cG87XHJcbiAgICAgICAgICAgIC8vIEBleHRlbmQgJWJ0bi10aGVtZS1wcmltYXJ5O1xyXG4gICAgICAgICAgICAvLyBAZXh0ZW5kICVidG4tY29tcC1sYXJnZTtcclxuICAgICAgICAgICAgLy8gbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICBib3R0b206IDQwcHg7XHJcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgPiBkaXZ7XHJcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAyODBweCk7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuXHJcbiAgICAgICAgICAgID4gZGl2e1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDMzLjMzMzMzJTtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0tYW5kLXVwKXtcclxuXHJcblxyXG4gICAgICAgID4gZGl2e1xyXG4gICAgICAgICAgICAvLyB3aWR0aDogMjUlO1xyXG4gICAgICAgICAgICAvLyBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAgKi9cclxufVxyXG4iLCJcclxuXHJcbi5mb3JtLS1maW5kLWEtc2hvcHtcclxuIC5mb3JtX19pbnB1dCB7XHJcbiAgIG1heC13aWR0aDogMzAwcHg7XHJcbiAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgIGJvcmRlci1yYWRpdXM6NnB4O1xyXG4gICBAbWVkaWEgKG1pbi13aWR0aDogMzc1cHgpe1xyXG4gICAgIG1hcmdpbi1yaWdodDogMjBweDtcclxuICAgfVxyXG4gfVxyXG4gIC5mb3JtX19idG57XHJcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gIH1cclxufVxyXG4iLCJcclxuLmZvcm0tLXN1YnNjcmlwdGlvbntcclxuICBAaW5jbHVkZSByZXNwb25kLXRvKHdpZGUtYW5kLXVwKXtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgfVxyXG5cclxuICAuZm9ybV9faGVhZGluZ3tcclxuICAgIG1hcmdpbjogMCAwIDFlbTtcclxuICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8od2lkZS1hbmQtdXApe1xyXG4gICAgICBtYXJnaW46IDA7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLmZvcm1fX3N1YnNjcmlwdGlvbi10eXBle1xyXG4gIHBhZGRpbmc6IDEzNnB4IDIwcHggMjBweDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtZ3JleTtcclxuICBtYXgtd2lkdGg6IDIyNnB4O1xyXG4gIG1hcmdpbjogMCBhdXRvIDJlbTtcclxuXHJcbiAgLy8gYm94LXNoYWRvdzogMCAwIDEwcHggM3B4IHJnYmEoOTQsIDk0LCA5NCwgMC4yNSk7XHJcbiAgLy9tYXJnaW46IDAgNDBweCAwIDIwcHg7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICBAaW5jbHVkZSByZXNwb25kLXRvKHdpZGUtYW5kLXVwKXtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgd2lkdGg6IDIyNnB4O1xyXG4gICAgbWFyZ2luOiAwIDQwcHggMCAyMHB4O1xyXG4gIH1cclxuXHJcbiAgJjpiZWZvcmV7XHJcbiAgICBjb250ZW50OiAnJztcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgd2lkdGg6IDEyMHB4O1xyXG4gICAgaGVpZ2h0OiA4MHB4O1xyXG4gICAgY29sb3I6ICRicmFuZC1ibHVlO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAyNXB4O1xyXG4gICAgbGVmdDogNTAlO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xyXG4gICAgZm9udC1zaXplOiA5MHB4O1xyXG4gIH1cclxuXHJcbiAgJltkYXRhLXNlbGVjdC1ib3g9XCJGb3JNZVwiXTpiZWZvcmV7XHJcbiAgICBAaW5jbHVkZSBtZS1pY29uO1xyXG4gICAgZm9udC1zaXplOiA5NXB4O1xyXG4gIH1cclxuICAmW2RhdGEtc2VsZWN0LWJveD1cIkZvclVzXCJdOmJlZm9yZXsgQGluY2x1ZGUgZmFtaWx5LWljb247IH1cclxuICAmW2RhdGEtc2VsZWN0LWJveD1cIkFHaWZ0XCJdOmJlZm9yZXsgQGluY2x1ZGUgZ2lmdC1pY29uOyB9XHJcblxyXG4gIC5mb3JtX19zZWxlY3R7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgY29sb3I6ICRicmFuZC1ibGFjaztcclxuICAgIGZvbnQtZmFtaWx5OiAkY2F0cy1ib2xkO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgZm9udC1zaXplOiAyMHB4O1xyXG5cclxuICAgICY6YmVmb3Jle1xyXG4gICAgICBjb250ZW50OiAnR2FycnknO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIkbmFtZTogc2FjO1xyXG5cclxuLiN7JG5hbWV9X19zZWN0aW9uIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgcGFkZGluZzogMWVtIDAgMDtcclxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkbGlnaHQtZ3JleTtcclxuXHJcbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bS1hbmQtdXApIHtcclxuICAgICAgICBwYWRkaW5nOiA0ZW0gMDtcclxuICAgIH1cclxuXHJcbiAgICAuI3skbmFtZX1fX3RpdGxlIHtcclxuICAgICAgICBmb250LXNpemU6IDIycHg7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgbWFyZ2luOiAxZW07XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8obWVkaXVtLWFuZC11cCkge1xyXG4gICAgICAgICAgICBtYXJnaW46IDAgMCAyZW07XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC4jeyRuYW1lfV9fc3VidGl0bGUge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTdweDtcclxuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgIH1cclxuXHJcbiAgICAuI3skbmFtZX1fX3dyYXAge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblxyXG5cclxuICAgICAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bS1hbmQtdXApIHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYuaXMtaGlkZGVuIHtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5mbGV4X19pdGVtIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMWVtO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmJ0biB7XHJcbiAgICAgICAgICAgIC8qbWFyZ2luLWJvdHRvbTogMWVtOyovXHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuanMtYnJhbmNoLXNlYXJjaC1wb3N0Y29kZS1idG4ge1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMWVtO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaW5wdXRbIHR5cGU9J3RleHQnXSB7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogNTQwcHhcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgZmllbGRzZXQge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIH1cclxuICAgIC8vLS0tLS0tLS0tLVxyXG4gICAgLy8gRUxFTUVOVFxyXG4gICAgLy8tLS0tLS0tLS0tXHJcbiAgICAuZm9ybV9fbGFiZWwge1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6ICRzYW5zO1xyXG4gICAgfVxyXG4gICAgLy8tLS0tLS0tLS0tXHJcbiAgICAvLyBFTEVNRU5UXHJcbiAgICAvLy0tLS0tLS0tLS1cclxuICAgIC4jeyRuYW1lfV9fYW1vdW50IHtcclxuICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICAgICAgb3V0bGluZTogbm9uZTtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICAgIHBhZGRpbmc6IDEwcHggMjNweDtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBsZXR0ZXItc3BhY2luZzogLjAzcmVtO1xyXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNkYWMwZDggIWltcG9ydGFudDtcclxuICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgd2lkdGg6IDMyJTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOjZweDtcclxuICAgICAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bS1hbmQtdXApIHtcclxuICAgICAgICAgICAgbWFyZ2luOiAwIDAuNWVtO1xyXG4gICAgICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYuYWN0aXZlIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LXB1cnBsZTtcclxuICAgICAgICAgICAgY29sb3I6ICRicmFuZC1waW5rO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuI3skbmFtZX1fX2Ftb3VudC0tb3RoZXIge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG5cclxuICAgICAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bS1hbmQtdXApIHtcclxuICAgICAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6ICdcXDAwQTMnO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaW5wdXQge1xyXG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMC41ZW07XHJcbiAgICAgICAgICAgIHdpZHRoOiAxODhweDtcclxuXHJcbiAgICAgICAgICAgICY6OnBsYWNlaG9sZGVyIHsgLyogQ2hyb21lLCBGaXJlZm94LCBPcGVyYSwgU2FmYXJpIDEwLjErICovXHJcbiAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7IC8qIEZpcmVmb3ggKi9cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5hY3RpdmUge1xyXG4gICAgICAgICAgICBpbnB1dCB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJyYW5kLWJsYWNrO1xyXG5cclxuICAgICAgICAgICAgICAgICY6OnBsYWNlaG9sZGVyIHsgLyogQ2hyb21lLCBGaXJlZm94LCBPcGVyYSwgU2FmYXJpIDEwLjErICovXHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRicmFuZC1ibGFjaztcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBhOm5vdCguYnRuKSB7XHJcbiAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgIH1cclxuXHJcbiAgICBidXR0b25bdHlwZT1cInN1Ym1pdFwiXSB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxZW07XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8obWVkaXVtLWFuZC11cCkge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyZW07XHJcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLnNhY19fc2VjdGlvbi0tYnJhbmNoIHtcclxuICAgIC5idG4ge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM1ZTVlNWU7XHJcbiAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgYm9yZGVyOiAjZmZmIDFweCBzb2xpZDtcclxuICAgICAgICBmb250LWZhbWlseTogJHNhbnM7XHJcbiAgICAgICAgcGFkZGluZzogN3B4IDE4cHg7XHJcbiAgICAgICAgZm9udC1zaXplOiAxZW07XHJcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG4gICAgICAgICAgICBjb2xvcjogIzVlNWU1ZTtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5idG4tLWJsdWUge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcbiAgICAgICAgY29sb3I6ICM1ZTVlNWU7XHJcbiAgICAgICAgYm9yZGVyOiAjZmZmIDFweCBzb2xpZDtcclxuICAgICAgICBmb250LWZhbWlseTogJHNhbnM7XHJcbiAgICAgICAgcGFkZGluZzogN3B4IDE4cHg7XHJcbiAgICAgICAgZm9udC1zaXplOiAxZW07XHJcbiAgICB9XHJcbn1cclxuXHJcbi5qcy1zcG9uc29yLWNhdC1zbGlkZXIgLnNsaWNrLWRvdHMge1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiBhdXRvO1xyXG5cclxuICAgIGxpIHtcclxuICAgICAgICBoZWlnaHQ6IDEwcHg7XHJcbiAgICAgICAgd2lkdGg6IDEwcHg7XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG4uanMtc3BvbnNvci1jYXQtc2xpZGVyIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblxyXG4gICAgLnNsaWNrLWFycm93IHtcclxuICAgICAgICBoZWlnaHQ6IDEwMHB4O1xyXG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAwcHg7XHJcbiAgICAgICAgdG9wOiB1bnNldDtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtYmxhY2s7XHJcblxyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICB0b3A6IHVuc2V0O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtYmxhY2s7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuc2xpY2stZG90cyB7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwcHggIWltcG9ydGFudDtcclxuXHJcbiAgICAgICAgLnNsaWNrLWFjdGl2ZSB7XHJcbiAgICAgICAgICAgIGJ1dHRvbiB7XHJcbiAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1ibGFjaztcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgbGkge1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogNXB4O1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcclxuXHJcbiAgICAgICAgICAgIGJ1dHRvbiB7XHJcbiAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNFN0U3RTU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5zcG9uc29yLWJpbyB7XHJcbiAgICBoMyB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgIH1cclxuXHJcbiAgICAubWluaS1iaW8ge1xyXG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICB9XHJcblxyXG4gICAgcCB7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgIH1cclxuXHJcbiAgICAubG9naW4tYmFyIHtcclxuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgfVxyXG59XHJcblxyXG4uanMtc2Nyb2xsLXRvLWZvcm0ge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuXHJcbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bS1hbmQtdXApIHtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgIH1cclxufVxyXG5cclxuLmpzLXNwb25zb3ItY2F0LXNsaWRlci1tb2JpbGUge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGp1c3RpZnktY29udGVudDogbm9ybWFsICFpbXBvcnRhbnQ7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cclxuICAgIC5zbGljay1hcnJvdyB7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDBweDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMDBweDtcclxuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMHB4O1xyXG4gICAgICAgIHRvcDogdW5zZXQ7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLWJsYWNrO1xyXG5cclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgdG9wOiB1bnNldDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLWJsYWNrO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnNsaWNrLWRvdHMge1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMHB4O1xyXG5cclxuICAgICAgICAuc2xpY2stYWN0aXZlIHtcclxuICAgICAgICAgICAgYnV0dG9uIHtcclxuICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLWJsYWNrO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xyXG5cclxuICAgICAgICAgICAgYnV0dG9uIHtcclxuICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0U3RTdFNTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuXHJcbiNzdGFydFNwb25zb3Ige1xyXG4gICAgLnJhZGlvLWNvbnRhaW5lciB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcclxuXHJcbiAgICAgICAgLnNwb25zb3ItcmFkaW8ge1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbiAgICAgICAgICAgIGhlaWdodDogZml0LWNvbnRlbnQ7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblxyXG4gICAgICAgICAgICAuZm9ybV9fbGFiZWwge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmZvcm1fX3JhZGlvIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiByYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCByZ2IoMTIyIDI3IDExNCkgNTUlLCByZ2IoOTQsIDk0LCA5NCkgNjMlLCByZ2IoOTQsIDk0LCA5NCkgNTklLCByZ2IoMjU1LCAyNTUsIDI1NSkgNzAlKTtcclxuICAgICAgICBib3JkZXI6IG5vbmU7XHJcblxyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2IoMjU1LDI1NSwyNTUpO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAtbW96LXJhZGlhbC1ncmFkaWVudChjaXJjbGUsIHJnYigyNTAgMjMwIDI1MCkgNTUlLCByZ2IoOTQsIDk0LCA5NCkgNjMlLCByZ2IoOTQsIDk0LCA5NCkgNTklLCByZ2IoMjU1LCAyNTUsIDI1NSkgNzAlKTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogLXdlYmtpdC1yYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCByZ2IoMjUwIDIzMCAyNTApIDU1JSwgcmdiKDk0LCA5NCwgOTQpIDYzJSwgcmdiKDk0LCA5NCwgOTQpIDU5JSwgcmdiKDI1NSwgMjU1LCAyNTUpIDcwJSk7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudChjaXJjbGUsIHJnYigyNTAgMjMwIDI1MCkgNTUlLCByZ2IoOTQsIDk0LCA5NCkgNjMlLCByZ2IoOTQsIDk0LCA5NCkgNTklLCByZ2IoMjU1LCAyNTUsIDI1NSkgNzAlKTtcclxuICAgICAgICAgICAgaGVpZ2h0OiAyNHB4O1xyXG4gICAgICAgICAgICB3aWR0aDogMjVweDtcclxuICAgICAgICAgICAgbWFyZ2luOiAwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OXB4KSB7XHJcbiAgICAuc3BvbnNvci1iaW8ge1xyXG4gICAgICAgIGgzIHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5taW5pLWJpbyB7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHAge1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAubG9naW4tYmFyIHtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAjc3RhcnRTcG9uc29yIHtcclxuICAgICAgICAucmFkaW8tY29udGFpbmVyIHtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5qcy1zcG9uc29yLWNhdC1zbGlkZXItdGl0bGUge1xyXG4gICAgd2lkdGg6IDk1JTtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIG1hcmdpbi10b3A6IC0xMHB4O1xyXG5cclxuICAgIGgzIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAjNWU1ZTVlO1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZTtcclxuICAgICAgICBwYWRkaW5nOiAxMHB4IDIwcHg7XHJcbiAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6IFRhaG9tYSxHZW5ldmEsc2Fucy1zZXJpZjtcclxuICAgICAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bS1hbmQtdXApIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG59XHJcblxyXG4uc3BvbnNvci1iaW8ge1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG5cclxuICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8obWVkaXVtLWFuZC11cCkge1xyXG4gICAgICAgIHRleHQtYWxpZ246IGF1dG87XHJcbiAgICB9XHJcblxyXG4gICAgaDMge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8obWVkaXVtLWFuZC11cCkge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uanMtc3BvbnNvci1jYXQtc2xpZGVyLW1vYmlsZS5zbGljay1pbml0aWFsaXplZCB7XHJcbiAgICBtYXJnaW4tbGVmdDogMDtcclxuXHJcbiAgICAuZ3JpZF9faXRlbSB7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gICAgfVxyXG59XHJcblxyXG4uanMtc3BvbnNvci1jYXQtc2xpZGVyLW1vYmlsZSB7XHJcbiAgICAuc2xpY2stZG90cyB7XHJcbiAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IGF1dG87XHJcblxyXG4gICAgICAgIGxpIHtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgICAgICAgICB3aWR0aDogMTBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIiwi77u/I2V2ZW50X19yZXN1bHRzX2xpc3QgZm9ybSAudmlldy1tb3JlLXJlZ2lvbmFsLWV2ZW50cyB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG4jZXZlbnRfX3Jlc3VsdHNfbGlzdCBmb3JtOmxhc3Qtb2YtdHlwZSAudmlldy1tb3JlLXJlZ2lvbmFsLWV2ZW50cyB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxufVxyXG4iLCIvKipcclxuICogQ09NUE9ORU5UU1xyXG4gKiBHYWxsZXJ5XHJcbiAqL1xyXG5cclxuJG5hbWU6IGdhbGxlcnk7XHJcblxyXG5cclxuLy8tLS0tLS0tLVxyXG4vLyBCTE9DS1xyXG4vLy0tLS0tLS0tXHJcbi4jeyRuYW1lfXtcclxuXHJcbn1cclxuXHJcbi8vLS0tLS0tLS0tLVxyXG4vLyBFTEVNRU5UXHJcbi8vLS0tLS0tLS0tLVxyXG4uI3skbmFtZX1fX21haW4taW1hZ2V7XHJcbiAgICBtYXJnaW4tYm90dG9tOiA3cHg7XHJcblxyXG4gICAgZmlndXJlOm5vdCguaXMtYWN0aXZlKXtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG59XHJcblxyXG4uI3skbmFtZX1fX3RodW1ic3tcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgbWFyZ2luLWxlZnQ6IC03cHg7XHJcblxyXG4gICAgLmdyaWRfX2l0ZW17XHJcbiAgICAgICAgbWluLXdpZHRoOiAyNSU7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA3cHg7XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG4vLy0tLS0tLS0tLS0tXHJcbi8vIE1PRElGSUVSXHJcbi8vLS0tLS0tLS0tLS1cclxuIiwiLyoqXHJcbiAqIENPTVBPTkVOVFNcclxuICogSGFtYnVyZ2VyXHJcbiAqIEEgYnV0dG9uIHRvIHRvZ2dsZSB0aGUgc2lkZWJhclxyXG4gKi9cclxuXHJcbiRuYW1lOiBoYW1idXJnZXI7XHJcblxyXG5cclxuLy8tLS0tLS0tLVxyXG4vLyBCTE9DS1xyXG4vLy0tLS0tLS0tXHJcbi4jeyRuYW1lfSB7XHJcbiAgICB3aWR0aDogNDBweDtcclxuICAgIGhlaWdodDogMjZweDtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIGJvcmRlci10b3A6IDRweCBzb2xpZDtcclxuICAgIGJvcmRlci1ib3R0b206IDRweCBzb2xpZDtcclxuICAgIGJvcmRlci1jb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgLy9tYXJnaW4tYm90dG9tOiA3cHg7XHJcbiAgICBAaW5jbHVkZSBhbmltYXRlKGJvcmRlci1jb2xvciAyMDBtcyk7XHJcblxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGhlaWdodDogMHB4O1xyXG4gICAgICAgIGJvcmRlci1ib3R0b206IDRweCBzb2xpZDtcclxuICAgICAgICBib3JkZXItY29sb3I6IGluaGVyaXQ7XHJcbiAgICB9XHJcblxyXG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkaGFtYnVyZ2VyLWhvdmVyLWNvbG9yO1xyXG4gICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIG1lZGlhLXdpZHRoKCRuYXZpZ2F0aW9uLWJyZWFrcG9pbnQpIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG59XHJcbiIsIi8qKlxyXG4gKiBDT01QT05FTlRTXHJcbiAqIE1haW4gTmF2aWdhdGlvblxyXG4gKiBUaGlzIGlzIHRoZSBzaXRlcyBtYWluIGhlYWRlciBuYXZpZ2F0aW9uXHJcbiAqL1xyXG5cclxuJG5hbWU6IG1haW4tbmF2O1xyXG5cclxuLmhlYWRlci1ncm91cF9fbmF2IHtcclxuICAgIG1hcmdpbi1yaWdodDogMHB4O1xyXG4gICAgbWFyZ2luLXRvcDogMTBweDtcclxuICAgIHRyYW5zaXRpb246IG1hcmdpbiAwLjVzO1xyXG59XHJcblxyXG4vLy0tLS0tLS0tXHJcbi8vIEJMT0NLXHJcbi8vLS0tLS0tLS1cclxuLiN7JG5hbWV9IHtcclxuICAgIC5zaXRlLWhlYWRlciAmIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHJcbiAgICAgICAgPiBsaSB7XHJcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICAgICAgY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcblxyXG4gICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1haW4tbmF2aWdhdGlvbi1zdHlsZTtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiBpbmhlcml0O1xyXG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogcGFkZGluZyAwLjVzO1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYW5pbWF0ZShjb2xvciAyMDBtcyk7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuXHJcbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkbGlnaHQtcHVycGxlO1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDZweDtcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogNnB4O1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICA+IGEge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMjBweCAyNHB4O1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICAgICAgICAgICAgICY6YWZ0ZXIsXHJcbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgICAgIHRvcDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgei1pbmRleDogLTE7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiA2cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDZweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcblxyXG4gICAgICAgICAgICAmOmhvdmVyID4gYSB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcblxyXG4gICAgICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYW5pbWF0ZSgodG9wIDIwMG1zLCBvcGFjaXR5IDIwMG1zKSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIiwiLyoqXHJcbiAqIENPTVBPTkVOVFNcclxuICogTWFpbiBOYXZpZ2F0aW9uIGZvciBNb2JpbGVcclxuICogVGhpcyBpcyB0aGUgc2l0ZSdzIG5hdmlnYXRpb24gc29sdXRpb24gZm9yIG1vYmlsZS5cclxuICovXHJcblxyXG4kbmFtZTogbWFpbi1uYXY7XHJcblxyXG5cclxuLy8tLS0tLS0tLVxyXG4vLyBCTE9DS1xyXG4vLy0tLS0tLS0tXHJcbi4jeyRuYW1lfSB7XHJcbiAgICAuc2lkZWJhciAmIHtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgQGluY2x1ZGUgYW5pbWF0ZShhbGwgMzAwbXMpO1xyXG5cclxuICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkc2lkZWJhci1saW5rLWNvbG9yO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblxyXG4gICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMTJweDtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IGluaGVyaXQ7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG5cclxuICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2lkZWJhci1saW5rLWNvbG9yO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICRzaWRlYmFyLWJhY2tncm91bmQtY29sb3I7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJi5oYXMtc3VibmF2IHtcclxuXHJcbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBwbHVzLWljb247XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IGluaGVyaXQ7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAzMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDtcclxuICAgICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDQ0cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICYuaGFzLXN1Ym5hdi0tb3BlbiB7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgID4gdWwge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICA+IGxpIHVsIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHNpZGViYXItYmFja2dyb3VuZC1jb2xvcjtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBmaXhlZDtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgbGVmdDogMTEwJTtcclxuICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGFuaW1hdGUoYWxsIDMwMG1zKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIiwiXHJcblxyXG4ubW9iaWxlLW5hdi1jb250YWluZXIge1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xyXG4gICAgcGFkZGluZzogMWVtO1xyXG4gICAgei1pbmRleDogNTAwO1xyXG4gICAgb3ZlcmZsb3c6IGF1dG87XHJcbiAgICBib3gtc2hhZG93OiAxNXB4IDBweCAyNXB4IDBweCAjMDAwMDAwO1xyXG4gICAgLy8gS2ljayBpbiBhZnRlciBsYXJnZSBtb2JpbGVcclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA0MjZweCkge1xyXG4gICAgICAgIHdpZHRoOiAzMjBweDtcclxuICAgICAgICBsZWZ0OiBhdXRvO1xyXG4gICAgfVxyXG59XHJcblxyXG4uanMtbW9iaWxlLW5hdntcclxuICB0cmFuc2l0aW9uOiAwLjNzIHRyYW5zZm9ybTtcclxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XHJcbiAgJi5pcy1vcGVue1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xyXG5cclxuICAgIC5tb2JpbGUtbmF2X190b3Atcm93e1xyXG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4ubW9iaWxlLW5hdntcclxuXHJcbn1cclxuXHJcbi5tb2JpbGUtbmF2X19maXJzdC10aWVye1xyXG5cclxufVxyXG5cclxuLm1vYmlsZS1uYXZfX2ZpcnN0LXRpZXItbGlzdHtcclxuXHJcbn1cclxuXHJcbi5tb2JpbGUtbmF2X19saW5rIHtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIGZvbnQtZmFtaWx5OiAkY2F0cy1ib2xkO1xyXG4gICAgY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcbiAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICBsaW5lLWhlaWdodDogMjRweDtcclxuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIGNvbG9yOiAkbGlnaHQtcHVycGxlO1xyXG4gICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLm1vYmlsZS1uYXZfX3NlY29uZC10aWVye1xyXG5cclxufVxyXG5cclxuLm1vYmlsZS1uYXZfX3NlY29uZC10aWVyLWxpc3R7XHJcblxyXG59XHJcblxyXG5cclxuLm1vYmlsZS1uYXZfX3RvcC1yb3cge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRicmFuZC1ncmV5O1xyXG4gICAgdHJhbnNpdGlvbjogMC4zcyB0cmFuc2Zvcm07XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XHJcblxyXG4gICAgJi5oYXMtY2hpbGRyZW46YWZ0ZXIge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiK1wiO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDE4cHg7XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgZm9udC1zaXplOiAyNHB4O1xyXG4gICAgICAgIGNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgfVxyXG59XHJcblxyXG4vLyBIZWxwZXIgZm9yIHF1aWNrIGhhbmRsaW5nIG9mIGFsbCB0aWVycyBvZiBuYXYgd2l0aCBjaGlsZHJlblxyXG5cclxuLnN1Yi1uYXZ7XHJcbiAgZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLmhhcy1jaGlsZHJlbiB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgICAgY29udGVudDogXCIrXCI7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogMThweDtcclxuICAgICAgICByaWdodDogMDtcclxuXHJcbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OXB4KSB7XHJcbiAgICAgICAgICAgIHRvcDogMXZ3O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLmlzLWFjdGl2ZSB7XHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiLVwiO1xyXG4gICAgICAgICAgICB0b3A6IDE2cHg7XHJcbiAgICAgICAgICAgIHJpZ2h0OiA0cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5zdWItbmF2LS1pcy1hY3RpdmUge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgfVxyXG59XHJcblxyXG5cclxuXHJcbiIsIi8qKlxyXG4gKiBDT01QT05FTlRTXHJcbiAqIE1lZGlhIC0gQkFTRVxyXG4gKi9cclxuXHJcbiRuYW1lOiBtZWRpYTtcclxuXHJcbi8vLS0tLS0tLS1cclxuLy8gQkxPQ0tcclxuLy8tLS0tLS0tLVxyXG4uI3skbmFtZX17XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB3aWR0aDogMTAwJTtcclxufVxyXG5cclxuQGtleWZyYW1lcyBMQVpZSU57XHJcbiAgICAwJSAgIHsgb3BhY2l0eTogMDsgfVxyXG4gICAgMTAwJSB7IG9wYWNpdHk6IDE7IH1cclxufVxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gRUxFTUVOVCAtIElNQUdFXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIC4jeyRuYW1lfV9faW1hZ2V7fVxyXG5cclxuLy9oaWRlIGltZyB0YWdzIHdoZW4gYmFja2dyb3VuZC1pbWFnZSBpcyB1c2VkIGZvciBkaXNwbGF5aW5nIGNvbnRlbnRcclxuLiN7JG5hbWV9X19pbWFnZVtzdHlsZSo9XCJpbWFnZVwiXSxcclxuLiN7JG5hbWV9X19pbWFnZVtkYXRhLXNyY10sXHJcbi4jeyRuYW1lfV9fc2xpZGVyIFtkYXRhLXNyY117XHJcbiAgICBAaW5jbHVkZSBhc3BlY3QtcmF0aW8oNCwzKTtcclxuICAgIEBpbmNsdWRlIGJhY2tncm91bmQoY292ZXIpO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDA7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG5cclxuICAgIGltZ3sgZGlzcGxheTogbm9uZTsgfVxyXG5cclxuICAgICY6YWZ0ZXJ7XHJcbiAgICAgICAgQGluY2x1ZGUgYW5pbWF0ZShjb2xvciAyMDBtcyk7XHJcbiAgICB9XHJcblxyXG4gICAgJi5pcy12aXNpYmxle1xyXG4gICAgICAgIC8vYW5pbWF0aW9uOiBMQVpZSU4gNTAwbXMgZWFzZS1pbi1vdXQ7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gJjpiZWZvcmV7XHJcbiAgICAvLyAgICAgY29udGVudDogJyc7XHJcbiAgICAvLyAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAvLyAgICAgQGluY2x1ZGUgYmFja2dyb3VuZChjb250YWluKTtcclxuICAgIC8vICAgICBAaW5jbHVkZSBjb3ZlcihhYnNvbHV0ZSk7XHJcbiAgICAvLyAgICAgYmFja2dyb3VuZC1jb2xvcjogIzk5OTtcclxuICAgIC8vICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2Jhc2U2NC9zdmcvY2F0LnN2Zyk7XHJcbiAgICAvLyAgICAgei1pbmRleDogLTE7XHJcbiAgICAvLyAgICAgb3BhY2l0eTogMC4xO1xyXG4gICAgLy8gfVxyXG59XHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIEVMRU1FTlQgLSBDQVBUSU9OXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLiN7JG5hbWV9X19jYXB0aW9ue1xyXG4gICAgY29sb3I6IGluaGVyaXQ7XHJcbiAgICBwYWRkaW5nOiAxNXB4IDE1cHggMjVweDtcclxuXHJcbiAgICBoNHtcclxuICAgICAgICBtYXJnaW46IDEwcHggMCAxNXB4O1xyXG4gICAgfVxyXG5cclxuICAgIGg1e1xyXG4gICAgICAgIEBleHRlbmQgJXRzLTM7XHJcbiAgICAgICAgbWFyZ2luOiAxMHB4IDAgMTVweDtcclxuICAgIH1cclxuXHJcbiAgICBoNntcclxuICAgICAgICBtYXJnaW46IDEwcHggMCAxNXB4O1xyXG4gICAgfVxyXG5cclxuICAgIHA6bm90KC5idG4pe1xyXG4gICAgICAgIEBleHRlbmQgJXRzLTg7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuICAgIH1cclxufVxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gTU9ESUZJRVJTIC0gTkVXIFNQT05TUiBMQVlPVVRcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLiN7JG5hbWV9X19jYXB0aW9uLS1mbG9hdC10aXRsZSB7XHJcbiAgICBwYWRkaW5nOiA0MHB4IDE1cHggMjVweDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAuaGVhZGluZy13cmFwIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiAtMTVweDtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG5cclxuICAgICAgICBoNSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRsaWdodC1wdXJwbGU7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcclxuICAgICAgICAgICAgcGFkZGluZzogMTBweCAyMHB4O1xyXG4gICAgICAgICAgICBjb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuICAgICAgICAgICAgZm9udC1mYW1pbHk6IFRhaG9tYSxHZW5ldmEsc2Fucy1zZXJpZjtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDpib2xkO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOjZweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcDpub3QoLmJ0bikge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6IFRhaG9tYSxHZW5ldmEsc2Fucy1zZXJpZjtcclxuICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgbWluLWhlaWdodDoxMDBweDtcclxuICAgIH1cclxuICAgIC5idG4ge2ZvbnQtc2l6ZToxZW07fVxyXG59XHJcbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAgLy8gTU9ESUZJRVJTIC0gQVNQRUNUIFJBVElPU1xyXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgIC4jeyRuYW1lfS0tMS0xIHtcclxuICAgICAgICAuI3skbmFtZX1fX2ltYWdlIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYXNwZWN0LXJhdGlvKDEsMSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC4jeyRuYW1lfS0tMi0xIHtcclxuICAgICAgICAuI3skbmFtZX1fX2ltYWdlIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYXNwZWN0LXJhdGlvKDIsMSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC4jeyRuYW1lfS0tMy0yIHtcclxuICAgICAgICAuI3skbmFtZX1fX2ltYWdlIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYXNwZWN0LXJhdGlvKDMsMik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC4jeyRuYW1lfS0tNC0zIHtcclxuICAgICAgICAuI3skbmFtZX1fX2ltYWdlIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYXNwZWN0LXJhdGlvKDQsMyk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC4jeyRuYW1lfS0tNS0zIHtcclxuICAgICAgICAuI3skbmFtZX1fX2ltYWdlIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYXNwZWN0LXJhdGlvKDUsMyk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC4jeyRuYW1lfS0tNS00IHtcclxuICAgICAgICAuI3skbmFtZX1fX2ltYWdlIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYXNwZWN0LXJhdGlvKDUsNCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC4jeyRuYW1lfS0tMTAtOSB7XHJcbiAgICAgICAgLiN7JG5hbWV9X19pbWFnZSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGFzcGVjdC1yYXRpbygxMCw5KTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLiN7JG5hbWV9LS0xMC03IHtcclxuICAgICAgICAuI3skbmFtZX1fX2ltYWdlIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYXNwZWN0LXJhdGlvKDEwLDcpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgICAvLyBNT0RJRklFUlMgLSBBQ1RJT05TXHJcbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAgLiN7JG5hbWV9LS1hY3Rpb25zLWxlZnQsXHJcbiAgICAuI3skbmFtZX0tLWFjdGlvbnMtcmlnaHQge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHJcbiAgICAgICAgLiN7JG5hbWV9X19hY3Rpb25zIHtcclxuICAgICAgICAgICAgPiBkaXYge1xyXG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA2MDBweDtcclxuXHJcbiAgICAgICAgICAgICAgICBwIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAkbGluZS1oZWlnaHQgLyAyO1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkY2F0cy1tZWQ7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgLmZvcm0ge1xyXG4gICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogNDAwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogJGxpbmUtaGVpZ2h0IC8gMjtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcblxyXG4gICAgLiN7JG5hbWV9LS1hY3Rpb25zLXJpZ2h0IHtcclxuICAgICAgICAuI3skbmFtZX1fX2FjdGlvbnMge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAgLy8gRUxFTUVOVCAtIEVESVRcclxuICAgIC8vLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfV9fZWRpdCB7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDRweDtcclxuICAgIHJpZ2h0OiA0cHg7XHJcbiAgICB3aWR0aDogMzJweDtcclxuICAgIGhlaWdodDogNDZweDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9iYXNlNjQvU1ZHL2VkaXQtaWNvbi5zdmcpO1xyXG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciB0b3AgNXB4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogM3B4O1xyXG4gICAgYmFja2dyb3VuZC1zaXplOiAyNXB4O1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMjAwbXMgZWFzZS1pbi1vdXQ7XHJcbiAgICBjb2xvcjogJGJyYW5kLWJsdWU7XHJcblxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgICAgY29udGVudDogJ0VESVQnO1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XHJcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIH1cclxuXHJcbiAgICAuI3skbmFtZX0tLWNhbi1lZGl0ICYge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBhbGw7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1ibHVlO1xyXG4gICAgICAgICAgICBjb2xvcjogd2hpdGU7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgIC8vIEVMRU1FTlQgLSBERUxFVEVcclxuICAgIC8vLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfV9fZGVsZXRlIHtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogNHB4O1xyXG4gICAgcmlnaHQ6IDRweDtcclxuICAgIHdpZHRoOiAzMnB4O1xyXG4gICAgaGVpZ2h0OiAzMnB4O1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9iYXNlNjQvU1ZHL3RyYXNoLWNhbi5zdmcpO1xyXG4gICAgYmFja2dyb3VuZC1zaXplOiA4MCU7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XHJcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMjAwbXMgZWFzZS1pbi1vdXQ7XHJcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuXHJcbiAgICAuI3skbmFtZX0tLWhhcy1pbWFnZTpob3ZlciAmIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBwb2ludGVyLWV2ZW50czogYWxsO1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcbiAgICB9XHJcbn1cclxuICAgIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgICAvLyBNT0RJRklFUlMgLSBTRUxFQ1RcclxuICAgIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfS0tc2VsZWN0IHtcclxuICAgIC8vIFVzZWQgd2l0aCBsaW5rcyBpbiB0aGUgZG9uYXRpb25zIHNlY3Rpb25cclxuICAgICYuaXMtYWN0aXZlIHtcclxuICAgICAgICBAZXh0ZW5kICVob3Zlci1zaGFkb3ctbGlnaHQ7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLWJsdWU7XHJcbiAgICAgICAgY29sb3I6IHdoaXRlO1xyXG4gICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgY29sb3I6ICRicmFuZC1ibGFjaztcclxuICAgICAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5cclxuICAgIC4jeyRuYW1lfV9faW1hZ2UtLWNhdCB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTdlOGU2O1xyXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvYmFzZTY0L1NWRy9jYXQtY29tbXVuaXR5LXRpbGUucG5nKTtcclxuICAgIH1cclxuICAgIC8vLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgICAvLyBSRUxBVEVEXHJcbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAgLmV4aXN0aW5nLWltYWdlIHtcclxuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcblxyXG4gICAgICAgICYuaXMtZGlzYWJsZWQge1xyXG4gICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgICAgICAgICAgZmlsdGVyOiBncmF5c2NhbGUoMSk7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuNTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG5cclxuXHJcbiAgICAubWVkaWFfX21hZ2F6aW5lLWZvcm0tY29udGFpbmVyIHtcclxuICAgICAgICBtYXgtd2lkdGg6IDMwMHB4O1xyXG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgfVxyXG4iLCIvKipcclxuICogQ09NUE9ORU5UU1xyXG4gKiBNZWRpYSAtIEJBU0VcclxuICovXHJcblxyXG4vLy0tLS0tLS0tLS0tXHJcbi8vIE1PRElGSUVSXHJcbi8vLS0tLS0tLS0tLS1cclxuLiN7JG5hbWV9LS1pbmxpbmUge1xyXG4gICAgd2lkdGg6IGF1dG87XHJcbiAgICBkaXNwbGF5OiBpbmxpbmU7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAkbGluZS1oZWlnaHQ7XHJcbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAgLy8gRUxFTUVOVCAtIElNQUdFXHJcbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAgLiN7JG5hbWV9X19pbWFnZSxcclxuICAgIGltZyB7XHJcbiAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAgLy8gRUxFTUVOVCAtIENBUFRJT05cclxuICAgIC8vLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgICAuI3skbmFtZX1fX2NhcHRpb24ge1xyXG4gICAgICAgIHBhZGRpbmc6IDE1cHggMjBweDtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGxhY2Vob2xkO1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuXHJcbiAgICAgICAgcCB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogOTUlO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS40O1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi4jeyRuYW1lfS0tbGVmdCxcclxuICAgICYuI3skbmFtZX0tLXJpZ2h0IHtcclxuICAgICAgICBtYXgtd2lkdGg6IDUwJTtcclxuICAgICAgICAvLyBBbGlnbiB3aXRoIGNvcHkgd2l0aCByZXNwZWN0IHRvIHRoZSBnbG9iYWwgbGluZSBoZWlnaHRcclxuICAgICAgICBtYXJnaW4tdG9wOiAkbGluZS1oZWlnaHQgLyA0O1xyXG4gICAgICAgIC8vQXZlcmFnZSB0aGUgbWFyZ2luIGJvdHRvbSB3aXRoIGxpbmVoZWlnaHQgbGluZSByZXR1cm5zIHRvIGF2b2lkIGV4Y2Vzc2l2ZSB3aGl0ZXNwYWNlIGF0IGFueSB2aWV3IHdpZHRoIHZzIGltYWdlIHNpemUgdnMgbGluZSByZXR1cm5zXHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJGxpbmUtaGVpZ2h0IC8gMjtcclxuICAgIH1cclxuXHJcbiAgICAmLiN7JG5hbWV9LS1sZWZ0IHtcclxuICAgICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6ICRsaW5lLWhlaWdodDtcclxuICAgIH1cclxuXHJcbiAgICAmLiN7JG5hbWV9LS1yaWdodCB7XHJcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAkbGluZS1oZWlnaHQ7XHJcbiAgICB9XHJcbn1cclxuIiwiLyoqXHJcbiAqIENPTVBPTkVOVFNcclxuICogTWVkaWEgLSBMSU5LXHJcbiAqL1xyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gTU9ESUZJRVIgLSBMSU5LXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfS0tbGluayxcclxuLiN7JG5hbWV9LS1saW5rLWJvbGQge1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgLy8gdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAyMDBtcyBlYXNlLWluLW91dDtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBtYXgtd2lkdGg6IDQ2MHB4O1xyXG4gICAgbWFyZ2luOiAwIGF1dG87XHJcblxyXG4gICAgQGluY2x1ZGUgcmVzcG9uZC10byh3aWRlLWFuZC11cCkge1xyXG4gICAgICAgIG1heC13aWR0aDogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICA+IGEge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG5cclxuICAgIC5kYXRlIHtcclxuICAgICAgICBjb2xvcjogJGJyYW5kLWxpZ2h0LWJsdWU7XHJcbiAgICB9XHJcblxyXG4gICAgLiN7JG5hbWV9X19pbWFnZSB7XHJcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNDAwbXM7XHJcbiAgICB9XHJcbiAgICAvKlxyXG4gICAgLiN7JG5hbWV9X19jYXB0aW9ue1xyXG4gICAgICAgIGhlaWdodDogNTAlO1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA4MHB4O1xyXG5cclxuICAgICAgICAuYnRue1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGJvdHRvbTogMjBweDtcclxuICAgICAgICAgICAgbGVmdDogNTAlO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XHJcbiAgICAgICAgICAgIHdoaXRlLXNwYWNlOm5vd3JhcDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgICovXHJcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICAvKmJhY2tncm91bmQtY29sb3I6ICRwbGFjZWhvbGQ7XHJcbiAgICAgICAgY29sb3I6JHdoaXRlOyovXHJcbiAgICAgICAgLypAZXh0ZW5kICVob3Zlci1zaGFkb3ctbGlnaHQ7Ki9cclxuICAgICAgICAvKnRyYW5zaXRpb24tZHVyYXRpb246IDBzOyovXHJcblxyXG4gICAgICAgIC4jeyRuYW1lfV9faW1hZ2Uge1xyXG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLiN7JG5hbWV9LS1saW5rIHtcclxuICAgIC4jeyRuYW1lfV9faW1hZ2Uge1xyXG4gICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDQwMG1zO1xyXG4gICAgICAgIC8qYm9yZGVyOiAxcHggc29saWQgJHBsYWNlaG9sZDsqL1xyXG4gICAgfVxyXG5cclxuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIC4jeyRuYW1lfV9faW1hZ2Uge1xyXG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIFJFTEFURURcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS1cclxuLiN7JG5hbWV9X19mbGFnLFxyXG4uI3skbmFtZX1fX3JlZ2lvbntcclxuICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgcGFkZGluZzogNXB4IDEycHg7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcmVkO1xyXG4gICAgY29sb3I6IHdoaXRlO1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcclxuICAgIGZvbnQtc2l6ZTogODUlO1xyXG4gICAgbGluZS1oZWlnaHQ6IDEyMCU7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG59XHJcblxyXG4uI3skbmFtZX1fX2ZsYWd7XHJcbiAgICB0b3A6IDA7XHJcbiAgICByaWdodDogMDtcclxufVxyXG5cclxuLiN7JG5hbWV9X19yZWdpb257XHJcbiAgICBib3R0b206IDA7XHJcbiAgICBsZWZ0OiA1MCU7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNTAlKSB0cmFuc2xhdGVYKC01MCUpO1xyXG59XHJcbiIsIi8qKlxyXG4gKiBDT01QT05FTlRTXHJcbiAqIE1lZGlhIC0gTElOSyBCT0xEXHJcbiAqL1xyXG5cclxuJG5hbWU6IG1lZGlhO1xyXG5cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gTU9ESUZJRVIgLSBMSU5LIEJPTERcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4uI3skbmFtZX0tLWxpbmstYm9sZCB7XHJcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuXHJcbiAgICAvKiY6bm90KDpob3ZlcikgeyovXHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LXB1cnBsZTtcclxuICAgICAgICBjb2xvcjogJGJyYW5kLWJsYWNrO1xyXG4gICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG4gICAgLyp9Ki9cclxuXHJcbiAgICAuI3skbmFtZX1fX2ltYWdlIHtcclxuICAgICAgICBAaW5jbHVkZSBhc3BlY3QtcmF0aW8oNSwzKTtcclxuICAgIH1cclxuXHJcbiAgICAuI3skbmFtZX1fX2NhcHRpb24ge1xyXG4gICAgICAgIC8vaGVpZ2h0OiA1MCU7XHJcbiAgICAgICAgLy9wYWRkaW5nLWJvdHRvbTogODBweDtcclxuICAgICAgICAvLy5idG57XHJcbiAgICAgICAgLy8gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIC8vICAgIGJvdHRvbTogMjBweDtcclxuICAgICAgICAvLyAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XHJcbiAgICAgICAgLy99XHJcblxyXG4gICAgICAgIGg1IHtcclxuICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDUwJTtcclxuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTc1cHg7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgcmdiYSgkYnJhbmQtYmxhY2ssIDAuNSk7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IDIwcHggYXV0byAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5idG46aG92ZXJ7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6JHdoaXRlO1xyXG4gICAgICAgICAgICBjb2xvcjokYnJhbmQtcGluaztcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcblxyXG4gICAgLyomOmhvdmVyIHtcclxuICAgICAgICAuI3skbmFtZX1fX2NhcHRpb24gaDU6YWZ0ZXIge1xyXG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoJGJyYW5kLWJsYWNrLCAwLjUpO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuICAgICAgICB9XHJcbiAgICB9Ki9cclxufVxyXG4iLCIvKipcclxuICogQ09NUE9ORU5UU1xyXG4gKiBNZWRpYSAtIEdBTExFUllcclxuICovXHJcblxyXG5cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gTU9ESUZJRVIgLSBMSU5LIEJPTERcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4uI3skbmFtZX0tLWdhbGxlcnkge1xyXG4gICAgLiN7JG5hbWV9X19pbWFnZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgYXNwZWN0LXJhdGlvKDQsMyk7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8od2lkZS1hbmQtdXApIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYXNwZWN0LXJhdGlvKDEwLCA5KTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgID4gc3BhbiB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwcHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTAwcHg7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvYmFzZTY0L3N2Zy9nYWxsZXJ5LWljb24uc3ZnKTtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYmFja2dyb3VuZChjb3Zlcik7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgei1pbmRleDogMTtcclxuICAgICAgICAgICAgYm90dG9tOiAxMHB4O1xyXG4gICAgICAgICAgICByaWdodDogMTBweDtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDEycHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgID4gc3BhbiB7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTMlKTtcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDQwMG1zO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiIsIi8qKlxyXG4gKiBDT01QT05FTlRTXHJcbiAqIE1lZGlhIC0gTElOSyBXSURFXHJcbiAqL1xyXG5cclxuJG5hbWU6IG1lZGlhO1xyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBNT0RJRklFUiAtIExJTksgV0lERVxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfS0tbGluay13aWRlIHtcclxuICAgIHBhZGRpbmc6IDE1cHg7XHJcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuICAgIC8qJjpob3ZlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkcGxhY2Vob2xkLCAwLjQpO1xyXG4gICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG4gICAgfSovXHJcblxyXG4gICAgLiN7JG5hbWV9X19pbWFnZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgYXNwZWN0LXJhdGlvKDUsMyk7XHJcbiAgICB9XHJcblxyXG4gICAgLiN7JG5hbWV9X19jYXB0aW9uIHtcclxuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogNXB4O1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDVweDtcclxuXHJcbiAgICAgICAgcDpub3QoLmJ0bikge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmOm50aC1vZi10eXBlKGV2ZW4pIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcblxyXG4gICAgICAgIGg1IHtcclxuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5idG4ge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYnJhbmQtcGluaztcclxuXHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGxpZ2h0LXB1cnBsZTtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC8qJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJHBsYWNlaG9sZCwgMC40KTtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcbiAgICAgICAgfSovXHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0tYW5kLXVwKSB7XHJcbiAgICAgICAgcGFkZGluZzogMzVweDtcclxuICAgICAgICAvL0dSSURcclxuICAgICAgICA+IGEge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBncmlkO1xyXG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDUwJSA1MCU7XHJcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogYXV0bztcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC4jeyRuYW1lfV9faW1hZ2Uge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBhci1oYWNrKDI3LCAxMjgwcHgsIDM5M3B4KTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC4jeyRuYW1lfV9fY2FwdGlvbiB7XHJcbiAgICAgICAgICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4vLyBGYWxsYmFjayBmb3IgaWUgLSBVc2luZyBGbGV4IHRvIG1haW50YWluIGltYWdlIGFzcGVjdCByYXRpbyBvbiBzY2FsaW5nXHJcbkBtZWRpYSBhbGwgYW5kICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSksICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKXtcclxuXHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1lZGl1bSl7XHJcbiAgICAgICAgLiN7JG5hbWV9LS1saW5rLXdpZGUgPiBhe1xyXG5cclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcclxuICAgIFxyXG4gICAgICAgICAgICA+ICp7XHJcbiAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDUwJTtcclxuICAgICAgICAgICAgfVxyXG4gICAgXHJcbiAgICAgICAgICAgIC4jeyRuYW1lfV9faW1hZ2V7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMzAlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59IiwiLyoqXHJcbiAqIENPTVBPTkVOVFNcclxuICogTWVkaWEgLSBXSURFIE9WRVJMQVBcclxuICovXHJcblxyXG4kbmFtZTogbWVkaWE7XHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIE1PRElGSUVSIC0gTElOSyBXSURFXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLiN7JG5hbWV9LS13aWRlLW92ZXJsYXB7XHJcbiAgICAvLyBwYWRkaW5nOiAyMHB4IDE1cHg7XHJcbiAgICBtYXgtd2lkdGg6IDUwMHB4O1xyXG5cclxuICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8obWVkaXVtLWFuZC1kb3duKXtcclxuXHJcbiAgICAgICAgLiN7JG5hbWV9X19jYXB0aW9ue1xyXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMHB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8oZGVzay1hbmQtdXApe1xyXG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XHJcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiA1MCUgMzBweCA1MCU7XHJcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvO1xyXG4gICAgICAgIGdyaWQtYXV0by1mbG93OiBkZW5zZTtcclxuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgbWluLWhlaWdodDogMzAwcHg7XHJcblxyXG4gICAgICAgIC4jeyRuYW1lfV9faW1hZ2V7XHJcbiAgICAgICAgICAgIGdyaWQtY29sdW1uLXN0YXJ0OiAzO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgICAgIHRvcDogLTYwcHg7XHJcbiAgICAgICAgICAgIGJvdHRvbTogLTYwcHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCA0MHB4IDAgcmdiYSgkYmxhY2ssIDAuMik7XHJcbiAgICBcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC4jeyRuYW1lfV9fY2FwdGlvbntcclxuICAgICAgICAgICAgZ3JpZC1jb2x1bW4tc3RhcnQ6IDE7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgICAgICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLy8gRmFsbGJhY2sgZm9yIGllIC0gVXNpbmcgRmxleCB0byBtYWludGFpbiBpbWFnZSBhc3BlY3QgcmF0aW8gb24gc2NhbGluZ1xyXG5AbWVkaWEgYWxsIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSl7XHJcblxyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRkZXNrKXtcclxuICAgICAgICAuI3skbmFtZX0tLXdpZGUtb3ZlcmxhcHtcclxuICAgICAgICAgICAgZGlzcGxheTogLW1zLWdyaWQ7XHJcbiAgICAgICAgICAgIC1tcy1ncmlkLWNvbHVtbnM6IDUwJSAzMHB4IDUwJTtcclxuXHJcbiAgICAgICAgICAgIC4jeyRuYW1lfV9faW1hZ2V7XHJcbiAgICAgICAgICAgICAgICAtbXMtZ3JpZC1jb2x1bW46IDM7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogNTAlO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuI3skbmFtZX1fX2NhcHRpb257XHJcbiAgICAgICAgICAgICAgICAtbXMtZ3JpZC1jb2x1bW46IDE7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0iLCIvKipcclxuICogQ09NUE9ORU5UU1xyXG4gKiBNZWRpYSAtIExJTksgUkVTRVJWRUQgLSBMSU5LIFBSSVZBVEVcclxuICovXHJcblxyXG4kbmFtZTogbWVkaWE7XHJcblxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBNT0RJRklFUiAtIExJTksgUkVTRVJWRUQvUFJJVkFURVxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfS0tbGluay1yZXNlcnZlZCxcclxuLiN7JG5hbWV9LS1saW5rLXByaXZhdGUge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHBsYWNlaG9sZDtcclxuICAgIC8qcG9pbnRlci1ldmVudHM6IG5vbmU7Ki9cclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgICA+IGEge1xyXG4gICAgICAgIGN1cnNvcjogYXV0bztcclxuICAgIH1cclxuXHJcbiAgICAuI3skbmFtZX1fX2ltYWdlIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgd2lkdGg6IDE1MHB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDE1MHB4O1xyXG4gICAgICAgICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHNjYWxlKDAuNyk7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJhY2tncm91bmQoY292ZXIpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuXHJcbi4jeyRuYW1lfS0tbGluay1yZXNlcnZlZHtcclxuICAgIC4jeyRuYW1lfV9faW1hZ2U6YWZ0ZXJ7XHJcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWFnZXMvYmFzZTY0L1NWRy9yZXNlcnZlZC1pY29uLnN2ZycpO1xyXG4gICAgfVxyXG59XHJcblxyXG4uI3skbmFtZX0tLWxpbmstcHJpdmF0ZXtcclxuICAgIC4jeyRuYW1lfV9faW1hZ2U6YWZ0ZXJ7XHJcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWFnZXMvYmFzZTY0L1NWRy9wcml2YXRlLWljb24uc3ZnJyk7XHJcbiAgICB9XHJcbn1cclxuIiwiLyoqXHJcbiAqIENPTVBPTkVOVFNcclxuICogTWVkaWEgLSBMSU5LIEVWRU5UXHJcbiAqL1xyXG5cclxuJG5hbWU6IG1lZGlhO1xyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gTU9ESUZJRVIgLSBMSU5LIEVWRU5UXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfS0tZXZlbnR7XHJcbiAgICAuI3skbmFtZX1fX2ltYWdle1xyXG5cclxuICAgICAgICA+IHB7XHJcbiAgICAgICAgICAgIHdpZHRoOiA4NXB4O1xyXG4gICAgICAgICAgICBmb250LWZhbWlseTogJGhlYWRpbmctbWVkLWZvbnQ7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjJweDtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI3cHg7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkYnJhbmQtYmxhY2s7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDVweCAxNXB4O1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgcmlnaHQ6IDQwcHg7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEod2hpdGUsIDAuNSk7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgICAgICAgICAgIHNwYW57XHJcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiIsIi8qKlxyXG4gKiBDT01QT05FTlRTXHJcbiAqIE1lZGlhIC0gTElOSyBWSURFT1xyXG4gKi9cclxuXHJcbiRuYW1lOiBtZWRpYTtcclxuXHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBNT0RJRklFUiAtIFZJREVPXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfS0tdmlkZW8ge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICBtYXgtd2lkdGg6IDQ2MHB4O1xyXG4gICAgbWFyZ2luOiAwIGF1dG87XHJcblxyXG4gICAgQGluY2x1ZGUgcmVzcG9uZC10byh3aWRlLWFuZC11cCkge1xyXG4gICAgICAgIG1heC13aWR0aDogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICAuI3skbmFtZX1fX2ltYWdlW3N0eWxlKj1cImltYWdlXCJdIHtcclxuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgQGluY2x1ZGUgYXNwZWN0LXJhdGlvKDE2LDkpO1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHBsYXktaWNvbjtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDA7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTAwcHg7XHJcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICAgICAgbGVmdDogNTAlO1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLTUwcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMC44O1xyXG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmhvbWVwYWdlICYge1xyXG4gICAgICAgIC4jeyRuYW1lfV9faW1hZ2Vbc3R5bGUqPVwiaW1hZ2VcIl0ge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBhc3BlY3QtcmF0aW8oMTAsNyk7XHJcbiAgICAgICAgICAgIC8qQGV4dGVuZCAlc2V0LXNoYWRvdy1saWdodDsqL1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuXHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBFTEVNRU5UIC0gVklERU9cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS1cclxuLiN7JG5hbWV9X192aWRlb3tcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAwO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLWJsYWNrO1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9iYXNlNjQvU1ZHL3RhaWwtc3Bpbi5zdmcpO1xyXG4gICAgYmFja2dyb3VuZC1zaXplOiA1MHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xyXG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuXHJcbiAgICBpZnJhbWV7XHJcbiAgICAgICAgQGluY2x1ZGUgY292ZXIoYWJzb2x1dGUpO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgfVxyXG5cclxuICAgIC8vaWYgcG9zdGVyXHJcbiAgICAmW3N0eWxlKj1cImltYWdlXCJde1xyXG4gICAgICAgIEBpbmNsdWRlIGJhY2tncm91bmQoY292ZXIpO1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGFzcGVjdC1yYXRpbygxNiw5KTtcclxuICAgIC8qXHJcbiAgICAucG9wdXAgJiB7XHJcbiAgICAgICAgLy8gU1RBTkRBUkQgWVQgVklERU9cclxuICAgICAgICBAaW5jbHVkZSBhc3BlY3QtcmF0aW8oMTYsOSk7XHJcbiAgICB9XHJcblxyXG4gICAgICovXHJcbn1cclxuXHJcbiIsIi8qKlxyXG4gKiBDT01QT05FTlRTXHJcbiAqIE1FRElBIC0gTElOSyBTT0NJQUxcclxuICovXHJcblxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBFTEVNRU5UIC0gU09DSUFMXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLiN7JG5hbWV9X19zb2NpYWx7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICBwYWRkaW5nLXRvcDogMTBweDtcclxuXHJcbiAgICBoM3tcclxuICAgICAgICB3aWR0aDogNjAlO1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiAkY2F0cy1tZWQ7XHJcbiAgICB9XHJcblxyXG4gICAgLmNvdW50ZXJ7IHBhZGRpbmctbGVmdDogMTBweDsgfVxyXG59XHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIE1PRElGSUVSIC0gSU5TVEFHUkFNXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLiN7JG5hbWV9LS1pbnN0YWdyYW0ge1xyXG5cclxuICAgIC4jeyRuYW1lfV9faW1hZ2Uge1xyXG5cclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgaW5zdC1pY29uO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgZm9udC1zaXplOiA3MnB4O1xyXG4gICAgICAgICAgICBjb2xvcjogd2hpdGU7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgdG9wOiAzMHB4O1xyXG4gICAgICAgICAgICByaWdodDogMzBweDtcclxuICAgICAgICAgICAgd2lkdGg6IDcycHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogNzJweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiIsIi8qKlxyXG4gKiBDT01QT05FTlRTXHJcbiAqIE1lZGlhIC0gTElOSyBDT1ZFUlxyXG4gKi9cclxuXHJcbiRuYW1lOiBtZWRpYTtcclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIE1PRElGSUVSIC0gQ09WRVJcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS1cclxuLiN7JG5hbWV9LS1jb3ZlciB7XHJcbiAgICBAaW5jbHVkZSBjb3ZlcihhYnNvbHV0ZSk7XHJcblxyXG4gICAgLiN7JG5hbWV9X19pbWFnZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgY292ZXIoYWJzb2x1dGUpO1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xyXG4gICAgICAgIGhlaWdodDogYXV0bztcclxuICAgIH1cclxuXHJcbiAgICAuI3skbmFtZX1fX2NhcHRpb24ge1xyXG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcclxuICAgICAgICBAaW5jbHVkZSBjb3ZlcihhYnNvbHV0ZSk7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHJcbiAgICAgICAgaDEsXHJcbiAgICAgICAgaDIge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgICAgLy9taW4taGVpZ2h0OiAyMDBweDtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAwcHg7XHJcbiAgICAgICAgICAgIC8qdGV4dC1zaGFkb3c6IDAgMCAyMHB4ICRibGFjazsqL1xyXG5cclxuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOm5vdCg6b25seS1jaGlsZCkge1xyXG4gICAgICAgICAgICBoMjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMTAlO1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgY292ZXIoYWJzb2x1dGUpO1xyXG4gICAgICAgICAgICAgICAgdG9wOiAtNSU7XHJcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjI7XHJcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAtMTtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiByYWRpYWwtZ3JhZGllbnQoZWxsaXBzZSBhdCBjZW50ZXIsICMzMjMyMzIgNDAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDcwJSk7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAtbXMtcmFkaWFsLWdyYWRpZW50KGVsbGlwc2UgYXQgY2VudGVyLCAjMzIzMjMyIDQwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSA3MCUpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC4jeyRuYW1lfV9fY2FwdGlvbi0tdG9wIHtcclxuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuICAgIH1cclxuXHJcbiAgICAuI3skbmFtZX1fX2NhcHRpb24tLWJvdHRvbSB7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xyXG4gICAgfVxyXG59XHJcbiIsIi8qKlxyXG4gKiBDT01QT05FTlRTXHJcbiAqIE1lZGlhIC0gTElOSyBDQVBUSU9OIENPVkVSXHJcbiAqL1xyXG5cclxuJG5hbWU6IG1lZGlhO1xyXG5cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIE1PRElGSUVSIC0gQ0FQVElPTiBDT1ZFUlxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4uI3skbmFtZX0tLWNhcHRpb24tY292ZXIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcGluaztcclxuICAgICAgICAubWVkaWFfX2ltYWdlIHtcclxuICAgICAgICAgICAgb3BhY2l0eTowLjc1O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgYmFja2dyb3VuZDogIzAwMDAwMDtcclxuICAgICAgICBvcGFjaXR5OiAwLjI1O1xyXG4gICAgfVxyXG5cclxuICAgIC4jeyRuYW1lfV9fY2FwdGlvbiB7XHJcbiAgICAgICAgY29sb3I6IHdoaXRlO1xyXG4gICAgICAgIC8qYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkYnJhbmQtYmxhY2ssIDAuNik7Ki9cclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTVweDtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgei1pbmRleDogMTtcclxuXHJcblxyXG4gICAgICAgIHAge1xyXG4gICAgICAgICAgICBAZXh0ZW5kICV0cy03O1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuI3skbmFtZX1fX2NhcHRpb24tLWNlbnRyZSB7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIGJvdHRvbTogMDtcclxuICAgIH1cclxuXHJcbiAgICAuI3skbmFtZX1fX2NhcHRpb24tLXRvcCB7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIGJvdHRvbTogYXV0bztcclxuICAgIH1cclxuXHJcbiAgICAuI3skbmFtZX1fX2NhcHRpb24tLWJvdHRvbSB7XHJcbiAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgIHRvcDogYXV0bztcclxuICAgIH1cclxufVxyXG4iLCIvKipcclxuICogQ09NUE9ORU5UU1xyXG4gKiBNZWRpYSAtIExJTksgQ0FQVElPTiBIT1ZFUlxyXG4gKi9cclxuXHJcbiRuYW1lOiBtZWRpYTtcclxuXHJcbkBrZXlmcmFtZXMgQk9VTkNFSU57XHJcbiAgICAwJXtcclxuICAgICAgICBib3R0b206IDIwMCU7XHJcbiAgICB9XHJcblxyXG4gICAgNTAle1xyXG4gICAgICAgIGJvdHRvbTogMjAwJTtcclxuICAgIH1cclxuXHJcbiAgICAxMDAle1xyXG4gICAgICAgIGJvdHRvbTogMTAwJTtcclxuICAgIH1cclxufVxyXG5cclxuLiN7JG5hbWV9X19jYXB0aW9uLS1mbG9hdC10aXRsZSB7XHJcbiAgICBoNSB7XHJcbiAgICAgICAgbWFyZ2luOiAwIGF1dG8gaW5oZXJpdDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZkODAwO1xyXG4gICAgfVxyXG59XHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBNT0RJRklFUiAtIENBUFRJT04gSE9WRVJcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLiN7JG5hbWV9LS1jYXB0aW9uLWhvdmVyIHtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gICAgLiN7JG5hbWV9X19jYXB0aW9uIHtcclxuICAgICAgICBjb2xvcjogd2hpdGU7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkYnJhbmQtYmxhY2ssIDAuNyk7XHJcbiAgICAgICAgQGluY2x1ZGUgY292ZXIoYWJzb2x1dGUpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTtcclxuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAyNTBtcztcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBwYWRkaW5nLXRvcDogNXB4O1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxNXB4O1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICBjb250ZW50OiAnaSc7XHJcbiAgICAgICAgICAgIHdpZHRoOiA0MHB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDQwcHg7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuICAgICAgICAgICAgY29sb3I6ICRicmFuZC1ibGFjaztcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICBib3R0b206IDEwMCU7XHJcbiAgICAgICAgICAgIHJpZ2h0OiA1cHg7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcclxuICAgICAgICAgICAgZm9udC1mYW1pbHk6IHNlcmlmO1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogNDBweDtcclxuICAgICAgICAgICAgLy8gYW5pbWF0aW9uOiBCT1VOQ0VJTiAzMDBtcyBlYXNlLWluO1xyXG4gICAgICAgICAgICAvLyBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxO1xyXG4gICAgICAgICAgICAvLyBhbmltYXRpb24tcGxheS1zdGF0ZTogcGxheTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHAge1xyXG4gICAgICAgICAgICBAZXh0ZW5kICV0cy04O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmJ0biB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIC4jeyRuYW1lfV9fY2FwdGlvbiB7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwJSk7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG5cclxuICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAgICAgICAgIC8vIGFuaW1hdGlvbi1kZWxheTogLTMwMG1zO1xyXG4gICAgICAgICAgICAgICAgLy8gYW5pbWF0aW9uOiBCT1VOQ0VJTiAzMDBtcyBlYXNlLWluO1xyXG4gICAgICAgICAgICAgICAgLy8gYW5pbWF0aW9uLXBsYXktc3RhdGU6IHBhdXNlZDtcclxuICAgICAgICAgICAgICAgIC8vIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiIsIi8qKlxyXG4gKiBDT01QT05FTlRTXHJcbiAqIE1lZGlhIC0gTElOSyBIT1ZFUiBCQUNLR1JPVU5EXHJcbiAqL1xyXG5cclxuJG5hbWU6IG1lZGlhO1xyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gTU9ESUZJRVIgLSBIT1ZFUiBCR1xyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4uI3skbmFtZX0tLWhvdmVyLWJnIHtcclxuXHJcbiAgICAuI3skbmFtZX1fX2ltYWdlIHtcclxuICAgICAgICBAaW5jbHVkZSBjb3ZlcihhYnNvbHV0ZSk7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XHJcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgfVxyXG5cclxuICAgIC4jeyRuYW1lfV9fY2FwdGlvbiB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IDMwMHB4O1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICB6LWluZGV4OiAxO1xyXG4gICAgICAgIEBpbmNsdWRlIGFuaW1hdGUoKGJhY2tncm91bmQtY29sb3IgMjAwbXMgMTBtcywgY29sb3IgMjAwbXMpKTtcclxuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtcHVycGxlO1xyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LXB1cnBsZTtcclxuICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8obWVkaXVtLWFuZC11cCkge1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDQwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICY6bnRoLWNoaWxkKGV2ZW4pIHtcclxuICAgICAgICAuI3skbmFtZX1fX2NhcHRpb24ge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuXHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmJ0biB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYnJhbmQtcGluaztcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcblxyXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGxpZ2h0LXB1cnBsZTtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCIvKipcclxuICogQ09NUE9ORU5UU1xyXG4gKiBNZWRpYSAtIExJTktcclxuICovXHJcblxyXG4kbmFtZTogbWVkaWE7XHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBNT0RJRklFUiAtIExJTktcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS1cclxuW2NsYXNzKj0nLS10aWxlJ10ge1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG5cclxuICAgIC4jeyRuYW1lfV9faW1hZ2Uge1xyXG4gICAgICAgIHdpZHRoOiA1NCU7XHJcbiAgICAgICAgLy8gQGluY2x1ZGUgYXNwZWN0LXJhdGlvKDUsMy4wNCk7XHJcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICAgICAgLypAaW5jbHVkZSBhbmltYXRlOyovXHJcbiAgICB9XHJcblxyXG4gICAgLiN7JG5hbWV9X19jYXB0aW9uIHtcclxuICAgICAgICBAZXh0ZW5kICV0cy00O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcclxuXHJcbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICR3aWRlKSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgYSB7XHJcbiAgICAgICAgLypAaW5jbHVkZSBhbmltYXRlOyovXHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LXB1cnBsZTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOjEycHg7XHJcbiAgICAgICAgcGFkZGluZzogNDBweCAwIDEwcHg7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6ICRoZWFkaW5nLWJvbGQtZm9udDtcclxuICAgIH1cclxuXHJcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuXHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcclxuICAgICAgICAgICAgLypib3gtc2hhZG93OiAwIDAgMjBweCByZ2JhKCRibGFjaywgMC4zKTsqL1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCIvKipcclxuICogQ09NUE9ORU5UU1xyXG4gKiBNZWRpYSAtIE9QUCAtIE9QUE9UVU5JVFkgUE9TVFxyXG4gKi9cclxuXHJcbiRuYW1lOiBtZWRpYTtcclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gTU9ESUZJRVIgLSBMSU5LIFdJREVcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4uI3skbmFtZX0tLW9wcCB7XHJcbiAgICAuI3skbmFtZX1fX2NhcHRpb24ge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcclxuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblxyXG4gICAgICAgID4gKiB7XHJcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaDUge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBoZWFkaW5nLXVuZXJsaW5lO1xyXG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcDpub3QoW2NsYXNzXSkge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xyXG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmRhdGUge1xyXG4gICAgICAgICAgICBAZXh0ZW5kICV0cy04O1xyXG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmNvbnRhY3Qge1xyXG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkYnJhbmQtcGluayAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSByZXNwb25kLXRvKGRlc2stYW5kLXVwKSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDM1cHggNzBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAvLyBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bS1hbmQtdXApe1xyXG4gICAgLy8gfVxyXG59XHJcblxyXG4udGhlbWUtYmx1ZSB7XHJcbiAgICAubWVkaWFfX2NhcHRpb24ge1xyXG4gICAgICAgIGg1IHtcclxuICAgICAgICAgICAgY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcblxyXG4gICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHA6bm90KFtjbGFzc10pIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDtcclxuICAgICAgICAgICAgY29sb3I6ICRicmFuZC1ibGFjaztcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5kYXRlIHtcclxuICAgICAgICAgICAgQGV4dGVuZCAldHMtODtcclxuICAgICAgICAgICAgY29sb3I6ICRicmFuZC1ibGFjaztcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5jb250YWN0IHtcclxuICAgICAgICAgICAgY29sb3I6ICRicmFuZC1waW5rICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkYnJhbmQtcHVycGxlICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5idG4ge1xyXG4gICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkYnJhbmQtcGluaztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4vLyBGYWxsYmFjayBmb3IgaWUgLSBVc2luZyBGbGV4IHRvIG1haW50YWluIGltYWdlIGFzcGVjdCByYXRpbyBvbiBzY2FsaW5nXHJcbkBtZWRpYSBhbGwgYW5kICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSksICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSB7XHJcbn1cclxuIiwiLyoqXHJcbiAqIENPTVBPTkVOVFNcclxuICogTWVkaWEgLSBMSU5LIFdJREVcclxuICovXHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIE1PRElGSUVSIC0gTElOSyBXSURFXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLiN7JG5hbWV9LS1zcGxpdHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRwbGFjZWhvbGQ7XHJcblxyXG4gICAgLiN7JG5hbWV9X19pbWFnZXtcclxuICAgICAgICBAaW5jbHVkZSBhc3BlY3QtcmF0aW8oMSwxKTtcclxuICAgIH1cclxuXHJcbiAgICAuI3skbmFtZX1fX2NhcHRpb257XHJcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICAgICAgIC5mb3JteyBtYXJnaW4tdG9wOiAzMHB4O31cclxuICAgIH1cclxuXHJcblxyXG4gICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0tYW5kLXVwKXtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG5cclxuICAgICAgICAuI3skbmFtZX1fX2ltYWdle1xyXG4gICAgICAgICAgICB3aWR0aDogNTAlO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBhc3BlY3QtcmF0aW8oMiwxKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC4jeyRuYW1lfV9fY2FwdGlvbntcclxuICAgICAgICAgICAgd2lkdGg6IDUwJTtcclxuICAgICAgICAgICAgYWxpZ24tc2VsZjogY2VudGVyO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAzMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKHdpZGUtYW5kLXVwKXtcclxuICAgICAgICAuI3skbmFtZX1fX2NhcHRpb257XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDYwcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgIH1cclxufVxyXG4vLyBGYWxsYmFjayBmb3IgaWUgLSBVc2luZyBGbGV4IHRvIG1haW50YWluIGltYWdlIGFzcGVjdCByYXRpbyBvbiBzY2FsaW5nXHJcbkBtZWRpYSBhbGwgYW5kICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSksICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKXtcclxuXHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1lZGl1bSl7XHJcbiAgICAgICAgLiN7JG5hbWV9LS1saW5rLXdpZGUgPiBhe1xyXG5cclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcclxuICAgIFxyXG4gICAgICAgICAgICA+ICp7XHJcbiAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDUwJTtcclxuICAgICAgICAgICAgfVxyXG4gICAgXHJcbiAgICAgICAgICAgIC4jeyRuYW1lfV9faW1hZ2V7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMzAlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59IiwiLyoqXHJcbiAqIENPTVBPTkVOVFNcclxuICogTWVkaWEgLSBTSURFQkFSXHJcbiAqL1xyXG5cclxuXHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIE1PRElGSUVSIC0gU0lERUJBUlxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfS0tc2lkZWJhcntcclxuICAgIC8qXHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDEwMDBweDtcclxuICAgIG1heC1oZWlnaHQ6IDY2MHB4O1xyXG4gICAgbWF4LXdpZHRoOiAxMDAwcHg7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG5cclxuICAgIC4jeyRuYW1lfV9fc2lkZWJhcntcclxuICAgICAgICB3aWR0aDogMzQ1cHg7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XHJcbiAgICAgICAgcGFkZGluZzogMjBweDtcclxuXHJcbiAgICAgICAgcDpub3QoW2NsYXNzXSl7QGV4dGVuZCAldHMtOTt9XHJcbiAgICB9XHJcblxyXG5cclxuICAgICAqL1xyXG4gICAgLypcclxuICAgICYuI3skbmFtZX0tLTEwLTl7XHJcbiAgICAgICAgLiN7JG5hbWV9X19pbWFnZXtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYXNwZWN0LXJhdGlvKDMsMik7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogNjU1cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICAqL1xyXG4vKlxyXG4gICAgLiN7JG5hbWV9X19zbGlkZXJ7XHJcbiAgICAgICAgd2lkdGg6IDEwMDBweDtcclxuICAgICAgICBtYXgtd2lkdGg6IDY1NXB4O1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRibGFjaywgMC42KTtcclxuICAgICAgICAvLyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2Jhc2U2NC9TVkcvdGFpbC1zcGluLnN2Zyk7XHJcbiAgICAgICAgLy8gYmFja2dyb3VuZC1zaXplOiAxMDBweDtcclxuICAgICAgICAvLyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XHJcbiAgICAgICAgLy8gYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuXHJcbiAgICAgICAgW3N0eWxlKj1cImJhY2tncm91bmQtaW1hZ2VcIl17XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGNvdmVyKGFic29sdXRlKTtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYmFja2dyb3VuZChjb3Zlcik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICovXHJcbn1cclxuIiwiLyoqXHJcbiAqIENPTVBPTkVOVFMgLSBTVkdcclxuICogRURVQ0FUSU9OXHJcbiAqL1xyXG5cclxuLiN7JG5hbWV9LS1zdmctZWR1Y2F0aW9uIHtcclxuICAgIC5zdDAge1xyXG4gICAgICAgIGZpbGw6IG5vbmU7XHJcbiAgICAgICAgc3Ryb2tlOiAjN0ExQjcyO1xyXG4gICAgICAgIHN0cm9rZS13aWR0aDogNTtcclxuICAgICAgICBzdHJva2UtbGluZWpvaW46IHJvdW5kO1xyXG4gICAgICAgIHN0cm9rZS1taXRlcmxpbWl0OiAxMDtcclxuICAgIH1cclxuXHJcbiAgICAuc3QxIHtcclxuICAgICAgICBmaWxsOiBub25lO1xyXG4gICAgICAgIHN0cm9rZTogIzdBMUI3MjtcclxuICAgICAgICBzdHJva2Utd2lkdGg6IDU7XHJcbiAgICAgICAgc3Ryb2tlLWxpbmVjYXA6IHJvdW5kO1xyXG4gICAgICAgIHN0cm9rZS1taXRlcmxpbWl0OiAxMDtcclxuICAgIH1cclxuXHJcbiAgICAuc3QyIHtcclxuICAgICAgICBmaWxsOiBub25lO1xyXG4gICAgICAgIHN0cm9rZTogIzdBMUI3MjtcclxuICAgICAgICBzdHJva2Utd2lkdGg6IDU7XHJcbiAgICAgICAgc3Ryb2tlLW1pdGVybGltaXQ6IDEwO1xyXG4gICAgfVxyXG5cclxuICAgIC5zdDMge1xyXG4gICAgICAgIGZpbGw6IG5vbmU7XHJcbiAgICAgICAgc3Ryb2tlOiAjN0ExQjcyO1xyXG4gICAgICAgIHN0cm9rZS13aWR0aDogNTtcclxuICAgICAgICBzdHJva2UtbGluZWNhcDogcm91bmQ7XHJcbiAgICAgICAgc3Ryb2tlLWxpbmVqb2luOiByb3VuZDtcclxuICAgICAgICBzdHJva2UtbWl0ZXJsaW1pdDogMTA7XHJcbiAgICB9XHJcblxyXG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgLnN0MCB7XHJcbiAgICAgICAgICAgIGZpbGw6IG5vbmU7XHJcbiAgICAgICAgICAgIHN0cm9rZTogI0ZGRkZGRjtcclxuICAgICAgICAgICAgc3Ryb2tlLXdpZHRoOiA1O1xyXG4gICAgICAgICAgICBzdHJva2UtbGluZWpvaW46IHJvdW5kO1xyXG4gICAgICAgICAgICBzdHJva2UtbWl0ZXJsaW1pdDogMTA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuc3QxIHtcclxuICAgICAgICAgICAgZmlsbDogbm9uZTtcclxuICAgICAgICAgICAgc3Ryb2tlOiAjRkZGRkZGO1xyXG4gICAgICAgICAgICBzdHJva2Utd2lkdGg6IDU7XHJcbiAgICAgICAgICAgIHN0cm9rZS1saW5lY2FwOiByb3VuZDtcclxuICAgICAgICAgICAgc3Ryb2tlLW1pdGVybGltaXQ6IDEwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnN0MiB7XHJcbiAgICAgICAgICAgIGZpbGw6IG5vbmU7XHJcbiAgICAgICAgICAgIHN0cm9rZTogI0ZGRkZGRjtcclxuICAgICAgICAgICAgc3Ryb2tlLXdpZHRoOiA1O1xyXG4gICAgICAgICAgICBzdHJva2UtbWl0ZXJsaW1pdDogMTA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuc3QzIHtcclxuICAgICAgICAgICAgZmlsbDogbm9uZTtcclxuICAgICAgICAgICAgc3Ryb2tlOiAjRkZGRkZGO1xyXG4gICAgICAgICAgICBzdHJva2Utd2lkdGg6IDU7XHJcbiAgICAgICAgICAgIHN0cm9rZS1saW5lY2FwOiByb3VuZDtcclxuICAgICAgICAgICAgc3Ryb2tlLWxpbmVqb2luOiByb3VuZDtcclxuICAgICAgICAgICAgc3Ryb2tlLW1pdGVybGltaXQ6IDEwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcbiAgICB9XHJcbn1cclxuIiwiLyoqXHJcbiAqIENPTVBPTkVOVFMgLSBTVkdcclxuICogQ09OVEFDVFxyXG4gKi9cclxuXHJcbi4jeyRuYW1lfS0tc3ZnLWNvbnRhY3Qge1xyXG4gICAgLnN0MCB7XHJcbiAgICAgICAgZmlsbDogbm9uZTtcclxuICAgICAgICBzdHJva2U6ICM3QTFCNzI7XHJcbiAgICAgICAgc3Ryb2tlLXdpZHRoOiA1O1xyXG4gICAgICAgIHN0cm9rZS1saW5lY2FwOiByb3VuZDtcclxuICAgICAgICBzdHJva2UtbGluZWpvaW46IHJvdW5kO1xyXG4gICAgICAgIHN0cm9rZS1taXRlcmxpbWl0OiAxMDtcclxuICAgIH1cclxuXHJcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICAuc3QwIHtcclxuICAgICAgICAgICAgZmlsbDogbm9uZTtcclxuICAgICAgICAgICAgc3Ryb2tlOiAjRkZGRkZGO1xyXG4gICAgICAgICAgICBzdHJva2Utd2lkdGg6IDU7XHJcbiAgICAgICAgICAgIHN0cm9rZS1saW5lY2FwOiByb3VuZDtcclxuICAgICAgICAgICAgc3Ryb2tlLWxpbmVqb2luOiByb3VuZDtcclxuICAgICAgICAgICAgc3Ryb2tlLW1pdGVybGltaXQ6IDEwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcbiAgICB9XHJcbn1cclxuIiwiLyoqXHJcbiAqIENPTVBPTkVOVFMgLSBTVkdcclxuICogTkVVVEVSSU5HXHJcbiAqL1xyXG5cclxuLiN7JG5hbWV9LS1zdmctbmV1dGVyaW5nIHtcclxuICAgIC5zdDAge1xyXG4gICAgICAgIGZpbGw6IG5vbmU7XHJcbiAgICAgICAgc3Ryb2tlOiAjN0ExQjcyO1xyXG4gICAgICAgIHN0cm9rZS13aWR0aDogNTtcclxuICAgICAgICBzdHJva2UtbGluZWNhcDogcm91bmQ7XHJcbiAgICAgICAgc3Ryb2tlLWxpbmVqb2luOiByb3VuZDtcclxuICAgICAgICBzdHJva2UtbWl0ZXJsaW1pdDogMTA7XHJcbiAgICB9XHJcblxyXG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgLnN0MCB7XHJcbiAgICAgICAgICAgIGZpbGw6IG5vbmU7XHJcbiAgICAgICAgICAgIHN0cm9rZTogI0ZGRkZGRjtcclxuICAgICAgICAgICAgc3Ryb2tlLXdpZHRoOiA1O1xyXG4gICAgICAgICAgICBzdHJva2UtbGluZWNhcDogcm91bmQ7XHJcbiAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbjogcm91bmQ7XHJcbiAgICAgICAgICAgIHN0cm9rZS1taXRlcmxpbWl0OiAxMDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG4gICAgfVxyXG59XHJcbiIsIi8qKlxyXG4gKiBDT01QT05FTlRTIC0gU1ZHXHJcbiAqIFZPTFVOVEVFUlxyXG4gKi9cclxuXHJcblxyXG5cclxuLiN7JG5hbWV9LS1zdmctdm9sdW50ZWVyIHtcclxuICAgIC5zdDAge1xyXG4gICAgICAgIGZpbGw6ICNGRkZGRkY7XHJcbiAgICAgICAgc3Ryb2tlOiAjN0ExQjcyO1xyXG4gICAgICAgIHN0cm9rZS13aWR0aDogNTtcclxuICAgICAgICBzdHJva2UtbGluZWNhcDogcm91bmQ7XHJcbiAgICAgICAgc3Ryb2tlLWxpbmVqb2luOiByb3VuZDtcclxuICAgICAgICBzdHJva2UtbWl0ZXJsaW1pdDogMTA7XHJcbiAgICB9XHJcblxyXG4gICAgLnN0MSB7XHJcbiAgICAgICAgZmlsbDogbm9uZTtcclxuICAgICAgICBzdHJva2U6ICM3QTFCNzI7XHJcbiAgICAgICAgc3Ryb2tlLXdpZHRoOiA1O1xyXG4gICAgICAgIHN0cm9rZS1saW5lY2FwOiByb3VuZDtcclxuICAgICAgICBzdHJva2UtbGluZWpvaW46IHJvdW5kO1xyXG4gICAgICAgIHN0cm9rZS1taXRlcmxpbWl0OiAxMDtcclxuICAgIH1cclxuXHJcbiAgICAuc3QyIHtcclxuICAgICAgICBmaWxsOiBub25lO1xyXG4gICAgICAgIHN0cm9rZTogIzdBMUI3MjtcclxuICAgICAgICBzdHJva2Utd2lkdGg6IDU7XHJcbiAgICAgICAgc3Ryb2tlLWxpbmVjYXA6IHJvdW5kO1xyXG4gICAgICAgIHN0cm9rZS1taXRlcmxpbWl0OiAxMDtcclxuICAgIH1cclxuXHJcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICAuc3QwIHtcclxuICAgICAgICAgICAgZmlsbDogI0ZGRkZGRjtcclxuICAgICAgICAgICAgc3Ryb2tlOiAjRkZGRkZGO1xyXG4gICAgICAgICAgICBzdHJva2Utd2lkdGg6IDU7XHJcbiAgICAgICAgICAgIHN0cm9rZS1saW5lY2FwOiByb3VuZDtcclxuICAgICAgICAgICAgc3Ryb2tlLWxpbmVqb2luOiByb3VuZDtcclxuICAgICAgICAgICAgc3Ryb2tlLW1pdGVybGltaXQ6IDEwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnN0MSB7XHJcbiAgICAgICAgICAgIGZpbGw6IG5vbmU7XHJcbiAgICAgICAgICAgIHN0cm9rZTogI0ZGRkZGRjtcclxuICAgICAgICAgICAgc3Ryb2tlLXdpZHRoOiA1O1xyXG4gICAgICAgICAgICBzdHJva2UtbGluZWNhcDogcm91bmQ7XHJcbiAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbjogcm91bmQ7XHJcbiAgICAgICAgICAgIHN0cm9rZS1taXRlcmxpbWl0OiAxMDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5zdDIge1xyXG4gICAgICAgICAgICBmaWxsOiBub25lO1xyXG4gICAgICAgICAgICBzdHJva2U6ICNGRkZGRkY7XHJcbiAgICAgICAgICAgIHN0cm9rZS13aWR0aDogNTtcclxuICAgICAgICAgICAgc3Ryb2tlLWxpbmVjYXA6IHJvdW5kO1xyXG4gICAgICAgICAgICBzdHJva2UtbWl0ZXJsaW1pdDogMTA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuICAgIH1cclxufVxyXG4iLCIvKlxyXG4qXHJcbiogVGhpcyBwYXJ0aWFsIGlzIGZvciBzZXR0aW5nIGVhY2ggdGhlbWUgc3BlY2lmaWMgdG8gdGhlIG1lZGlhIGl0ZW1zLlxyXG4qIFRoaXMgd29ya3MgaW5kZXBlbmRlbnRseSBmcm9tIGFsbCBvdGhlciBjbGFzc2VzXHJcbipcclxuICovXHJcblxyXG5cclxuLy8gTGlnaHQgZ3JleSB0aGVtZVxyXG4ubWVkaWEtLXRoZW1lLWFscGhhIHtcclxuICAgIGNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LXB1cnBsZTtcclxuICAgIHRyYW5zaXRpb246IHNjYWxlIDAuNXM7XHJcblxyXG4gICAgLm1lZGlhX19pbWFnZSB7XHJcbiAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgfVxyXG59XHJcblxyXG4vLyBEYXJrIGdyZXkgdGhlbWVcclxuLm1lZGlhLS10aGVtZS1iZXRhIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1waW5rO1xyXG4gICAgY29sb3I6ICNmZmY7XHJcbiAgICB0cmFuc2l0aW9uOiBzY2FsZSAwLjVzO1xyXG5cclxuICAgIC5tZWRpYV9faW1hZ2Uge1xyXG4gICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgIH1cclxuICAgIGg1Lm1lZGlhX19oZWFkaW5nIHtcclxuICAgICAgICBjb2xvcjokd2hpdGUgIWltcG9ydGFudDtcclxuICAgIH1cclxufVxyXG5cclxuLy8gQmx1ZSB0aGVtZVxyXG4ubWVkaWEtLXRoZW1lLWdhbW1hIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1ibHVlO1xyXG4gICAgY29sb3I6ICR3aGl0ZTtcclxuICAgIHRyYW5zaXRpb246IHNjYWxlIDAuNXM7XHJcblxyXG4gICAgLm1lZGlhX19pbWFnZSB7XHJcbiAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgIGg1Lm1lZGlhX19oZWFkaW5nIHtcclxuICAgICAgICBjb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn1cclxuLm1lZGlhLS10aGVtZS1kZWx0YSB7XHJcbiAgICBjb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1wdXJwbGU7XHJcbiAgICB0cmFuc2l0aW9uOiBzY2FsZSAwLjVzO1xyXG5cclxuICAgIC5tZWRpYV9faW1hZ2Uge1xyXG4gICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgIH1cclxufVxyXG4iLCIvKipcclxuICogQ09NUE9ORU5UU1xyXG4gKiBaT09NIElNQUdFIE9OIEhPVkVSXHJcbiAqL1xyXG5cclxuLm1lZGlhLS1ob3Zlci1zY2FsZSB7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG5cclxuICAgIC5tZWRpYV9faW1hZ2Uge1xyXG4gICAgICAgIHRyYW5zaXRpb246IDMwMG1zIHRyYW5zZm9ybTtcclxuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiIsIi8qKlxyXG4gKiBDT01QT05FTlRTXHJcbiAqIE1JTkkgQklPXHJcbiAqIFxyXG4gKi9cclxuXHJcbiRuYW1lOiBtaW5pLWJpbztcclxuXHJcbi8vLS0tLS0tLS0tXHJcbi8vIEJMT0NLXHJcbi8vLS0tLS0tLS0tXHJcbi4jeyRuYW1lfSB7XHJcbiAgICBcclxufVxyXG5cclxuLy8tLS0tLS0tLS0tXHJcbi8vIEVMRU1FTlRcclxuLy8tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfV9fdGl0bGV7XHJcbiAgICBAZXh0ZW5kICV0cy01O1xyXG59XHJcblxyXG4vLy0tLS0tLS0tLS1cclxuLy8gRUxFTUVOVFxyXG4vLy0tLS0tLS0tLS1cclxuLiN7JG5hbWV9X19kZXRhaWxzIHtcclxuICAgIG1hcmdpbjogMTVweCAwIDA7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblxyXG4gICAgbGkge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG5cclxuICAgICAgICBhIHtcclxuICAgICAgICAgICAgY29sb3I6IGluaGVyaXQ7XHJcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lO1xyXG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5mZW1hbGUtaWNvbjpiZWZvcmUge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBmZW1hbGUtaWNvbjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYubWFsZS1pY29uOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIG1hbGUtaWNvbjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYuYWdlLWljb246YmVmb3JlIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgZ2lmdC1pY29uO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5sb2NhdGlvbi1pY29uOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIG1hcC1waW4tMi1pY29uO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy8tLS0tLS0tLS0tLVxyXG4vLyBNT0RJRklFUlxyXG4vLy0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfXt9XHJcblxyXG4ubG9naW4tYmFyIHtcclxuICAgIGJvcmRlci1sZWZ0OiAycHggc29saWQgJGxpZ2h0LWdyZXk7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDVweDtcclxuICAgIGZvbnQtc2l6ZTogMTVweDtcclxufVxyXG4iLCIvKipcclxuICogQ09NUE9ORU5UU1xyXG4gKiBQQUdJTkdcclxuICovXHJcblxyXG4gJG5hbWU6IHBhZ2luZztcclxuIFxyXG4vLy0tLS0tLS0tXHJcbi8vIEJMT0NLXHJcbi8vLS0tLS0tLS1cclxuLiN7JG5hbWV9e1xyXG4gICAgQGV4dGVuZCAlY29udGFpbmVyO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XHJcbiAgICBwYWRkaW5nLXRvcDogMjBweDtcclxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkbGlnaHQtZ3JleTtcclxufVxyXG5cclxuLy8tLS0tLS0tLVxyXG4vLyBFTEVNRU5UXHJcbi8vLS0tLS0tLS1cclxuLiN7JG5hbWV9X19pdGVtIHtcclxuICAgIG1hcmdpbjogNXB4O1xyXG5cclxuICAgIGEge1xyXG4gICAgICAgIHBhZGRpbmc6IDVweCAxMXB4O1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICB9XHJcblxyXG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWdyZXk7XHJcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcbiAgICB9XHJcblxyXG4gICAgJi5pcy1hY3RpdmUge1xyXG4gICAgICAgIGN1cnNvcjogZGVmYXVsdDtcclxuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtZ3JleTtcclxuICAgIH1cclxufVxyXG5cclxuLy8tLS0tLS0tLVxyXG4vLyBFTEVNRU5UXHJcbi8vLS0tLS0tLS1cclxuLiN7JG5hbWV9X19uZXh0LFxyXG4uI3skbmFtZX1fX3ByZXYge1xyXG4gICAgbWFyZ2luOiA1cHg7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtZ3JleTtcclxuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuICAgIH1cclxuXHJcbiAgICBhIHtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIHBhZGRpbmc6IDZweCAxMXB4O1xyXG4gICAgICAgIGNvbG9yOiAkYnJhbmQtYmxhY2s7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vLS0tLS0tLS1cclxuLy8gRUxFTUVOVFxyXG4vLy0tLS0tLS0tXHJcbi4jeyRuYW1lfV9fcHJldnsgYTphZnRlcnsgQGluY2x1ZGUgYXJyb3ctbGVmdC1pY29uO319XHJcbi4jeyRuYW1lfV9fbmV4dHsgYTphZnRlcnsgQGluY2x1ZGUgYXJyb3ctcmlnaHQtaWNvbjt9fSIsIi8qKlxyXG4gKiBDT01QT05FTlRTXHJcbiAqIFBFTiBDQVJEXHJcbiAqL1xyXG5cclxuJG5hbWU6IHBlbi1jYXJkO1xyXG5cclxuXHJcbi8vLS0tLS0tLS1cclxuLy8gQkxPQ0tcclxuLy8tLS0tLS0tLVxyXG4uI3skbmFtZX17XHJcbiAgICAvL2Rpc3BsYXk6IGZsZXg7XHJcbiAgICB6LWluZGV4OiAxO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpe1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIH1cclxuXHJcbiAgICAmOmFmdGVye1xyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpe1xyXG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgICAgICBsZWZ0OiAxMDAlO1xyXG4gICAgICAgICAgICB3aWR0aDogNTAwJTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG5cclxuICAgICY6bm90KFtjbGFzcyo9XCItLXNtYWxsXCJdKXtcclxuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgLy8gdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDIwcHgpO1xyXG5cclxuICAgICAgICAmLmlzLWFjdGl2ZXtcclxuICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcclxuICAgICAgICAgICAgLy8gdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xyXG4gICAgICAgICAgICBwb2ludGVyLWV2ZW50czogYWxsO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBFTEVNRU5UIC0gSU1BR0VcclxuLy8tLS0tLS0tLS0tLS0tLS0tLVxyXG4uI3skbmFtZX1fX2ltYWdle1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICAvL21heC13aWR0aDogMzcwcHg7XHJcblxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZyl7XHJcbiAgICAgICAgd2lkdGg6IDMyMHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIEVMRU1FTlQgLSBTVEFUU1xyXG4vLy0tLS0tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfV9fc3RhdHN7XHJcbiAgICBwYWRkaW5nOiAxZW07XHJcblxyXG5cclxuICAgIC8vZGlzcGxheTogZmxleDtcclxuICAgIC8vZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIC8vQGV4dGVuZCAlbWctdnQtbGc7XHJcbiAgICAvL3BhZGRpbmc6IDAgM3Z3IDAgMzBweDtcclxuICAgIC8vYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgJGdyZXk7XHJcbiAgICAvL21hcmdpbi1yaWdodDogM3Z3O1xyXG4gICAgLy93aWR0aDogMTAwJTtcclxuICAgIC8vbWF4LXdpZHRoOiAzNTBweDtcclxuICAgIGZvbnQtZmFtaWx5OiAkY2F0cy1tZWQ7XHJcblxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZyl7XHJcbiAgICAgICAgZmxleDoxO1xyXG4gICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICRncmV5O1xyXG4gICAgICAgIG1hcmdpbjogMCAxZW0gMCAwO1xyXG4gICAgfVxyXG5cclxuICAgIGgze1xyXG4gICAgICAgIEBleHRlbmQgJXRzLTI7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuICAgIH1cclxuXHJcbiAgICB1bHtcclxuICAgICAgICBsaXtcclxuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDdweDtcclxuICAgICAgICAgICAgc3Ryb25neyBmb250LWZhbWlseTogJGNhdHMtYm9sZDsgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBFTEVNRU5UIC0gU1VNTUFSWVxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfV9fc3VtbWFyeXtcclxuICAgIC8vQGV4dGVuZCAlbWctdnQtbGc7XHJcbiAgICAvL2Rpc3BsYXk6IGZsZXg7XHJcbiAgICAvL2ZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAvL2p1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgIC8vbWF4LXdpZHRoOiA2MDBweDtcclxuICAgIGZvbnQtZmFtaWx5OiAkY2F0cy1tZWQ7XHJcbiAgICAvL3dpZHRoOiAxMDAlO1xyXG4gICAgcGFkZGluZzogMWVtO1xyXG5cclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpe1xyXG4gICAgICAgIGZsZXg6MTtcclxuICAgIH1cclxufVxyXG5cclxuXHJcblxyXG5cclxuLiN7JG5hbWV9X19jYXJkLW9wdGlvbnN7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDQyNXB4KXtcclxuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cclxuICAgIH1cclxufVxyXG5cclxuLnBlbi1jYXJkX19jYXJkLW9wdGlvbnMtYnRue1xyXG4gICAgZGlzcGxheTogZmxleDtcclxufVxyXG5cclxuLnBlbi1jYXJkX19jYXJkLW9wdGlvbnMtc29jaWFsLWNvbnRhaW5lcntcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIHBhZGRpbmc6IDAgMCAxZW07XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNDI1cHgpe1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICB9XHJcbn1cclxuLnBlbi1jYXJkX19zdW1tYXJ5LWNvcHl7XHJcbiAgICBwYWRkaW5nOiAwIDAgMWVtO1xyXG59XHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBNT0RJRklFUiAtIE1FRElVTVxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4uI3skbmFtZX0tLW1lZGl1bXtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAvLyBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHJcbiAgICAmOm50aC1jaGlsZChvZGQpe1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xyXG4gICAgfVxyXG5cclxuICAgIC4jeyRuYW1lfV9faW1hZ2V7XHJcbiAgICAgICAgd2lkdGg6IDI2MHB4O1xyXG4gICAgICAgIG1heC13aWR0aDogMjYwcHg7XHJcbiAgICAgICAgbWluLXdpZHRoOiAyNjBweDtcclxuICAgIH1cclxuXHJcbiAgICAuI3skbmFtZX1fX3N1bW1hcnl7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgcGFkZGluZzogMCAwIDAgMzBweDtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG5cclxuICAgICAgICBoM3sgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxyXG5cclxuICAgICAgICBwe1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiA1NXB4O1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAkbGluZS1oZWlnaHQ7XHJcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBNT0RJRklFUiAtIFNNQUxMXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfS0tc21hbGx7XHJcbiAgICBwYWRkaW5nOiAyM3B4IDZ2dztcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIG1pbi1oZWlnaHQ6IDE2MHB4O1xyXG5cclxuICAgICY6bnRoLW9mLXR5cGUob2RkKXtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtZ3JleTtcclxuICAgIH1cclxuXHJcbiAgICAuI3skbmFtZX1fX2ltYWdle1xyXG4gICAgICAgIHdpZHRoOiAxNjBweDtcclxuICAgICAgICBtYXgtd2lkdGg6IDE2MHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC4jeyRuYW1lfV9fc3VtbWFyeXtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICBwYWRkaW5nOiAwIDMwcHg7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG5cclxuICAgICAgICBwe1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiA1NXB4O1xyXG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIE1PRElGSUVSIC0gRkxBR1xyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4uI3skbmFtZX0tLWZsYWd7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgJjpiZWZvcmV7XHJcbiAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICB3aWR0aDogNDBweDtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG5cclxuICAgIH1cclxuXHJcbiAgICAmOmFmdGVye1xyXG4gICAgICAgIGNvbnRlbnQ6ICdSZWhvbWVkISc7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6ICRjYXRzLW1lZDtcclxuICAgICAgICBmb250LXNpemU6IDI4cHg7XHJcbiAgICAgICAgY29sb3I6IHdoaXRlO1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpIHRyYW5zbGF0ZVkoNDhweCk7XHJcbiAgICB9XHJcbn1cclxuIiwiLyoqXHJcbiAqIENPTVBPTkVOVFNcclxuICogUElOXHJcbiAqL1xyXG5cclxuICRuYW1lOiBwaW47XHJcbiBcclxuLy8tLS0tLS0tLVxyXG4vLyBCTE9DS1xyXG4vLy0tLS0tLS0tXHJcbi4jeyRuYW1lfXtcclxuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuICAgIFxyXG4gICAgaW1neyB3aWR0aDogMTBweDt9XHJcblxyXG4gICAgc3BhbiB7IG1hcmdpbjogMCAxMHB4IH1cclxuXHJcbn1cclxuICIsIi8qKlxyXG4gKiBDT01QT05FTlRTXHJcbiAqIFBPTExcclxuICovXHJcblxyXG4gJG5hbWU6IHBvbGw7XHJcblxyXG4vLy0tLS0tLS0tXHJcbi8vIEJMT0NLXHJcbi8vLS0tLS0tLS1cclxuLiN7JG5hbWV9e1xyXG4gICAgLy9oZWlnaHQ6IDEwMCU7XHJcbiAgICAvL2Rpc3BsYXk6IGZsZXg7XHJcbiAgICAvL2ZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblxyXG4gICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICBtYXgtd2lkdGg6IDQ2MHB4O1xyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZyl7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIG1heC13aWR0aDogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICAmOm5vdChbY2xhc3MqPVwiLS1yZXN1bHRzXCJdKXtcclxuICAgICAgICBAZXh0ZW5kICVwZC1tZDtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtZ3JlZW47XHJcbiAgICAgICAgY29sb3I6IHdoaXRlO1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA2MCU7XHJcbiAgICB9XHJcblxyXG4gICAgaDV7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxufVxyXG5cclxuLy8tLS0tLS0tLVxyXG4vLyBFTEVNRU5UXHJcbi8vLS0tLS0tLS1cclxuLiN7JG5hbWV9X19xdWVzdGlvbntcclxuICAgIEBleHRlbmQgJXRzLTU7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcclxufVxyXG5cclxuLy8tLS0tLS0tLVxyXG4vLyBFTEVNRU5UXHJcbi8vLS0tLS0tLS1cclxuLiN7JG5hbWV9X19hbnN3ZXJze1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgcGFkZGluZy1ib3R0b206IDQ0cHg7XHJcbn1cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBNT0RJRklFUiAtIFJFU1VMVFNcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIEZ1cnRoZXIgc3R5bGVzIGZvdW5kIGluIHRoaXMgY29tcG9uZW50IGFyZVxyXG4vLyBib3VuZCB0byB0aGUgZm9ybSBwYXJ0aWFsLlxyXG4uI3skbmFtZX0tLXJlc3VsdHN7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtZ3JleTtcclxuXHJcbiAgICAucG9sbF9fYW5zd2Vyc3tcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgfVxyXG5cclxuICAgIGxpe1xyXG4gICAgICAgIG1hcmdpbjogMTBweCAwO1xyXG4gICAgfVxyXG5cclxuICAgIC5mb3JtX19idG57IGRpc3BsYXk6IG5vbmU7IH1cclxuXHJcbiAgICAuZm9ybV9fY2hlY2tib3h7IGRpc3BsYXk6IG5vbmU7IH1cclxuXHJcbiAgICAuZm9ybV9fcmVzdWx0e1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAvL3dpZHRoOiA1NnB4O1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiAkY2F0cy1ib2xkO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjFweDtcclxuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xyXG5cclxuICAgICAgICAmOmFmdGVye1xyXG4gICAgICAgICAgICBjb250ZW50OiAnJSc7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5mb3JtX19sYWJlbHtcclxuICAgICAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XHJcbiAgICB9XHJcblxyXG4gICAgaDV7XHJcbiAgICAgICAgY29sb3I6IHdoaXRlO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcbiAgICAgICAgcGFkZGluZzogMjBweDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgIEBleHRlbmQgJXRzLTU7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB9XHJcblxyXG4gICAgLnBvbGxfX3F1ZXN0aW9ue1xyXG4gICAgICAgICY6YmVmb3Jle1xyXG4gICAgICAgICAgICBjb250ZW50OiAnUkVTVUxUUyEnO1xyXG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDMwcHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiIsIi8qKlxyXG4gKiBDT01QT05FTlRTXHJcbiAqIFBPUFVQXHJcbiAqL1xyXG5cclxuJG5hbWU6IHBvcHVwO1xyXG4kY29udGFpbmVyOiAxMjAwcHg7XHJcblxyXG4vLy0tLS0tLS0tXHJcbi8vIEJMT0NLXHJcbi8vLS0tLS0tLS1cclxuLiN7JG5hbWV9e1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkYmxhY2ssIDAuOCk7XHJcbiAgICBAaW5jbHVkZSBjb3ZlcihmaXhlZCk7XHJcbiAgICB6LWluZGV4OiA5OTk5O1xyXG4gICAgcGFkZGluZzogMjVweDtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xyXG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMjUwbXM7XHJcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xyXG4gICAgJi5pcy1hY3RpdmV7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vLS0tLS0tLS1cclxuLy8gRUxFTUVOVFxyXG4vLy0tLS0tLS0tXHJcbi4jeyRuYW1lfV9faW5uZXJ7XHJcbiAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAzMDBtcyAxNTBtcyBlYXNlLWluLW91dDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAuaXMtYWN0aXZlICZ7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxufVxyXG5cclxuXHJcbi8vIFRvZG8gY2xlYW4gdXAgZHluYW1pYyBwb3B1cHNcclxuI2R5bmFtaWMtcG9wdXAgLnBvcHVwX19pbm5lcntcclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpe1xyXG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgfVxyXG59XHJcblxyXG4gLy8tLS0tLS0tLVxyXG4gLy8gRUxFTUVOVFxyXG4gLy8tLS0tLS0tLVxyXG4uY2xvc2Uge1xyXG4gICAgLiN7JG5hbWV9X19pbm5lciAmIHtcclxuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgd2lkdGg6IDQ0cHg7XHJcbiAgICAgICAgbWF4LXdpZHRoOiA0NHB4O1xyXG4gICAgICAgIGhlaWdodDogNDRweDtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IC0yMHB4O1xyXG4gICAgICAgIHJpZ2h0OiAtMjBweDtcclxuICAgICAgICB6LWluZGV4OiAxMDAwMDtcclxuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1waW5rO1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6YmVmb3JlLFxyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMXB4O1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xyXG4gICAgICAgICAgICB3aWR0aDogMjJweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAzcHg7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDFweDtcclxuICAgICAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgICAgIGxlZnQ6IDEycHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0tYW5kLXVwKSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAkY29udGFpbmVyO1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbiAvLy0tLS0tLS0tXHJcbiAvLyBDVVNUT01cclxuIC8vLS0tLS0tLS1cclxuXHJcbltkYXRhLXBvcHVwXXtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxufVxyXG5cclxuW2RhdGEtcG9wdXAtY29udGVudF17XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgLnBvcHVwICZ7IGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cclxufVxyXG5cclxuW2RhdGEtcG9wdXAtY29udGVudD1cImxvZ2luXCJde1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWdyZXk7XHJcbiAgICBwYWRkaW5nOiAyMHB4O1xyXG59XHJcblxyXG5cclxuW2RhdGEtcG9wdXAtY29udGVudD1cInZpZGVvXCJde1xyXG4gICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgLy93aWR0aDogMTAwMHB4O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLWJsYWNrO1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9iYXNlNjQvU1ZHL3RhaWwtc3Bpbi5zdmcpO1xyXG4gICAgYmFja2dyb3VuZC1zaXplOiAxMDBweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcclxuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbn1cclxuXHJcbi8vIHVzZSAucG9wdXBfX3dyYXBwZXIgdG8gY29udHJvbCBtb2RlbCB3aWR0aFxyXG5cclxuLnBvcHVwLS1sb2dpbntcclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpe1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIH1cclxuICAgIC5wb3B1cF9fd3JhcHBlcntcclxuICAgICAgICBtYXgtd2lkdGg6IDg1MHB4O1xyXG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpe1xyXG4gICAgICAgICAgICB3aWR0aDogODUwcHg7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogbm9uZTtcclxuICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLnBvcHVwLS1zbGlkZXJ7XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKXtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICB9XHJcblxyXG4gICAgLnBvcHVwX193cmFwcGVyIHtcclxuICAgICAgICBtYXgtd2lkdGg6IDcwMHB4O1xyXG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpe1xyXG4gICAgICAgICAgICB3aWR0aDogNzAwcHg7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogbm9uZTtcclxuICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLnBvcHVwLS1keW5hbWlje1xyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IG1hcF9nZXQoJGdyaWQtYnJlYWtwb2ludHMsIGxnKSkgYW5kIChtaW4taGVpZ2h0OiA5MDBweCl7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgfVxyXG4gICAgLnBvcHVwX193cmFwcGVyIHtcclxuICAgICAgICBtYXgtd2lkdGg6IDEwMDBweDtcclxuICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogbWFwX2dldCgkZ3JpZC1icmVha3BvaW50cywgbGcpKSBhbmQgKG1pbi1oZWlnaHQ6IDkwMHB4KSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAwcHg7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogbm9uZTtcclxuICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLnBvcHVwLS1wcm9maWxle1xyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IG1hcF9nZXQoJGdyaWQtYnJlYWtwb2ludHMsIGxnKSkgYW5kIChtaW4taGVpZ2h0OiA5MDBweCl7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgfVxyXG4gICAgLnBvcHVwX193cmFwcGVye1xyXG4gICAgICAgIG1heC13aWR0aDogNTUwcHg7XHJcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcblxyXG5cclxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogbWFwX2dldCgkZ3JpZC1icmVha3BvaW50cywgbGcpKSBhbmQgKG1pbi1oZWlnaHQ6IDkwMHB4KSB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogNTUwcHg7XHJcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLnBvcHVwLS1jYXQtY29tbXVuaXR5LWl0ZW17XHJcbiAgICAucG9wdXBfX3dyYXBwZXJ7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAwcHg7XHJcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG4ucG9wdXAtLXZpZGVve1xyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZyl7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgfVxyXG5cclxuICAgIC5wb3B1cF9fd3JhcHBlciB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiA3MDBweDtcclxuICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKXtcclxuICAgICAgICAgICAgd2lkdGg6IDcwMHB4O1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIiwiLyoqXHJcbiAqIENPTVBPTkVOVFNcclxuICogU29jaWFsIEljb25cclxuICogVGhpcyBpcyBhbiBleGFtcGxlIG9mIGEgY29tcG9uZW50IHBhcnRpYWxcclxuICovXHJcblxyXG4kbmFtZTogc29jaWFsO1xyXG5cclxuXHJcbi8vLS0tLS0tLS1cclxuLy8gQkxPQ0tcclxuLy8tLS0tLS0tLVxyXG4uI3skbmFtZX17XHJcbn1cclxuXHJcbi8vLS0tLS0tLS0tLVxyXG4vLyBFTEVNRU5UXHJcbi8vLS0tLS0tLS0tLVxyXG5cclxuLiN7JG5hbWV9X19pY29uIHtcclxuICAgIHdpZHRoOiA0MHB4O1xyXG4gICAgaGVpZ2h0OiA0MHB4O1xyXG4gICAgbWFyZ2luOiAwIDAgMCA1cHg7XHJcbiAgICBmb250LXNpemU6IDQ3cHg7XHJcbiAgICBsaW5lLWhlaWdodDogMDtcclxuICAgIGNvbG9yOiAkYnJhbmQtYmxhY2s7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIHRyYW5zaXRpb246IGFsbCAwLjVzO1xyXG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9pbWFnZXMvc29jaWFsX2ljb25zLnBuZycpO1xyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIGNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgICAgIC8qdHJhbnNmb3JtOiBzY2FsZSgxMjUlKTsqL1xyXG4gICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb24teTogNDBweDtcclxuICAgIH1cclxufVxyXG5cclxuLiN7JG5hbWV9X19pY29uLS1mYmsge1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbi14OiAxMjBweDtcclxufVxyXG4uI3skbmFtZX1fX2ljb24tLXR3dCB7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXg6IDBweDtcclxufVxyXG4uI3skbmFtZX1fX2ljb24tLXBpbnsgXHJcblxyXG59XHJcbi4jeyRuYW1lfV9faWNvbi0taW5zdCB7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXg6IDgwcHg7XHJcbn1cclxuLiN7JG5hbWV9X19pY29uLS15b3V0IHtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb24teDogNDBweDtcclxufVxyXG5cclxuXHJcbi8vLS0tLS0tLS0tLS1cclxuLy8gTU9ESUZJRVJcclxuLy8tLS0tLS0tLS0tLVxyXG4vLyAuI3skbmFtZX0tLW1vZGlmaWVye31cclxuXHJcbi8vIC4jeyRuYW1lfV9fZWxlbWVudC0tbW9kaWZpZXJ7fVxyXG5cclxuXHJcbi5zb2NpYWxfX2ljb24tLW1vYmlsZXtcclxuICAgIHdpZHRoOiAyM3B4O1xyXG4gICAgaGVpZ2h0OiAyNXB4O1xyXG4gICAgbWFyZ2luOiAwIDJweDtcclxuICAgIGZvbnQtc2l6ZTogMjdweDtcclxufVxyXG4iLCIvKipcclxuICogQ09NUE9ORU5UU1xyXG4gKiBTbGlkZXJzXHJcbiAqIEhlcmUgYXJlIHRoZSBzbGlkZXJzIGZvciB0aGUgc2l0ZVxyXG4gKi9cclxuXHJcbiRuYW1lOiBzbGlkZXI7XHJcblxyXG5cclxuLy8tLS0tLS0tLVxyXG4vLyBTTElDS1xyXG4vLy0tLS0tLS0tXHJcbi5zbGljay1saXN0LFxyXG4uc2xpY2stdHJhY2ssXHJcbi5zbGljay1zbGlkZSB7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICBvdXRsaW5lOiBub25lO1xyXG59XHJcblxyXG4uc2xpY2stc2xpZGVyIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4uc2xpY2stdHJhY2suc2xpY2stdHJhY2sge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbn1cclxuXHJcbi8vLS0tLS0tLS1cclxuLy8gQkxPQ0tcclxuLy8tLS0tLS0tLVxyXG4uaGVyby0jeyRuYW1lfSB7XHJcbiAgICAvL0BpbmNsdWRlIGNvdmVyKGFic29sdXRlKTtcclxuICAgIC8vaGVpZ2h0OiAxMDAlO1xyXG4gICAgLy9vdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgLy96LWluZGV4OiAwO1xyXG59XHJcblxyXG4uaGVyby1zbGlkZXJfX2NhcHRpb24ge1xyXG4gICAgZ3JpZC1hcmVhOiBjb250ZW50O1xyXG4gICAgei1pbmRleDogMjA7XHJcbiAgICBwYWRkaW5nOiAzMHB4O1xyXG4gICAgbWF4LXdpZHRoOiAxMTAwcHg7XHJcbiAgICAtbXMtZ3JpZC1jb2x1bW4tYWxpZ246IGNlbnRlcjtcclxuICAgIC1tcy1ncmlkLXJvdy1hbGlnbjogY2VudGVyO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgcGFkZGluZzogMzZweCAyMHB4IDA7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAtMXB4O1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcblxyXG5cclxuICAgIEBtZWRpYShtaW4td2lkdGg6NjAwcHgpIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgbGVmdDogNTAlO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xyXG4gICAgICAgIGNvbG9yOiAjZmZmZmZmO1xyXG4gICAgICAgIGhlaWdodDogZml0LWNvbnRlbnQ7XHJcbiAgICAgICAgdGV4dC1zaGFkb3c6IDAgMCAyMHB4IGJsYWNrO1xyXG4gICAgfVxyXG59XHJcbi5oZXJvLXNsaWRlcl9faW1hZ2Uge1xyXG4gICAgZ3JpZC1hcmVhOiBjb250ZW50O1xyXG4gICAgei1pbmRleDogMTA7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcclxuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XHJcbiAgICBtYXgtaGVpZ2h0OiAzMjBweDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICBAbWVkaWEobWluLXdpZHRoOjYwMHB4KSB7XHJcbiAgICAgICAgbWF4LWhlaWdodDogNDE1cHg7XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhKG1pbi13aWR0aDoxMjAwcHgpIHtcclxuICAgICAgICBtYXgtaGVpZ2h0OiA2NjVweDtcclxuICAgIH1cclxuXHJcbiAgICBpbWcge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICByaWdodDogMDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAjMDAwMDAwO1xyXG4gICAgICAgIG9wYWNpdHk6IDAuMjU7XHJcbiAgICAgICAgei1pbmRleDogMTtcclxuICAgIH1cclxufVxyXG5cclxuLmhlcm8tc2xpZGVyX19jb250YWluZXIge1xyXG4gICAgLypkaXNwbGF5OiBncmlkO1xyXG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XHJcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IDFmcjtcclxuICAgIGdyaWQtdGVtcGxhdGUtYXJlYXM6IFwiY29udGVudFwiO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgei1pbmRleDogMTA7Ki9cclxuICAgIGNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIGp1c3RpZnktaXRlbXM6IGNlbnRlcjtcclxuICAgIGhlaWdodDogMTAwdnc7XHJcbiAgICBtYXgtaGVpZ2h0OiAzMjBweDtcclxuXHJcbiAgICBAbWVkaWEobWluLXdpZHRoOjYwMHB4KSB7XHJcbiAgICAgICAgbWF4LWhlaWdodDogNDE1cHg7XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhKG1pbi13aWR0aDoxMjAwcHgpIHtcclxuICAgICAgICBtYXgtaGVpZ2h0OiA2NjVweDtcclxuICAgIH1cclxufVxyXG5cclxuLyouaGVyby1zbGlkZXItLXZldC1iYWRnZSB7XHJcbiAgICAuaGVyby1zbGlkZXJfX2NhcHRpb24ge1xyXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufSovXHJcbi8vLS0tLS0tLS0tLVxyXG4vLyBFTEVNRU5UXHJcbi8vLS0tLS0tLS0tLVxyXG4uc2xpY2stYXJyb3cge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogNTAlO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gICAgd2lkdGg6IDQwcHg7XHJcbiAgICBoZWlnaHQ6IDQwcHg7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgIHotaW5kZXg6IDEwO1xyXG4gICAgdGV4dC1pbmRlbnQ6IDUwcHg7XHJcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICBvcGFjaXR5OiAwLjk7XHJcbiAgICBvdXRsaW5lOiBub25lO1xyXG5cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdGV4dC1pbmRlbnQ6IDA7XHJcbiAgICAgICAgZm9udC1zaXplOiAyNXB4O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAwO1xyXG4gICAgfVxyXG5cclxuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5zbGljay1uZXh0IHtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDE1MCUpO1xyXG5cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIEBpbmNsdWRlIGFycm93LXJpZ2h0LWljb247XHJcbiAgICAgICAgbGVmdDogOXB4O1xyXG4gICAgICAgIHRvcDogMjFweDtcclxuICAgIH1cclxufVxyXG5cclxuLnNsaWNrLXByZXYge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xNTAlKTtcclxuXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgICBAaW5jbHVkZSBhcnJvdy1sZWZ0LWljb247XHJcbiAgICAgICAgbGVmdDogNnB4O1xyXG4gICAgICAgIHRvcDogMjFweDtcclxuICAgIH1cclxufVxyXG4vLyBJbXBvcnRhbnQgbmVlZGVkIHRvIG92ZXJyaWRlIHNsaWNrIHN0eWxlc1xyXG4vLyBUaGUgYXJyb3dzIGFyZSBjb250cm9sbGVkIGhlcmUgdG8gc2F2ZSBoYXJkY29kaW5nIGEgYnJlYWtwb2ludCBpbiBqc1xyXG4ucG9wdXAgLnNsaWNrLWFycm93IHtcclxuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuXHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogOTAwcHgpIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn1cclxuLy8tLS0tLS0tLS0tLVxyXG4vLyBNT0RJRklFUlxyXG4vLy0tLS0tLS0tLS0tXHJcbi5jYW1wYWlnbi0jeyRuYW1lfSB7XHJcbiAgICBAZXh0ZW5kICVwZC1ibS1sZztcclxuICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBJTlNUQUdSQU0gLSBTTElERVJcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLmluc3RhZ3JhbS0jeyRuYW1lfSB7XHJcbiAgICBAZXh0ZW5kICVzZXQtc2hhZG93LWxpZ2h0O1xyXG5cclxuICAgIC5zbGljay1kb3RzIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiBhdXRvO1xyXG4gICAgICAgIGJvdHRvbTogMzBweDtcclxuICAgIH1cclxufVxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBUV0lUVEVSIC0gRkFDRUJPT0sgLSBTTElERVJTXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLnR3aXR0ZXItI3skbmFtZX0sXHJcbi5mYWNlYm9vay0jeyRuYW1lfSB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIHBhZGRpbmc6IDMwcHg7XHJcblxyXG4gICAgaDMge1xyXG4gICAgICAgIEBleHRlbmQgJXRzLTc7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgIH1cclxuXHJcbiAgICAuc2xpY2stZG90cyB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcclxuICAgIH1cclxuXHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgZm9udC1zaXplOiA1MnB4O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gICAgICAgIGhlaWdodDogNTJweDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5zbGljay1zbGlkZSxcclxuICAgIC5zbGljay1saXN0LFxyXG4gICAgLnNsaWNrLXRyYWNrIHtcclxuICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICB9XHJcbn1cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBUV0lUVEVSIC0gU0xJREVSU1xyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi50d2l0dGVyLSN7JG5hbWV9IHtcclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgICBAaW5jbHVkZSB0d3QtaWNvbjtcclxuICAgICAgICBjb2xvcjogJHR3aXR0ZXItYmx1ZTtcclxuICAgIH1cclxufVxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBGQUNFQk9PSyAtIFNMSURFUlNcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLmZhY2Vib29rLSN7JG5hbWV9IHtcclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgICBAaW5jbHVkZSBmYmstaWNvbjtcclxuICAgICAgICBjb2xvcjogJGZhY2Vib29rLWJsdWU7XHJcbiAgICB9XHJcblxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBoZWlnaHQ6IDFweDtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtcHVycGxlO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgbGVmdDogMzBweDtcclxuICAgICAgICByaWdodDogMzBweDtcclxuICAgIH1cclxufVxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBJTlNUQUdSQU0gLSBTTElERVJcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLm1lZGlhLSN7JG5hbWV9IHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAuc2xpY2stbGlzdCxcclxuICAgIC5zbGljay1zbGlkZSB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcclxuICAgIH1cclxuXHJcbiAgICAuc2xpY2stbmV4dCB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xyXG4gICAgICAgIHJpZ2h0OiAyMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5zbGljay1wcmV2IHtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XHJcbiAgICAgICAgbGVmdDogMjBweDtcclxuICAgIH1cclxuXHJcbiAgICAuc2xpY2stZG90cyB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogYXV0bztcclxuICAgICAgICBib3R0b206IDMwcHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5tZWRpYS1zbGlkZXJfX2ltYWdlIHtcclxufVxyXG4vLyB9XHJcbi8vLS0tLS0tLS0tLS0tLVxyXG4vLyBTTElERVIgR1JJRFxyXG4vLy0tLS0tLS0tLS0tLS1cclxuLy8gU2xpZGVycyByZXF1aXJlIHRoZWlyIG93biBncmlkIHN5c3RlbS4gVGhleSBpbmhlcmVudGx5IGhhbmRsZVxyXG4vLyB0aGUgZ3JpZCBjb2x1bW5zIHZpYSB0aGUgc2xpZGVyIHNldHRpbmdzLiBBcyBncmlkLWdhcCBpcyBhbHNvIG5vdFxyXG4vLyBhcHBsaWNhYmxlIHRvIHRoZSBzcGFjaW5nIHdlIGFwcGx5IHRoZSBsZWZ0LXNwYWNpbmcgdGVjaG5pcXVlLlxyXG4vLyBUaGlzIGJsb2NrIHNlbGVjdG9yIGlzIGN1cnJlbnRseSByZWR1ZG5kYW50IGJ1dCBsZWZ0IGluIGZvciBmdXR1cmVcclxuLy8gc29sdXRpb25zLiBJdCBhbHdheXMgbWFpbnRhaW5zIEJFTSBtZXRob2RvbG9neS5cclxuLy8gLiN7JG5hbWV9e31cclxuLy8gLiN7JG5hbWV9LS1nYXAtMjB7XHJcbi8vICAgICBtYXJnaW4tbGVmdDogLTIwcHg7XHJcbi8vICAgICAuI3skbmFtZX1fX2l0ZW17XHJcbi8vICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xyXG4vLyAgICAgfVxyXG4vLyB9XHJcbi8vIC4jeyRuYW1lfS0tZ2FwLTMwe1xyXG4vLyAgICAgbWFyZ2luLWxlZnQ6IC0yMHB4O1xyXG4vLyAgICAgLiN7JG5hbWV9X19pdGVtLFxyXG4vLyAgICAgLnNsaWNrLWRvdHN7XHJcbi8vICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xyXG4vLyAgICAgfVxyXG4vLyAgICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0tYW5kLXVwKXtcclxuLy8gICAgICAgICBtYXJnaW4tbGVmdDogLTMwcHg7XHJcbi8vICAgICAgICAgLiN7JG5hbWV9X19pdGVtLFxyXG4vLyAgICAgICAgIC5zbGljay1kb3Rze1xyXG4vLyAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XHJcbi8vICAgICAgICAgfVxyXG4vLyAgICAgfVxyXG4vLyB9XHJcbi8vIC4jeyRuYW1lfS0tZ2FwLTM1e1xyXG4vLyAgICAgbWFyZ2luLWxlZnQ6IC0yMHB4O1xyXG4vLyAgICAgLiN7JG5hbWV9X19pdGVtLFxyXG4vLyAgICAgLnNsaWNrLWRvdHN7XHJcbi8vICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xyXG4vLyAgICAgfVxyXG4vLyAgICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0tYW5kLXVwKXtcclxuLy8gICAgICAgICBtYXJnaW4tbGVmdDogLTM1cHg7XHJcbi8vICAgICAgICAgLiN7JG5hbWV9X19pdGVtLFxyXG4vLyAgICAgICAgIC5zbGljay1kb3Rze1xyXG4vLyAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDM1cHg7XHJcbi8vICAgICAgICAgfVxyXG4vLyAgICAgfVxyXG4vLyB9XHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIENBVCBHQUxMRVJZIC0gU0xJREVSU1xyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIExBWU9VVCBXSEVOIFRIRVJFSVMgQSBTSURFQkFSIExBWU9VVDtcclxuLmNvbW11bml0eS1jYXQtZ2FsbGVyeS0jeyRuYW1lfSB7XHJcbiAgICBtYXgtd2lkdGg6IDEwMDBweDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRkYXJrLWdsYXNzO1xyXG5cclxuICAgIEBpbmNsdWRlIG1lZGlhLXdpZHRoKDEyMDBweCkge1xyXG4gICAgICAgIHdpZHRoOiAxMDAwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLnNsaWNrLWRvdHMge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICBoZWlnaHQ6IDQwcHg7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMTJweDtcclxuICAgICAgICB0b3A6IDEwMCU7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAvLyByaWdodDogMzQwcHg7XHJcbiAgICAgICAgLy8gYm90dG9tOiAwO1xyXG4gICAgICAgIGxpIHtcclxuICAgICAgICAgICAgJjpvbmx5LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBDQVQgR0FMTEVSWSAtIFNMSURFUlMgLSBQT1JUQUxcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBMQVlPVVQgV0hFTiBUSEVSRUlTIEEgU0lERUJBUiBMQVlPVVQ7XHJcbi5jYXQtY29tbXVuaXR5X19zbGlkZXIge1xyXG4gICAgLy8gbWF4LXdpZHRoOiAxMDAwcHg7XHJcbiAgICAvLyBiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyay1nbGFzcztcclxuICAgIC8vIC5zbGljay1zbGlkZSxcclxuICAgIC8vIC5zbGljay10cmFjayxcclxuICAgIC8vIC5zbGljay1saXN0e1xyXG4gICAgLy8gICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcbiAgICAvLyB9XHJcbiAgICAvLyBAaW5jbHVkZSBtZWRpYS13aWR0aCgxMjAwcHgpeyB3aWR0aDogMTAwMHB4OyB9XHJcbiAgICAvLyAuc2xpY2stZG90c3tcclxuICAgIC8vICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAvLyAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAvLyAgICAgaGVpZ2h0OiA0MHB4O1xyXG4gICAgLy8gICAgIHRvcDogMTAwJTtcclxuICAgIC8vICAgICBsZWZ0OiAwO1xyXG4gICAgLy8gICAgIGJvdHRvbTogMDtcclxuICAgIC8vICAgICBsaXtcclxuICAgIC8vICAgICAgICAgJjpvbmx5LWNoaWxke1xyXG4gICAgLy8gICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIC8vICAgICAgICAgfVxyXG4gICAgLy8gICAgIH1cclxuICAgIC8vIH1cclxufVxyXG4vLyBMQVlPVVQgV0hFTiBUSEVSRSBBUkUgTk8gQ09NTU1FTlRTIElOIFRIRSBTSURFQkFSO1xyXG4uY2F0LWdhbGxlcnktI3skbmFtZX0ge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGRhcmstZ2xhc3M7XHJcblxyXG4gICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0tYW5kLXVwKSB7XHJcbiAgICAgICAgd2lkdGg6IDcwMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5zbGljay1kb3RzIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgICAgaGVpZ2h0OiA0MHB4O1xyXG4gICAgICAgIHRvcDogYXV0bztcclxuICAgICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcclxuICAgICAgICB6LWluZGV4OiAxMDAwO1xyXG5cclxuICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgICY6b25seS1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgICAgYnV0dG9uOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLWJsdWU7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgJi5zbGljay1hY3RpdmUge1xyXG4gICAgICAgICAgICAgICAgICAgIGJ1dHRvbjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCIvKipcclxuICogQ09NUE9ORU5UU1xyXG4gKiBTcG9uc29yIFBvc3RlclxyXG4gKlxyXG4gKi9cclxuXHJcbiRuYW1lOiBzcG9uc29yLXBvc3RlcjtcclxuXHJcblxyXG4vLy0tLS0tLS0tXHJcbi8vIEJMT0NLXHJcbi8vLS0tLS0tLS1cclxuLiN7JG5hbWV9e1xyXG4gICAgbWF4LXdpZHRoOiA3MDBweDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAwO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgQGluY2x1ZGUgYXNwZWN0LXJhdGlvKDEwLDkpO1xyXG59XHJcblxyXG4vLyBoaWRlIGNvcHkgb24gbW9iaWxlXHJcbi5zcG9uc29yLXBvc3Rlci0taW4tc2xpZGVye1xyXG4gICAgbWF4LXdpZHRoOiBub25lO1xyXG4gICAgcHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA0MjVweCl7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy8tLS0tLS0tLS0tXHJcbi8vIEVMRU1FTlRcclxuLy8tLS0tLS0tLS0tXHJcblxyXG4uI3skbmFtZX1fX2lubmVye1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIHBhZGRpbmc6IDMwcHg7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcblxyXG4gICAgaDJ7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuICAgIH1cclxuXHJcbiAgICBwe1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICAgICAgbWF4LXdpZHRoOiA1MDBweDtcclxuICAgIH1cclxuXHJcbiAgICAuZ2FsbGVyeS1pY29ue1xyXG4gICAgICAgIHdpZHRoOiAyMHZ3O1xyXG4gICAgICAgIGhlaWdodDogMjB2dztcclxuICAgICAgICBtYXgtd2lkdGg6IDE2MHB4O1xyXG4gICAgICAgIG1heC1oZWlnaHQ6IDE2MHB4O1xyXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvYmFzZTY0L3N2Zy9nYWxsZXJ5LWljb24td2hpdGUuc3ZnKTtcclxuICAgICAgICBAaW5jbHVkZSBiYWNrZ3JvdW5kKGNvdmVyKTtcclxuICAgIH1cclxufVxyXG4iLCIvKipcclxuICogQ09NUE9ORU5UU1xyXG4gKiBTdGVwcGVyXHJcbiAqL1xyXG5cclxuJG5hbWU6IHN0ZXBwZXI7XHJcblxyXG4vLy0tLS0tLS0tLS1cclxuLy8gQkxPQ0tcclxuLy8tLS0tLS0tLS0tXHJcblxyXG4uc3RlcHBlci1jb250YWluZXJ7XHJcbiAgICBtYXgtd2lkdGg6IDEyMDBweDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHBhZGRpbmc6IDAgMjBweDtcclxuICAgIG1hcmdpbjogMCBhdXRvO1xyXG59XHJcblxyXG4uc3RlcHBlcntcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbn1cclxuXHJcbi5zdGVwcGVyX19zdG9we1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICAgIHdpZHRoOiAxNTBweDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIH1cclxufVxyXG5cclxuLnN0ZXBwZXJfX3N0b3AuaXMtYWN0aXZle1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBzcGFue1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDM2cHg7XHJcbiAgICAgICAgICAgIHdpZHRoOiAzNnB4O1xyXG4gICAgICAgICAgICBtYXJnaW46IDJweCAwO1xyXG5cclxuICAgICAgICAmOmJlZm9yZXtcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMjBweDtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLy8gU2hvd3MgY3VycmVudCBhY3RpdmUgc3RlcCBhbmQgdGhlIG5leHQgc3RlcCBjb21pbmcgdXBcclxuICAgICsgLnN0ZXBwZXJfX3N0b3B7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5zdGVwcGVyX19zdG9we1xyXG4gICAgc3BhbiB7XHJcbiAgICAgICAgaGVpZ2h0OiAyMHB4O1xyXG4gICAgICAgIHdpZHRoOiAyMHB4O1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIG1hcmdpbjogMTBweCAwO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICB9XHJcblxyXG4gICAgLy8gQ2VudGVycyBsYXN0IGl0ZW1cclxuICAgICY6bGFzdC1vZi10eXBlLmlzLWFjdGl2ZXtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKXtcclxuICAgICAgICAgICAgd2lkdGg6IDE1MHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuXHJcbi5zdGVwcGVyLXByb2dyZXNzLWJhcntcclxuICAgICY6YmVmb3Jle1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgaGVpZ2h0OiA4cHg7XHJcbiAgICAgICAgbGVmdDogOTBweDtcclxuICAgICAgICByaWdodDogOTBweDtcclxuICAgICAgICB0b3A6IDQycHg7XHJcbiAgICB9XHJcbn1cclxuLnN0ZXBwZXJfX3N0ZXB7XHJcbiAgICAvL21hcmdpbjogMCAxMHB4IDAgMDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8od2lkZS1hbmQtdXApe1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgIH1cclxuICAgIGNvbG9yOiRicmFuZC1wdXJwbGU7XHJcbn1cclxuXHJcbi5zdGVwcGVyX19oZWFkaW5nIHtcclxuICAgIGNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgLy9vcGFjaXR5OiAwLjY7XHJcbiAgICAvL3doaXRlLXNwYWNlOiBub3dyYXA7XHJcbn1cclxuXHJcblxyXG4vLy0tLS0tLS0tLS1cclxuLy8gUkVMQVRFRFxyXG4vLy0tLS0tLS0tLS1cclxuXHJcbi8vTUFOQUdFIEFTU09DSUFURUQgU1RFUCBESVNQTEFZIC0gVEhJUyBXSUxMIEJFIEhBTkRMRUQgSU4gUkVBQ1QgTEFURVJcclxuW2NsYXNzKj1cInN0ZXAtY29udGVudFwiXXtcclxuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgNDAwbXMgZWFzZS1pbi1vdXQsIG1heC1oZWlnaHQgNTAwbXMgZWFzZS1pbi1vdXQ7XHJcblxyXG4gICAgJjpub3QoLmlzLWFjdGl2ZSl7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICBtYXgtaGVpZ2h0OiAwcHg7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIH1cclxuXHJcbiAgICAmLmlzLWFjdGl2ZXtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIG1heC1oZWlnaHQ6IDk5OTlweDtcclxuICAgIH1cclxufVxyXG5cclxuLy9Tb21lIGFkZGl0aW9uYWwgbGF5b3V0IGZvciB0aGUgTmV4dCBhbmQgQmFjayBidG5zIGNvbnRyb2xsaW5nIHRoZSBzdGVwIHBhZ2luZy5cclxuLnN0ZXAtYnRucyB7XHJcbiAgICBtYXgtd2lkdGg6IDQ1MHB4O1xyXG4gICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG5cclxuICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8obWVkaXVtLWFuZC11cCkge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcclxuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAgLy8gYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxuICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgfVxyXG5cclxuICAgIHAge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICAgICAgQGV4dGVuZCAldHMtODtcclxuICAgICAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xyXG4gICAgfVxyXG5cclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGxpZ2h0LWdyZXk7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxuICAgIH1cclxuXHJcbiAgICAuYnRuOm9ubHktY2hpbGQge1xyXG4gICAgICAgIC8vbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgICB9XHJcbn1cclxuXHJcbi5zdGVwLWJ0bnMtLWxheW91dC1vZi10d297XHJcbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bS1hbmQtdXApIHtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG4uc3RlcC1idG5zLS1jZW50ZXJ7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIC5idG46b25seS1jaGlsZHtcclxuICAgICAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgIH1cclxufVxyXG5cclxuLnN0ZXAtYnRucy0tdGhlbWEtYWxwaGF7XHJcbiAgICAmOmJlZm9yZXtcclxuICAgICAgICBib3JkZXItY29sb3I6IGRhcmtlbigkbGlnaHQtZ3JleSwgMTAlKTtcclxuICAgIH1cclxufVxyXG5cclxuLnN0ZXAtYnRucy0tbm8tYm9yZGVyIHtcclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgYm9yZGVyOiAwO1xyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLnN0ZXAtYnRuc19fYnRuIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBtYXJnaW46IDAgMCAxZW07XHJcblxyXG4gICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0tYW5kLXVwKSB7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICAgICAgbWFyZ2luOiAwIDAgMCAzMHB4O1xyXG4gICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgfVxyXG59XHJcblxyXG4uc3RlcC1idG5zX19iYWNre1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIG1hcmdpbjogMCAwIDFlbTtcclxuICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8obWVkaXVtLWFuZC11cCkge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gICAgICAgIC8vbWFyZ2luOiAwIGF1dG8gMCAwO1xyXG4gICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgfVxyXG59XHJcbiIsIi8qKlxyXG4gKiBDT01QT05FTlRTXHJcbiAqIFN0b3J5XHJcbiAqIFRoaXMgY29tcG9uZW50IGlzIGZvdW5kIG9uIHRoZSBCZXJlYXZlbWVudCBTdG9yaWVzIHRlbXBsYXRlXHJcbiAqL1xyXG5cclxuJG5hbWU6IHN0b3J5O1xyXG5cclxuLy8tLS0tLS0tLVxyXG4vLyBCTE9DS1xyXG4vLy0tLS0tLS0tXHJcbi4jeyRuYW1lfXtcclxuICAgIHBhZGRpbmctbGVmdDogMjBweDtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblxyXG4gICAgcDpub3QoW2NsYXNzXSl7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcclxuICAgIH1cclxuXHJcbiAgICBoMyxcclxuICAgIHB7XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogMjBweDtcclxuICAgIH1cclxuXHJcbiAgICBoM3sgbWFyZ2luLXRvcDogMzBweDt9XHJcbiAgICBwOmxhc3Qtb2YtdHlwZXsgbWFyZ2luLWJvdHRvbTogNDBweDt9XHJcbn1cclxuXHJcbi8vLS0tLS0tLS0tLVxyXG4vLyBFTEVNRU5UXHJcbi8vLS0tLS0tLS0tLVxyXG5cclxuLy8tLS0tLS0tLS0tXHJcbi8vIE1PRElGSUVSXHJcbi8vLS0tLS0tLS0tLVxyXG4uI3skbmFtZX0uI3skbmFtZX0tLWNvdmVye1xyXG4gICAgQGluY2x1ZGUgY292ZXIoYWJzb2x1dGUpO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcblxyXG4uI3skbmFtZX06bm90KFtjbGFzcyo9XCItLW5vLWZhZGVcIl0pe1xyXG4gICAgJjphZnRlcixcclxuICAgICY6YmVmb3Jle1xyXG4gICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgIGhlaWdodDogNDBweDtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHJpZ2h0OiAxMHB4O1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB6LWluZGV4OiAxO1xyXG4gICAgfVxyXG5cclxuICAgICY6YmVmb3Jle1xyXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkbGlnaHQtZ3JleSwgdHJhbnNwYXJlbnQpO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgIH1cclxuXHJcbiAgICAmOmFmdGVye1xyXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0cmFuc3BhcmVudCwgJGxpZ2h0LWdyZXkpO1xyXG4gICAgICAgIGJvdHRvbTogMDtcclxuICAgIH1cclxufVxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIFJFTEFURUQgLSBUSEVNSU5HXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4kY29sb3ItbWFwOihcclxuICAgIGJsdWU6ICgkYnJhbmQtYmx1ZSwgd2hpdGUpLFxyXG4gICAgZ3JlZW46ICgkYnJhbmQtZ3JlZW4sIHdoaXRlKSxcclxuICAgIGdyZXk6ICgkZ3JleSwgd2hpdGUpLFxyXG4gICAgcHVycGxlOiAoJGJyYW5kLXB1cnBsZSwgd2hpdGUpLFxyXG4gICAgcmVkOiAoJGJyYW5kLXJlZCwgd2hpdGUpLFxyXG4gICAgb3JhbmdlOiAoJGJyYW5kLXB1cnBsZSwgJGJyYW5kLWJsYWNrKSxcclxuICAgIGxpZ2h0LWJsdWU6ICgkYnJhbmQtbGlnaHQtYmx1ZSwgd2hpdGUpLFxyXG4gICAgbGlnaHQtZ3JleTogKCRsaWdodC1ncmV5LCAkYnJhbmQtYmxhY2spXHJcbik7XHJcblxyXG4vLy0tLS0tLS0tXHJcbi8vIEJMT0NLXHJcbi8vLS0tLS0tLS1cclxuQGVhY2ggJGNvbG9yLW5hbWUsICRjb2xvci12YWx1ZSBpbiAkY29sb3ItbWFwe1xyXG4gICAgLiN7XCJcIiArICRuYW1lfS5iZy0je1wiXCIgKyAkY29sb3ItbmFtZX17XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI3tudGgoJGNvbG9yLXZhbHVlLCAxKX07XHJcbiAgICAgICAgY29sb3I6ICN7bnRoKCRjb2xvci12YWx1ZSwgMil9O1xyXG4gICAgfVxyXG5cclxuICAgIC4je1wiXCIgKyAkbmFtZX0uYmctI3tcIlwiICsgJGNvbG9yLW5hbWV9Om5vdChbY2xhc3MqPVwiLS1uby1mYWRlXCJdKXtcclxuICAgICAgICAmOmJlZm9yZXsgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCN7bnRoKCRjb2xvci12YWx1ZSwgMSl9LCB0cmFuc3BhcmVudCk7IH1cclxuICAgICAgICAmOmFmdGVyeyBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodHJhbnNwYXJlbnQsICN7bnRoKCRjb2xvci12YWx1ZSwgMSl9KTsgfVxyXG4gICAgfVxyXG59XHJcblxyXG4iLCIvKipcclxuICogQ09NUE9ORU5UU1xyXG4gKiBUYWJcclxuICovXHJcblxyXG4kbmFtZTogdGFiO1xyXG5cclxuLy8gVEhJUyBTSE9VTEQgQkUgUkVEVUNFRCBUTyBBIEJUTiBUSEVNRVxyXG4vLyBET05FIC0gYnRuLS10YWJcclxuXHJcbi8vLS0tLS0tLS0tLVxyXG4vLyBCTE9DS1xyXG4vLy0tLS0tLS0tLS1cclxuLy8gLiN7JG5hbWV9e1xyXG4gICAgLy8gYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuICAgIC8vIGNvbG9yOiAkYnJhbmQtYmxhY2s7XHJcblxyXG4gICAgLy8gJi5pcy1hY3RpdmV7XHJcbiAgICAvLyAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XHJcbiAgICAvLyB9XHJcbi8vIH1cclxuXHJcblxyXG4vLy0tLS0tLS0tLS0tXHJcbi8vIE1PRElGSUVSU1xyXG4vLy0tLS0tLS0tLS0tXHJcbiIsIi8vIFNlYXJjaCBncm91cHMgY29uc2lzdCBvZiBhIGJ1dHRvbiBhbmQgYW4gaW5wdXQgYW5kIHR5cGljYWxseSBoYXZlIHNlYXJjaCBhcyB0aGUgcGxhY2Vob2xkZXIgZm9yIHRoZSBpbnB1dFxyXG5cclxuLnNlYXJjaC1ncm91cHtcclxuXHJcbiAgQG1lZGlhIChtaW4td2lkdGg6IDQyNXB4KXtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgfVxyXG59XHJcblxyXG4uc2VhcmNoLWdyb3VwX19pbnB1dHtcclxuICBtYXJnaW46IDAgMCAyMHB4O1xyXG5cclxuICBAbWVkaWEgKG1pbi13aWR0aDogNDI1cHgpe1xyXG4gICAgbWFyZ2luOjAgMTBweCAwIDA7XHJcbiAgICBmbGV4OiAxO1xyXG4gICAgLy8gbWF0Y2ggaGVpZ2h0IHdpdGggYnV0dG9uXHJcbiAgICBoZWlnaHQ6IDQ2cHg7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLnNlYXJjaC1ncm91cF9fYnRue1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIEBtZWRpYSAobWluLXdpZHRoOiA0MjVweCl7XHJcbiAgICB3aWR0aDogYXV0bztcclxuICB9XHJcbn1cclxuIiwiLyoqXHJcbiAqIENPTVBPTkVOVFNcclxuICogNDA0LzUwMCBXYXJuaW5nIE1lc3NhZ2VcclxuICovXHJcblxyXG4kbmFtZTogd2FybmluZy1tZXNzYWdlO1xyXG5cclxuXHJcbi8vLS0tLS0tLS1cclxuLy8gQkxPQ0tcclxuLy8tLS0tLS0tLVxyXG4uI3skbmFtZX0ge1xyXG4gICAgbWFyZ2luOiA1MHB4IGF1dG87XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICAgcCB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiA2NTBweDtcclxuICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgIH1cclxufVxyXG5cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIEVMRU1FTlQgLSBIRUFETElORVxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4uI3skbmFtZX1fX2hlYWRsaW5le1xyXG4gICAgbWFyZ2luLXRvcDogMjBweDtcclxuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbn1cclxuXHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIEVMRU1FTlQgLSBJQ09OXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS1cclxuLiN7JG5hbWV9X19pY29uIHtcclxuICAgIG1heC13aWR0aDogMTIwcHg7XHJcbiAgICBoZWlnaHQ6IDEyMHB4O1xyXG4gICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2Jhc2U2NC9QTkcvd2FybmluZy5wbmcpO1xyXG4gICAgQGluY2x1ZGUgYmFja2dyb3VuZChjb3Zlcik7XHJcbn1cclxuXHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBFTEVNRU5UIC0gTElOS1NcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS1cclxuLiN7JG5hbWV9X19saW5rc3tcclxuICAgIG1hcmdpbi10b3A6IDMwcHg7XHJcblxyXG4gICAgdWwge1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBwYWRkaW5nOiAyMHB4O1xyXG5cclxuICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XHJcblxyXG4gICAgICAgICAgICAmOmJlZm9yZSB7IGRpc3BsYXk6IG5vbmU7IH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0tYW5kLXVwKXtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG5cclxuICAgICAgICB1bCB7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogNTAlO1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuXHJcbiAgICAgICAgICAgICYgKyB1bCB7IHRleHQtYWxpZ246IGxlZnQ7IH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIEVMRU1FTlQgLSBTVEVQU1xyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLVxyXG4uI3skbmFtZX1fX3N0ZXBze1xyXG4gICAgbWF4LXdpZHRoOiA3MDBweDtcclxuICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICBtYXJnaW46IDUwcHggYXV0bztcclxuICAgIGNvbG9yOiAkYmxhY2s7XHJcbiAgICBmb250LXNpemU6IDE2cHg7XHJcbn1cclxuXHJcbi8vLS0tLS0tLS0tLS1cclxuLy8gTU9ESUZJRVJcclxuLy8tLS0tLS0tLS0tLVxyXG4iLCIubW9iaWxlLXN0aWNreS1iYXIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuICAgIHBhZGRpbmc6IDVweCAxZW07XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgei1pbmRleDogNTA7XHJcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjI1KTtcclxuXHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNDI2cHgpIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG59XHJcblxyXG4ubW9iaWxlLXN0aWNreS1iYXItLW9wZW57XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBAbWVkaWEgKG1pbi13aWR0aDogNDI2cHgpe1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcbn1cclxuXHJcbi5tb2JpbGUtc3RpY2t5LWJhcl9fY29udGFpbmVyIHtcclxuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yNSk7XHJcbiAgICB3aWR0aDogMzMuMzMlO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgZm9udC1mYW1pbHk6ICRjYXRzLWJvbGQ7XHJcbiAgICBtaW4taGVpZ2h0OiA1NHB4O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICY6bGFzdC1vZi10eXBlIHtcclxuICAgICAgICBib3JkZXI6IDA7XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG4ubW9iaWxlLXN0aWNreS1iYXJfX2xpbmt7XHJcbiAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgIHRvcDowcHg7XHJcbiAgICBsZWZ0OjBweDtcclxuICAgIHJpZ2h0OjBweDtcclxuICAgIGJvdHRvbTowcHg7XHJcbiAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgbGluZS1oZWlnaHQ6NTRweDtcclxuICAgIGNvbG9yOiR3aGl0ZTtcclxufSIsIi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBDT01NVU5JVFkgU1RBVFNcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi5jb21tdW5pdHktc3RhdHN7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBmbGV4LXdyYXA6IHdyYXA7XHJcbn1cclxuXHJcblxyXG4uY29tbXVuaXR5LXN0YXRzX19idG4ge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBAZXh0ZW5kICV0cy04O1xyXG4gICAgY29sb3I6ICRicmFuZC1ibGFjaztcclxuICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICBsaW5lLWhlaWdodDogMjBweDtcclxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgbWFyZ2luOiAwIDAgMWVtO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDQyNXB4KSB7XHJcbiAgICAgICAgd2lkdGg6IDUwJTtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcbiAgICAgICAgd2lkdGg6IDMzLjMzJTtcclxuICAgIH1cclxuXHJcbiAgICBzcGFuIHtcclxuICAgICAgICB3aWR0aDogNDBweDtcclxuICAgICAgICBtaW4td2lkdGg6IDQwcHg7XHJcbiAgICAgICAgaGVpZ2h0OiA0MHB4O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiA0MHB4O1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBjb2xvcjogd2hpdGU7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXJlZDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xyXG4gICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiIsIi5kb25hdGUtb3B0aW9uIHtcclxuICAgIHBhZGRpbmc6IDIwcHggMTVweDtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcbiAgICBmb250LWZhbWlseTogJGNhdHMtbWVkO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjlweCkge1xyXG4gICAgICAgIGhlaWdodDogMzQ1cHg7XHJcbiAgICAgICAgcGFkZGluZzogNDBweCAzMHB4O1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICAmLmlzLXNlbGVjdGVkIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtYmx1ZTtcclxuICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgIH1cclxufVxyXG5cclxuLmRvbmF0ZS1vcHRpb25fX2Ftb3VudHtcclxuICBmb250LWZhbWlseTogJGNhdHMtYm9sZDtcclxuICBmb250LXNpemU6IDQwcHg7XHJcbiAgLy8gSUUgRml4XHJcbiAgd2lkdGg6IDEwMCU7XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpe1xyXG4gICAgZm9udC1zaXplOiA0NnB4O1xyXG4gIH1cclxufVxyXG5cclxuLmRvbmF0ZS1vcHRpb25fX2NvcHl7XHJcbiAgcGFkZGluZzogMjBweCAwO1xyXG4gIGZvbnQtc2l6ZTogMThweDtcclxuICAvLyBJRSBGaXhcclxuICB3aWR0aDogMTAwJTtcclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCl7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gIH1cclxufVxyXG5cclxuLmRvbmF0aW9uLW9wdGlvbl9faW5wdXR7XHJcbiAgbWFyZ2luOjIwcHggMDtcclxuICB3aWR0aDogMjAwcHg7XHJcbn1cclxuXHJcbi5kb25hdGUtb3B0aW9uX19oZWFkaW5ne1xyXG4gIGZvbnQtc2l6ZTogMzJweDtcclxuICBmb250LWZhbWlseTogJGNhdHMtYm9sZDtcclxuICAvLyBJRSBGaXhcclxuICB3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLy8gVGV4dCBzdGF0ZXMgZm9yIGVhY2ggYnV0dG9uXHJcblxyXG4uZG9uYXRlLW9wdGlvbl9fYnRuIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1waW5rICFpbXBvcnRhbnQ7XHJcbiAgICBjb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgY29sb3I6ICRicmFuZC1waW5rICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiUGxlYXNlIFNlbGVjdFwiO1xyXG4gICAgfVxyXG5cclxuICAgIC5kb25hdGUtb3B0aW9uLmlzLXNlbGVjdGVkICYge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1waW5rICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiU2VsZWN0ZWRcIjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG4uZG9uYXRlLW9wdGlvbi0taG9yaXpvbnRhbC1sYXlvdXR7XHJcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcclxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKXtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgfVxyXG5cclxuICAuZG9uYXRlLW9wdGlvbl9fY29weXtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKXtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uZG9uYXRlLW9wdGlvbi0tb3RoZXItYW1vdW50LWhvcml6b250YWwtbGF5b3V0e1xyXG4gIC5kb25hdGlvbi1vcHRpb25fX2lucHV0e1xyXG4gICAgbWFyZ2luOiAwIDAgMjBweDtcclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpe1xyXG4gICAgICBtYXJnaW46IDIwcHggMDtcclxuICAgIH1cclxuICB9XHJcbiAgLmRvbmF0ZS1vcHRpb25fX2hlYWRpbmd7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCl7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuXHJcbi5kb25hdGUtb3B0aW9uLS1vdGhlcntcclxuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG59XHJcblxyXG4uZG9uYXRlLW9wdGlvbi0tbW9iaWxlLXRoZW1lIHtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbiAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICBwYWRkaW5nOiAxMnB4O1xyXG5cclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgIHBhZGRpbmc6IDQwcHggMzBweDtcclxuICAgIH1cclxuXHJcbiAgICAuZG9uYXRlLW9wdGlvbl9fYnRuIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXBpbmsgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkYnJhbmQtcGluayAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5kb25hdGUtb3B0aW9uX19jb3B5IHtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDhweDtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5kb25hdGUtb3B0aW9uX19hbW91bnQge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMzBweDtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDQwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uZG9uYXRlLW9wdGlvbi0tb3RoZXItbW9iaWxlLXRoZW1le1xyXG4gIC5kb25hdGUtb3B0aW9uX19oZWFkaW5ne1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpe1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIH1cclxuICB9XHJcbiAgLmRvbmF0aW9uLW9wdGlvbl9faW5wdXR7XHJcbiAgICBtYXJnaW46IDAgMCAyMHB4O1xyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCl7XHJcbiAgICAgIG1hcmdpbjogMjBweCAwO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvLyBCcmVhayBlbWFpbHMgdGhhdCBhcmUgdG9vIGxvbmdcclxuXHJcbmFbaHJlZl49XCJtYWlsdG9cIl17XHJcbiAgd29yZC1icmVhazogYnJlYWstd29yZDtcclxuICBjb2xvcjokYnJhbmQtcGluaztcclxuICAmOmhvdmVyIHtcclxuICAgICAgY29sb3I6JGJyYW5kLXB1cnBsZTtcclxuICB9XHJcbn1cclxuIiwiLy8gVXNlZCBmb3IgcGFnaW5hdGlvbiB0aGF0IGhhcyBwYWdlIGNvdW50XHJcblxyXG4ucGFnaW5hdGlvbntcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGZsZXgtd3JhcDogd3JhcDtcclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCl7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gIH1cclxufVxyXG5cclxuLnBhZ2luYXRpb25fX3ByZXZ7XHJcbiAgd2lkdGg6IDEwMCU7XHJcblxyXG4gIEBtZWRpYSAobWluLXdpZHRoOiA0MjVweCkge1xyXG4gICAgd2lkdGg6IDUwJTtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpe1xyXG4gICAgb3JkZXI6IDE7XHJcbiAgICB3aWR0aDogYXV0bztcclxuICB9XHJcbn1cclxuXHJcbi5wYWdpbmF0aW9uX19wcmV2LS1sYXN0LW9uZSxcclxuLnBhZ2luYXRpb25fX25leHR7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCl7XHJcbiAgICBvcmRlcjozO1xyXG4gICAgd2lkdGg6IGF1dG87XHJcbiAgfVxyXG59XHJcblxyXG4ucGFnaW5hdGlvbl9fcHJldiArIC5wYWdpbmF0aW9uX19uZXh0e1xyXG5cclxuICB3aWR0aDogMTAwJTtcclxuICBwYWRkaW5nOiAxMHB4IDAgMDtcclxuICBAbWVkaWEgKG1pbi13aWR0aDogNDI1cHgpIHtcclxuICAgIHdpZHRoOiA1MCU7XHJcbiAgICBwYWRkaW5nOiAwIDAgMCAxMHB4O1xyXG4gIH1cclxuXHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpe1xyXG4gICAgd2lkdGg6IDE0MHB4O1xyXG4gICAgcGFkZGluZzogMDtcclxuICB9XHJcbn1cclxuXHJcbi5wYWdpbmF0aW9uX19uZXh0LFxyXG4ucGFnaW5hdGlvbl9fcHJldntcclxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKXtcclxuICAgIHdpZHRoOiAxNDBweDtcclxuICB9XHJcbn1cclxuXHJcblxyXG4ucGFnaW5hdGlvbl9fY291bnR7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgbWFyZ2luOiAwIDAgMTBweDtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCl7XHJcbiAgICB3aWR0aDogYXV0bztcclxuICAgIG9yZGVyOiAyO1xyXG4gICAgbWFyZ2luOiAwO1xyXG5cclxuICB9XHJcbn1cclxuIiwiLnNvcnQtYnl7XHJcbiAgbWFyZ2luOiAwIDAgMjBweDtcclxuICBAbWVkaWEgKG1pbi13aWR0aDogNDUwcHgpIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICB9XHJcbn1cclxuXHJcbi5zb3J0LWJ5X19sYWJlbHtcclxuICBtYXJnaW46IDAgMCAyMHB4O1xyXG4gIEBtZWRpYSAobWluLXdpZHRoOiA0NTBweCkge1xyXG4gICAgbWFyZ2luOiAwIDIwcHggMCAwO1xyXG4gIH1cclxufVxyXG5cclxuLnNvcnQtYnlfX2JveHtcclxuICBtYXJnaW46IDA7XHJcbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ1MHB4KSB7XHJcbiAgICB3aWR0aDogYXV0bztcclxuICB9XHJcbn1cclxuIiwiLm1lbWJlcnNoaXAtdHlwZSB7XHJcbiAgICBwYWRkaW5nOiAxMzZweCAyMHB4IDIwcHg7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtcHVycGxlO1xyXG4gICAgd2lkdGg6IDIyNnB4O1xyXG4gICAgLy8gYm94LXNoYWRvdzogMCAwIDEwcHggM3B4IHJnYmEoOTQsIDk0LCA5NCwgMC4yNSk7XHJcbiAgICAvL21hcmdpbjogMCA0MHB4IDAgMjBweDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgI2RhYzBkOCAhaW1wb3J0YW50O1xyXG5cclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB3aWR0aDogMTIwcHg7XHJcbiAgICAgICAgaGVpZ2h0OiA4MHB4O1xyXG4gICAgICAgIGNvbG9yOiAkYnJhbmQtYmx1ZTtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiAyNXB4O1xyXG4gICAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XHJcbiAgICAgICAgZm9udC1zaXplOiA5MHB4O1xyXG4gICAgfVxyXG5cclxuICAgICZbZGF0YS1zZWxlY3QtYm94PVwiRm9yTWVcIl06YmVmb3JlIHtcclxuICAgICAgICBAaW5jbHVkZSBtZS1pY29uO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogOTVweDtcclxuICAgIH1cclxuXHJcbiAgICAmW2RhdGEtc2VsZWN0LWJveD1cIkZvclVzXCJdOmJlZm9yZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgZmFtaWx5LWljb247XHJcbiAgICB9XHJcblxyXG4gICAgJltkYXRhLXNlbGVjdC1ib3g9XCJBR2lmdFwiXTpiZWZvcmUge1xyXG4gICAgICAgIEBpbmNsdWRlIGdpZnQtaWNvbjtcclxuICAgIH1cclxuXHJcbiAgICAuZm9ybV9fc2VsZWN0IHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgIGNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiAkY2F0cy1oZWFkbGluZTtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xyXG5cclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6ICdHYXJyeSc7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiIsIi8qXHJcbiAgVGhpcyBjYW4gYmUgdXNlZCB0byBjcmVhdGUgZ2VuZXJhbCBjb21wb25lbnRzIHRoYXQgbmVlZCBmaXhlZCByYXRpbyByZXN0cmljdGlvbnNcclxuICovXHJcblxyXG5AbWl4aW4gYmFja2dyb3VuZC1jb3ZlcntcclxuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcclxuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG59XHJcblxyXG5cclxuXHJcbi5maXhlZC1yYXRpb3tcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgJjpiZWZvcmV7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICB9XHJcblxyXG4gID4gLmZpeGVkLXJhdGlvX19pbm5lcntcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIEBpbmNsdWRlIGJhY2tncm91bmQtY292ZXI7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLmZpeGVkLXJhdGlvLS0xLTE6YmVmb3Jle1xyXG4gIHBhZGRpbmctdG9wOiAoMSAvIDEpKiAxMDAlO1xyXG59XHJcbiIsIi8vIEdlbmVyYWxcclxuXHJcbi8qXHJcbltjb250ZW50ZWRpdGFibGVdOmVtcHR5OmJlZm9yZSB7XHJcbiAgY29udGVudDogYXR0cihkYXRhLXBsYWNlaG9sZGVyKTtcclxuICBjb2xvcjogZ3JleTtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbn1cclxuKi9cclxuXHJcblxyXG4uc3VibWl0LWNvbW1lbnR7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG5cclxuLnN1Ym1pdC1jb21tZW50X19pbnB1dHtcclxuICBib3JkZXI6IDFweCBzb2xpZCAjOTk5O1xyXG4gIHBhZGRpbmc6IDAuOGVtO1xyXG4gIGJvcmRlci1yYWRpdXM6IDJlbTtcclxuICB3aWR0aDogMTAwJTtcclxuICBmb250LXNpemU6IDAuN2VtO1xyXG4gIGxpbmUtaGVpZ2h0OiAxLjdlbTtcclxuICBvdmVyZmxvdy14OiBoaWRkZW47XHJcbiAgd29yZC1icmVhazogYnJlYWstYWxsO1xyXG5cclxuICAmOmVtcHR5OmJlZm9yZXtcclxuICAgIGNvbnRlbnQ6IGF0dHIocGxhY2Vob2xkZXIpO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgfVxyXG5cclxuICAmOmZvY3Vze1xyXG4gICAgb3V0bGluZTogbm9uZTtcclxuICB9XHJcblxyXG4gICY6Zm9jdXMgKyAuc3VibWl0LWNvbW1lbnRfX2J1dHRvbntcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG59XHJcblxyXG4uc3VibWl0LWNvbW1lbnRfX2lucHV0LS1leHBhbmRlZHtcclxuICBwYWRkaW5nOiAwLjhlbSAwLjhlbSAzZW07XHJcbn1cclxuXHJcbi5zdWJtaXQtY29tbWVudF9fYnV0dG9ue1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICByaWdodDogMWVtO1xyXG4gIGJvdHRvbTogMWVtO1xyXG4gIGZvbnQtc2l6ZTogMTJweDtcclxuICBvcGFjaXR5OiAwO1xyXG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycztcclxufVxyXG5cclxuXHJcblxyXG4iLCIvLyBDcmVhdGVzIGEgc3Bpbm5pbmcgbG9hZGVyXHJcblxyXG4uaXMtc3VibWl0dGluZyB7XHJcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcclxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXBpbmsgIWltcG9ydGFudDtcclxuXHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICBoZWlnaHQ6IDEuNGVtO1xyXG4gICAgICAgIHdpZHRoOiAxLjRlbTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gbGVmdCwgI2ZmZiwgdHJhbnNwYXJlbnQgNjAlKTtcclxuICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcbiAgICAgICAgei1pbmRleDogMTA7XHJcbiAgICAgICAgYW5pbWF0aW9uOiByb3RhdGluZyAycyBsaW5lYXIgaW5maW5pdGU7XHJcbiAgICB9XHJcblxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICBoZWlnaHQ6IDEuMmVtO1xyXG4gICAgICAgIHdpZHRoOiAxLjJlbTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcGluaztcclxuICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcbiAgICAgICAgei1pbmRleDogMjA7XHJcbiAgICB9XHJcblxyXG4gICAgJi5qcy1mb3JtLXN1Ym1pc3Npb24tYWpheC1oaWRkZW4ge1xyXG4gICAgICAgIGRpc3BsYXk6bm9uZTtcclxuICAgIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyByb3RhdGluZyB7XHJcbiAgZnJvbSB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGUoMGRlZyk7XHJcbiAgfVxyXG4gIHRvIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZSgzNjBkZWcpO1xyXG4gIH1cclxufSIsIlxyXG4uY29va2llLWJhciB7XHJcbiAgZm9udC1mYW1pbHk6IGFyaWFsO1xyXG4gIGZvbnQtc2l6ZTogMTNweDtcclxuICBsaW5lLWhlaWdodDogMS40O1xyXG4gIHBvc2l0aW9uOiBmaXhlZDtcclxuICB0b3A6IGF1dG87XHJcbiAgbGVmdDogMDtcclxuICByaWdodDogMDtcclxuICBib3R0b206IDA7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBwYWRkaW5nOiAyMHB4IDE1cHggNXB4O1xyXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gIGZsZXgtd3JhcDogd3JhcDtcclxuICB6LWluZGV4OiA5OTk5OTk5O1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45KTtcclxuICBjb2xvcjogd2hpdGU7XHJcbn1cclxuXHJcbi5jb29raWUtYmFyX19jb3B5IHtcclxuICB3aWR0aDogMTAwJTtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbn1cclxuXHJcbi5jb2cge1xyXG4gIHdpZHRoOiAyMHB4O1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IDUwJTtcclxuICBsZWZ0OiAxMHB4O1xyXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxufVxyXG5cclxuLmNvb2tpZS1iYXJfX2FjY2VwdCB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBwYWRkaW5nOiAxNnB4IDEwcHg7XHJcbiAgICBjb2xvcjogd2hpdGU7XHJcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxufVxyXG5cclxuLyogLmNvb2tpZS1iYXJfX2FjY2VwdDphZnRlcntcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbn0gKi9cclxuXHJcbi5jb29raWUtYmFyX19zZXR0aW5ncyB7XHJcbiAgY29sb3I6IGluaGVyaXQ7XHJcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gIHBhZGRpbmc6IDE4cHggMThweDtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgY29sb3I6IHdoaXRlO1xyXG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbn1cclxuXHJcbi5jb29raWUtYmFyX19zZXR0aW5ncyB7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDM3cHg7XHJcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxufVxyXG5cclxuXHJcbi5jb29raWUtYmFyX19hY2NlcHQ6aG92ZXIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOSk7XHJcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxufVxyXG5cclxuLmNvb2tpZS1iYXJfX3NldHRpbmdzOmhvdmVyIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjI1LDIyNSwyMjUsIDAuNCk7XHJcbiAgICBjb2xvcjogd2hpdGU7XHJcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxufVxyXG5cclxuQG1lZGlhKG1pbi13aWR0aDogNjAwcHgpIHtcclxuICAuY29va2llLWJhciB7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcclxuICB9XHJcblxyXG4gIC5jb29raWUtYmFyX19jb3B5IHtcclxuICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAxNnB4O1xyXG4gICAgd2lkdGg6IGF1dG87XHJcbiAgICBmbGV4OiAxO1xyXG4gICAgZm9udC1zaXplOiAxLjFlbTtcclxuICB9XHJcblxyXG4gIC5jb29raWUtYmFyX19zZXR0aW5ncyxcclxuICAuY29va2llLWJhcl9fYWNjZXB0IHtcclxuICAgIC8qIHBhZGRpbmc6IDE2cHggMzJweDsgKi9cclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICB9XHJcblxyXG4gIC5jb29raWUtYmFyX19hY2NlcHQge1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgI2ZmZjtcclxuICB9XHJcbn1cclxuXHJcbi5jb29raWUtbW9kZWwge1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcbiAgcG9zaXRpb246IGZpeGVkO1xyXG4gIHRvcDogMDtcclxuICByaWdodDogMDtcclxuICBib3R0b206IDA7XHJcbiAgbGVmdDogMDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XHJcbiAgb3BhY2l0eTogMDtcclxuICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzO1xyXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XHJcbiAgZm9udC1mYW1pbHk6IEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XHJcbiAgLyogcGFkZGluZzogMCAxMHB4OyAqL1xyXG4gIGZvbnQtc2l6ZTogMTRweDtcclxuICB6LWluZGV4OiA5OTk5OTk5OTtcclxuICBvdmVyZmxvdzogc2Nyb2xsO1xyXG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDsgLyogTGV0cyBpdCBzY3JvbGwgbGF6eSAqL1xyXG5cclxufVxyXG5cclxuQG1lZGlhKG1pbi13aWR0aDogNjAwcHgpIHtcclxuICAuY29va2llLW1vZGVsIHtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgfVxyXG59XHJcblxyXG4uY29va2llLW1vZGVsOjotd2Via2l0LXNjcm9sbGJhciB7XHJcbiAgZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLmNvb2tpZS1tb2RlbC52aXNpYmxlIHtcclxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XHJcbiAgb3BhY2l0eTogMTtcclxuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG59XHJcblxyXG4uY29va2llLW1vZGVsX193aW5kb3cge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcbiAgcGFkZGluZzogMTZweDtcclxuICBtYXJnaW46IDAgYXV0bztcclxuICBtYXgtd2lkdGg6IDYwMHB4O1xyXG4gIG9wYWNpdHk6IDA7XHJcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIDAuMnMsIHRyYW5zZm9ybSAwLjNzIDAuMnM7XHJcbn1cclxuXHJcbkBtZWRpYShtaW4td2lkdGg6IDYwMHB4KSB7XHJcbiAgLmNvb2tpZS1tb2RlbF9fd2luZG93IHtcclxuICAgIHBhZGRpbmc6IDMwcHggMzVweCAyNXB4O1xyXG4gIH1cclxufVxyXG5cclxuLmNvb2tpZS1tb2RlbF9fd2luZG93IGgxe1xyXG4gIGZvbnQtc2l6ZTogMjhweDtcclxuICBsaW5lLWhlaWdodDogMTtcclxuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxufVxyXG5cclxuLmNvb2tpZS1tb2RlbF9fd2luZG93IHB7XHJcbiAgZm9udC1zaXplOiAxNHB4O1xyXG4gIGxpbmUtaGVpZ2h0OiAyMnB4O1xyXG59XHJcblxyXG4uY29va2llLW1vZGVsLnZpc2libGUgLmNvb2tpZS1tb2RlbF9fd2luZG93IHtcclxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XHJcbiAgb3BhY2l0eTogMTtcclxufVxyXG5cclxuLmNvb2tpZS1tb2RlbF9fY2xvc2Uge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogZ3JlZW47XHJcbiAgICBjb2xvcjogI2ZmZjtcclxuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAyNXB4O1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgcGFkZGluZzogMjBweDtcclxuICAgIGZvbnQtc2l6ZTogMS4yNWVtO1xyXG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcbiAgICAvKiBib3JkZXI6IDFweCBzb2xpZCAjN2Q3ZDdkOyAqL1xyXG59XHJcblxyXG4uY29va2llLW1vZGVsX19jbG9zZTpob3ZlciB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2NjO1xyXG4gICAgY29sb3I6ICM2MzYzNjM7XHJcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxufVxyXG5cclxuLmNvb2tpZS1tb2RlbF9fY2xvc2UgaW1nIHtcclxuICB3aWR0aDogMTBweDtcclxufVxyXG5cclxuLmNvb2tpZS1tb2RlbCBoMSB7XHJcbiAgbWFyZ2luOiAwIDAgMTZweDtcclxufVxyXG5cclxuLmNvb2tpZS1tb2RlbF9fd2luZG93ID4gcCB7XHJcbiAgY29sb3I6ICM4NDg0ODQ7XHJcbiAgbWFyZ2luOiAwIDAgMTZweDtcclxufVxyXG5cclxuLypjb29raWUgb3B0aW9uIHN0eWxlcyovXHJcblxyXG4vKiAuY29va2llLW9wdGlvbiB7XHJcbn0gKi9cclxuXHJcbi5jb29raWUtb3B0aW9uX19oZWFkaW5nIHtcclxuICBib3JkZXItdG9wOiAxcHggc29saWQgI2JmYmZiZjtcclxuICBwYWRkaW5nLXRvcDogMThweDtcclxuICBtYXJnaW46IDAgMCAwO1xyXG4gIGZvbnQtc2l6ZTogMjBweDtcclxuICBsaW5lLWhlaWdodDogMTtcclxuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxufVxyXG5cclxuLmNvb2tpZS1vcHRpb25fX2NvcHkge1xyXG4gIGNvbG9yOiAjODQ4NDg0O1xyXG4gIG1hcmdpbjogMCAwIDE2cHg7XHJcbn1cclxuXHJcbi5jb29raWUtb3B0aW9uIHNwYW4ge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB3aWR0aDogNTBweDtcclxuICBoZWlnaHQ6IDI1cHg7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICMyNTI1MjU7XHJcbiAgYm9yZGVyLXJhZGl1czogMjVweDtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbn1cclxuXHJcbi5jb29raWUtb3B0aW9uIHNwYW46YWZ0ZXIge1xyXG4gIGNvbnRlbnQ6IFwiXCI7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRvcDogMnB4O1xyXG4gIGxlZnQ6IDJweDtcclxuICB3aWR0aDogMjFweDtcclxuICBoZWlnaHQ6IDIxcHg7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3M7XHJcbiAgYm9yZGVyLXJhZGl1czogMTAwJTtcclxufVxyXG5cclxuLmNvb2tpZS1vcHRpb24gc3BhbjpiZWZvcmUge1xyXG4gIGNvbnRlbnQ6IFwib2ZmXCI7XHJcbiAgY29sb3I6ICNmZmY7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRvcDogNHB4O1xyXG4gIGZvbnQtZmFtaWx5OiBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xyXG4gIHJpZ2h0OiA3cHg7XHJcbn1cclxuXHJcbi5jb29raWUtb3B0aW9uIGlucHV0IHtcclxuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5jb29raWUtb3B0aW9uIGlucHV0OmRpc2FibGVkICsgc3BhbiB7XHJcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcclxuICBvcGFjaXR5OiAwLjU7XHJcbn1cclxuXHJcbi5jb29raWUtb3B0aW9uIGlucHV0OmNoZWNrZWQgKyBzcGFuIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiBncmVlbjtcclxufVxyXG5cclxuLmNvb2tpZS1vcHRpb24gaW5wdXQ6Y2hlY2tlZCArIHNwYW46YWZ0ZXIge1xyXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyNXB4KTtcclxufVxyXG5cclxuLmNvb2tpZS1vcHRpb24gaW5wdXQ6Y2hlY2tlZCArIHNwYW46YmVmb3JlIHtcclxuICBjb250ZW50OiBcIm9uXCI7XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yMnB4KTtcclxufVxyXG5cclxuLyogLmNvb2tpZS1vcHRpb25fX2xhYmVsIHtcclxufSAqL1xyXG5cclxuQG1lZGlhIChtaW4td2lkdGg6IDQwMHB4KSB7XHJcbiAgLmNvb2tpZS1vcHRpb25fX2xhYmVsIHtcclxuICAgIGZsb2F0OiByaWdodDtcclxuICAgIG1hcmdpbi1sZWZ0OiA1cHg7XHJcbiAgfVxyXG59XHJcblxyXG4jY29nQmFyIHtcclxuICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgYm90dG9tOiAwO1xyXG4gIGxlZnQ6IDA7XHJcbiAgaGVpZ2h0OiA2MHB4O1xyXG4gIHdpZHRoOiA2MHB4O1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxuICB6LWluZGV4OiAxMDA7XHJcbn1cclxuLmNvZ0Jhcl9faW5uZXIge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxufVxyXG4uY29nQmFyX19pbm5lcjpiZWZvcmUge1xyXG4gIGNvbnRlbnQ6IFwiXCI7XHJcbiAgaGVpZ2h0OiAxMjBweDtcclxuICB3aWR0aDogMXB4O1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICBib3JkZXItbGVmdDogNjBweCBzb2xpZCBncmV5O1xyXG4gIGJvcmRlci10b3A6IDYwcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbn1cclxuI2NvZ0Jhcjpob3ZlciAuY29nQmFyX19pbm5lcjpiZWZvcmUge1xyXG4gIGJvcmRlci1sZWZ0LWNvbG9yOiBncmVlbjtcclxufVxyXG5cclxuLmNvZ0Jhcl9faW1nIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgei1pbmRleDogMTtcclxuICB0b3A6IDMwcHg7XHJcbiAgbGVmdDogNnB4O1xyXG59XHJcbiIsIu+7vy5zaW1vbnMtY2F0LWJhbm5lci1sb2dvIHtcclxuICAgIG1heC13aWR0aDogMzAlO1xyXG4gICAgbWFyZ2luOiAwIGF1dG87XHJcblxyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEwNDBweCkge1xyXG4gICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgIH1cclxuXHJcbn1cclxuIiwi77u/LnNpbW9ucy1jYXQtaW5mby1ib3gge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0YwMkQyOTtcclxuICAgIGNvbG9yOiAjZmZmO1xyXG59XHJcblxyXG4uc2ltb25zLWNhdC1pbmZvLWJveF9fY29udGVudCB7XHJcbiAgICBwYWRkaW5nOiAyZW0gMTVweCAxMjBweDtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1hZ2VzL3NpbW9ucy1jYXQvYmlnY2F0LnBuZycpO1xyXG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGJvdHRvbSAtNDBweCByaWdodCAyMHB4O1xyXG4gICAgbWF4LXdpZHRoOiAxMjAwcHg7XHJcbiAgICBtYXJnaW46IDAgYXV0bztcclxuICAgIGJhY2tncm91bmQtc2l6ZTogMTIwcHg7XHJcblxyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDY4MHB4KSB7XHJcbiAgICAgICAgcGFkZGluZzogMmVtIDMwMHB4IDJlbSAxNXB4O1xyXG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTkwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEyODBweCkge1xyXG4gICAgICAgIHBhZGRpbmc6IDJlbSAzMDBweCAyZW0gMDtcclxuICAgIH1cclxufVxyXG4iLCLvu78uc2ltb25zLWNhdC1tZWRpYSB7XHJcbiAgICAmOm50aC1vZi10eXBlKDZuICsgMSkge1xyXG4gICAgICAgIC5zaW1vbnMtY2F0LW1lZGlhX19pbWFnZSB7XHJcbiAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWFnZXMvc2ltb25zLWNhdC90b3BsZWZ0LnBuZycpO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDE0M3B4O1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA5MHB4O1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxNjBweDtcclxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDZweCwgMjdweCkgcm90YXRlKC04ZGVnKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmOm50aC1vZi10eXBlKDZuICsgMikge1xyXG4gICAgICAgIC5zaW1vbnMtY2F0LW1lZGlhX19pbWFnZSB7XHJcbiAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWFnZXMvc2ltb25zLWNhdC9Ub3BjZW50cmUucG5nJyk7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogNzBweDtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogODJweDtcclxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC04cHgsIDFweCkgcm90YXRlKDVkZWcpO1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiA3MnB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICY6bnRoLW9mLXR5cGUoNm4gKyAzKSB7XHJcbiAgICAgICAgLnNpbW9ucy1jYXQtbWVkaWFfX2ltYWdlIHtcclxuICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltYWdlcy9zaW1vbnMtY2F0L3RvcHJpZ2h0LnBuZycpO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMHB4O1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDtcclxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDI0cHgsIDI3cHgpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICY6bnRoLW9mLXR5cGUoNm4gKyA0KSB7XHJcbiAgICAgICAgLnNpbW9ucy1jYXQtbWVkaWFfX2ltYWdlIHtcclxuICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltYWdlcy9zaW1vbnMtY2F0L2JvdHRvbWxlZnQucG5nJyk7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwcHg7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMHB4O1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiA3OXB4O1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoLTEpIHRyYW5zbGF0ZSgxcHgsIDM2cHgpIHJvdGF0ZSg3ZGVnKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmOm50aC1vZi10eXBlKDZuICsgNSkge1xyXG4gICAgICAgIC5zaW1vbnMtY2F0LW1lZGlhX19pbWFnZSB7XHJcbiAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWFnZXMvc2ltb25zLWNhdC9ib3R0b21taWRkbGUucG5nJyk7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwcHg7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMHB4O1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiA5M3B4O1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoOXB4LCAzN3B4KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmOm50aC1vZi10eXBlKDZuKSB7XHJcbiAgICAgICAgLnNpbW9ucy1jYXQtbWVkaWFfX2ltYWdlIHtcclxuICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltYWdlcy9zaW1vbnMtY2F0L2JvdHRvbXJpZ2h0LnBuZycpO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMHB4O1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTE4cHg7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtOHB4LCAzMXB4KSByb3RhdGUoMTRkZWcpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5zaW1vbnMtY2F0LW1lZGlhX19pbWFnZSB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgICAgICB6LWluZGV4OiAyMDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0YwMkQyOTtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxMjBweDtcclxuICAgICAgICAgICAgd2lkdGg6IDEyMHB4O1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgICAgICB6LWluZGV4OiAxMDtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMzBweCwgNzBweCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiIsIu+7v0Bmb250LWZhY2Uge1xyXG4gICAgZm9udC1mYW1pbHk6ICdsZW9zbGVycm91Z2hfcmVndWxhcic7XHJcbiAgICBzcmM6IHVybCgnZm9udHMvbGVvc2xlci1yb3VnaHJlZ3VsYXJfdXBkYXRlX2ZlYi13ZWJmb250LndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLCB1cmwoJ2ZvbnRzL2xlb3NsZXItcm91Z2hyZWd1bGFyX3VwZGF0ZV9mZWItd2ViZm9udC53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7XHJcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG59XHJcblxyXG4uZm9udC1zaW1vbnMtY2F0IHtcclxuICAgIGZvbnQtZmFtaWx5OiAnbGVvc2xlcnJvdWdoX3JlZ3VsYXInO1xyXG59XHJcbiIsIltkYXRhLWFuaW1hdGUtdXBdLFxyXG5bZGF0YS1hbmltYXRlLXJpZ2h0XSxcclxuW2RhdGEtYW5pbWF0ZS1sZWZ0XSB7XHJcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5LCB0cmFuc2Zvcm07XHJcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA3MDBtcztcclxuICAgIG9wYWNpdHk6IDA7XHJcblxyXG4vKiAgICBAaW5jbHVkZSBpZS1mYWxsYmFjaygkbGFyZ2UpIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG4gICAgfSovXHJcblxyXG4gICAgLmlzLWFjdGl2ZSAmLFxyXG4gICAgJi5pcy1hY3RpdmUge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBmb3IgJGkgZnJvbSAxIHRocm91Z2ggMTAge1xyXG4gICAgW2RhdGEtYW5pbWF0ZS1kZWxheT1cIiN7JGl9MDBcIl17XHJcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogJGkgKiAxMDBtcztcclxuICAgIH1cclxufVxyXG5cclxuXHJcbi8vIHVwXHJcbltkYXRhLWFuaW1hdGUtdXBde1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDUwcHgpO1xyXG4gICAgLmlzLWFjdGl2ZSAmLFxyXG4gICAgJi5pcy1hY3RpdmV7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xyXG4gICAgfVxyXG59XHJcblxyXG4vLyByaWdodFxyXG5bZGF0YS1hbmltYXRlLXJpZ2h0XXtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTBweCk7XHJcbiAgICAuaXMtYWN0aXZlICYsXHJcbiAgICAmLmlzLWFjdGl2ZXtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIGxlZnRcclxuW2RhdGEtYW5pbWF0ZS1sZWZ0XXtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg1MHB4KTtcclxuICAgIC5pcy1hY3RpdmUgJixcclxuICAgICYuaXMtYWN0aXZle1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcclxuICAgIH1cclxufVxyXG5cclxuIiwiLmZpeC1pZnJhbWUge1xyXG4gICAgaGVpZ2h0OiAxMTAwcHg7XHJcblxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgICAgIGhlaWdodDogODUwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xyXG4gICAgICAgIGhlaWdodDogNzUwcHg7XHJcbiAgICB9XHJcbn1cclxuIiwiLmV2ZW50cy1wYWdpbmF0aW9uIHtcclxuICAgIHVsIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuXHJcbiAgICAgICAgLnBhZ2UtaXRlbSB7XHJcbiAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiA1cHg7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA1cHg7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG5cclxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRsaWdodC1wdXJwbGU7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRicmFuZC1ibGFjaztcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnBhZ2UtaXRlbS5hY3RpdmUgYSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRicmFuZC1wdXJwbGU7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6NnB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4vKiBldmVudCBjYXRlZ29yeSBwYWdlIGNhcm91c2VsICovXHJcbi5ldmVudC1jYXRlZ29yeS1jYXJvdXNlbCB7XHJcbiAgICAuc2xpY2stdHJhY2suc2xpY2stdHJhY2sge1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG4gICAgfVxyXG59XHJcblxyXG4uZWNjLWl0ZW0ge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgbWFyZ2luOiBhdXRvO1xyXG4gICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZTdlOGU2O1xyXG4gICAgLyogQG1lZGlhIChtaW4td2lkdGg6IDQyNnB4KSBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcclxuICAgICAgICB3aWR0aDogNjYuNjYlO1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjlweCkge1xyXG4gICAgICAgIHdpZHRoOiA1MCU7XHJcbiAgICB9Ki9cclxuXHJcbiAgICAuZWNjLWltZy13cmFwcGVyIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xyXG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuXHJcbiAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgbWFyZ2luOiBhdXRvO1xyXG4gICAgICAgICAgICBtaW4td2lkdGg6IDEwMCU7XHJcblxyXG4gICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY5cHgpIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjlweCkge1xyXG4gICAgICAgICAgICB3aWR0aDogNTAlO1xyXG4gICAgICAgICAgICBtaW4taGVpZ2h0OiA0MDBweFxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuZWNjLXR4dC13cmFwcGVyIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgLypqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsqL1xyXG5cclxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY5cHgpIHtcclxuICAgICAgICAgICAgd2lkdGg6IDUwJTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLyogICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA0MjZweCkgYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiA1MCU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY5cHgpIHtcclxuICAgICAgICAgICAgd2lkdGg6IDMzLjMzJTtcclxuICAgICAgICB9Ki9cclxuICAgICAgICAuZWNjLXR4dCB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgICAgIC8qYWxpZ24taXRlbXM6IGNlbnRlcjsqL1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTdlOGU2O1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAzMHB4IDMwcHg7XHJcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNDI2cHgpIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4vKiBldmVudCBkZXRhaWwgcGFnZSAqL1xyXG4uZXZlbnRzLW1hc29ucnkgLmdyaWRfX2l0ZW0gLm1lZGlhLS1jYXB0aW9uLWNvdmVyIHtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgMnM7XHJcbn1cclxuXHJcbi5ldmVudHMtbWFzb25yeSA+IC5ncmlkX19pdGVtIHtcclxuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDQyNnB4KSBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcclxuICAgICAgICB3aWR0aDogNTAlICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OXB4KSB7XHJcbiAgICAgICAgd2lkdGg6IDMzLjMzJSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG59XHJcblxyXG4uZXZlbnRzLW1hc29ucnkgLmdyaWRfX2l0ZW0gYSB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICBib3R0b206IDA7XHJcbiAgICB6LWluZGV4OiAxMDtcclxuICAgIHRyYW5zaXRpb246IGFsbCAxcztcclxuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG59XHJcblxyXG4uZXZlbnRzLW1hc29ucnkgLmdyaWRfX2l0ZW0gYTpob3ZlciB7XHJcbiAgICAvKnRyYW5zZm9ybTogc2NhbGUoMTIwJSk7Ki9cclxuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG59XHJcblxyXG4uZXZlbnRzLW1hc29ucnkgLmdyaWRfX2l0ZW0gLm1lZGlhX19jYXB0aW9uIHtcclxuICAgIHRyYW5zaXRpb246IGFsbCAxcztcclxuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG59XHJcblxyXG4uZXZlbnRzLW1hc29ucnkgLmdyaWRfX2l0ZW0gLm1lZGlhX19jYXB0aW9uOmhvdmVyIHtcclxuICAgIGJhY2tncm91bmQ6IHJnYmEoOTQsOTQsOTQsLjI1KTtcclxuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG59XHJcblxyXG4uZXZlbnRzLW1hc29ucnkgPiAuZ3JpZF9faXRlbTpudGgtY2hpbGQoNW4gLSA0KSwgLmV2ZW50cy1tYXNvbnJ5ID4gLmdyaWRfX2l0ZW06bnRoLWNoaWxkKDVuIC0gMykge1xyXG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcclxuXHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNDI2cHgpIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xyXG4gICAgICAgIHdpZHRoOiA1MCUgIWltcG9ydGFudDtcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY5cHgpIHtcclxuICAgICAgICB3aWR0aDogMzMuMzMlICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbiNqcy1jb3VudGRvd24ge1xyXG4gICAgYmFja2dyb3VuZDogJGJyYW5kLXBpbms7XHJcbiAgICBjb2xvcjogI2ZmZmZmZjtcclxuICAgIGZvbnQtZmFtaWx5OiBiYXJtZW5vLW1lZGl1bSxUYWhvbWEsR2VuZXZhLHNhbnMtc2VyaWY7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBsaW5lLWhlaWdodDogMi4yO1xyXG4gICAgcGFkZGluZzogMTVweCAxNXB4IDI1cHggMTVweDtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICBmb250LXNpemU6IDE4cHg7XHJcblxyXG4gICAgLmFuZ2xlLXR4dCB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LXB1cnBsZTtcclxuICAgICAgICBjb2xvcjogJGJyYW5kLWJsYWNrO1xyXG4gICAgICAgIHBhZGRpbmc6IDRweDtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzZGVnKTtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEycHg7XHJcbiAgICAgICAgbWFyZ2luOiAwcHggMnB4O1xyXG4gICAgfVxyXG59XHJcbi5ldmVudC1jYXRlZ29yeS1jYXJvdXNlbCAuc2xpY2stdHJhY2sge1xyXG4gICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uZXZlbnQtY2F0ZWdvcnktY2Fyb3VzZWwgLnNsaWNrLXNsaWRlIHtcclxuICAgIGhlaWdodDogYXV0bztcclxufVxyXG4uYnJhbmNoLXNlYXJjaC1jaGVja2JveDphZnRlciB7XHJcbiAgICBtYXJnaW4tbGVmdDotMTBweDtcclxufVxyXG4uY2FydF9kaXNjb3VudF9jb2RlIHtcclxuICAgIG1heC13aWR0aDogMzAwcHg7XHJcbiAgICBwYWRkaW5nOiAwIDEycHg7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgYm9yZGVyLXJhZGl1czogNnB4O1xyXG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZhZTZmYSAhaW1wb3J0YW50O1xyXG4gICAgdHJhbnNpdGlvbjogYWxsIDIwMG1zO1xyXG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgI2RhYzBkOCAhaW1wb3J0YW50O1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG59IiwiLnNwZWNpYWwtYXBwZWFsIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xyXG5cclxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY5cHgpIHtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICBhbGlnbi1pdGVtczogc3RhcnQ7XHJcbiAgICB9XHJcblxyXG4gICAgLnNwZWNpYWwtYXBwZWFsLXRvdGFsaXNlciB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiA2MCU7XHJcblxyXG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY5cHgpIHtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiAzMy4zMyU7XHJcbiAgICAgICAgICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5hcHBlYWxzLXRvdGFsaXNlciB7XHJcblxyXG4gICAgICAgICAgICAuanMtYXBwZWFscy10b3RhbC1wY250IHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRsaWdodC1wdXJwbGU7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogOTYlO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDk2JTtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIDIlIDE2cHg7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRjYXRzLWhlYWRsaW5lO1xyXG5cclxuICAgICAgICAgICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICAgICAgICAgICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwtNTAlKTtcclxuICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiA5OTtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDNlbTtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwLjVlbSAwLjM1ZW07XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGxpZ2h0LXB1cnBsZTtcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY5cHgpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiA0ZW07XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyUnO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAuanMtYXBwZWFscy10b3RhbC1wY250LWJnIHtcclxuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYnJhbmQtcGluaztcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgICB0b3A6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDAlO1xyXG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAuanMtYXBwZWFscy10b3RhbC1wY250LWJnLWRvbiB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGJyYW5kLXB1cnBsZTtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgICB0b3A6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDAlO1xyXG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmpzLWFwcGVhbHMtdG90YWwtcmFpc2VkIHtcclxuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogJ1xcMDBBMyc7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAzZW07XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY5cHgpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiA0ZW07XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDNlbTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjlweCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDRlbTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmRvbmF0aW9uLXNwbGl0IHtcclxuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcblxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgICAgICAgICB3aWR0aDogMjVweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAyNXB4O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYnJhbmQtcGluaztcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuZG9uYXRpb24tc3BsaXQtZG9uIHtcclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRicmFuZC1wdXJwbGU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5sZy1hcHBlYWxzLXRvdGFsIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG5cclxuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OXB4KSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDBweCAxNXB4O1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgYWxpZ24tc2VsZjogY2VudGVyO1xyXG5cclxuICAgICAgICAgICAgLnNwZWNpYWwtYXBwZWFsLXRvdGFsaXNlciB7XHJcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnNwZWNpYWwtYXBwZWFsLWZvcm0ge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuXHJcbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjlweCkge1xyXG4gICAgICAgICAgICB3aWR0aDogMzMuMzMlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmJ1dHRvbiB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICAgICAgICAgICAuYnRuIHtcclxuXHJcblxyXG4gICAgICAgICAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjlweCkge1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuXHJcbiAgICAgICAgLmFwcGVhbC1mb3JtIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogJGxpZ2h0LXB1cnBsZTtcclxuICAgICAgICAgICAgY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDE1cHg7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDQyNXB4O1xyXG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0byAyNHB4O1xyXG5cclxuICAgICAgICAgICAgLmJhZy1jb250cm9sIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cclxuICAgICAgICAgICAgICAgIC5idG46aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1waW5rO1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5qcy1taW51bnMtYmFnLCAuanMtYWRkLWJhZyB7XHJcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMi41cmVtO1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAzcmVtO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuanMtYmFncyB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDNyZW07XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwcHggMTBweDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmNvZGUtY29udHJvbCB7XHJcbiAgICAgICAgICAgICAgICBpbnB1dCB7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiA4cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xyXG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICBpbnB1dDp2YWxpZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmNvZGUtc3VibWl0IHtcclxuICAgICAgICAgICAgICAgIC5qcy1zdWJtaXQtYnRuLWZha2Uge1xyXG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICYuZGlzYWJsZWQge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjU7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuYXBwZWFsLWZvcm0tdGhhbmtzIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmFwcGVhbC1mb3JtLS1ncmV5IHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogJGxpZ2h0LXB1cnBsZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmhpZGUtZm9yLWxhcmdlIHtcclxuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OXB4KSB7XHJcbiAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgcCB7XHJcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMXB4O1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxcHg7XHJcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCIuZmluZC11cy1zZWFyY2gge1xyXG4gICAgaW5wdXQge1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogNDZweDtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB9XHJcblxyXG4gICAgc3BhbiB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHdpZHRoOiAyNnB4O1xyXG4gICAgICAgIGhlaWdodDogMjZweDtcclxuICAgICAgICBsZWZ0OiAyNnB4O1xyXG4gICAgICAgIHotaW5kZXg6IDE7XHJcbiAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG5cclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAnaWNvbW9vbic7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6ICdcXGU5MDInO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDI2cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiIsIiNkb25hdGVSZWd1bGFyLCAjZG9uYXRlT25lT2ZmIHtcclxuICAgIC8qYm9yZGVyOiAxcHggc29saWQgI2RhYzBkOCAhaW1wb3J0YW50OyovXHJcbiAgICBiYWNrZ3JvdW5kOiAkbGlnaHQtcHVycGxlO1xyXG5cclxuICAgIC5vdGhlckFtb3VudFZhbHVlOmZvY3VzIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XHJcbiAgICB9XHJcblxyXG4gICAgLm1lZGlhX19jYXB0aW9uIHtcclxuICAgICAgICBjb2xvcjogJGJyYW5kLWJsYWNrO1xyXG4gICAgfVxyXG5cclxuICAgIC5idG4ge1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICRicmFuZC1wdXJwbGU7XHJcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRicmFuZC1waW5rO1xyXG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4jZG9uYXRlT25lT2ZmQnV0dG9ucyB7XHJcbiAgICAuY2F0LW1hZ2F6aW5lIHtcclxuICAgICAgICAuZm9ybV9fY2hlY2tib3g6YWZ0ZXIge1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDotMTJweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0iLCLvu78kbmFtZTogYnJlYWRjcnVtYjtcclxuXHJcbi4jeyRuYW1lfS13cmFwcGVyIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1wdXJwbGUgIWltcG9ydGFudDtcclxufVxyXG5cclxuLiN7JG5hbWV9IHtcclxuICAgIHBhZGRpbmctdG9wOiAxNXB4O1xyXG4gICAgcGFkZGluZy1ib3R0b206IDE1cHg7XHJcblxyXG4gICAgLiN7JG5hbWV9LWxpbmtzIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG5cclxuICAgICAgICB1bCB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgICAgICAgbGkge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcblxyXG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IG5vbmUgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAuI3skbmFtZX0tbGlua3dpdGhjaGV2cm9uIHtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAuY2hldnJvbiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogOHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuI3skbmFtZX0tc29jaWFsIHtcclxuICAgICAgICB1bCB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcclxuICAgICAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDE1cHggIWltcG9ydGFudDtcclxuXHJcbiAgICAgICAgICAgIGxpIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjaztcclxuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XHJcblxyXG4gICAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IG5vbmUgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAuaWNvbi1jaXJjbGUge1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDQwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA0MHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuM3MgZWFzZTtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1wdXJwbGUgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgaSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5tb2RhbC1vdmVybGF5IHtcclxuICAgICAgICAgICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC41KTtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjRzIGVhc2UsIHZpc2liaWxpdHkgMC40cyBlYXNlO1xyXG4gICAgICAgICAgICB6LWluZGV4OiAxMDUwO1xyXG5cclxuICAgICAgICAgICAgJi5zaG93IHtcclxuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAubW9kYWwtYm94IHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogJGJyYW5kLXB1cnBsZTtcclxuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICAgICAgcGFkZGluZzogMS41cmVtIDJyZW07XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAuNXJlbTtcclxuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwLjVyZW0gMXJlbSByZ2JhKDAsIDAsIDAsIDAuMik7XHJcblxyXG4gICAgICAgICAgICBwIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IGluaXRpYWw7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xyXG4gICAgLiN7JG5hbWV9IHtcclxuICAgICAgICAuI3skbmFtZX0tbGlua3Mge1xyXG4gICAgICAgICAgICB1bCB7XHJcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuI3skbmFtZX0tc29jaWFsIHtcclxuICAgICAgICAgICAgdWwge1xyXG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCLvu78uc3dpcGVyIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHBhZGRpbmctdG9wOiA2NXB4O1xyXG5cclxuICAgIC5zd2lwZXItc2xpZGUge1xyXG4gICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuc3dpcGVyLWJ1dHRvbi1wcmV2OjphZnRlcixcclxuICAgIC5zd2lwZXItYnV0dG9uLW5leHQ6OmFmdGVyIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgIC5zd2lwZXItYnV0dG9uLXByZXYgaSxcclxuICAgIC5zd2lwZXItYnV0dG9uLW5leHQgaSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAyNHB4O1xyXG4gICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgfVxyXG5cclxuICAgIC5zd2lwZXItYnV0dG9uLXByZXYsXHJcbiAgICAuc3dpcGVyLWJ1dHRvbi1uZXh0IHtcclxuICAgICAgICB0b3A6IDI1cHg7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcclxuICAgIH1cclxuXHJcbiAgICAuc3dpcGVyLWJ1dHRvbi1uZXh0IHtcclxuICAgICAgICBsZWZ0OiA1NXB4O1xyXG4gICAgfVxyXG59Iiwi77u/LnF1aWNrLWxpbmtzIHtcclxuICAgIG1hcmdpbi10b3A6IDI1cHg7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xyXG5cclxuICAgIC5xdWljay1saW5rcy1jb250YWluZXIge1xyXG4gICAgICAgIHBhZGRpbmc6IDUwcHg7XHJcblxyXG4gICAgICAgIC5oZWFkZXIge1xyXG4gICAgICAgICAgICAuY29sIHtcclxuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5saW5rcyB7XHJcbiAgICAgICAgICAgIFtjbGFzc149XCJjb2xcIl0ge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcclxuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDIycHg7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcblxyXG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNiBGcmVlXCI7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcclxuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlxcZjA1NFwiO1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDFlbTtcclxuICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0taWNvbi1jb2xvciwgJGJyYW5kLXB1cnBsZSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0iLCLvu78uYWNjb3JkaW9uIHtcclxuICAgIC5hY2NvcmRpb24taXRlbSB7XHJcbiAgICAgICAgJjpsYXN0LW9mLXR5cGUge1xyXG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuXHJcbiAgICAgICAgLmFjY29yZGlvbi1oZWFkZXIge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICAgICAgICAuYWNjb3JkaW9uLWJ1dHRvbiB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMXJlbSAycmVtO1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyBlYXNlO1xyXG5cclxuICAgICAgICAgICAgICAgICYuY29sbGFwc2VkIHtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgICAgICAgICAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBGcmVlXCI7IC8vIG9yIHlvdXIgRkEgdmVyc2lvblxyXG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICdcXGYwNzgnOyAvLyBmYS1jaGV2cm9uLWRvd25cclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAmW2FyaWEtZXhwYW5kZWQ9XCJ0cnVlXCJdOjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogJ1xcZjA3Nyc7IC8vIGZhLWNoZXZyb24tdXBcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmFjY29yZGlvbi1jb2xsYXBzZSB7XHJcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IG1heC1oZWlnaHQgMC4zcyBlYXNlO1xyXG5cclxuICAgICAgICAgICAgLmFjY29yZGlvbi1ib2R5IHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMnJlbSAxcmVtIDJyZW07XHJcblxyXG4gICAgICAgICAgICAgICAgbGk6OmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IGluaGVyaXQgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICB1bDpub3QoW2NsYXNzXSkgbGk6OmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogY3VycmVudENvbG9yICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICYuY29sbGFwc2Uge1xyXG4gICAgICAgICAgICAgICAgbWF4LWhlaWdodDogMDtcclxuXHJcbiAgICAgICAgICAgICAgICAmLnNob3cge1xyXG4gICAgICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDEyMDBweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCLvu78uc3RvcnlxdW90ZSB7XHJcbiAgICBjb250YWluZXItdHlwZTogaW5saW5lLXNpemU7XHJcbiAgICBjb250YWluZXItbmFtZTogc3RvcnlxdW90ZTtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG5cclxuICAgIC5zdG9yeXF1b3RlLWhlYWRlciB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICBoZWlnaHQ6IDMwMHB4O1xyXG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XHJcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XHJcblxyXG4gICAgICAgICYuaGFzSW1hZ2Uge1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDUwMHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmN1cnZlIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgbWluLXdpZHRoOiA3MDBweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgei1pbmRleDogMTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnN0b3J5cXVvdGUtYm9keSB7XHJcbiAgICAgICAgcGFkZGluZzogMjVweCAyMDBweCAzMHB4IDIwMHB4O1xyXG4gICAgICAgIGZsZXg6IDE7XHJcblxyXG4gICAgICAgIHAge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDI1cHg7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzNXB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiBpbmhlcml0O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnF1b3Rlc291cmNlIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbkBjb250YWluZXIgc3RvcnlxdW90ZSAobWF4LXdpZHRoOiA3NjhweCkge1xyXG4gICAgLnN0b3J5cXVvdGUge1xyXG4gICAgICAgIC5zdG9yeXF1b3RlLWhlYWRlciB7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTcwcHg7XHJcblxyXG4gICAgICAgICAgICAmLmhhc0ltYWdlIHtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMjUwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5zdG9yeXF1b3RlLWJvZHkge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAyNXB4IDUwcHggMzBweCA1MHB4O1xyXG5cclxuICAgICAgICAgICAgcCB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjZweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuQGNvbnRhaW5lciBzdG9yeXF1b3RlIChtYXgtd2lkdGg6IDU3NnB4KSB7XHJcbiAgICAuc3RvcnlxdW90ZSB7XHJcbiAgICAgICAgLnN0b3J5cXVvdGUtaGVhZGVyIHtcclxuICAgICAgICAgICAgJi5oYXNJbWFnZSB7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDIyMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuc3RvcnlxdW90ZS1ib2R5IHtcclxuICAgICAgICAgICAgcGFkZGluZzogMjVweCAyNXB4IDMwcHggMjVweDtcclxuXHJcbiAgICAgICAgICAgIHAge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xyXG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5xdW90ZXNvdXJjZSB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufSIsIu+7vy5zdXBwb3J0aW5nYm94IHtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cclxuICAgIC5zdXBwb3J0aW5nYm94LWhlYWRlciB7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuXHJcbiAgICAgICAgLnN1cHBvcnRpbmdib3gtdG9wbGFiZWwge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAxcmVtIDFyZW0gMC4zcmVtIDFyZW07XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuY3VydmUge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSArIDJweCk7XHJcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnN1cHBvcnRpbmdib3gtYm9keSB7XHJcbiAgICAgICAgcGFkZGluZzogMXJlbSAxcmVtIDAuM3JlbSAxcmVtO1xyXG4gICAgICAgIGZsZXg6IDE7XHJcbiAgICB9XHJcbn0iLCLvu78uc2l0ZS1zZWFyY2gge1xyXG4gICAgLyogUGFnaW5hdGlvbiBjb250YWluZXIgKi9cclxuICAgIC5wYWdpbmF0aW9uIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgbWFyZ2luOiAycmVtIDA7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gICAgICAgIGdhcDogMC41cmVtO1xyXG4gICAgICAgIC8qIFBhZ2UgaXRlbXMgKi9cclxuICAgICAgICAucGFnZS1pdGVtIHtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICAvKiBBY3RpdmUgcGFnZSAqL1xyXG4gICAgICAgICAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgICAgICAgICAucGFnZS1saW5rIHtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICAgICAgICAgICAgICAgIGN1cnNvcjogZGVmYXVsdDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAvKiBEaXNhYmxlZCAvIGVsbGlwc2lzICovXHJcbiAgICAgICAgICAgICYuZGlzYWJsZWQge1xyXG4gICAgICAgICAgICAgICAgLnBhZ2UtbGluayB7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjOTk5O1xyXG4gICAgICAgICAgICAgICAgICAgIGN1cnNvcjogZGVmYXVsdDtcclxuICAgICAgICAgICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lOyAvLyBmdWxseSBkaXNhYmxlcyBob3Zlci9jbGlja1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICAgICAgICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzk5OTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAvKiBQcmV2IC8gTmV4dCBidXR0b25zICovXHJcbiAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQgLnBhZ2UtbGluayxcclxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIC5wYWdlLWxpbmsge1xyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAvKiBQYWdlIGxpbmtzICovXHJcbiAgICAgICAgLnBhZ2UtbGluayB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcclxuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2RkZDtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgICAgIGNvbG9yOiAjMzMzO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDAuOTVyZW07XHJcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIC8qIEhvdmVyIGFuZCBmb2N1cyBzdGF0ZXMgKi9cclxuICAgICAgICAgICAgJjpob3ZlcixcclxuICAgICAgICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmNWY1O1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjY2NjO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICMxRTAwMjg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLyogU2xpZ2h0IHNoYWRvdyBlZmZlY3QgKi9cclxuICAgICAgICAgICAgJjpob3Zlcjpub3QoLmFjdGl2ZSk6bm90KC5kaXNhYmxlZCkge1xyXG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCAycHggNXB4IHJnYmEoMCwgMCwgMCwgMC4wOCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLyogT3B0aW9uYWw6IGNvbXBhY3Qgb24gbW9iaWxlICovXHJcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDYwMHB4KSB7XHJcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgICAgICAgZ2FwOiAwLjNyZW07XHJcblxyXG4gICAgICAgICAgICAucGFnZS1saW5rIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAuNHJlbSAwLjhyZW07XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDAuOXJlbTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8qIFNlYXJjaCBGb3JtIExheW91dCAqL1xyXG4gICAgLnNlYXJjaC1mb3JtIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuXHJcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NnB4KSB7XHJcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblxyXG4gICAgICAgICAgICAuc2VhcmNoLWlucHV0IHtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNjY2M7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5idG4ge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMC40cmVtO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4O1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAvKiBJbnB1dCBGaWVsZCAqL1xyXG4gICAgLnNlYXJjaC1pbnB1dCB7XHJcbiAgICAgICAgZmxleDogMTtcclxuICAgICAgICBwYWRkaW5nOiAwLjZyZW0gMC44cmVtO1xyXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XHJcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiBub25lOyAvLyBSZW1vdmUgcmlnaHQgYm9yZGVyIHRvIGpvaW4gd2l0aCBidXR0b25cclxuICAgICAgICBib3JkZXItcmFkaXVzOiA2cHggMCAwIDZweDtcclxuICAgICAgICBmb250LXNpemU6IDFyZW07XHJcbiAgICAgICAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuMnMsIGJveC1zaGFkb3cgMC4ycztcclxuXHJcbiAgICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogIzAwNzhkNDtcclxuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMnB4IHJnYmEoMCwgMTIwLCAyMTIsIDAuMik7XHJcbiAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLyogU2VhcmNoIEJ1dHRvbiAqL1xyXG4gICAgLmJ0biB7XHJcbiAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcclxuICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xyXG4gICAgfVxyXG4gICAgLyogUG9zdCBQcmV2aWV3ICovXHJcbiAgICAucG9zdC1wcmV2aWV3IHtcclxuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2VhZWFlYTtcclxuXHJcbiAgICAgICAgaDIge1xyXG4gICAgICAgICAgICBjb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuYnJlYWRjcnVtYiB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkYnJhbmQtcGluaztcclxuICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5wdXJwbGUge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFlNmZhO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi53aGl0ZSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIiwiLyoqXHJcbiAqIExBWU9VVFxyXG4gKiBCYXNlXHJcbiAqIEJlZ2luIGFsbCBsYXlvdXQgc3R5bGVzIGhlcmUgaW5pdGlhbGx5LlxyXG4gKi9cclxuXHJcbiRjb250YWluZXItbWFwOiAoXHJcbiAgICB4czogNjMwcHgsXHJcbiAgICBzbTogMTAwMHB4LFxyXG4gICAgbWQ6IDExMDBweCxcclxuICAgIGxnOiAxMjAwcHgsXHJcbiAgICB4bDogMTUwMHB4XHJcbik7XHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBBIEJBU0UgQ09OVEFJTkVSIE1JWElOXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4lY29udGFpbmVye1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIHBhZGRpbmctbGVmdDogMTVweDtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XHJcblxyXG4gICAgQGluY2x1ZGUgcmVzcG9uZC10byhzbWFsbC1hbmQtdXApe1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogM3Z3O1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDN2dztcclxuICAgIH1cclxuXHJcbiAgICAvLyBTZXQgdGhlIGRlZmF1bHQgbWF4IHdpZHRoLlxyXG4gICAgJjpub3QoW2NsYXNzKj1cImNvbnRhaW5lci0tXCJdKXtcclxuICAgICAgICAkd2lkdGgtbWVkaXVtOiBtYXAtZ2V0KCRjb250YWluZXItbWFwLCBsZyk7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAkd2lkdGgtbWVkaXVtO1xyXG4gICAgICAgIC8vd2lkdGg6IDkwJTtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtd2lkdGgoJHdpZHRoLW1lZGl1bSArIDgwcHgpe1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8vIENyZWF0ZSBhbGwgb3RoZXIgd2lkdGggbW9kaWZpZXJzLlxyXG4gICAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkY29udGFpbmVyLW1hcHtcclxuICAgICAgICAmW2NsYXNzKj1cIi0tI3skbmFtZX1cIl17XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogICR2YWx1ZTtcclxuXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLXdpZHRoKCR2YWx1ZSArIDgwcHgpe1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gQ09OVEFJTkVSXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4uY29udGFpbmVyeyBAZXh0ZW5kICVjb250YWluZXI7IH1cclxuXHJcbi8vIEFkZGVkIHRvIGFjY291bnQgZm9yIHR3aXR0ZXIgcG9zdHMgYmVpbmcgYWRkZWQgaW4gdGhlIGdyaWQgZWRpdG9yXHJcbi5ib2R5LWNvcHkgLmNvbnRhaW5lcjphZnRlcntcclxuICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICBkaXNwbGF5OiB0YWJsZTtcclxuICAgIGNsZWFyOiBib3RoO1xyXG59XHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBXUkFQUEVSXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4ud3JhcHBlcntcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB6LWluZGV4OiAxO1xyXG4gICAgYm94LXNoYWRvdzogMCAwIDIwcHggNXB4IHJnYmEoJGJsYWNrLCAwLjI1KTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xyXG59XHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS1cclxuLy8gSElERSBDT05URU5UXHJcbi8vLS0tLS0tLS0tLS0tLS0tLVxyXG4uaXMtaGlkZGVue1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxufVxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gQ0xFQVJGSVhcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi5jbGVhcmZpeHtcclxuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xyXG59XHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBDT0xMQVBTRSBDT05URU5UXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi5pcy1jb2xsYXBzZWRbc3R5bGUqPVwibWF4LWhlaWdodFwiXXtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgdHJhbnNpdGlvbjogbWF4LWhlaWdodCwgb3BhY2l0eSwgcGFkZGluZztcclxuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xyXG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xyXG5cclxuICAgIC8vIHVzZWQgaW4gY29uanVuY3Rpb24gd2l0aCBhbiBpbmxpbmUgbWF4LWhlaWdodCBzZXRcclxuICAgIC8vIGltcG9ydGFudCBpcyB1c2VkIGZvciBpdCdzIHNwZWNpZmljaXR5IGFjY3VyYXRseS5cclxuICAgICY6bm90KFtjbGFzcyo9XCJpcy1hY3RpdmVcIl0pe1xyXG4gICAgICAgIG1heC1oZWlnaHQ6IDAhaW1wb3J0YW50O1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgIH1cclxuXHJcbiAgICAmLmlzLWFjdGl2ZXtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgfVxyXG59XHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS1cclxuLy8gRElTQUJMRSBTQ1JPTExcclxuLy8tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIFVzZWQgdG8gZGlzYWJsZSBwYWdlIHNjcm9sbCB3aXRoIGFjdGl2ZSBtb2RhbHNcclxuLmRpc2FibGUtc2Nyb2xse1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBTUEFDSU5HIE1JWElOXHJcbi8vLS0tLS0tLS0tLS0tLS0tLVxyXG4kcHJvcGVydHktbWFwOiAoXHJcbiAgICBtZzogbWFyZ2luLFxyXG4gICAgcGQ6IHBhZGRpbmdcclxuKTtcclxuXHJcbiRkaXJlY3Rpb24tbWFwOiAoXHJcbiAgICB0cDogKHRvcCwgbnVsbCksXHJcbiAgICBibTogKGJvdHRvbSwgbnVsbCksXHJcbiAgICBsZjogKGxlZnQsIG51bGwpLFxyXG4gICAgcnQ6IChyaWdodCwgbnVsbCksXHJcbiAgICB2dDogKHRvcCwgYm90dG9tKSxcclxuICAgIGh6OiAobGVmdCwgcmlnaHQpXHJcbik7XHJcblxyXG4kc2l6ZS1tYXA6IChcclxuICAgIHhzOiAuNXZ3LFxyXG4gICAgc206IDF2dyxcclxuICAgIG1kOiAydncsXHJcbiAgICBsZzogM3Z3LFxyXG4gICAgeGw6IDQuNzkxNjh2dyxcclxuICAgIHh4bDogMTB2d1xyXG4pO1xyXG5cclxuJGRlZmF1bHQ6IDIwcHg7XHJcbiRjYXAtd2lkdGg6IDE0MDBweDtcclxuJHNpemUtY2FwOiA0NHB4O1xyXG5cclxuQGVhY2ggJHByb3BlcnR5LW5hbWUsICRwcm9wZXJ0eS12YWx1ZSBpbiAkcHJvcGVydHktbWFwIHtcclxuICAgIEBlYWNoICRzaXplLW5hbWUsICRzaXplLXZhbHVlIGluICRzaXplLW1hcCB7XHJcbiAgICAgICAgLiN7JHByb3BlcnR5LW5hbWV9LSN7JHNpemUtbmFtZX0sXHJcbiAgICAgICAgJSN7JHByb3BlcnR5LW5hbWV9LSN7JHNpemUtbmFtZX17XHJcbiAgICAgICAgICAgICN7JHByb3BlcnR5LXZhbHVlfTogJGRlZmF1bHQ7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8obWVkaXVtLWFuZC11cCl7XHJcbiAgICAgICAgICAgICAgICAjeyRwcm9wZXJ0eS12YWx1ZX06ICRzaXplLXZhbHVlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBlYWNoICRkaXJlY3Rpb24tbmFtZSwgJGRpcmVjdGlvbi12YWx1ZSBpbiAkZGlyZWN0aW9uLW1hcCB7XHJcbiAgICAgICAgICAgIC4jeyRwcm9wZXJ0eS1uYW1lfS0jeyRkaXJlY3Rpb24tbmFtZX0tI3skc2l6ZS1uYW1lfSxcclxuICAgICAgICAgICAgJSN7JHByb3BlcnR5LW5hbWV9LSN7JGRpcmVjdGlvbi1uYW1lfS0jeyRzaXplLW5hbWV9e1xyXG4gICAgICAgICAgICAgICAgI3skcHJvcGVydHktdmFsdWV9LSN7bnRoKCRkaXJlY3Rpb24tdmFsdWUsMSl9OiAkZGVmYXVsdDtcclxuICAgICAgICAgICAgICAgIEBpZiBudGgoJGRpcmVjdGlvbi12YWx1ZSwyKSAhPSBudWxse1xyXG4gICAgICAgICAgICAgICAgICAgICN7JHByb3BlcnR5LXZhbHVlfS0je250aCgkZGlyZWN0aW9uLXZhbHVlLDIpfTogJGRlZmF1bHQ7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bS1hbmQtdXApe1xyXG4gICAgICAgICAgICAgICAgICAgICN7JHByb3BlcnR5LXZhbHVlfS0je250aCgkZGlyZWN0aW9uLXZhbHVlLDEpfTogJHNpemUtdmFsdWU7XHJcbiAgICAgICAgICAgICAgICAgICAgQGlmIG50aCgkZGlyZWN0aW9uLXZhbHVlLDIpICE9IG51bGx7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICN7JHByb3BlcnR5LXZhbHVlfS0je250aCgkZGlyZWN0aW9uLXZhbHVlLDIpfTogJHNpemUtdmFsdWU7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgQGlmICRzaXplLW5hbWUgPT0gJ2xnJ3tcclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS13aWR0aCgkY2FwLXdpZHRoKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgI3skcHJvcGVydHktdmFsdWV9LSN7bnRoKCRkaXJlY3Rpb24tdmFsdWUsMSl9OiAkc2l6ZS1jYXA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpZiBudGgoJGRpcmVjdGlvbi12YWx1ZSwyKSAhPSBudWxse1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgI3skcHJvcGVydHktdmFsdWV9LSN7bnRoKCRkaXJlY3Rpb24tdmFsdWUsMil9OiAkc2l6ZS1jYXA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5uby1tYXJnaW4tYm90dG9tLCAubm8tbWctYm17IG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDsgfVxyXG4ubm8tbWFyZ2luLXRvcCwgLm5vLW1nLXRweyBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7IH1cclxuLm5vLXBhZGRpbmctYm90dG9tLCAubm8tcGQtYm17IHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cclxuLm5vLXBhZGRpbmctdG9wLCAubm8tcGQtdHB7IHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7IH1cclxuXHJcbi8vIC8vLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyAvLyBNQVJHSU4gQUxMXHJcbi8vIC8vLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyAubWFyZ2luLFxyXG4vLyAlbWFyZ2lue1xyXG4vLyAgICAgQGluY2x1ZGUgc3BhY2luZyhhbGwsIG1hcmdpbik7XHJcbi8vIH1cclxuLy8gLy8tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gLy8gTUFSR0lOIEFMTCBTTUFMTFxyXG4vLyAvLy0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyAubWFyZ2luLXNtYWxsLFxyXG4vLyAlbWFyZ2luLXNtYWxse1xyXG4vLyAgICAgIEBpbmNsdWRlIHNwYWNpbmcoYWxsLCBtYXJnaW4sIHNtYWxsKTtcclxuLy8gfVxyXG4vLyAvLy0tLS0tLS0tLS0tLS0tLS1cclxuLy8gLy8gTUFSR0lOIEJPVFRPTVxyXG4vLyAvLy0tLS0tLS0tLS0tLS0tLS1cclxuLy8gLm1hcmdpbi1ib3R0b20sXHJcbi8vICVtYXJnaW4tYm90dG9te1xyXG4vLyAgICAgQGluY2x1ZGUgc3BhY2luZyhib3R0b20sIG1hcmdpbik7XHJcbi8vIH1cclxuLy8gLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gLy8gTUFSR0lOIEJPVFRPTSBTTUFMTFxyXG4vLyAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyAubWFyZ2luLWJvdHRvbS1zbWFsbCxcclxuLy8gJW1hcmdpbi1ib3R0b20tc21hbGx7XHJcbi8vICAgICBAaW5jbHVkZSBzcGFjaW5nKGJvdHRvbSwgbWFyZ2luLCBzbWFsbCk7XHJcbi8vIH1cclxuLy8gLy8tLS0tLS0tLS0tLS0tXHJcbi8vIC8vIE1BUkdJTiBUT1BcclxuLy8gLy8tLS0tLS0tLS0tLS0tXHJcbi8vIC5tYXJnaW4tdG9wLFxyXG4vLyAlbWFyZ2luLXRvcHtcclxuLy8gICAgIEBpbmNsdWRlIHNwYWNpbmcodG9wLCBtYXJnaW4pO1xyXG4vLyB9XHJcbi8vIC8vLS0tLS0tLS0tLS0tLS1cclxuLy8gLy8gTUFSR0lOIFZJUlRcclxuLy8gLy8tLS0tLS0tLS0tLS0tLVxyXG4vLyAubWFyZ2luLXZlcnQsXHJcbi8vICVtYXJnaW4tdmVydHtcclxuLy8gICAgIEBpbmNsdWRlIHNwYWNpbmcodG9wLCBtYXJnaW4pO1xyXG4vLyAgICAgQGluY2x1ZGUgc3BhY2luZyhib3R0b20sIG1hcmdpbik7XHJcbi8vIH1cclxuLy8gLy8tLS0tLS0tLS0tLS0tLVxyXG4vLyAvLyBNQVJHSU4gVklSVFxyXG4vLyAvLy0tLS0tLS0tLS0tLS0tXHJcbi8vIC5tYXJnaW4tdmVydC1zbWFsbCxcclxuLy8gJW1hcmdpbi12ZXJ0LXNtYWxse1xyXG4vLyAgICAgQGluY2x1ZGUgc3BhY2luZyh0b3AsIG1hcmdpbiwgc21hbGwpO1xyXG4vLyAgICAgQGluY2x1ZGUgc3BhY2luZyhib3R0b20sIG1hcmdpbiwgc21hbGwpO1xyXG4vLyB9XHJcblxyXG4vLyAvLy0tLS0tLS0tLS0tLS0tLS1cclxuLy8gLy8gUEFERElORyBBTExcclxuLy8gLy8tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIC5wYWRkaW5nLFxyXG4vLyAlcGFkZGluZ3tcclxuLy8gICAgIEBpbmNsdWRlIHNwYWNpbmcoYWxsLCBwYWRkaW5nKTtcclxuLy8gfVxyXG4vLyAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIC8vIFBBRERJTkcgQUxMIFNNQUxMXHJcbi8vIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gLnBhZGRpbmctc21hbGwsXHJcbi8vICVwYWRkaW5nLXNtYWxse1xyXG4vLyAgICAgQGluY2x1ZGUgc3BhY2luZyhhbGwsIHBhZGRpbmcsIHNtYWxsKTtcclxuLy8gfVxyXG4vLyAvLy0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIC8vIFBBRERJTkcgQk9UVE9NXHJcbi8vIC8vLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gLnBhZGRpbmcsXHJcbi8vICVwYWRkaW5ne1xyXG4vLyAgICAgQGluY2x1ZGUgc3BhY2luZyhhbGwsIHBhZGRpbmcpO1xyXG4vLyB9XHJcbi8vIC8vLS0tLS0tLS0tLS0tLS1cclxuLy8gLy8gUEFERElORyBUT1BcclxuLy8gLy8tLS0tLS0tLS0tLS0tLVxyXG4vLyAucGFkZGluZy10b3AsXHJcbi8vICVwYWRkaW5nLXRvcHtcclxuLy8gICAgIEBpbmNsdWRlIHNwYWNpbmcodG9wLCBwYWRkaW5nKTtcclxuLy8gfVxyXG5cclxuLy8gLy8tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyAvLyBQQURESU5HIEJPVFRPTVxyXG4vLyAvLy0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIC5wYWRkaW5nLWJvdHRvbSxcclxuLy8gJXBhZGRpbmctYm90dG9te1xyXG4vLyAgICAgQGluY2x1ZGUgc3BhY2luZyhib3R0b20sIHBhZGRpbmcpO1xyXG4vLyB9XHJcblxyXG4vLyAvLy0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIC8vIFBBRERJTkcgTEVGVFxyXG4vLyAvLy0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIC5wYWRkaW5nLWxlZnQsXHJcbi8vICVwYWRkaW5nLWxlZnR7XHJcbi8vICAgICBAaW5jbHVkZSBzcGFjaW5nKGxlZnQsIHBhZGRpbmcpO1xyXG4vLyB9XHJcblxyXG4vLyAvLy0tLS0tLS0tLS0tLS0tLVxyXG4vLyAvLyBQQURESU5HIFZJUlRcclxuLy8gLy8tLS0tLS0tLS0tLS0tLS1cclxuLy8gLnBhZGRpbmctdmVydCxcclxuLy8gJXBhZGRpbmctdmVydHtcclxuLy8gICAgIEBpbmNsdWRlIHNwYWNpbmcodG9wLCBwYWRkaW5nKTtcclxuLy8gICAgIEBpbmNsdWRlIHNwYWNpbmcoYm90dG9tLCBwYWRkaW5nKTtcclxuLy8gfVxyXG4vLyAvLy0tLS0tLS0tLS0tLS0tLVxyXG4vLyAvLyBQQURESU5HIFZJUlRcclxuLy8gLy8tLS0tLS0tLS0tLS0tLS1cclxuLy8gLnBhZGRpbmctdmVydC1zbWFsbCxcclxuLy8gJXBhZGRpbmctdmVydC1zbWFsbHtcclxuLy8gICAgIEBpbmNsdWRlIHNwYWNpbmcodG9wLCBwYWRkaW5nLCBzbWFsbCk7XHJcbi8vICAgICBAaW5jbHVkZSBzcGFjaW5nKGJvdHRvbSwgcGFkZGluZywgc21hbGwpO1xyXG4vLyB9XHJcblxyXG4udGV4dC1jZW50ZXIge1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG5cclxuICAgID4gaDEsIC5oMS1saWtlLFxyXG4gICAgPiBoMiwgLmgyLWxpa2UsXHJcbiAgICA+IGgzLCAuaDMtbGlrZSxcclxuICAgID4gaDQsIC5oNC1saWtlLFxyXG4gICAgPiBoNSwgLmg1LWxpa2UsXHJcbiAgICA+IGg2LCAuaDYtbGlrZSxcclxuICAgID4gcCB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAxMTAwcHg7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gICAgfVxyXG59XHJcblxyXG4udGV4dC1yaWdodHtcclxuICAgIHRleHQtYWxpZ246cmlnaHQ7XHJcbn1cclxuXHJcbi8vIC5hcnRpY2xle1xyXG5cclxuLy8gfVxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIEhFQURJTkdTXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4uYm9keS1jb3B5IHtcclxuICAgIGgxLCAuaDEtbGlrZSxcclxuICAgIGgyLCAuaDItbGlrZSxcclxuICAgIGgzLCAuaDMtbGlrZSxcclxuICAgIGg0LCAuaDQtbGlrZSxcclxuICAgIGg1LCAuaDUtbGlrZSxcclxuICAgIGg2LCAuaDYtbGlrZSxcclxuICAgIFtjbGFzcyo9XCJzdWJoZWFkXCJdIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG5cclxuICAgICAgICBAaW5jbHVkZSByZXNwb25kLXRvKHdpZGUtYW5kLXVwKSB7XHJcbiAgICAgICAgICAgIC8vIG1hcmdpbi1ib3R0b206IDI1cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHAsXHJcbiAgICB1bCxcclxuICAgIG9sLFxyXG4gICAgYmxvY2txdW90ZSxcclxuICAgIHRhYmxlIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAkbGluZS1oZWlnaHQ7XHJcbiAgICB9XHJcblxyXG4gICAgLm5vLW1hcmdpbi1ib3R0b20ge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICB9XHJcblxyXG4gICAgcCB7XHJcbiAgICAgICAgLy8gbWF4LXdpZHRoOiAxMDUwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLmhhcy1jb3VudGVyIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgIH1cclxufVxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIFJFQUNUIExPQURFUlxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gaWYgaXRlbXMgYXJlIHdpdGhpbiBhIHJlYWN0IGNvbXBvbmVudCBhbmltYXRlIHRoZW0gaW5cclxuW2lkKj1cInJlYWN0XCJde1xyXG4gICAgLmdyaWRfX2l0ZW0sXHJcbiAgICA+IC5tZWRpYXtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg1MHB4KTtcclxuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA0MDBtcztcclxuXHJcbiAgICAgICAgJi5pcy1hY3RpdmV7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBMQVpZIExPQURFUlxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gSU1BR0VTIFRIQVQgR0VUIExPQURFRCBCQVNFRCBPTiBEQVRBLVNSQ1xyXG4vL1tkYXRhLXNyY117XHJcbi8vICAgIG9wYWNpdHk6IDA7XHJcbi8vICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7XHJcbi8vICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDEwMG1zO1xyXG4vL1xyXG4vLyAgICAmLmlzLXZpc2libGV7IG9wYWNpdHk6IDE7IH1cclxuLy99XHJcblxyXG5cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS1cclxuLy8gQ0FQVElPTlNcclxuLy8tLS0tLS0tLS0tLS0tLVxyXG5bY2xhc3MqPVwiY2FwdGlvblwiXSArIFtjbGFzcyo9XCJjYXB0aW9uXCJdLFxyXG5bY2xhc3MqPVwiY2FwdGlvblwiXSArIFtjbGFzcyo9XCJzdWJoZWFkXCJdLFxyXG5bY2xhc3MqPVwic3ViaGVhZFwiXSArIFtjbGFzcyo9XCJjYXB0aW9uXCJdLFxyXG5bY2xhc3MqPVwic3ViaGVhZFwiXSArIFtjbGFzcyo9XCJzdWJoZWFkXCJde1xyXG4gICAgbWFyZ2luLXRvcDogMjBweDtcclxufVxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLVxyXG4vLyBMT0FERVJcclxuLy8tLS0tLS0tLS0tLS0tLVxyXG4uY2MtbG9hZGluZ3tcclxuICAgIHdpZHRoOiAxMDAwcHg7XHJcbiAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICBwYWRkaW5nLXRvcDogNjYlO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogLTY2JTtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvYmFzZTY0L1NWRy90YWlsLXNwaW4uc3ZnKTtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcclxuICAgIGJhY2tncm91bmQtc2l6ZTogMTAwcHg7XHJcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkYmxhY2ssIDAuNCk7XHJcbn1cclxuXHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tXHJcbi8vIEhFSUdIVFxyXG4vLy0tLS0tLS0tLS0tLS0tXHJcbi5oZWlnaHR7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbn1cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS1cclxuLy8gQ09MVU1OXHJcbi8vLS0tLS0tLS0tLS0tLS1cclxuLy8gVXNlZCBvbiBob21lcGFnZSBzb2NpYWwgc2xpZGVyc1xyXG4uY29sdW1ue1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcclxuICAgIGhlaWdodDogMTAwJTtcclxufVxyXG5cclxuXHJcbi5mbC1ydHtcclxuICAgIGZsb2F0OnJpZ2h0O1xyXG59XHJcblxyXG4uZmwtbHR7XHJcbiAgICBmbG9hdDpsZWZ0O1xyXG59XHJcblxyXG4uZC1pbmxpbmUtYmxvY2t7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbn1cclxuXHJcbi5kLWJsb2Nre1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuXHJcbi53LWF1dG97XHJcbiAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xyXG59XHJcblxyXG5cclxuXHJcbi5pbWFnZXMtaW5saW5le1xyXG4gICAgaW1ne1xyXG4gICAgICAgIGRpc3BsYXk6aW5saW5lO1xyXG4gICAgfVxyXG59XHJcblxyXG4ubGVmdFJpZ2h0UGFkZGluZyB7XHJcbiAgICAmLVNtYWxsIHtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwJTtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMCU7XHJcbiAgICB9XHJcblxyXG4gICAgJi1NZWRpdW0ge1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMjQlO1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDI0JTtcclxuICAgIH1cclxuXHJcbiAgICAmLUxhcmdlIHtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDI4JTtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyOCU7XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xyXG4gICAgICAgICYtU21hbGwge1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDE1JTtcclxuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMTUlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi1NZWRpdW0ge1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDE4JTtcclxuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMTglO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi1MYXJnZSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjAlO1xyXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMCU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTJweCkge1xyXG4gICAgICAgICYtU21hbGwge1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDQlO1xyXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA0JTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYtTWVkaXVtIHtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA4JTtcclxuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogOCU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLUxhcmdlIHtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxMCU7XHJcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDEwJTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcbiAgICAgICAgJi1TbWFsbCxcclxuICAgICAgICAmLU1lZGl1bSxcclxuICAgICAgICAmLUxhcmdlIHtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLndhdmUtY3VydmUge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgaGVpZ2h0OiAwcHg7XHJcbiAgICBtYXJnaW4tdG9wOiAtMXB4OyAvKiBQdWxscyBpdCB1cCBvdmVyIGJvdHRvbS1zZWN0aW9uICovXHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG4gICAgei1pbmRleDogMTtcclxufSIsIi8qKlxyXG4gKiBMQVlPVVRcclxuICogRm9vdGVyXHJcbiAqXHJcbiAqL1xyXG4kbmFtZTogZm9vdGVyO1xyXG5cclxuLy8tLS0tLS0tXHJcbi8vIEJBU0VcclxuLy8tLS0tLS0tLVxyXG4uI3skbmFtZX0ge1xyXG4gICAgQGV4dGVuZCAlcGQtdHAtbGc7XHJcbiAgICBjb2xvcjogd2hpdGU7XHJcbiAgICBmb250LWZhbWlseTogJGhlYWRpbmctbWVkLWZvbnQ7XHJcblxyXG4gICAgaDYge1xyXG4gICAgICAgIEBleHRlbmQgJXRzLTc7XHJcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkYnJhbmQtcGluaztcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogJGxpZ2h0LXB1cnBsZTtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHAge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgYSB7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgICAgICAgY29sb3I6IGluaGVyaXQ7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgfVxyXG4gICAgLy9maXhlZCBmb290ZXIgc3R5bGVzLlxyXG4gICAgLnNpdGUtZm9vdGVyW3N0eWxlKj1cImhlaWdodFwiXSAmIHtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0tYW5kLXVwKSB7XHJcbiAgICAgICAgICAgIC8vcG9zaXRpb246IGZpeGVkO1xyXG4gICAgICAgICAgICAvL3dpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAvL2xlZnQ6IDA7XHJcbiAgICAgICAgICAgIC8vcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgIC8vYm90dG9tOiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8qQGluY2x1ZGUgcmVzcG9uZC10byhkZXNrLWFuZC11cCkgeyovXHJcbiAgICBoNiB7XHJcbiAgICAgICAgLyptYXJnaW4tYm90dG9tOiAyNXB4OyovXHJcbiAgICAgICAgZm9udC1zaXplOiAxN3B4O1xyXG4gICAgfVxyXG4gICAgLyp9Ki9cclxufVxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBFTEVNRU5UIC0gREVUQUlMU1xyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfV9fZGV0YWlscyB7XHJcbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKGRlc2stYW5kLXVwKSB7XHJcbiAgICAgICAgaDYge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuaWNvbi1saXN0IHtcclxuICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDUwcHg7XHJcblxyXG4gICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGE6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICRicmFuZC1waW5rO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtcHVycGxlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIEVMRU1FTlQgLSBGT1JNXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLiN7JG5hbWV9X19mb3JtIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcclxuICAgIHBhZGRpbmc6IDE1cHg7XHJcbiAgICBjb2xvcjogJGJsYWNrO1xyXG5cclxuICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8od2lkZS1hbmQtdXApIHtcclxuICAgICAgICBwYWRkaW5nLXRvcDogMjBweDtcclxuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSh3aGl0ZSwgMC4zKTtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKGRlc2stYW5kLXVwKSB7XHJcbiAgICAgICAgYm9yZGVyLXRvcDogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICAuaW5wdXQtd2l0aC1pY29uIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgICAgIGkge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGxlZnQ6IDEycHg7XHJcbiAgICAgICAgICAgIHRvcDogMTJweDtcclxuICAgICAgICAgICAgY29sb3I6IGdyYXk7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xyXG4gICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5mb3JtX19pbnB1dCB7XHJcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRsaWdodC1ncmV5ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogNDBweDtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIEVMRU1FTlQgLSBMSU5LU1xyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfV9fbGlua3Mge1xyXG4gICAgdWwge1xyXG4gICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgfVxyXG5cclxuICAgIGxpIHtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcclxuICAgIH1cclxuXHJcbiAgICBhIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuICAgICAgICBtYXJnaW46IDBweCAxMHB4O1xyXG4gICAgICAgIHBhZGRpbmc6IDBweCA1cHg7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4O1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBjb2xvcjogJGJyYW5kLXBpbms7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRsaWdodC1wdXJwbGU7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAudGl0bGUge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuICAgICAgICBtYXJnaW46IDBweCAxMHB4O1xyXG4gICAgICAgIHBhZGRpbmc6IDBweCA1cHg7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4O1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0tYW5kLWRvd24pIHtcclxuICAgICAgICBwYWRkaW5nLXRvcDogMjBweDtcclxuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSh3aGl0ZSwgMC4zKTtcclxuXHJcbiAgICAgICAgdWwge1xyXG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcclxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEod2hpdGUsIDAuMjUpO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bS1hbmQtdXApIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHJcbiAgICAgICAgdWwge1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gRUxFTUVOVCAtIENSRURJVFNcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4uI3skbmFtZX1fX2NyZWRpdHMge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSh3aGl0ZSwgMC4yNSk7XHJcbiAgICBwYWRkaW5nLXRvcDogMjBweDtcclxuXHJcbiAgICBwIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0tYW5kLXVwKSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgcGFkZGluZzogNXB4O1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMHB4IDEwcHg7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6bm9ybWFsO1xyXG5cclxuICAgICAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNzVweCkge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDUwJTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0tYW5kLXVwKSB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJyYW5kLXBpbms7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkbGlnaHQtcHVycGxlO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLyphICsgYTpiZWZvcmUge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bS1hbmQtdXApIHtcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcgJztcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgcGFkZGluZzogMCAxM3B4IDAgMTFweDtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG5cclxuICAgICAgICBhOmhvdmVyOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcclxuICAgICAgICB9Ki9cclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bS1hbmQtdXApIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiA0MHB4O1xyXG5cclxuICAgICAgICBwIHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uI3skbmFtZX1fX2NyZWRpdHMud2Vic2l0ZS1ieSB7XHJcbiAgICBib3JkZXItdG9wOiBub25lO1xyXG4gICAgcGFkZGluZy10b3A6IDIxcHg7XHJcblxyXG5cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206MTUwcHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBFTEVNRU5UIC0gQ0hBUklUWSBCQVJcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi5mb290ZXItY2hhcml0eS1iYXIge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxufVxyXG5cclxuICAgIC5mb290ZXItY2hhcml0eS1iYXJfX2NwLWxvZ28ge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgLmZvb3Rlci1jaGFyaXR5LWJhciBwIHtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICBmb250LXNpemU6IDE1cHg7XHJcblxyXG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyM3B4KSB7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogNzU1cHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5mb290ZXItY2hhcml0eS1iYXJfX2ZyLWxvZ28ge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAxZW07XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MjZweCkge1xyXG4gICAgICAgIC5mb290ZXItY2hhcml0eS1iYXJfX2ZyLWxvZ28ge1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMWVtO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmZvb3Rlci1jaGFyaXR5LWJhcl9fZnItbG9nbyBhIHtcclxuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMWVtO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjNweCkge1xyXG4gICAgICAgIC5mb290ZXItY2hhcml0eS1iYXIge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZm9vdGVyLWNoYXJpdHktYmFyX19jcC1sb2dvIHtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZm9vdGVyLWNoYXJpdHktYmFyIGRpdiB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDFlbSAwZW07XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZm9vdGVyLWNoYXJpdHktYmFyX19oaWRlLWZvci1sYXJnZSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZm9vdGVyLWNoYXJpdHktYmFyX19mci1sb2dvIHtcclxuICAgICAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmljb24tbGlzdC1mYSBhIHtcclxuICAgIHBhZGRpbmc6IDBweCAwcHg7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGJvcmRlci1yYWRpdXM6IDZweDtcclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICBjb2xvcjogJGJyYW5kLXBpbms7XHJcbiAgICAgICAgYmFja2dyb3VuZDogJGxpZ2h0LXB1cnBsZTtcclxuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuICAgIH1cclxufVxyXG4uZm9vdGVyX19mb3JtIGg2IHtcclxuICAgIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcclxuICAgIGNvbG9yOiAkYmxhY2sgIWltcG9ydGFudDtcclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLiN7JG5hbWV9LWdyb3VwX19idXR0b25zIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcbiAgICBtYXJnaW4tdG9wOiAxNXB4O1xyXG5cclxuICAgIHVsIHtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMzVweDtcclxuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpO1xyXG5cclxuICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogNXB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBhIHtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcclxuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpO1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDA7XHJcblxyXG4gICAgICAgIHVsIHtcclxuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDE1cHg7XHJcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uI3skbmFtZX0tZ3JvdXBzX19zb2NpYWwtYmFja3RvdG9wIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG4gICAgbWFyZ2luLXRvcDogMTVweDtcclxuXHJcbiAgICB1bCB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAzNHB4O1xyXG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMyk7XHJcblxyXG4gICAgICAgIGxpIHtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lO1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XHJcblxyXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogNXB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5pY29uLWNpcmNsZSB7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICB3aWR0aDogNDBweDtcclxuICAgICAgICBoZWlnaHQ6IDQwcHg7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcclxuICAgICAgICBjb2xvcjogYmxhY2sgIWltcG9ydGFudDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4zcyBlYXNlO1xyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZhZTZmYTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGkge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDI1cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcclxuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpO1xyXG5cclxuICAgICAgICB1bCB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxNHB4O1xyXG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLiN7JG5hbWV9X19saW5rIHtcclxuICAgIGEge1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBjb2xvcjokd2hpdGU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59IiwiLyoqXHJcbiAqIExBWU9VVFxyXG4gKiBHcmlkc1xyXG4gKiBTb21lIGxpZ2h0IEdyaWRzXHJcbiAqL1xyXG5cclxuLy8gQGltcG9ydCAnZ3JpZHMvYmFzZSc7XHJcbi8vLy8gQGltcG9ydCAnZ3JpZHMvMS0xJztcclxuLy8vLyBAaW1wb3J0ICdncmlkcy8yLTEnO1xyXG4vLy8vIEBpbXBvcnQgJ2dyaWRzLzEtMS0xJztcclxuLy8vLyBAaW1wb3J0ICdncmlkcy8xLTEtMS0xJztcclxuLy8vLyBAaW1wb3J0ICdncmlkcy8xLTEtMS0xLTEnO1xyXG4vLy8vIEBpbXBvcnQgJ2dyaWRzLzQtMS0xLTEtMSc7XHJcbi8vLy8gQGltcG9ydCAnZ3JpZHMvc29jaWFsJztcclxuLy8vLyBAaW1wb3J0ICdncmlkcy9tYXNvbnJ5JztcclxuLy8vLyBAaW1wb3J0ICdncmlkcy9nYXBzJztcclxuXHJcbi8qKlxyXG4gKiBMQVlPVVRcclxuICogR1JJRFMgLSBGTEVYXHJcbiAqIEEgc2VsZWN0aW9uIG9mIEdyaWQgc2V0dGluZ3MuIFRoZXNlIGNhbiBiZSBhcHBsaWVkIGFzIHNlbGVjdG9ycyBpbiB0aGUgbWFya3VwIG9yXHJcbiAqIG9yIGFzIGhpZGRlbiBjbGFzc2VzIGV4dGVuZGVkIGludG8gYSBjb21wb25lbnQuXHJcbiAqL1xyXG5cclxuJG5hbWU6IGdyaWQ7XHJcblxyXG4vLy0tLS0tLS0tLS0tXHJcbi8vIEJMT0NLXHJcbi8vLS0tLS0tLS0tLS1cclxuLiN7JG5hbWV9IHtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIG1pbi13aWR0aDogMTAwJTtcclxuICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbn1cclxuXHJcbi8vLS0tLS0tLS0tLS1cclxuLy8gRUxFTUVOVFxyXG4vLy0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfV9faXRlbSB7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxufVxyXG5cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS1cclxuLy8gQ0VOVEVSXHJcbi8vLS0tLS0tLS0tLS0tLS1cclxuLiN7JG5hbWV9LS1jZW50ZXIge1xyXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbn1cclxuXHJcbi5ncmlkLS1jb250ZW50LWNlbnRlciB7XHJcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbn1cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS1cclxuLy8gUklHSFRcclxuLy8tLS0tLS0tLS0tLS0tLVxyXG4uI3skbmFtZX0tLXJpZ2h0IHtcclxuICBqdXN0aWZ5LWNvbnRlbnQ6IGVuZDtcclxufVxyXG5cclxuLiN7JG5hbWV9LS1sZWZ0IHtcclxuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcbn1cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS1cclxuLy8gUkVWRVJTRVxyXG4vLyBUaGlzIHJldmVyc2VzIHRoZSBvcmRlciBhZnRlciBtb2JpbGUuXHJcbi8vLS0tLS0tLS0tLS0tLS1cclxuLiN7JG5hbWV9LS1yZXYge1xyXG4gIEBpbmNsdWRlIHJlc3BvbmQtdG8obWVkaXVtLWFuZC11cCkge1xyXG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xyXG4gIH1cclxufVxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLVxyXG4vLyBTUEFDRSBCRVRXRUVOXHJcbi8vLS0tLS0tLS0tLS0tLS1cclxuLiN7JG5hbWV9LS1zcGFjZS1iZXR3ZWVuIHtcclxuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgZmxleC13cmFwOiBub3dyYXA7XHJcbn1cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tXHJcbi8vIEdBUFMgLSBTRVRUSU5HU1xyXG4vLy0tLS0tLS0tLS0tLS0tLVxyXG4kZ3JpZC1nYXAtaW50ZXJ2YWxzOiAxLCAyLCAzLCA0LCA1LCA2LCA3LCA4LCA5LCAxMDtcclxuJGdyaWQtZ2FwLXVuaXQ6IDAuNTtcclxuXHJcbi8vLS0tLS0tLS0tLS1cclxuLy8gR0FQU1xyXG4vLy0tLS0tLS0tLS0tXHJcbkBtaXhpbiBncmlkLWdhcHMoJHNpemUpIHtcclxuICAuI3skbmFtZX0tLWdhcC0jeyRzaXplfSB7XHJcbiAgICBtYXJnaW4tbGVmdDogLSAxNXB4O1xyXG4gICAgLy9tYXJnaW4tYm90dG9tOiAtIDE1cHg7XHJcblxyXG4gICAgLiN7JG5hbWV9X19pdGVtIHtcclxuICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xyXG4gICAgfVxyXG5cclxuICAgIC8vSGVscGVyIERvdHNcclxuICAgIC5zbGljay1kb3RzIHtcclxuICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8obWVkaXVtLWFuZC11cCkge1xyXG4gICAgICBtYXJnaW4tbGVmdDogLSAkc2l6ZSAqICRncmlkLWdhcC11bml0ICsgdnc7XHJcbiAgICAgIC8vIG1hcmdpbi1ib3R0b206IC0gJHNpemUgKiAkZ3JpZC1nYXAtdW5pdCArIHZ3O1xyXG5cclxuICAgICAgLiN7JG5hbWV9X19pdGVtIHtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6ICRzaXplICogJGdyaWQtZ2FwLXVuaXQgKyB2dztcclxuICAgICAgICAvL21hcmdpbi1ib3R0b206ICRzaXplICogJGdyaWQtZ2FwLXVuaXQgKyB2dztcclxuICAgICAgfVxyXG4gICAgICAvL0hlbHBlciBEb3RzXHJcbiAgICAgIC5zbGljay1kb3RzIHtcclxuICAgICAgICBtYXJnaW4tdG9wOjdweDtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6ICRzaXplICogJGdyaWQtZ2FwLXVuaXQgKyB2dztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS1cclxuLy8gR0FQUyAtIEJVSUxEXHJcbi8vLS0tLS0tLS0tLS0tLS0tXHJcbkBlYWNoICRnYXAgaW4gJGdyaWQtZ2FwLWludGVydmFscyB7XHJcbiAgQGluY2x1ZGUgZ3JpZC1nYXBzKCRnYXApO1xyXG59XHJcblxyXG4kc2l6ZS1tYXA6IChcclxuICAgICAgICBzbWFsbDogc20sXHJcbiAgICAgICAgbWVkaXVtOiBtZCxcclxuICAgICAgICB3aWRlOiBsZyxcclxuICAgICAgICBkZXNrOiB4bFxyXG4pO1xyXG5cclxuJGNvbHVtbi1tYXA6IChcclxuICAgICAgICAyOiAyLFxyXG4gICAgICAgIDM6IDMsXHJcbiAgICAgICAgNDogNCxcclxuICAgICAgICA1OiA1XHJcbik7XHJcblxyXG4kY29sdW1uLW9mZnNldC1tYXA6IChcclxuICAgICAgICAxIF8yOiAoMSwgMiksXHJcbiAgICAgICAgMSBfMzogKDEsIDMpLFxyXG4gICAgICAgIDIgXzM6ICgyLCAzKSxcclxuICAgICAgICAyIF81OiAoMiwgNSksXHJcbiAgICAgICAgMiBfMTogKDIsIDEpLFxyXG4gICAgICAgIDMgXzE6ICgzLCAxKSxcclxuICAgICAgICAzIF8yOiAoMywgMiksXHJcbiAgICAgICAgNCBfMjogKDQsIDIpLFxyXG4gICAgICAgIDUgXzQ6ICg1LCA0KVxyXG4pO1xyXG5cclxuJGNvbHVtbi1vZmZzZXQtbWFwLTM6IChcclxuICAgICAgICAxIF80XzI6ICgxLCA0LCAyKSxcclxuICAgICAgICAyIF80XzI6ICgyLCA0LCAyKVxyXG4pO1xyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gUkVTUE9OU0lWRSBDT0xVTU5TXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbkBlYWNoICRjb2x1bW4tbmFtZSwgJGNvbHVtbi12YWx1ZSBpbiAkY29sdW1uLW1hcCB7XHJcbiAgLiN7JG5hbWV9LS0jeyRjb2x1bW4tdmFsdWV9IHtcclxuICAgID4gLiN7JG5hbWV9X19pdGVtIHtcclxuICAgICAgd2lkdGg6IDEwMCUgLyAkY29sdW1uLXZhbHVlO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQGVhY2ggJHNpemUtbmFtZSwgJHNpemUtdmFsdWUgaW4gJHNpemUtbWFwIHtcclxuICBAaW5jbHVkZSByZXNwb25kLXRvKCN7JHNpemUtbmFtZX0tYW5kLXVwKSB7XHJcbiAgICBAZWFjaCAkY29sdW1uLW5hbWUsICRjb2x1bW4tdmFsdWUgaW4gJGNvbHVtbi1tYXAge1xyXG4gICAgICAuI3skbmFtZX0tLSN7JGNvbHVtbi12YWx1ZX0tI3skc2l6ZS12YWx1ZX0ge1xyXG4gICAgICAgID4gLiN7JG5hbWV9X19pdGVtIHtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlIC8gJGNvbHVtbi12YWx1ZTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBlYWNoICRjb2x1bW4tbmFtZSwgJGNvbHVtbi12YWx1ZSBpbiAkY29sdW1uLW9mZnNldC1tYXAge1xyXG4gICR0b3RhbDogbnRoKCRjb2x1bW4tdmFsdWUsMSkgKyBudGgoJGNvbHVtbi12YWx1ZSwyKTtcclxuICAuI3skbmFtZX0tLSN7bnRoKCRjb2x1bW4tdmFsdWUsMSl9XyN7bnRoKCRjb2x1bW4tdmFsdWUsMil9IHtcclxuICAgID4gLiN7JG5hbWV9X19pdGVtOm50aC1jaGlsZCgxKSB7XHJcbiAgICAgIHdpZHRoOiAoKDEwMCUgLyAkdG90YWwpICogbnRoKCRjb2x1bW4tdmFsdWUsMSkpO1xyXG4gICAgfVxyXG5cclxuICAgID4gLiN7JG5hbWV9X19pdGVtOm50aC1jaGlsZCgyKSB7XHJcbiAgICAgIHdpZHRoOiAoKDEwMCUgLyAkdG90YWwpICogbnRoKCRjb2x1bW4tdmFsdWUsMikpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQGVhY2ggJHNpemUtbmFtZSwgJHNpemUtdmFsdWUgaW4gJHNpemUtbWFwIHtcclxuICBAaW5jbHVkZSByZXNwb25kLXRvKCN7JHNpemUtbmFtZX0tYW5kLXVwKSB7XHJcbiAgICBAZWFjaCAkY29sdW1uLW5hbWUsICRjb2x1bW4tdmFsdWUgaW4gJGNvbHVtbi1vZmZzZXQtbWFwIHtcclxuICAgICAgJHRvdGFsOiBudGgoJGNvbHVtbi12YWx1ZSwxKSArIG50aCgkY29sdW1uLXZhbHVlLDIpO1xyXG4gICAgICAuI3skbmFtZX0tLSN7bnRoKCRjb2x1bW4tdmFsdWUsMSl9XyN7bnRoKCRjb2x1bW4tdmFsdWUsMil9LSN7JHNpemUtdmFsdWV9IHtcclxuICAgICAgICA+IC4jeyRuYW1lfV9faXRlbTpudGgtY2hpbGQoMSkge1xyXG4gICAgICAgICAgd2lkdGg6ICgoMTAwJSAvICR0b3RhbCkgKiBudGgoJGNvbHVtbi12YWx1ZSwxKSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICA+IC4jeyRuYW1lfV9faXRlbTpudGgtY2hpbGQoMikge1xyXG4gICAgICAgICAgd2lkdGg6ICgoMTAwJSAvICR0b3RhbCkgKiBudGgoJGNvbHVtbi12YWx1ZSwyKSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AZWFjaCAkY29sdW1uLW5hbWUsICRjb2x1bW4tdmFsdWUgaW4gJGNvbHVtbi1vZmZzZXQtbWFwLTMge1xyXG4gICR0b3RhbDogbnRoKCRjb2x1bW4tdmFsdWUsMSkgKyBudGgoJGNvbHVtbi12YWx1ZSwyKSArIG50aCgkY29sdW1uLXZhbHVlLDMpO1xyXG4gIC4jeyRuYW1lfS0tI3tudGgoJGNvbHVtbi12YWx1ZSwxKX1fI3tudGgoJGNvbHVtbi12YWx1ZSwyKX1fI3tudGgoJGNvbHVtbi12YWx1ZSwzKX0ge1xyXG4gICAgPiAuI3skbmFtZX1fX2l0ZW06bnRoLWNoaWxkKDEpIHtcclxuICAgICAgd2lkdGg6ICgoMTAwJSAvICR0b3RhbCkgKiBudGgoJGNvbHVtbi12YWx1ZSwxKSk7XHJcbiAgICB9XHJcblxyXG4gICAgPiAuI3skbmFtZX1fX2l0ZW06bnRoLWNoaWxkKDIpIHtcclxuICAgICAgd2lkdGg6ICgoMTAwJSAvICR0b3RhbCkgKiBudGgoJGNvbHVtbi12YWx1ZSwyKSk7XHJcbiAgICB9XHJcblxyXG4gICAgPiAuI3skbmFtZX1fX2l0ZW06bnRoLWNoaWxkKDMpIHtcclxuICAgICAgd2lkdGg6ICgoMTAwJSAvICR0b3RhbCkgKiBudGgoJGNvbHVtbi12YWx1ZSwzKSk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AZWFjaCAkc2l6ZS1uYW1lLCAkc2l6ZS12YWx1ZSBpbiAkc2l6ZS1tYXAge1xyXG4gIEBpbmNsdWRlIHJlc3BvbmQtdG8oI3skc2l6ZS1uYW1lfS1hbmQtdXApIHtcclxuICAgIEBlYWNoICRjb2x1bW4tbmFtZSwgJGNvbHVtbi12YWx1ZSBpbiAkY29sdW1uLW9mZnNldC1tYXAtMyB7XHJcbiAgICAgICR0b3RhbDogbnRoKCRjb2x1bW4tdmFsdWUsMSkgKyBudGgoJGNvbHVtbi12YWx1ZSwyKSArIG50aCgkY29sdW1uLXZhbHVlLDMpO1xyXG4gICAgICAuI3skbmFtZX0tLSN7bnRoKCRjb2x1bW4tdmFsdWUsMSl9XyN7bnRoKCRjb2x1bW4tdmFsdWUsMil9XyN7bnRoKCRjb2x1bW4tdmFsdWUsMyl9LSN7JHNpemUtdmFsdWV9IHtcclxuICAgICAgICA+IC4jeyRuYW1lfV9faXRlbTpudGgtY2hpbGQoMSkge1xyXG4gICAgICAgICAgd2lkdGg6ICgoMTAwJSAvICR0b3RhbCkgKiBudGgoJGNvbHVtbi12YWx1ZSwxKSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICA+IC4jeyRuYW1lfV9faXRlbTpudGgtY2hpbGQoMikge1xyXG4gICAgICAgICAgd2lkdGg6ICgoMTAwJSAvICR0b3RhbCkgKiBudGgoJGNvbHVtbi12YWx1ZSwyKSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICA+IC4jeyRuYW1lfV9faXRlbTpudGgtY2hpbGQoMykge1xyXG4gICAgICAgICAgd2lkdGg6ICgoMTAwJSAvICR0b3RhbCkgKiBudGgoJGNvbHVtbi12YWx1ZSwzKSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLiN7JG5hbWV9X19pdGVtLS1wdWxsLWhlaWdodCB7XHJcbiAgQGluY2x1ZGUgcmVzcG9uZC10byh3aWRlLWFuZC11cCkge1xyXG4gICAgbWFyZ2luLXRvcDogLTUwJTtcclxuICAgIC8vIEJlbG93IG1hdGNoZXMgdGhlIHBhZGRpbmcgdG9wIG9mIHRoZSBtZWRpYSB2aWRlbyBjb250ZW50LlxyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDcxJSk7XHJcbiAgfVxyXG59XHJcblxyXG4ubWluLWhlaWdodC0zODAge1xyXG4gIG1pbi1oZWlnaHQ6IDM4MHB4O1xyXG59XHJcblxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBHUklEIE1BU09OUllcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi8vIFRoaXMgZWNjZW50cmljIGdyaWQgbGF5b3V0IHdvcmtzIGRpcmVjdGx5IG9uIHRoZSBtZWRpYVxyXG4vLyBjb21wb25lbnRzIHdpdGhpbiB0aGVtLCBhZGp1c3RpbmcgdGhlIGFzcGVjdCByYXRpb3Mgb2ZcclxuLy8gdGhlIGltYWdlcy4gVGhpcyBlbmFibGVzIGNsZWFuIG1hcmt1cC4gSXQgaW5zaXN0cyBvblxyXG4vLyBjcm9wcGluZyBjb250cm9sIHdoaWNoIHNob3VsZCBiZSByYWlzZWQgd2l0aCB0aGUgY2xpZW50LlxyXG4vLyBUaGUgZGVmYXVsdCBjcm9wIGlzIDQ6NCwgdGhpcyB3aWxsIGJlIHByZXNlbnRlZCBpbiB0aGVcclxuLy8gZnJvbnQgZW5kIGFzIGVpdGhlciA0OjMuIDU6MyBvciAxOjFcclxuXHJcbiRlY2NlbnRyaWMtZ3V0dGVyczogMTdweDtcclxuXHJcblxyXG4uZ3JpZC0tbWFzb25yeSB7XHJcbiAgbWFyZ2luLWxlZnQ6IC0kZWNjZW50cmljLWd1dHRlcnM7XHJcbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG4gIH1cclxuXHJcbiAgPiAuZ3JpZF9faXRlbSB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICBib3JkZXItbGVmdDogJGVjY2VudHJpYy1ndXR0ZXJzIHNvbGlkIHdoaXRlO1xyXG4gICAgYm9yZGVyLWJvdHRvbTogJGVjY2VudHJpYy1ndXR0ZXJzIHNvbGlkIHdoaXRlO1xyXG5cclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBAaW5jbHVkZSBhc3BlY3QtcmF0aW8oNCwgMyk7XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XHJcbiAgICAgIHdpZHRoOiA1MCU7XHJcbiAgICAgICY6bnRoLWNoaWxkKDEpIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuXHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgQGluY2x1ZGUgYXNwZWN0LXJhdGlvKDIsIDEpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xyXG4gICAgICB3aWR0aDogMzMuMzMlO1xyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgYXNwZWN0LXJhdGlvKDEsIDEpO1xyXG4gICAgICB9XHJcbiAgICAgICY6bnRoLWNoaWxkKDVuIC0gNCkge1xyXG4gICAgICAgIHdpZHRoOiA2Ni42NiU7XHJcblxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIEBpbmNsdWRlIGFzcGVjdC1yYXRpbygyLCAxKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTUwMHB4KSB7XHJcbiAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICBAaW5jbHVkZSBhc3BlY3QtcmF0aW8oNCwgMyk7XHJcbiAgICAgIH1cclxuICAgICAgJjpudGgtY2hpbGQoNW4gLSA0KSB7XHJcbiAgICAgICAgd2lkdGg6IDUwJTtcclxuICAgICAgfVxyXG5cclxuICAgICAgJjpudGgtY2hpbGQoNW4gLSAzKSB7XHJcbiAgICAgICAgd2lkdGg6IDUwJTtcclxuXHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgQGluY2x1ZGUgYXNwZWN0LXJhdGlvKDIsIDEpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLy8gT0xEIEtlcHQgZm9yIHJlZmVyZW5jZVxyXG4uI3skbmFtZX0tLW1hc29ucnkyMjIge1xyXG4gIGRpc3BsYXk6IGdyaWQ7XHJcbiAganVzdGlmeS1jb250ZW50OiBpbmhlcml0O1xyXG4gIG1hcmdpbi1sZWZ0OiAtJGVjY2VudHJpYy1ndXR0ZXJzO1xyXG4gIGFsaWduLWl0ZW1zOiBzdGFydDtcclxuXHJcbiAgPiAuI3skbmFtZX1fX2l0ZW0ge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgYm9yZGVyLWxlZnQ6ICRlY2NlbnRyaWMtZ3V0dGVycyBzb2xpZCB3aGl0ZTtcclxuICAgIGJvcmRlci1ib3R0b206ICRlY2NlbnRyaWMtZ3V0dGVycyBzb2xpZCB3aGl0ZTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ncmV5O1xyXG5cclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBAaW5jbHVkZSBhc3BlY3QtcmF0aW8oNCwgMyk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtZWRpYS13aWR0aCg1MDBweCkge1xyXG4gICAgPiAuI3skbmFtZX1fX2l0ZW06YmVmb3JlIHtcclxuICAgICAgQGluY2x1ZGUgYXNwZWN0LXJhdGlvKDIsIDEpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0tYW5kLXVwKSB7XHJcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGF1dG8gYXV0bztcclxuICAgIGdyaWQtdGVtcGxhdGUtcm93czogYXV0byBhdXRvO1xyXG5cclxuICAgID4gLiN7JG5hbWV9X19pdGVtIHtcclxuXHJcbiAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICBAaW5jbHVkZSBhc3BlY3QtcmF0aW8oNSwgNik7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6bnRoLWNoaWxkKDEpIHtcclxuICAgICAgICBncmlkLWNvbHVtbi1zdGFydDogMTtcclxuICAgICAgICBncmlkLWNvbHVtbi1lbmQ6IDM7XHJcblxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIEBpbmNsdWRlIGFzcGVjdC1yYXRpbygyLCAxKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgcmVzcG9uZC10byh3aWRlLWFuZC11cCkge1xyXG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBhdXRvIGF1dG8gYXV0bztcclxuXHJcbiAgICA+IC4jeyRuYW1lfV9faXRlbSB7XHJcbiAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICBAaW5jbHVkZSBhc3BlY3QtcmF0aW8oMSwgMSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6bnRoLWNoaWxkKDVuIC0gNCkge1xyXG4gICAgICAgIGdyaWQtY29sdW1uLXN0YXJ0OiAxO1xyXG4gICAgICAgIGdyaWQtY29sdW1uLWVuZDogc3BhbiAyO1xyXG5cclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICBAaW5jbHVkZSBhc3BlY3QtcmF0aW8oMiwgMSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSByZXNwb25kLXRvKGRlc2stYW5kLXVwKSB7XHJcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDMzLjMzJSAxNi42NjUlIDE2LjY2NSUgMzMuMzMlO1xyXG4gICAgLy9ncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDMzLjMzMzMzJSA1LjE1NTU1NSUgYXV0byA1LjE1NTU1NSUgMzMuMzMzMzMlO1xyXG4gICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvIGF1dG87XHJcblxyXG4gICAgPiAuI3skbmFtZX1fX2l0ZW0ge1xyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgYXNwZWN0LXJhdGlvKDQsIDMpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmOm50aC1jaGlsZCg1biAtIDMpIHtcclxuICAgICAgICBncmlkLWNvbHVtbi1zdGFydDogMztcclxuICAgICAgICBncmlkLWNvbHVtbi1lbmQ6IHNwYW4gMjtcclxuXHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgQGluY2x1ZGUgYXNwZWN0LXJhdGlvKDIsIDEpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgJjpudGgtY2hpbGQoNW4gLSAyKSB7XHJcbiAgICAgICAgZ3JpZC1jb2x1bW4tc3RhcnQ6IDE7XHJcbiAgICAgICAgZ3JpZC1jb2x1bW4tZW5kOiBzcGFuIDE7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6bnRoLWNoaWxkKDVuIC0gMSkge1xyXG4gICAgICAgIGdyaWQtY29sdW1uLXN0YXJ0OiAyO1xyXG4gICAgICAgIGdyaWQtY29sdW1uLWVuZDogc3BhbiAyO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAvKlxyXG4gICAgICAgICAgJjpudGgtY2hpbGQoMTJuIC0gMTEpe1xyXG4gICAgICAgICAgICAgIGdyaWQtY29sdW1uLXN0YXJ0OiAxO1xyXG4gICAgICAgICAgICAgIGdyaWQtY29sdW1uLWVuZDogNDtcclxuICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtMTAwJTtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAmOm50aC1jaGlsZCgxMm4gLTEwKSxcclxuICAgICAgICAgICY6bnRoLWNoaWxkKDEybiAtOSl7XHJcbiAgICAgICAgICAgICAgZ3JpZC1jb2x1bW4tc3RhcnQ6IDQ7XHJcbiAgICAgICAgICAgICAgZ3JpZC1jb2x1bW4tZW5kOiA2O1xyXG4gICAgICAgICAgICAgIEBpbmNsdWRlIGFzcGVjdC1yYXRpbyg1LDMpO1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICY6bnRoLWNoaWxkKDEybiAtOCksXHJcbiAgICAgICAgICAmOm50aC1jaGlsZCgxMm4gLTIpe1xyXG4gICAgICAgICAgICAgIGdyaWQtY29sdW1uLXN0YXJ0OiAxO1xyXG4gICAgICAgICAgICAgIGdyaWQtY29sdW1uLWVuZDogMjtcclxuICAgICAgICAgICAgICBAaW5jbHVkZSBhc3BlY3QtcmF0aW8oMSwxKTtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAmOm50aC1jaGlsZCgxMm4gLTcpLFxyXG4gICAgICAgICAgJjpudGgtY2hpbGQoMTJuIC0xKXtcclxuICAgICAgICAgICAgICBncmlkLWNvbHVtbi1zdGFydDogMjtcclxuICAgICAgICAgICAgICBncmlkLWNvbHVtbi1lbmQ6IDU7XHJcbiAgICAgICAgICAgICAgQGluY2x1ZGUgYXNwZWN0LXJhdGlvKDEsMSk7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgJjpudGgtY2hpbGQoMTJuIC02KSxcclxuICAgICAgICAgICY6bnRoLWNoaWxkKDEybil7XHJcbiAgICAgICAgICAgICAgZ3JpZC1jb2x1bW4tc3RhcnQ6IDU7XHJcbiAgICAgICAgICAgICAgZ3JpZC1jb2x1bW4tZW5kOiA2O1xyXG4gICAgICAgICAgICAgIEBpbmNsdWRlIGFzcGVjdC1yYXRpbygxLDEpO1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICY6bnRoLWNoaWxkKDEybiAtNSksXHJcbiAgICAgICAgICAmOm50aC1jaGlsZCgxMm4gLTQpe1xyXG4gICAgICAgICAgICAgIGdyaWQtY29sdW1uLXN0YXJ0OiAxO1xyXG4gICAgICAgICAgICAgIGdyaWQtY29sdW1uLWVuZDogMztcclxuICAgICAgICAgICAgICBAaW5jbHVkZSBhc3BlY3QtcmF0aW8oNSwzKTtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAmOm50aC1jaGlsZCgxMm4gLTMpe1xyXG4gICAgICAgICAgICAgIGdyaWQtY29sdW1uLXN0YXJ0OiAzO1xyXG4gICAgICAgICAgICAgIGdyaWQtY29sdW1uLWVuZDogNjtcclxuICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtMzkuNiVcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAmOm50aC1jaGlsZCgxMm4gLSAxMSksXHJcbiAgICAgICAgICAmOm50aC1jaGlsZCgxMm4gLSAzKXtcclxuICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogNzcuMiU7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICovXHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLmdyaWQtLWZpbmQtYS1jYXQtZm9ybSB7XHJcblxyXG59XHJcblxyXG5cclxuLmdyaWQtLWNoZWNrZXJzIHtcclxuICAgIC5ncmlkX19pdGVtOm50aC1jaGlsZChvZGQpIHtcclxuICAgICAgICAuY2FyZCB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1wdXJwbGU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5ncmlkX19pdGVtIHtcclxuICAgICAgICAuY2FyZC1maXgge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtcHVycGxlO1xyXG4gICAgICAgICAgICBib3JkZXI6IDBweDtcclxuXHJcbiAgICAgICAgICAgIC5idG46aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXBpbms7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLmdyaWQtLWFkZC15b3VyLWNhdCB7XHJcbiAgPiAuZ3JpZF9faXRlbSB7XHJcbiAgICAmOmZpcnN0LW9mLXR5cGUge1xyXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcbiAgICAgICAgd2lkdGg6IDM1MHB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJjpsYXN0LW9mLXR5cGUge1xyXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcbiAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgICAgZmxleDogMTtcclxuICAgICAgICBwYWRkaW5nOiAwIDAgMCA1MHB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gTWVtb3J5IHdhbGxcclxuXHJcbi5ncmlkLS1tZW1vcnktd2FsbCB7XHJcbiAgbWluLXdpZHRoOiAwO1xyXG4gIG1heC13aWR0aDogNDAwcHg7XHJcbiAgbWFyZ2luOiAwIGF1dG87XHJcblxyXG4gIEBpbmNsdWRlIHJlc3BvbmQtdG8od2lkZS1hbmQtdXApIHtcclxuICAgIG1heC13aWR0aDogbm9uZTtcclxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICB9XHJcblxyXG4gIC5ncmlkX19pdGVtIHtcclxuXHJcbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKHdpZGUtYW5kLXVwKSB7XHJcbiAgICAgIHdpZHRoOiAyNTBweDtcclxuICAgIH1cclxuXHJcbiAgICAmOmZpcnN0LW9mLXR5cGUge1xyXG4gICAgICBtYXJnaW46IDAgMCAxZW07XHJcbiAgICB9XHJcblxyXG4gICAgJjpsYXN0LW9mLXR5cGUge1xyXG5cclxuICAgICAgQGluY2x1ZGUgcmVzcG9uZC10byh3aWRlLWFuZC11cCkge1xyXG4gICAgICAgIHdpZHRoOiAzNDBweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuXHJcbi5ncmlkLS1zcG9uc29yLXBvcnRhbC1idG4tZ3JvdXAge1xyXG4gIG1heC13aWR0aDogNDYwcHg7XHJcbiAgbWluLXdpZHRoOiAwO1xyXG4gIG1hcmdpbjogMCBhdXRvO1xyXG5cclxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XHJcbiAgICBtYXJnaW46IDAgMCAwIC0xZW07XHJcbiAgICBtYXgtd2lkdGg6IG5vbmU7XHJcbiAgfVxyXG5cclxuICAuZ3JpZF9faXRlbSB7XHJcbiAgICBtYXJnaW46IDAgMCAxZW07XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XHJcbiAgICAgIHdpZHRoOiAzMy4zMyU7XHJcbiAgICAgIHBhZGRpbmc6IDAgMCAwIDFlbTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcblxyXG4uZ3JpZC0tYmVyZWF2ZW1lbnQtc3RvcmllcyB7XHJcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gIH1cclxuXHJcbiAgLmdyaWRfX2l0ZW0ge1xyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgICB3aWR0aDogNTAlO1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xyXG4gICAgICB3aWR0aDogMzUwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgJjpmaXJzdC1vZi10eXBlIHtcclxuICAgICAgbWFyZ2luOiAwIDAgMjBweDtcclxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICB3aWR0aDogMzAlO1xyXG4gICAgICB9XHJcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcclxuICAgICAgICB3aWR0aDogMjAwcHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcblxyXG4uZ3JpZC0tbWVtYmVyc2hpcCB7XHJcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICB9XHJcblxyXG4gIC5ncmlkX19pdGVtIHtcclxuICAgICY6bnRoLW9mLXR5cGUoMSkge1xyXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XHJcbiAgICAgICAgd2lkdGg6IDM1MHB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJjpudGgtb2YtdHlwZSgyKSB7XHJcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcclxuICAgICAgICB3aWR0aDogMjI2cHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmOm50aC1vZi10eXBlKDMpIHtcclxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xyXG4gICAgICAgIHdpZHRoOiAxNTBweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvKipcclxuICogTEFZT1VUXHJcbiAqIEZsZXhcclxuICogU29tZSBsaWdodCBHcmlkc1xyXG4gKi9cclxuXHJcbiAkbmFtZTogZmxleDtcclxuXHJcbi8vLS0tLS0tLS1cclxuLy8gQkFTRVxyXG4vLy0tLS0tLS0tXHJcbi4jeyRuYW1lfXtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAvLyBtaW4td2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi8vLS0tLS0tLS1cclxuLy8gV1JBUFxyXG4vLy0tLS0tLS0tXHJcbi4jeyRuYW1lfS0td3JhcHtcclxuICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgIC8vIHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG5cclxuLy8tLS0tLS0tLVxyXG4vLyBDT0xVTU5cclxuLy8tLS0tLS0tLVxyXG4uI3skbmFtZX0tLWNvbHVtbntcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW5cclxufVxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gQ09MVU1OIC0gUkVWRVJTRVxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLVxyXG4uI3skbmFtZX0tLWNvbHVtbi1yZXZlcnNle1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlXHJcbn1cclxuXHJcbi8vLS0tLS0tLS1cclxuLy8gUk9XXHJcbi8vLS0tLS0tLS1cclxuLiN7JG5hbWV9LS1yb3d7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93XHJcbn1cclxuXHJcbi8vLS0tLS0tLS0tLS0tLVxyXG4vLyBST1cgUkVWRVJTRVxyXG4vLy0tLS0tLS0tLS0tLS1cclxuLiN7JG5hbWV9LS1yb3ctcmV2ZXJzZXtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZVxyXG59XHJcblxyXG4vLy0tLS0tLS0tLS0tLS1cclxuLy8gQ0VOVEVSXHJcbi8vLS0tLS0tLS0tLS0tLVxyXG4uI3skbmFtZX0tLWNlbnRlcntcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXJcclxufVxyXG5cclxuLy8tLS0tLS0tLS0tLS0tXHJcbi8vIEpVU1RJRlkgQ0VOVEVSXHJcbi8vLS0tLS0tLS0tLS0tLVxyXG4uI3skbmFtZX0tLXNwYWNlLWJldHdlZW57XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbn1cclxuXHJcbi8vLS0tLS0tLS0tLS0tLVxyXG4vLyBDRU5URVJcclxuLy8tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfS0tanVzdGlmeS1jZW50ZXJ7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxufVxyXG5cclxuXHJcbi8vLS0tLS0tLS0tLS0tLVxyXG4vLyBUT1BcclxuLy8tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfS0tdG9we1xyXG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnRcclxufVxyXG5cclxuLy8tLS0tLS0tLS0tLS0tXHJcbi8vIEJPVFRPTVxyXG4vLy0tLS0tLS0tLS0tLS1cclxuLiN7JG5hbWV9LS1ib3R0b217XHJcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmRcclxufVxyXG5cclxuLy8tLS0tLS0tLVxyXG4vLyBHUklEXHJcbi8vLS0tLS0tLS1cclxuLiN7JG5hbWV9LS1ncmlke1xyXG5cclxuICAgID4gLiN7JG5hbWV9X19pdGVte1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG59XHJcblxyXG4vLy0tLS0tLS0tXHJcbi8vIEdSSURcclxuLy8tLS0tLS0tLVxyXG4uI3skbmFtZX0tLWdyaWQtYXV0b3tcclxuXHJcbiAgICA+IC4jeyRuYW1lfV9faXRlbXtcclxuICAgICAgICB3aWR0aDogYXV0bztcclxuICAgIH1cclxufVxyXG5cclxuLy8tLS0tLS0tLVxyXG4vLyBHQVBcclxuLy8tLS0tLS0tLVxyXG5cclxuLiN7JG5hbWV9LS1nYXAtN3tcclxuXHJcbiAgICBtYXJnaW4tbGVmdDogLTdweDtcclxuXHJcbiAgICA+IC4jeyRuYW1lfV9faXRlbXtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDdweDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiA3cHg7XHJcbiAgICB9XHJcblxyXG4gICAgLiN7JG5hbWV9X19ydWxle1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiA3cHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi4jeyRuYW1lfS0tZ2FwLTMwe1xyXG5cclxuICAgIG1hcmdpbi1sZWZ0OiAtMzBweDtcclxuXHJcbiAgICA+IC4jeyRuYW1lfV9faXRlbXtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxuICAgIH1cclxuXHJcbiAgICAuI3skbmFtZX1fX3J1bGV7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDMwcHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi4jeyRuYW1lfS0tZ2FwLTYwe1xyXG5cclxuICAgIG1hcmdpbi1sZWZ0OiAtNjBweDtcclxuXHJcbiAgICA+IC4jeyRuYW1lfV9faXRlbXtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDYwcHg7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgIH1cclxuXHJcbiAgICAuI3skbmFtZX1fX3J1bGV7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDYwcHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbiRnYXBzOiA0LCA2LCA4O1xyXG4kaW50ZXJ2YWw6IDAuNTsgLy9DcmVhdGVzIGludGVydmFscyBiYXNlZCBvbiA4cHguIFRoaXMgaXMgdGFrZW4gYXMgMSUgb2YgMTYwMHB4IHdpZHRoIGRlc2lnbnMuXHJcblxyXG5AbWl4aW4gY3JlYXRlLWdhcHN7XHJcbiAgICBAZWFjaCAkZ2FwIGluICRnYXBze1xyXG5cclxuICAgICAgICAuI3skbmFtZX0tLWdhcC0jeyRnYXB9e1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLSRnYXAgKiAkaW50ZXJ2YWwgKyB2dztcclxuXHJcbiAgICAgICAgICAgIC4jeyRuYW1lfV9faXRlbXtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogJGdhcCAqICRpbnRlcnZhbCArIHZ3O1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogJGdhcCAqICRpbnRlcnZhbCArIHZ3O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5AaW5jbHVkZSBjcmVhdGUtZ2FwcztcclxuXHJcbi8vLS0tLS0tLS0tLVxyXG4vLyBDT0xVTU5TXHJcbi8vLS0tLS0tLS0tLVxyXG4uI3skbmFtZX0tLTEtMXtcclxuICAgID4gLiN7JG5hbWV9X19pdGVte1xyXG4gICAgICAgIHdpZHRoOiA1MCU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi4jeyRuYW1lfS0tMS0xLTF7XHJcbiAgICA+IC4jeyRuYW1lfV9faXRlbXtcclxuICAgICAgICB3aWR0aDogMzMuMzMzMzMlO1xyXG4gICAgfVxyXG59XHJcblxyXG4uI3skbmFtZX0tLTEtMS0xLTF7XHJcbiAgICA+IC4jeyRuYW1lfV9faXRlbXtcclxuICAgICAgICB3aWR0aDogMjUlO1xyXG4gICAgfVxyXG59XHJcblxyXG4uI3skbmFtZX0tLTEtMS0xLTEtMXtcclxuICAgID4gLiN7JG5hbWV9X19pdGVte1xyXG4gICAgICAgIHdpZHRoOiAyMCU7XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG4vLy0tLS0tLS0tXHJcbi8vIFJVTEVcclxuLy8tLS0tLS0tLVxyXG4uI3skbmFtZX1fX3J1bGV7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGJvcmRlcjogbm9uZTtcclxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkbGlnaHQtZ3JleTtcclxuICAgIG1hcmdpbjogNDBweCAwXHJcbn1cclxuXHJcbi8vLS0tLS0tLS1cclxuLy8gUkVMQVRFRFxyXG4vLy0tLS0tLS0tXHJcbi4jeyRuYW1lfS0tY2hlY2tlcnN7XHJcbiAgICAuI3skbmFtZX1fX2l0ZW06bnRoLWNoaWxkKG9kZCl7XHJcbiAgICAgICAgLmNhcmR7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ncmV5O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCIvKipcclxuICogTEFZT1VUXHJcbiAqIEhlYWRlciBHcm91cFxyXG4gKiBBIGdyb3VwIG9mIGVsZW1lbnRzIGxvY2F0ZWQgd2l0aGluIHRoZSBzaXRlIGhlYWRlci5cclxuICovXHJcblxyXG4kbmFtZTogaGVhZGVyLWdyb3VwO1xyXG5cclxuXHJcbi8vLS0tLS0tLS1cclxuLy8gQkxPQ0tcclxuLy8tLS0tLS0tLVxyXG4uI3skbmFtZX0ge1xyXG4gICAgLy8gRU5EIEdSSUQgLy9cclxuICAgIEBleHRlbmQgJWNvbnRhaW5lcjtcclxuICAgIGRpc3BsYXk6IGdyaWQ7XHJcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDYwcHggMWZyIGF1dG87XHJcbiAgICBncmlkLXRlbXBsYXRlLWFyZWFzOiBcImxvZ28gc29jaWFsIGhhbWJ1cmdlclwiO1xyXG4gICAgcGFkZGluZy10b3A6IDEwcHg7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblxyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRuYXZpZ2F0aW9uLWJyZWFrcG9pbnQpIHtcclxuICAgICAgICBwYWRkaW5nLXRvcDogMDtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcclxuICAgICAgICAvL0dSSUQvL1xyXG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XHJcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxMzJweCAxZnI7XHJcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiAxZnIgMWZyO1xyXG4gICAgICAgIGdyaWQtdGVtcGxhdGUtYXJlYXM6XHJcbiAgICAgICAgICAgIFwibG9nbyBzb2NpYWxcIiBcImxvZ28gbmF2aWdhdGlvblwiO1xyXG4gICAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBFTEVNRU5UIC0gTE9HT1xyXG4vLy0tLS0tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfV9fbG9nbyB7XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgMXM7XHJcblxyXG4gICAgaW1nIHtcclxuICAgICAgICB0cmFuc2l0aW9uOiB3aWR0aCAwLjVzO1xyXG4gICAgICAgIHdpZHRoOiA3NSU7XHJcbiAgICAgICAgbWFyZ2luOiBhdXRvO1xyXG5cclxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJG5hdmlnYXRpb24tYnJlYWtwb2ludCkge1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG4gICAgfVxyXG59XHJcbi8vLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gRUxFTUVOVCAtIFRpVExFXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS1cclxuLiN7JG5hbWV9X190aXRsZSB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgQGV4dGVuZCAldHMtMztcclxuXHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG5hdmlnYXRpb24tYnJlYWtwb2ludCkge1xyXG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDYwcHg7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIGdyaWQtYXJlYTogdGl0bGU7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgLW1zLWdyaWQtcm93LWFsaWduOiBjZW50ZXI7XHJcbiAgICB9XHJcbn1cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gRUxFTUVOVCAtIFRBU0sgQkFSXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfV9fdGFzay1iYXIge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuXHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG5hdmlnYXRpb24tYnJlYWtwb2ludCkge1xyXG4gICAgICAgIGdyaWQtYXJlYTogc29jaWFsO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgLW1zLWdyaWQtY29sdW1uLWFsaWduOiBlbmQ7XHJcbiAgICAgICAgLW1zLWdyaWQtcm93LWFsaWduOiBzdGFydDtcclxuICAgICAgICBqdXN0aWZ5LXNlbGY6IGVuZDtcclxuICAgICAgICBhbGlnbi1zZWxmOiBiYXNlbGluZTtcclxuICAgIH1cclxufVxyXG5cclxuLmhlYWRlci1ncm91cF9fc29jaWFsLWljb25zLW1vYmlsZSB7XHJcbiAgICBncmlkLWFyZWE6IHNvY2lhbDtcclxuICAgIC1tcy1ncmlkLXJvdy1hbGlnbjogY2VudGVyO1xyXG4gICAgLW1zLWdyaWQtY29sdW1uLWFsaWduOiBlbmQ7XHJcbiAgICBqdXN0aWZ5LXNlbGY6IGZsZXgtZW5kO1xyXG5cclxuICAgIC5zb2NpYWwge1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDokbmF2aWdhdGlvbi1icmVha3BvaW50KSB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxufVxyXG5cclxuLmhlYWRlci1ncm91cF9fc29jaWFsLWljb25zLW1vYmlsZS0tc3BvbnNvciB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG5cclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiRuYXZpZ2F0aW9uLWJyZWFrcG9pbnQpIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG59XHJcbi8vLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBFTEVNRU5UIC0gTkFWXHJcbi8vLS0tLS0tLS0tLS0tLS0tLVxyXG4uI3skbmFtZX1fX25hdiB7XHJcbiAgICBncmlkLWFyZWE6IG5hdmlnYXRpb247XHJcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcblxyXG4gICAgQGluY2x1ZGUgbWVkaWEtd2lkdGgoJG5hdmlnYXRpb24tYnJlYWtwb2ludCkge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogLTIwcHg7XHJcbiAgICAgICAgLyogYXV0b3ByZWZpeGVyOiBvZmYgKi9cclxuICAgICAgICAtbXMtZ3JpZC1yb3c6IDI7XHJcbiAgICAgICAgLW1zLWdyaWQtY29sdW1uOiAyO1xyXG4gICAgICAgIC1tcy1ncmlkLXJvdy1hbGlnbjogZW5kO1xyXG4gICAgICAgIGFsaWduLXNlbGY6IGVuZDtcclxuICAgICAgICAvKiBhdXRvcHJlZml4ZXI6IG9uICovXHJcbiAgICB9XHJcbn1cclxuLy8tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBFTEVNRU5UIC0gSEFNQlVSR0VSXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS1cclxuLiN7JG5hbWV9X19oYW1idXJnZXIge1xyXG4gICAgZ3JpZC1hcmVhOiBoYW1idXJnZXI7XHJcbiAgICAtbXMtZ3JpZC1yb3ctYWxpZ246IGNlbnRlcjtcclxufVxyXG5cclxuXHJcbi5oZWFkZXItZ3JvdXBfX2hhbWJ1cmdlci0tc3BvbnNvciB7XHJcbiAgICBtYXJnaW46IDA7XHJcbn1cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIE1PRElGSUVSIC0gU1RJQ0tZXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4uI3skbmFtZX0tLXN0aWNreS1uYXYge1xyXG59XHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBORVNURVIgLSBTUE9OU09SU1xyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLiN7JG5hbWV9IHtcclxuXHJcbiAgICBbY2xhc3MqPVwiLS1zcG9uc29yXCJdICYge1xyXG4gICAgICAgIGdyaWQtdGVtcGxhdGUtYXJlYXM6IFwibG9nbyBzb2NpYWwgaGFtYnVyZ2VyXCI7XHJcblxyXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbmF2aWdhdGlvbi1icmVha3BvaW50KSB7XHJcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMTMycHggMWZyIDUwMHB4O1xyXG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IDFmcjtcclxuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1hcmVhczogXCJsb2dvIHRpdGxlIHNvY2lhbFwiO1xyXG5cclxuICAgICAgICAgICAgLiN7JG5hbWV9X190YXNrLWJhciB7XHJcbiAgICAgICAgICAgICAgICBncmlkLWFyZWE6IHNvY2lhbDtcclxuICAgICAgICAgICAgICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIC1tcy1ncmlkLXJvdy1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLnNpdGUtaGVhZGVyLS1zcG9uc29yIC5oZWFkZXItZ3JvdXBfX3Rhc2stYmFyIHtcclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbmF2aWdhdGlvbi1icmVha3BvaW50KSB7XHJcbiAgICAgICAgLW1zLWdyaWQtcm93LWFsaWduOiBjZW50ZXI7XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG4uaGVhZGVyLWdyb3VwX191c2VyLWJhciB7XHJcbiAgICBncmlkLWFyZWE6IGxvZ291dDtcclxuICAgIGp1c3RpZnktc2VsZjogZW5kO1xyXG4gICAgLW1zLWdyaWQtY29sdW1uLWFsaWduOiBlbmQ7XHJcbiAgICAtbXMtZ3JpZC1yb3ctYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgICAudXNlci1pY29uIHtcclxuICAgICAgICBtYXgtd2lkdGg6IDQ0cHg7XHJcbiAgICAgICAgbWF4LWhlaWdodDogNDRweDtcclxuICAgICAgICBtYXJnaW46IDNweCAxNXB4O1xyXG4gICAgICAgIEBpbmNsdWRlIHVzZXItaWNvbig0NHB4KTtcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG5hdmlnYXRpb24tYnJlYWtwb2ludCkge1xyXG4gICAgICAgIC1tcy1ncmlkLXJvdy1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIC8qXHJcbiAgICAgICAgJjpiZWZvcmUsXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1ibHVlO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGxlZnQ6IC0xMDAlO1xyXG4gICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgbGVmdDogMTAwJTtcclxuICAgICAgICB9XHJcbiAgICAgICAgKi9cclxuICAgIH1cclxufVxyXG4iLCIvKipcclxuICogTEFZT1VUXHJcbiAqIEhlYWRlciBNZXNzYWdlXHJcbiAqIEEgZ3JvdXAgb2YgZWxlbWVudHMgbG9jYXRlZCB3aXRoaW4gdGhlIHNpdGUgaGVhZGVyLlxyXG4gKi9cclxuXHJcbiAkbmFtZTogaGVhZGVyLW1lc3NhZ2U7XHJcblxyXG5cclxuLy8tLS0tLS0tLVxyXG4vLyBCTE9DS1xyXG4vLy0tLS0tLS0tXHJcbi4jeyRuYW1lfSB7XHJcbiAgICBiYWNrZ3JvdW5kOiAkYnJhbmQtcGluaztcclxuICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICBwYWRkaW5nOiAxZW07XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICAgIHRyYW5zaXRpb246IGFsbCAuMnMgbGluZWFyO1xyXG5cclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbmF2aWdhdGlvbi1icmVha3BvaW50KSB7XHJcbiAgICB9XHJcblxyXG4gICAgJi5pcy1hY3RpdmUge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4ycyBsaW5lYXI7XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIFBBUkFHUkFQSFxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfV9fcHtcclxuICAgIG1heC13aWR0aDoxMjAwcHg7XHJcbiAgICBtYXJnaW46YXV0bztcclxuICAgIGF7XHJcbiAgICAgICAgY29sb3I6JHdoaXRlO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0Om5vcm1hbDtcclxuICAgIH1cclxufVxyXG5cclxuLiN7JG5hbWV9LWNsb3NlIHtcclxuICAgIGZsb2F0OiByaWdodDtcclxuICAgIGZvbnQtc2l6ZTogMS40ZW07XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgICBAaW5jbHVkZSBjbG9zZS1pY29uO1xyXG4gICAgfVxyXG59XHJcbiIsIi8qKlxyXG4gKiBMQVlPVVRcclxuICogSGVybyBBZCBCb3plc1xyXG4gKlxyXG4gKi9cclxuICRuYW1lOiBoZXJvLWFkLWJveGVzO1xyXG5cclxuLy8tLS0tLS0tXHJcbi8vIEJBU0VcclxuLy8tLS0tLS0tLVxyXG4uI3skbmFtZX17XHJcbiAgICBwYWRkaW5nOiAyMHB4O1xyXG4gICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0tYW5kLXVwKXtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgcGFkZGluZzogMCAyMHB4O1xyXG4gICAgICAgIHotaW5kZXg6IDEwMDtcclxuICAgICAgICBib3R0b206IDY1cHg7XHJcbiAgICAgICAgLy9kaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIC8vZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAvL2FsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgLy9qdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIC8vdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xyXG4gICAgfVxyXG59XHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBFTEVNRU5UIC0gSVRFTVxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLVxyXG4uI3skbmFtZX1fX2l0ZW17XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIG1heC13aWR0aDogMTAwMHB4O1xyXG4gICAgd2lkdGg6IDUwMCU7XHJcbiAgICAvLyBJRSBmaXhcclxuICAgIC8vbWluLWhlaWdodDogNDUwcHg7XHJcbiAgICAvL2hlaWdodDogNDUwcHg7XHJcbiAgICBwYWRkaW5nOiAyMHB4IDA7XHJcbiAgICBAZXh0ZW5kICVtZy1ibS1sZztcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEod2hpdGUsIDAuOTc1KTtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgIGJvdHRvbTogMTAwcHg7XHJcbiAgICB6LWluZGV4OiAtMTAwO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMThweDtcclxuICAgIEBpbmNsdWRlIGFuaW1hdGUob3BhY2l0eSAyMDBtcyk7XHJcbiAgICBsZWZ0OiA1MCU7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XHJcblxyXG4gICAgJi5pcy1hY3RpdmV7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICB6LWluZGV4OiAxO1xyXG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBhbGw7XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBFTEVNRU5UIC0gQlVUVE9OU1xyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfV9fYnRuc3tcclxuICAgIEBleHRlbmQgJW1nLWJtLWxnO1xyXG59XHJcblxyXG4uaGVyby1hZC1ib3hlcy1idG5ze1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcblxyXG5cclxuLmhlcm8tYWQtYm94ZXMtYnRuc19fYnRuIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBtYXJnaW46IDAgMCAxMHB4O1xyXG4gICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0tYW5kLXVwKSB7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICAgICAgbWFyZ2luOiAwIDVweCAxMHB4IDVweDtcclxuICAgIH1cclxufVxyXG5cclxuXHJcbi5oZXJvLWFkLWJveGVzLWJ0bnNfX2J0bi0tZmluZC1hLWNhdCB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgbWFyZ2luOiAwIDAgMTBweDtcclxuXHJcbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bS1hbmQtdXApIHtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgICAgICBtYXJnaW46IDAgNXB4IDEwcHggNXB4O1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY5cHgpIHtcclxuICAgICAgICB3aWR0aDogMTAwJVxyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjAwcHgpIHtcclxuICAgICAgICB3aWR0aDogMTAwJVxyXG4gICAgfVxyXG59XHJcbiIsIi8qKlxyXG4gKiBMQVlPVVRcclxuICogTElORSBDTEFNUFxyXG4gKi9cclxuXHJcbiRuYW1lOiBsaW5lLWNsYW1wO1xyXG5cclxuQG1peGluIGxpbmUtY2xhbXAoJGxpbmUtY291bnQsICRsaW5lLWhlaWdodCl7XHJcblxyXG4gICAgW2RhdGEtbGluZS1jbGFtcD1cIiN7JGxpbmUtY291bnR9XCJde1xyXG4gICAgICAgIGRpc3BsYXkgICAgICAgICAgICA6IGJsb2NrO1xyXG4gICAgICAgIGRpc3BsYXkgICAgICAgICAgICA6IC13ZWJraXQtYm94O1xyXG4gICAgICAgIC13ZWJraXQtYm94LW9yaWVudCA6IHZlcnRpY2FsO1xyXG4gICAgICAgIHBvc2l0aW9uICAgICAgICAgICA6IHJlbGF0aXZlO1xyXG4gICAgICAgIG92ZXJmbG93ICAgICAgICAgICA6IGhpZGRlbjtcclxuICAgICAgICB0ZXh0LW92ZXJmbG93ICAgICAgOiBlbGxpcHNpcztcclxuICAgICAgICBwYWRkaW5nICAgICAgICAgICAgOiAwICFpbXBvcnRhbnQ7XHJcbiAgICBcclxuICAgICAgICAtd2Via2l0LWxpbmUtY2xhbXAgOiAkbGluZS1jb3VudDtcclxuICAgICAgICBtYXgtaGVpZ2h0OiAkbGluZS1oZWlnaHQgKiAkbGluZS1jb3VudDtcclxuICAgIFxyXG4gICAgICAgICY6YmVmb3Jle1xyXG4gICAgICAgICAgICBjb250ZW50OiAnLi4uJztcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgICAgICB3aWR0aDogNDJweDtcclxuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA0cHg7XHJcbiAgICAgICAgICAgIC8qYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7Ki9cclxuICAgICAgICB9XHJcbiAgICBcclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICB9XHJcbiAgICBcclxuICAgICAgICBAc3VwcG9ydHMgKC13ZWJraXQtbGluZS1jbGFtcDogMSl7XHJcbiAgICAgICAgICAgICY6YmVmb3JlLFxyXG4gICAgICAgICAgICAmOmFmdGVye1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuQGluY2x1ZGUgbGluZS1jbGFtcCgzLCAyNXB4KTtcclxuQGluY2x1ZGUgbGluZS1jbGFtcCg0LCAyNXB4KTtcclxuQGluY2x1ZGUgbGluZS1jbGFtcCg2LCAyNXB4KTtcclxuQGluY2x1ZGUgbGluZS1jbGFtcCgyLCAyNXB4KTtcclxuQGluY2x1ZGUgbGluZS1jbGFtcCg4LCAyNXB4KTtcclxuQGluY2x1ZGUgbGluZS1jbGFtcCg3LCAyNXB4KTtcclxuXHJcbi8vLS0tLS0tLS1cclxuLy8gQkxPQ0tcclxuLy8tLS0tLS0tLVxyXG4gICAgLy8gJjpiZWZvcmUge1xyXG4gICAgICAgIC8vICAgICAgIGJhY2tncm91bmQ6ICRleGNlcnB0LWJnO1xyXG4gICAgICAgIC8vICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICAvLyAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgLy8gICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgLy8gICAgICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgICAgIC8vICAgICAgIGNvbnRlbnQ6ICdcXDIwMjYnO1xyXG4gICAgICAgIC8vICAgICAgIG1hcmdpbi1sZWZ0OiAtM3JlbTtcclxuICAgICAgICAvLyAgICAgICB3aWR0aDogM3JlbTtcclxuICAgICAgICAvLyAgICAgfVxyXG4gICAgICAgIC8vICAgICAmOmFmdGVyIHtcclxuICAgICAgICAvLyAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAvLyAgICAgICBiYWNrZ3JvdW5kOiAkZXhjZXJwdC1iZztcclxuICAgICAgICAvLyAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgLy8gICAgICAgaGVpZ2h0OiA1MHB4O1xyXG4gICAgICAgIC8vICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIC8vICAgICAgIHotaW5kZXg6IDE7XHJcbiAgICAgICAgLy8gICAgIH1cclxuXHJcbiAgICAvLyBAc3VwcG9ydHMgKC13ZWJraXQtbGluZS1jbGFtcDogMSl7XHJcbiAgICAvLyAgICAgJjphZnRlcntcclxuICAgIC8vICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIC8vICAgICB9XHJcbiAgICAvLyB9XHJcblxyXG5cclxuXHJcblxyXG4vLyAkd2hpdGU6ICNGRkZGRkY7XHJcblxyXG4vLyBAbWl4aW4gZXhjZXJwdCgkZm9udC1zaXplOiAkcGFyYWdyYXBoLWZvbnQtc2l6ZSwgJGxpbmUtaGVpZ2h0OiAxLjQsICRsaW5lcy10by1zaG93OiAzLCAkZXhjZXJwdC1iZzogdHJhbnNwYXJlbnQpIHtcclxuLy8gICBiYWNrZ3JvdW5kOiAkZXhjZXJwdC1iZztcclxuLy8gICBkaXNwbGF5OiBibG9jazsgLyogRmFsbGJhY2sgZm9yIG5vbi13ZWJraXQgKi9cclxuLy8gICBkaXNwbGF5OiAtd2Via2l0LWJveDtcclxuLy8gICBtYXgtaGVpZ2h0OiAkZm9udC1zaXplKiRsaW5lLWhlaWdodCokbGluZXMtdG8tc2hvdzsgLyogRmFsbGJhY2sgZm9yIG5vbi13ZWJraXQgKi9cclxuLy8gICBmb250LXNpemU6ICRmb250LXNpemU7XHJcbi8vICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodDtcclxuLy8gICAtd2Via2l0LWxpbmUtY2xhbXA6ICRsaW5lcy10by1zaG93O1xyXG4vLyAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XHJcbi8vICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuLy8gICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuLy8gICBALW1vei1kb2N1bWVudCB1cmwtcHJlZml4KCkge1xyXG4vLyAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuLy8gICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbi8vICAgICAmOmJlZm9yZSB7XHJcbi8vICAgICAgIGJhY2tncm91bmQ6ICRleGNlcnB0LWJnO1xyXG4vLyAgICAgICBib3R0b206IDA7XHJcbi8vICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuLy8gICAgICAgcmlnaHQ6IDA7XHJcbi8vICAgICAgIGZsb2F0OiByaWdodDtcclxuLy8gICAgICAgY29udGVudDogJ1xcMjAyNic7XHJcbi8vICAgICAgIG1hcmdpbi1sZWZ0OiAtM3JlbTtcclxuLy8gICAgICAgd2lkdGg6IDNyZW07XHJcbi8vICAgICB9XHJcbi8vICAgICAmOmFmdGVyIHtcclxuLy8gICAgICAgY29udGVudDogJyc7XHJcbi8vICAgICAgIGJhY2tncm91bmQ6ICRleGNlcnB0LWJnO1xyXG4vLyAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbi8vICAgICAgIGhlaWdodDogNTBweDtcclxuLy8gICAgICAgd2lkdGg6IDEwMCU7XHJcbi8vICAgICAgIHotaW5kZXg6IDE7XHJcbi8vICAgICB9XHJcbi8vICAgfVxyXG4vLyB9XHJcblxyXG4vLyBwIHtcclxuLy8gICBmb250LWZhbWlseTogQXJpYWw7XHJcbi8vICAgY29sb3I6ICMyMzRGNUM7XHJcbi8vIH1cclxuLy8gLkRlc2NyaXB0aW9uRXhjZXJwdCB7XHJcbi8vICAgQGluY2x1ZGUgZXhjZXJwdCgkZm9udC1zaXplOiAxLjNyZW0sICRsaW5lLWhlaWdodDogMS4zLCAkbGluZXMtdG8tc2hvdzogMywgJGV4Y2VycHQtYmc6ICR3aGl0ZSk7XHJcblxyXG5cclxuLy8tLS0tLS0tLS0tXHJcbi8vIEVMRU1FTlRcclxuLy8tLS0tLS0tLS0tXHJcblxyXG4vLy0tLS0tLS0tLS0tXHJcbi8vIE1PRElGSUVSXHJcbi8vLS0tLS0tLS0tLS1cclxuIiwiLyoqXHJcbiAqIExBWU9VVFxyXG4gKiBQRU5TXHJcbiAqXHJcbiAqL1xyXG5cclxuICRuYW1lOiBtYXA7XHJcblxyXG5cclxuI21hcHtcclxuICAgIGhlaWdodDogNDgwcHg7XHJcbn1cclxuXHJcbi8vLS0tLS0tLVxyXG4vLyBCQVNFXHJcbi8vLS0tLS0tLS1cclxuLiN7JG5hbWV9e1xyXG5cclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpe1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcblxyXG59XHJcblxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBFTEVNRU5UIC0gVklFV1xyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfV9fdmlld3tcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgLy9taW4taGVpZ2h0OiA1MDBweDtcclxuICAgIGZsZXg6IDE7XHJcbn1cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gRUxFTUVOVCAtIFRBQlNcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4uI3skbmFtZX1fX3Jlc3VsdCB7XHJcbiAgICBwYWRkaW5nOiAzMHB4IDIwcHg7XHJcbiAgICBjb2xvcjogd2hpdGU7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICAvL21heC13aWR0aDogMjclO1xyXG4gICAgLy9taW4taGVpZ2h0OiA1MDBweDtcclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcclxuICAgICAgICB3aWR0aDogMzMwcHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gUkVMQVRFRFxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiNtYXB7XHJcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xyXG59XHJcbiIsIi8qKlxyXG4gKiBMQVlPVVRcclxuICogU2lkZWJhclxyXG4gKiBUaGlzIGlzIHRoZSBtb2JpbGUgb3ZlcmZsb3cgc29sdXRpb24sIHdlIHN0aWNrIHRoZSBtYWluIG5hdmlnYXRpb24gaW4gaGVyZVxyXG4gKi9cclxuICRuYW1lOiBzaWRlYmFyO1xyXG5cclxuLy8tLS0tLS0tLVxyXG4vLyBCTE9DS1xyXG4vLy0tLS0tLS0tXHJcbi4jeyRuYW1lfSB7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIHBhZGRpbmc6IDAgMTBweDtcclxuICAgIHRvcDowO1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XHJcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAzMDBtcztcclxuICAgIGxlZnQ6IGF1dG87XHJcbiAgICB6LWluZGV4OiA5OTk5OTk7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2lkZWJhci1iYWNrZ3JvdW5kLWNvbG9yO1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdDtcclxuXHJcbiAgICAmLmlzLWFjdGl2ZSB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKTtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bS1hbmQtdXApIHtcclxuICAgICAgICBtYXgtd2lkdGg6IDQwMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIG1lZGlhLXdpZHRoKCRuYXZpZ2F0aW9uLWJyZWFrcG9pbnQpIHtcclxuICAgICAgICAmLmlzLWFjdGl2ZXtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBFTEVNRU5UIC0gTkFWXHJcbi8vLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLiN7JG5hbWV9X19uYXYge1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG59XHJcblxyXG4uI3skbmFtZX1fX2Nsb3NlIHtcclxuICAgIG1hcmdpbjogMjBweCAyMHB4IDEwcHg7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcblxyXG4gICAgJjphZnRlcntcclxuICAgICAgICBAaW5jbHVkZSBjbG9zZS1pY29uO1xyXG4gICAgICAgIGNvbG9yOiAkc2lkZWJhci1saW5rLWNvbG9yO1xyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBFTEVNRU5UIC0gQkFDS1xyXG4vLy0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4uI3skbmFtZX1fX2JhY2sge1xyXG4gICAgcG9zaXRpb246cmVsYXRpdmU7XHJcblxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICAgIEBpbmNsdWRlIGFycm93LWxlZnQtaWNvbjtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgYm90dG9tOiAxMDAlO1xyXG4gICAgICAgIGxlZnQ6IDI1cHg7XHJcbiAgICAgICAgdG9wOiAtNjBweDtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgIHdpZHRoOiA0MHB4O1xyXG4gICAgICAgIGhlaWdodDogNDBweDtcclxuICAgICAgICBjb2xvcjogJHNpZGViYXItbGluay1jb2xvcjtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2lkZWJhci1iYWNrZ3JvdW5kLWNvbG9yO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogNDRweDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuICAgICAgICBAaW5jbHVkZSBhbmltYXRlKGFsbCAzMDBtcyk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vLS0tLS0tLS0tLS1cclxuLy8gTU9ESUZJRVJcclxuLy8tLS0tLS0tLS0tLVxyXG4iLCIvKipcclxuICogTEFZT1VUXHJcbiAqIFNJVEVcclxuICogVGhlIGhpZ2hlc3QgbGV2ZXIgYmxvY2sgY29tcG9uZW50IC0gSW50ZW5kZWQgdG8gYmUgZnVsbCB3aWR0aCBwYWdlIHNlY3Rpb25zIHRoYXQgY2FuIHdvcmsgd2l0aCB0aGUgVW1icmFjbyBHcmlkcy5cclxuICovXHJcblxyXG4kbmFtZTogc2l0ZTtcclxuXHJcbi8vLS0tLS0tLS1cclxuLy8gSEVBREVSXHJcbi8vLS0tLS0tLS1cclxuLiN7JG5hbWV9LWhlYWRlciB7XHJcbiAgICBtaW4td2lkdGg6IDEwMCU7XHJcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xyXG4gICAgdG9wOiAwO1xyXG4gICAgei1pbmRleDogMjAwO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xyXG5cclxuICAgIC5oZWFkZXItZ3JvdXBfd3JhcHBlciB7XHJcbiAgICAgICAgYm94LXNoYWRvdzogMHB4IC0xNXB4IDI1cHggMHB4ICRibGFjaztcclxuICAgICAgICBvdmVyZmxvdzpoaWRkZW47XHJcbiAgICAgICAgLmhlYWRlci1ncm91cF9idXR0b25zLWxvZ28tc29jaWFsIHtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogcGFkZGluZyAwLjVzO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblxyXG4gICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJG5hdmlnYXRpb24tYnJlYWtwb2ludCkge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMzVweCAzNXB4IDEwcHg7XHJcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuXHJcbiAgICAgICAgICAgICAgICAubW9iaWxlLXNlYXJjaCB7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmhlYWRlci1ncm91cF9idXR0b25zIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcblxyXG4gICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRuYXZpZ2F0aW9uLWJyZWFrcG9pbnQpIHtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5oZWFkZXItZ3JvdXBfX3NvY2lhbC1zZWFyY2gge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuXHJcbiAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJG5hdmlnYXRpb24tYnJlYWtwb2ludCkge1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYuc2hyaW5rLWhlYWRlciB7XHJcbiAgICAgICAgICAgIC5oZWFkZXItZ3JvdXBfYnV0dG9ucy1sb2dvLXNvY2lhbCB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMi41cHg7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5oZWFkZXItZ3JvdXBfX2xvZ28gaW1nIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiA1MCU7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5oZWFkZXItZ3JvdXBfX25hdiAubWFpbi1uYXYgPiBsaSBhIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMjRweDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmhlYWRlci1ncm91cF9fbmF2IHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDVweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmW2NsYXNzKj1cIi0tc3BvbnNvclwiXSB7XHJcbiAgICAgICAgLypcclxuICAgICAgICAmOmFmdGVye1xyXG4gICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAkYnJhbmQtYmx1ZSA1MHB4IHNvbGlkO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IC0zO1xyXG4gICAgICAgIH1cclxuICAgICAgICAqL1xyXG4gICAgICAgICYgKyBoZWFkZXIsXHJcbiAgICAgICAgLy8mICsgZGl2Om5vdCguc2l0ZS1iYW5uZXIpLFxyXG4gICAgICAgICYgKyBzZWN0aW9uIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTc3cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vLy0tLS0tLS0tLVxyXG4vLyBCQU5ORVJcclxuLy8tLS0tLS0tLS1cclxuLiN7JG5hbWV9LWJhbm5lciB7XHJcbiAgICAvL2Rpc3BsYXk6IGZsZXg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgbWluLWhlaWdodDogNzBweDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIC8qbWFyZ2luLWJvdHRvbTogMzZweDsqL1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuXHJcbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bS1hbmQtdXApIHtcclxuICAgICAgICBtaW4taGVpZ2h0OiAxNTBweDtcclxuICAgIH1cclxuXHJcblxyXG4gICAgLnNpdGUtYmFubmVyX19pbWFnZSB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IDE1MHB4O1xyXG4gICAgICAgIGhlaWdodDogMTUwcHg7XHJcblxyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogIzAwMDAwMDtcclxuICAgICAgICAgICAgb3BhY2l0eTogMC4yNTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8obWVkaXVtLWFuZC11cCkge1xyXG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAxNTBweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxNTBweDtcclxuXHJcbiAgICAgICAgICAgICYuc2l0ZS1iYW5uZXJfX2ltYWdlLS1oYXMtaW1hZ2Uge1xyXG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogMzk2cHg7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDM5NnB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuY29udGFpbmVyIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICAgICAgbGVmdDogNTAlO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLC01MCUpO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IGZpdC1jb250ZW50O1xyXG4gICAgICAgICAgICB6LWluZGV4OiAxO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvKiY6bm90KFtjbGFzcyo9XCJiZy1cIl0pIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtYmxhY2s7XHJcbiAgICB9Ki9cclxuICAgIC8qXHJcbiAgICAmOm5vdChbY2xhc3MqPVwiLS10YWxsXCJdKXtcclxuICAgICAgICBoMSxcclxuICAgICAgICBoMntcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDoxMDBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAqL1xyXG4gICAgJjplbXB0eSB7XHJcbiAgICAgICAgaGVpZ2h0OiAyMjJweDtcclxuICAgIH1cclxuICAgIC8vU3BvbnNvciBMb2dpbiBUYWIgQnV0dG9uXHJcbiAgICA+IC5idG4ge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IGF1dG87XHJcbiAgICAgICAgYm90dG9tOiAtNjBweDtcclxuICAgICAgICByaWdodDogNSU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNC41ZGVnKTtcclxuICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAxNXB4O1xyXG4gICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAxNXB4O1xyXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAxMDAwbXM7XHJcblxyXG4gICAgICAgICYuaXMtaGVscGluZyB7XHJcbiAgICAgICAgICAgIGJvdHRvbTogMjBweDtcclxuXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8obWVkaXVtLWFuZC11cCkge1xyXG4gICAgICAgICAgICAgICAgYm90dG9tOiAyMnB4O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSByZXNwb25kLXRvKGRlc2stYW5kLXVwKSB7XHJcbiAgICAgICAgICAgICAgICBib3R0b206IDI2cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5zaXRlLWJhbm5lci5zaXRlLWJhbm5lci0tbm8taW1hZ2Uge1xyXG4gICAgLnNpdGUtYmFubmVyX19pbWFnZTphZnRlciB7XHJcbiAgICAgICAgb3BhY2l0eTowICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbi4jeyRuYW1lfS1iYW5uZXItLXNtYWxsIHtcclxuICAgIGhlaWdodDogMjAwcHg7XHJcbn1cclxuXHJcbi4jeyRuYW1lfS1iYW5uZXItLWhlaWdodC1hbHBoYSB7XHJcbiAgICAuc2l0ZS1iYW5uZXJfX2hlYWRpbmcge1xyXG4gICAgICAgIHBhZGRpbmc6IDEuNWVtIDA7XHJcbiAgICB9XHJcblxyXG4gICAgLm1lZGlhX19jYXB0aW9uLS10b3Age1xyXG4gICAgICAgIC5zaXRlLWJhbm5lcl9faGVhZGluZyB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDFlbSAwIDJlbTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLm1lZGlhX19jYXB0aW9uLS1ib3R0b20ge1xyXG4gICAgICAgIC5zaXRlLWJhbm5lcl9faGVhZGluZyB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDJlbSAwIDFlbTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5zaXRlLWJhbm5lci0taGVpZ2h0LWJldGF7XHJcbiAgICBoZWlnaHQ6IDEwMHZ3O1xyXG4gICAgbWF4LWhlaWdodDogMjIwcHg7XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKXtcclxuICAgICAgICBtYXgtaGVpZ2h0OiAzODBweDtcclxuICAgIH1cclxufVxyXG5cclxuLiN7JG5hbWV9LWJhbm5lci0tbWVkaXVtIHtcclxuICAgIC8vaGVpZ2h0OiAxMDB2dztcclxuICAgIC8vbWF4LWhlaWdodDogNTcwcHg7XHJcbiAgICAuc2l0ZS1iYW5uZXJfX2hlYWRpbmcge1xyXG4gICAgICAgIHBhZGRpbmc6IDIuNWVtIDA7XHJcbiAgICB9XHJcblxyXG4gICAgLm1lZGlhX19jYXB0aW9uLS10b3Age1xyXG4gICAgICAgIC5zaXRlLWJhbm5lcl9faGVhZGluZyB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDEuNWVtIDAgMy41ZW07XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5tZWRpYV9fY2FwdGlvbi0tYm90dG9tIHtcclxuICAgICAgICAuc2l0ZS1iYW5uZXJfX2hlYWRpbmcge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiA0ZW0gMCAxZW07XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uI3skbmFtZX0tYmFubmVyLS10YWxsIHtcclxuICAgIC8vaGVpZ2h0OiAxMDB2dztcclxuICAgIC8vbWF4LWhlaWdodDogOTAwcHg7XHJcbiAgICAuc2l0ZS1iYW5uZXJfX2hlYWRpbmcge1xyXG4gICAgICAgIHBhZGRpbmc6IDRlbSAwO1xyXG4gICAgfVxyXG5cclxuICAgIC5tZWRpYV9fY2FwdGlvbi0tdG9wIHtcclxuICAgICAgICAuc2l0ZS1iYW5uZXJfX2hlYWRpbmcge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAyZW0gMCA2ZW07XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5tZWRpYV9fY2FwdGlvbi0tYm90dG9tIHtcclxuICAgICAgICAuc2l0ZS1iYW5uZXJfX2hlYWRpbmcge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiA3ZW0gMCAxZW07XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uc2l0ZS1iYW5uZXJfX2hlYWRpbmcge1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgY29sb3I6ICR3aGl0ZTtcclxuXHJcbiAgICAmLnRleHQtYnJhbmQtYmxhY2sge1xyXG4gICAgICAgIGNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgfVxyXG5cclxuICAgICYudGV4dC1ncmV5IHtcclxuICAgICAgICBjb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuICAgIH1cclxufVxyXG5cclxuLyouc2l0ZS1iYW5uZXJfX2hlYWRpbmctLXZldC1iYWRnZSB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG5cclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgeyovXHJcbiAgICAgICAgLypkaXNwbGF5OiBmbGV4OyovXHJcbiAgICAgICAgLypkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICB9XHJcbn0qL1xyXG5cclxuLnNpdGUtYmFubmVyX19oZWFkaW5nLS1zaW1vbnMtY2F0IHtcclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDQwcHgpIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qLiN7JG5hbWV9LWJhbm5lci0tYXJjIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAzJTtcclxuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2FyYy5wbmcpO1xyXG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XHJcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgY2VudGVyO1xyXG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTEwJTtcclxuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgIH1cclxufVxyXG4uI3skbmFtZX0tYmFubmVyLS1hcmMtLXllbGxvdyB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwcHg7XHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL3llbGxvd2FyYy5wbmcpO1xyXG4gICAgfVxyXG59Ki9cclxuLy8tLS0tLS0tLS0tLS0tXHJcbi8vIEJSRUFEQ1JVTUJTXHJcbi8vLS0tLS0tLS0tLS0tLVxyXG4vLyAuI3skbmFtZX0tYnJlYWRjcnVtYnN7fVxyXG4vLy0tLS0tLS0tXHJcbi8vIEJPRFlcclxuLy8tLS0tLS0tLVxyXG4uI3skbmFtZX0tYm9keSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcclxufVxyXG4vLy0tLS0tLS0tXHJcbi8vIFNUUklQXHJcbi8vLS0tLS0tLS1cclxuLiN7JG5hbWV9LXN0cmlwIHtcclxuICAgID4gaDEsXHJcbiAgICA+IGgyLFxyXG4gICAgPiBoMyxcclxuICAgID4gaDQsXHJcbiAgICA+IGg1LFxyXG4gICAgPiBoNiB7XHJcbiAgICAgICAgQGV4dGVuZCAlbWctYm0tbGc7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgfVxyXG5cclxuICAgIC4jeyRuYW1lfS1zdHJpcF9fdGl0bGUge1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBAZXh0ZW5kICV0cy00O1xyXG4gICAgfVxyXG5cclxuICAgIC4jeyRuYW1lfS1zdHJpcF9faGVhZGVyIHtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6ICRjYXRzLW1lZDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xyXG4gICAgICAgIG1heC13aWR0aDogOTUwcHg7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG5cclxuICAgICAgICBoMiB7XHJcbiAgICAgICAgICAgIEBleHRlbmQgJXRzLTU7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XHJcblxyXG4gICAgICAgICAgICBzcGFuIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC4jeyRuYW1lfS1zdHJpcF9fYm9keSB7XHJcbiAgICAgICAgQGV4dGVuZCAlbWctYm0tbGc7XHJcbiAgICB9XHJcblxyXG4gICAgLiN7JG5hbWV9LXN0cmlwX19yaWJib24ge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHJcbiAgICAgICAgaDMge1xyXG4gICAgICAgICAgICBAZXh0ZW5kICV0cy0zO1xyXG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4vLy0tLS0tLS0tXHJcbi8vIFJJQkJPTlxyXG4vLy0tLS0tLS0tXHJcbi5yaWJib24ge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblxyXG4gICAgW2NsYXNzKj1cImJnLVwiXSAmIHtcclxuICAgICAgICBwYWRkaW5nLXRvcDogMjRweDtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMjRweDtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0tYW5kLXVwKSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAzNXB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMzVweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgPiBoMyB7XHJcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgIH1cclxuXHJcbiAgICA+ICoge1xyXG4gICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgfVxyXG59XHJcbi8vLS0tLS0tLS1cclxuLy8gRk9PVEVSXHJcbi8vLS0tLS0tLS1cclxuLiN7JG5hbWV9LWZvb3RlciB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG4uZm9vdGVye1xyXG4gICAgLmdyaWRfX2l0ZW17XHJcbiAgICAgICAgbWF4LXdpZHRoOiA1NTBweDtcclxuICAgIH1cclxufVxyXG5cclxuXHJcbi5zaXRlLWJhbm5lcl9faW1hZ2UtLWhhcy1pbWFnZXtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246Y2VudGVyO1xyXG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxufVxyXG4iLCIvKipcclxuICogTEFZT1VUXHJcbiAqIFNpZGViYXJcclxuICogVGhpcyBpcyB0aGUgbW9iaWxlIG92ZXJmbG93IHNvbHV0aW9uLCB3ZSBzdGljayB0aGUgbWFpbiBuYXZpZ2F0aW9uIGluIGhlcmVcclxuICovXHJcbiAkbmFtZTogc3VibmF2O1xyXG5cclxuLy8tLS0tLS0tLVxyXG4vLyBCTE9DS1xyXG4vLy0tLS0tLS0tXHJcbi4jeyRuYW1lfSB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgQGV4dGVuZCAlY29udGFpbmVyO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgei1pbmRleDogLTE7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIG1pbi13aWR0aDogMTAwJTtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgei1pbmRleDogMTtcclxuICAgIHRvcDogMTAwJTtcclxuICAgIHBhZGRpbmc6IDE3LjVweCAyNXB4O1xyXG4gICAgbGVmdDogMDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRzdWJuYXYtYmFja2dyb3VuZC1jb2xvcjtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgIEBleHRlbmQgJWRyb3Atc2hhZG93O1xyXG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAyMDBtcyBlYXNlLWluLW91dDtcclxuICAgIGJveC1zaGFkb3c6IDBweCA0cHggMTBweCAwcHggcmdiYSgwLDAsMCwwLjMzKTtcclxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkYnJhbmQtZ3JleTtcclxuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IGFsbDtcclxuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuXHJcbiAgICAgICAgdWwge1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuXHJcbiAgICBsaTpob3ZlciAmIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBhbGw7XHJcblxyXG4gICAgICAgIHVsIHtcclxuICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAvKiY6YmVmb3JlLFxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHN1Ym5hdi1iYWNrZ3JvdW5kLWNvbG9yO1xyXG4gICAgICAgIGJveC1zaGFkb3c6IDAgNnB4IDAgMCByZ2JhKCRkYXJrLWdsYXNzLCAwLjEpO1xyXG4gICAgfVxyXG5cclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgICBsZWZ0OiAxMDAlO1xyXG4gICAgfVxyXG5cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIHJpZ2h0OiAxMDAlO1xyXG4gICAgfSovXHJcblxyXG4gICAgdWwge1xyXG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICBAaW5jbHVkZSBhbmltYXRlKG9wYWNpdHkgMzAwbXMpO1xyXG4gICAgICAgIC8vIFRvIGhlbHAgZmlyc3QgdWwgaGF2ZSBlbm91Z2ggc3BhY2UgZm9yIHdvcmRzIHRvIHdyYXBcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzNXB4O1xyXG4gICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICAgIG92ZXJmbG93LXk6IGF1dG87XHJcblxyXG4gICAgICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcclxuICAgICAgICAgICAgd2lkdGg6IDRweDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLWJsYWNrO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJiArIHVsIHtcclxuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMzVweDtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAzNXB4O1xyXG4gICAgICAgICAgICBib3JkZXItbGVmdDogMnB4IHNvbGlkICRicmFuZC1ncmV5O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgbGkuc3ViLW5hdi1saSB7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG5cclxuICAgICAgICAgICAgYTpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJyYW5kLXB1cnBsZSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGxpZ2h0LXB1cnBsZSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgbGkge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG5cclxuICAgICAgICBoNCwgc3BhbiB7XHJcbiAgICAgICAgICAgIEBleHRlbmQgJXRzLTU7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgICAgICAgICAgbWFyZ2luOiAwcHg7XHJcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkY2F0cy1ib2xkO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGEge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMHB4O1xyXG4gICAgICAgICAgICBmb250LWZhbWlseTogJGNhdHMtYm9sZDtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMjRweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCIvKipcclxuICogTEFZT1VUXHJcbiAqIFRBQkxFU1xyXG4gKiBUaGVzZSBzdHlsZXMgYXJlIHVzZWQgdG8gbWFuYWdlIHRoZSBSVEUgZ2VuZXJhdGVkIHRhYmxlc1xyXG4gKi9cclxuXHJcbi8vLS0tLS0tLVxyXG4vLyBSRVNFVFxyXG4vLy0tLS0tLS1cclxudGFibGVbc3R5bGVdLFxyXG50cltzdHlsZV0sXHJcbnRkW3N0eWxlXXtcclxuICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xyXG4vKiAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDsqL1xyXG4gICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcclxufVxyXG5cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tXHJcbi8vIEJVSUxEIERFU0lHTlxyXG4vLy0tLS0tLS0tLS0tLS0tLVxyXG50YWJsZVtzdHlsZV0ge1xyXG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcclxuICAgIHRhYmxlLWxheW91dDogYXV0byAhaW1wb3J0YW50O1xyXG4gICAgcGFkZGluZy1ib3R0b206IDEwcHg7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgLy9ORVNUSU5HIEZPUiBBRERFRCBTUEVDSUZJQ0lUWVxyXG4gICAgLy8gSEVBREVSIENMQVNTIEFEREVEIFdJVEggSlNcclxuICAgIC50YWJsZS1oZWFkZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1wdXJwbGUgIWltcG9ydGFudDtcclxuICAgICAgICBib3JkZXItY29sb3I6ICRicmFuZC1wdXJwbGUgIWltcG9ydGFudDtcclxuICAgICAgICBmb250LWZhbWlseTogJGNhdHMtbWVkO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICBjb2xvcjogI2ZmZmZmZjtcclxuXHJcbiAgICAgICAgdGRbc3R5bGVdIHtcclxuICAgICAgICAgICAgcGFkZGluZy10b3A6IDE1cHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxNXB4O1xyXG5cclxuICAgICAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0tYW5kLXVwKSB7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICRicmFuZC1wdXJwbGUgIWltcG9ydGFudDtcclxuXHJcbiAgICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXItbGVmdC1jb2xvcjogJGJyYW5kLXB1cnBsZSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHRyW3N0eWxlXSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNXB4O1xyXG4gICAgICAgIHdpZHRoOiA1MCUgIWltcG9ydGFudDtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICAgICAgYm9yZGVyLXdpZHRoOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAycHggIWltcG9ydGFudDtcclxuICAgICAgICBib3JkZXItc3R5bGU6IHNvbGlkICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkYnJhbmQtcHVycGxlICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0tYW5kLWRvd24pIHtcclxuICAgICAgICAgICAgYm9yZGVyLXRvcC13aWR0aDogMnB4ICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICAgICAgICB0ZFtzdHlsZV0ge1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGJyYW5kLXB1cnBsZTtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxNXB4O1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDE1cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6bnRoLWNoaWxkKG9kZCkge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGxhY2Vob2xkO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICB0ZFtzdHlsZV0ge1xyXG4gICAgICAgIHBhZGRpbmc6IDEwcHg7XHJcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGJyYW5kLXB1cnBsZTtcclxuICAgIH1cclxufVxyXG5cclxuQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0tYW5kLXVwKXtcclxuICAgIC50YWJsZS1oZWFkZXI6bm90KDpudGgtb2YtdHlwZSgxKSl7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG59XHJcbiIsIi8qKlxyXG4gKiBMQVlPVVRcclxuICogRmxvd1xyXG4gKiBUaGUgZmxvdyBzZWxlY3RvciBhcHBsaWVzIGNzcyBjb2x1bW5zIHRvIGlubGluZSBjb250ZW50LlxyXG4gKi9cclxuXHJcbi8vIFRoZSBmbG93IGNvbHVtbnMgZGVmYXVsdCBhcyBhIHR3byBjb2x1bW4gXHJcblxyXG4uZmxvdy1jb2x7XHJcbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKCBtZWRpdW0tYW5kLXVwKXtcclxuICAgICAgICBjb2x1bW4tY291bnQ6IDI7XHJcblxyXG4gICAgICAgICYtLWdhcC02MHsgY29sdW1uLWdhcDogNjBweDsgfVxyXG4gICAgICAgIFxyXG4gICAgICAgICYtLWdhcC01NXsgY29sdW1uLWdhcDogNTVweDsgfVxyXG4gICAgICAgIFxyXG4gICAgICAgICYtLWdhcC0zMHsgY29sdW1uLWdhcDogMzBweDsgfVxyXG4gICAgfVxyXG59XHJcblxyXG4iLCIvKipcclxuICogTEFZT1VUXHJcbiAqIFBFTlNcclxuICogTGF5b3V0IGZvciB0aGUgUGVucyBTZWN0aW9uIGZvdW5kIG9uIHRoZSBTcG9uc29yc2hpcCBwb3J0YWwgYW5kIHRoZSBpbmRpdmlkdWFsIGNhdCBzcG9uc29ycyBwYWdlLlxyXG4gKi9cclxuXHJcbiAkbmFtZTogcGVucztcclxuXHJcbi8vLS0tLS0tLVxyXG4vLyBCQVNFXHJcbi8vLS0tLS0tLS1cclxuLiN7JG5hbWV9e1xyXG5cclxufVxyXG5cclxuLnBlbnNfX3RhYi1idG57XHJcbiAgZGlzcGxheTogbm9uZTtcclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKXtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgIH1cclxufVxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBFTEVNRU5UIC0gVElUTEVcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4uI3skbmFtZX1fX3RpdGxle1xyXG4gICAgLy9kaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAvL3dpZHRoOiBhdXRvO1xyXG4gICAgbWFyZ2luOiAwIDAgMWVtO1xyXG5cclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpe1xyXG4gICAgICAgIG1hcmdpbjogMCBhdXRvIDAgMDtcclxuICAgIH1cclxufVxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBFTEVNRU5UIC0gVEFCU1xyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfV9fdGFic3tcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpe1xyXG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAvL2p1c3RpZnktY29udGVudDogZmxleC1lbmQ7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIH1cclxufVxyXG5cclxuLnBlbnNfX3RhYnMtc2VsZWN0e1xyXG4gICAgbWF4LXdpZHRoOiA0NjBweDtcclxuICAgIG1hcmdpbjogMCAwIDJlbTtcclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpe1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gRUxFTUVOVCAtIElURU1cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4uI3skbmFtZX1fX2l0ZW17XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBtYXgtd2lkdGg6IDQ2MHB4O1xyXG4gICAgbWFyZ2luOiAwIGF1dG87XHJcblxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZyl7XHJcbiAgICAgICAgbWF4LXdpZHRoOiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgIC8qXHJcbiAgICAmOmJlZm9yZXtcclxuICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgd2lkdGg6IDIwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICBsZWZ0OiAxMDAlO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcbiAgICB9XHJcbiAgICAqL1xyXG59XHJcblxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIEVMRU1FTlQgLSBQUkVWSU9VUyBHVUVTVFNcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfV9fcHJldmlvdXMtZ3Vlc3RzLnByZXZpb3VzLWd1ZXN0c3tcclxuXHJcbiAgICBbZGF0YS10YWJde1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcblxyXG4gICAgICAgICYuaXMtYWN0aXZle1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi4jeyRuYW1lfV9fcHJldmlvdXMtZ3Vlc3RzLmlzLWFjdGl2ZSArIC4jeyRuYW1lfV9fYnRuc3tcclxuICAgIC8vIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xyXG4gICAgLy8gcGFkZGluZy1ib3R0b206IDA7XHJcbiAgICBAZXh0ZW5kICVwZC10cC1sZztcclxufVxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBFTEVNRU5UIC0gQlVUVE9OU1xyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfV9fYnRuc3tcclxuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMjAwbXMgMjAwbXMgZWFzZS1pbi1vdXQ7XHJcbn1cclxuXHJcblxyXG4ucGVuc19fYnRucy1idG57XHJcbiAgICAvL21hcmdpbjogMCAwIDFlbTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG59XHJcbiIsIi8qKlxyXG4gKiBMQVlPVVRcclxuICogVVNFUiBCTE9DS1xyXG4gKiBMYXlvdXQgZm9yIHRoZSBVc2VyIHByb2ZpbGUgc2VjdGlvbiBmb3VuZCBpbiB0aGUgc3BvbnNvcnNoaXAgYXJlYVxyXG4gKi9cclxuICRuYW1lOiB1c2VyLWJsb2NrO1xyXG5cclxuLy8tLS0tLS0tXHJcbi8vIEJBU0VcclxuLy8tLS0tLS0tLVxyXG4uI3skbmFtZX17XHJcbiAgICBtYXJnaW46NzJweCAwIDAgMDtcclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKXtcclxuICAgICAgICBtYXJnaW46IDExNXB4IDAgMCAwO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIEVMRU1FTlQgLSBQUk9GSUxFXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLiN7JG5hbWV9X19wcm9maWxle1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgcGFkZGluZzogMjBweDtcclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKXtcclxuICAgICAgICB3aWR0aDogNDIwcHg7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgfVxyXG5cclxuXHJcblxyXG4gICAgLy9kaXNwbGF5OiBmbGV4O1xyXG4gICAgLy9hbGlnbi1pdGVtczogY2VudGVyO1xyXG5cclxuXHJcbi8qXHJcbiAgICA+IGRpdjpub3QoW2NsYXNzXSl7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xyXG5cclxuICAgICAgICAvLyBTb21lIG1hcmdpbiByZXNldHMgdG8gb3ZlcnJpZGUgdGhlIEggdGFnIHdpdGhpbiBhXHJcbiAgICAgICAgLy8gSEVBREVSIHRhZyBzcGFjaW5nZ2xvYmFsIHJ1bGUuXHJcbiAgICAgICAgaDJ7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodCAvIDQ7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGgze1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLy8gU3BhbiB0aGUgYnV0dG9uLlxyXG4gICAgICAgIC5idG57IHdpZHRoOiAxMDAlOyB9XHJcbiAgICB9XHJcbiovXHJcblxyXG5cclxuICAgIC8vIFBhaW50IHRoZSBiYWNrZ3JvdW5kIGNvbG91ciBhbGwgdGhlIHdheVxyXG4gICAgLy8gb3V0IHRvIHRoZSBsZWZ0IGVkZ2Ugb2YgdGhlIHBhZ2UsXHJcbiAgICAvLyBieXBhc3NpbmcgdGhlIGNvbnRhaW5lci5cclxuXHJcbiAgICAmOmJlZm9yZSxcclxuICAgICY6YWZ0ZXJ7XHJcbiAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgd2lkdGg6IDUwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICByaWdodDogMTAwJTtcclxuICAgIH1cclxuXHJcbiAgICAmOmJlZm9yZXtcclxuICAgICAgICByaWdodDogYXV0bztcclxuICAgICAgICBsZWZ0OiAxMDAlO1xyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpe1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAudXNlci1pY29ue1xyXG4gICAgICAgIEBpbmNsdWRlIHVzZXItaWNvbigxNTBweCk7XHJcbiAgICAgICAgbWFyZ2luOiAwIGF1dG8gMjBweDtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZyl7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gRUxFTUVOVCAtIFNVTU1BUllcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfV9fc3VtbWFyeXtcclxuICAgIHBhZGRpbmc6IDIwcHggMDtcclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpe1xyXG4gICAgICAgIGZsZXg6MTtcclxuICAgICAgICBwYWRkaW5nOiAyMHB4IDAgMjBweCAyMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIHB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweFxyXG4gICAgfVxyXG59XHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gRUxFTUVOVCAtIEZPUk1cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfV9fZm9ybXtcclxuXHJcbn1cclxuXHJcbiIsIu+7vy5jb250ZW50LXdpdGgtc2lkZW1lbnUge1xyXG4gICAgLnNpZGUtbWVudS1saW5rIHtcclxuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJyYW5kLXBpbms7XHJcblxyXG4gICAgICAgICYuYWN0aXZlIHtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLnNlbGVjdGVkIHtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5zaWRlLW1lbnUge1xyXG4gICAgICAgIHBvc2l0aW9uOiBzdGlja3k7XHJcbiAgICAgICAgdG9wOiAxODBweDtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtcHVycGxlO1xyXG4gICAgfVxyXG5cclxuICAgIC5jb250ZW50IFtpZF49XCJpZC1cIl0ge1xyXG4gICAgICAgIHNjcm9sbC1tYXJnaW4tdG9wOiAxMDBweDtcclxuICAgIH1cclxuXHJcbiAgICAuc2lkZS1tZW51LXN1Ymxpbmsge1xyXG4gICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6ICc+JztcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDhweDtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogY29udGVudCAwLjNzIGVhc2U7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLnNlbGVjdGVkIHtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcblxyXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgY29udGVudDogJ3wnO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLm1lbnUtdG9nZ2xlIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiAyNXB4O1xyXG4gICAgICAgIHJpZ2h0OiAyMHB4O1xyXG4gICAgICAgIHdpZHRoOiAzMHB4O1xyXG4gICAgICAgIGhlaWdodDogMzBweDtcclxuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgei1pbmRleDogMTAwMDtcclxuXHJcbiAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIGhlaWdodDogM3B4O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDJweDtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogMC4zcyBlYXNlO1xyXG4gICAgICAgICAgICBsZWZ0OiAwO1xyXG5cclxuICAgICAgICAgICAgJjpudGgtY2hpbGQoMSkge1xyXG4gICAgICAgICAgICAgICAgdG9wOiA2cHg7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDIpIHtcclxuICAgICAgICAgICAgICAgIHRvcDogMTNweDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjpudGgtY2hpbGQoMykge1xyXG4gICAgICAgICAgICAgICAgdG9wOiAyMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLm9wZW4ge1xyXG4gICAgICAgICAgICBzcGFuIHtcclxuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDEpIHtcclxuICAgICAgICAgICAgICAgICAgICB0b3A6IDEzcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDIpIHtcclxuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDMpIHtcclxuICAgICAgICAgICAgICAgICAgICB0b3A6IDEzcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAjc2lkZU1lbnVJdGVtcyB7XHJcbiAgICAgICAgbWF4LWhlaWdodDogMDtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIHRyYW5zaXRpb246IG1heC1oZWlnaHQgMC40cyBlYXNlLCBvcGFjaXR5IDAuNHMgZWFzZTtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG5cclxuICAgICAgICAmLnNob3cge1xyXG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiAxMDAwcHg7IC8vIGxhcmdlIGVub3VnaCB0byBjb3ZlciB0aGUgZnVsbCBtZW51XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5zaWRlLW1lbnUtaGVhZGVyIHtcclxuICAgICAgICBtaW4taGVpZ2h0OiA4MHB4O1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xyXG4gICAgICAgIC5tZW51LXRvZ2dsZSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAjc2lkZU1lbnVJdGVtcyB7XHJcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IG5vbmUgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICBvdmVyZmxvdzogdmlzaWJsZSAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmNvbnRlbnQgW2lkXj1cImlkLVwiXSB7XHJcbiAgICAgICAgICAgIHNjcm9sbC1tYXJnaW4tdG9wOiAyMDBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDQwMHB4KSB7XHJcbiAgICAgICAgLnNpZGUtbWVudS1oZWFkZXItdGV4dCB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IC8vIEhpZGUgdGhlIGhlYWRlciB0ZXh0XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiIsIu+7vy5tYWluLXNpdGUtaGVhZGVyIHtcclxuICAgIG1pbi13aWR0aDogMTAwJTtcclxuICAgIHBvc2l0aW9uOiBzdGlja3k7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcclxuICAgIHBhZGRpbmctbGVmdDogMTVweDtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XHJcbiAgICB6LWluZGV4OiAyNTA7XHJcblxyXG4gICAgLmhlYWRlci1sb2dvIHtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgd2lkdGg6IGF1dG87XHJcblxyXG4gICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA1MHB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuaGVhZGVyLWJ1dHRvbnMge1xyXG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIGJvdHRvbTogMTBweDtcclxuICAgICAgICByaWdodDogMTVweDtcclxuICAgICAgICB6LWluZGV4OiA5OTk7XHJcblxyXG4gICAgICAgIGxpIHtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lO1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XHJcblxyXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5oZWFkZXItbGlua3MtYW5kLXNlYXJjaCB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogMTBweDtcclxuICAgICAgICByaWdodDogMTVweDtcclxuXHJcbiAgICAgICAgbGkge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcclxuXHJcbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGEge1xyXG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgICAgICAgICAgcGFkZGluZzogNXB4O1xyXG5cclxuICAgICAgICAgICAgJjpsaW5rLFxyXG4gICAgICAgICAgICAmOnZpc2l0ZWQsXHJcbiAgICAgICAgICAgICY6YWN0aXZlIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkYnJhbmQtcGluaztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmhlYWRlci1zZWFyY2gge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzJmMGYzZDtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nOiA0cHggOHB4O1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB3aWR0aCAwLjNzIGVhc2U7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxNDBweDtcclxuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuXHJcbiAgICAgICAgICAgICY6Zm9jdXMtd2l0aGluIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAyNDBweDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmJ0bi0tc2VhcmNoOjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAzMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5oZWFkZXItc2VhcmNoLWlucHV0IHtcclxuICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuaGVhZGVyLW5hdiB7XHJcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgYm90dG9tOiAxN3B4O1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHJcbiAgICAgICAgbGkge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNDBweDtcclxuXHJcbiAgICAgICAgICAgICY6aG92ZXIgPiAuaGVhZGVyLW1lZ2EtbWVudSxcclxuICAgICAgICAgICAgJi5vcGVuID4gLmhlYWRlci1tZWdhLW1lbnUge1xyXG4gICAgICAgICAgICAgICAgbWF4LWhlaWdodDogbm9uZTtcclxuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMzBweDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjpob3ZlciA+IGEuaGVhZGVyLW5hdi1saW5rLFxyXG4gICAgICAgICAgICAmLm9wZW4gPiBhLmhlYWRlci1uYXYtbGluayB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBhLmhlYWRlci1uYXYtbGluayB7XHJcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogaW5pdGlhbDtcclxuICAgICAgICAgICAgcGFkZGluZzogMjBweCAxNXB4O1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMTJweDtcclxuICAgICAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMTJweDtcclxuXHJcbiAgICAgICAgICAgICY6bGluayxcclxuICAgICAgICAgICAgJjp2aXNpdGVkLFxyXG4gICAgICAgICAgICAmOmFjdGl2ZSB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuaGVhZGVyLW1lZ2EtbWVudSB7XHJcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDA7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogbWF4LWhlaWdodCAwLjRzIGVhc2UsIG9wYWNpdHkgMC40cyBlYXNlO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRvcDogY2FsYygxMDAlICsgMTZweCk7XHJcbiAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjlmOWY5O1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwIDMwcHg7XHJcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgNHB4IDhweCByZ2JhKDAsIDAsIDAsIDAuMSk7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IDk5OTtcclxuICAgICAgICAgICAgYm9yZGVyLXRvcDogNXB4IHNvbGlkICRicmFuZC1wdXJwbGU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuaGVhZGVyLXN1Yi1uYXYsXHJcbiAgICAgICAgLmhlYWRlci1zdWItc3ViLW5hdiB7XHJcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDQwMHB4O1xyXG4gICAgICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcclxuICAgICAgICAgICAgc2Nyb2xsYmFyLXdpZHRoOiB0aGluOyAvKiBGaXJlZm94ICovXHJcbiAgICAgICAgICAgIHNjcm9sbGJhci1jb2xvcjogcmdiYSgxMjIgMjcgMTE0IC8gMjUlKSB0cmFuc3BhcmVudDtcclxuXHJcbiAgICAgICAgICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMTIyIDI3IDExNCAvIDI1JSk7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiA1cHg7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBzdGlja3k7XHJcbiAgICAgICAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEyMHB4O1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoIHRvIGJvdHRvbSwgcmdiYSgyNTUsMjU1LDI1NSwwKSwgcmdiYSgyNDksMjQ5LDI0OSwxKSApO1xyXG4gICAgICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGxpIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGxpc3QtaXRlbTtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogaW5pdGlhbDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA4cHggMjBweDtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogYmxhY2s7XHJcblxyXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRicmFuZC1waW5rO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuXHJcblxyXG4gICAgICAgIC5pbmZvQm94IHtcclxuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogNTBweDtcclxuXHJcbiAgICAgICAgICAgIHAge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMWVtO1xyXG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgYS5pbmZvQm94TGluayB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiBpbml0aWFsO1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiBibGFjaztcclxuXHJcbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJyYW5kLXBpbms7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5ncmlkX19pdGVtIHtcclxuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgJGJyYW5kLXBpbms7XHJcblxyXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiBub25lO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5oZWFkZXItdG9nZ2xlIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDogMTQzMHB4KSB7XHJcbiAgICAubWFpbi1zaXRlLWhlYWRlciB7XHJcbiAgICAgICAgLmhlYWRlci1sb2dvIGltZyB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAyMHB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNzBweDtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxOHB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDE3MHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmhlYWRlci1uYXYge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBpbml0aWFsO1xyXG5cclxuICAgICAgICAgICAgYS5oZWFkZXItbmF2LWxpbmsge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcclxuXHJcbiAgICAgICAgICAgICAgICAmLmhlYWRlci1uYXYtaXRlbTpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDE1cHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5oZWFkZXItYnV0dG9ucyBsaSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcclxuXHJcbiAgICAgICAgICAgIC5idG4ge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTBweCAxMnB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuaGVhZGVyLWxpbmtzLWFuZC1zZWFyY2gge1xyXG4gICAgICAgICAgICAuaGVhZGVyLXNlYXJjaCB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAzcHggN3B4O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuaGVhZGVyLXNlYXJjaC1pbnB1dCB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGxpIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcclxuXHJcbiAgICAgICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtZWRpYSAobWF4LXdpZHRoOiA4NDBweCkge1xyXG4gICAgLm1haW4tc2l0ZS1oZWFkZXIge1xyXG4gICAgICAgIC5oZWFkZXItY29sbGFwc2Uge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmhlYWRlci1sb2dvIHtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogODBweDtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxNXB4O1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5oZWFkZXItdG9nZ2xlIHtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgdG9wOiAyNXB4O1xyXG4gICAgICAgICAgICByaWdodDogMTVweDtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAzNXB4O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICAgICAgei1pbmRleDogMzAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuXHJcbi5tYWluLXNpdGUtbW9iaWxlLW5hdiB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgYmFja2dyb3VuZDogd2hpdGU7XHJcbiAgICB6LWluZGV4OiA5OTk7XHJcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xyXG4gICAgcGFkZGluZzogMTVweDtcclxuXHJcbiAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB9XHJcblxyXG4gICAgLm1vYmlsZS1oZWFkZXIge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgICAgLm1vYmlsZS1oZWFkZXItbG9nbyB7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA1NXB4O1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuY2xvc2UtbW9iaWxlLW5hdiB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRvcDogNXB4O1xyXG4gICAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAzcmVtO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICAgICAgei1pbmRleDogMzAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuaGVhZGVyLWxpbmtzLWFuZC1zZWFyY2gge1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcblxyXG4gICAgICAgIGxpIHtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgICAgICBtYXJnaW46IGluaXRpYWwgIWltcG9ydGFudDtcclxuXHJcbiAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRicmFuZC1waW5rO1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA1cHg7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XHJcblxyXG4gICAgICAgICAgICAgICAgJjpsaW5rLFxyXG4gICAgICAgICAgICAgICAgJjp2aXNpdGVkLFxyXG4gICAgICAgICAgICAgICAgJjphY3RpdmUge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYnJhbmQtcGluaztcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmhlYWRlci1zZWFyY2gge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzJmMGYzZDtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nOiA0cHggOHB4O1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB3aWR0aCAwLjNzIGVhc2U7XHJcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcclxuXHJcbiAgICAgICAgICAgICY6Zm9jdXMtd2l0aGluIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAyNDBweDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmJ0bi0tc2VhcmNoOjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAzMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5oZWFkZXItc2VhcmNoLWlucHV0IHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuaGVhZGVyLWJ1dHRvbnMge1xyXG4gICAgICAgIHotaW5kZXg6IDE7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xyXG4gICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgICAgIGxpIHtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xyXG5cclxuICAgICAgICAgICAgLmJ0biB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTJweDtcclxuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLm1vYmlsZS10b3AtbmF2IHtcclxuICAgICAgICAubW9iaWxlLXRvcC1uYXYtd3JhcHBlciB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGEge1xyXG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJyYW5kLXBpbms7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5tb2JpbGUtc3ViLW5hdixcclxuICAgIC5tb2JpbGUtc3ViLXN1Yi1uYXYge1xyXG4gICAgICAgIGEge1xyXG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5tb2JpbGUtc3ViLW5hdiB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcclxuXHJcbiAgICAgICAgICAgIC5pbmZvQm94IHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmMGYwZjA7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTVweDtcclxuXHJcbiAgICAgICAgICAgICAgICBoNCB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICMyZjBmM2QgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNXJlbTtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICBwIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxZW07XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMWVtO1xyXG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgLmluZm9Cb3hMaW5rIHtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiBpbml0aWFsO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLm1vYmlsZS1zdWItc3ViLW5hdiB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLm1vYmlsZS10b3AtbmF2IGEsXHJcbiAgICAubW9iaWxlLXN1Yi1uYXYgYSxcclxuICAgIC5tb2JpbGUtc3ViLXN1Yi1uYXYgYSB7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IGluaXRpYWw7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBwYWRkaW5nOiAxNXB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4uc3VibWVudS10b2dnbGUsXHJcbi5zdWItc3VibWVudS10b2dnbGUge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gICAgZm9udC1zaXplOiAxLjVyZW07XHJcbiAgICBjb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIHBhZGRpbmc6IDE1cHg7XHJcbiAgICBsaW5lLWhlaWdodDogMTtcclxuICAgIHotaW5kZXg6IDE7XHJcbn1cclxuIiwi77u/LmV2ZW50cy1kZXRhaWwtaGVybyB7XHJcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb24teDogNTAlO1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbi15OiA1MCU7XHJcblxyXG4gICAgLnJvdyB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgfVxyXG5cclxuICAgIC5ib2R5LWNvcHkgcCB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuICAgIH1cclxuXHJcbiAgICAuZXZlbnQtdHlwZSB7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1wdXJwbGU7XHJcbiAgICAgICAgY29sb3I6ICRicmFuZC1ibGFjaztcclxuICAgICAgICBwYWRkaW5nOiAxMnB4IDE4cHg7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMzJweDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMnB4O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTlweDtcclxuICAgIH1cclxuXHJcbiAgICAuZXZlbnQtZGV0YWlscy10YXJnZXQge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtcHVycGxlO1xyXG4gICAgICAgIGNvbG9yOiAkYnJhbmQtYmxhY2s7XHJcbiAgICAgICAgcGFkZGluZzogMzJweDtcclxuICAgICAgICBtYXJnaW4tdG9wOiAyNXB4O1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMycHg7XHJcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xyXG5cclxuICAgICAgICAudGFyZ2V0IHtcclxuICAgICAgICAgICAgLnRleHQge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyM3B4O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAudmFsdWUge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyM3B4O1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDEwMjJweCkge1xyXG4gICAgICAgIC5ldmVudC1kZXRhaWxzLXRhcmdldCB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmRldGFpbHMge1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAudGFyZ2V0IHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5zaWdudXAge1xyXG4gICAgICAgICAgICAuYnRuIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiIsIu+7vy5ibG9nLXBvc3R7XHJcbiAgICBtYXJnaW46IDAgYXV0bztcclxuICAgIG1heC13aWR0aDogNDAwcHg7XHJcbiAgICBkaXNwbGF5OmJsb2NrO1xyXG59XHJcblxyXG4uYmxvZy1wb3N0LS1ob3Jpem9udGFsIHtcclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgfVxyXG5cclxuICAgIC5ibG9nLXBvc3RfX2ltYWdlLWNvbnRhaW5lcixcclxuICAgIC5ibG9nLXBvc3RfX2NvbnRlbnQtY29udGFpbmVyIHtcclxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiA1MCU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5ibG9nLXBvc3RfX2ltYWdlLWNvbnRhaW5lciB7XHJcbiAgICAgICAgcGFkZGluZzogMCAwIDFlbSAwO1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMWVtIDAgMDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMCAzZW0gMCAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmJsb2ctcG9zdF9faW1hZ2Uge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi5ibG9nLXBvc3RfX3RhZy1jb250YWluZXIge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgIG1hcmdpbjogMCAwIDIwcHg7XHJcbiAgICBjb2xvcjogI0FDQUNBQztcclxuICAgIGZvbnQtc2l6ZTogMTRweDtcclxufVxyXG5cclxuLmJsb2ctcG9zdF9fdGFnIHtcclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwifFwiO1xyXG4gICAgICAgIG1hcmdpbjogMCA1cHg7XHJcbiAgICB9XHJcblxyXG4gICAgJjpsYXN0LW9mLXR5cGUge1xyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAudGFnLWxpbmsge1xyXG4gICAgICAgIGNvbG9yOiRicmFuZC1waW5rO1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7XHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGNvbG9yOiRicmFuZC1wdXJwbGU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uYmxvZy1wb3N0X19kYXRlIHtcclxuICAgIG1hcmdpbjogMCAwIDZweDtcclxuICAgIGNvbG9yOiAkYnJhbmQtcGluayAhaW1wb3J0YW50O1xyXG4gICAgZm9udC1mYW1pbHk6ICRjYXRzLWhlYWRsaW5lO1xyXG59XHJcblxyXG5cclxuLmJsb2ctcG9zdF9fY29udGVudC1jb250YWluZXItLWRhcmstdGhlbWUge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzVFNUU1RTtcclxuICAgIGNvbG9yOiAjZmZmO1xyXG59XHJcblxyXG4uYmxvZy1wb3N0LS1yZWxhdGVke1xyXG59XHJcbiIsIi5yZWFkLW1vcmVfX2NvbnRhaW5lcntcclxuICBtYXgtaGVpZ2h0OiAyMDBweDtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBtYXJnaW46IDAgMCAxZW07XHJcbn1cclxuXHJcbi5yZWFkLW1vcmUtLWZhZGUtdXAgLnJlYWQtbW9yZV9fY29udGFpbmVye1xyXG4gICY6YmVmb3Jle1xyXG4gICAgY29udGVudDogXCJcIjtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICByaWdodDogMDtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0cmFuc3BhcmVudCwgI2ZmZik7XHJcbiAgfVxyXG59XHJcblxyXG4ucmVhZC1tb3JlLS1vcGVue1xyXG4gIC5yZWFkLW1vcmVfX2NvbnRhaW5lciB7XHJcbiAgICBtYXgtaGVpZ2h0OiBub25lO1xyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxuICAucmVhZC1tb3JlX19idXR0b257XHJcbiAgICAmOmJlZm9yZXtcclxuICAgICAgY29udGVudDogXCJSZWFkIExlc3NcIjtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5yZWFkLW1vcmVfX2J1dHRvbntcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICY6YmVmb3Jle1xyXG4gICAgY29udGVudDogXCJSZWFkIE1vcmVcIjtcclxuICB9XHJcbn1cclxuXHJcblxyXG4iLCIudmV0LWJhZGdlIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcblxyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgbWFyZ2luOiBhdXRvO1xyXG4gICAgICAgIG1heC13aWR0aDogNzBweDtcclxuICAgICAgICBtYXJnaW4tdG9wOiAxNnB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4udmV0LWJhZGdlLS1tb2JpbGUge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAyMThweDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgbWFyZ2luOiAxZW07XHJcbiAgICBtYXgtd2lkdGg6IDcwcHg7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHotaW5kZXg6IDEwO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMHB4O1xyXG5cclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA2MDBweCkge1xyXG4gICAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XHJcbiAgICAgICAgZGlzcGxheTpub25lO1xyXG4gICAgfVxyXG59XHJcblxyXG5cclxuICAgIC52ZXQtYmFkZ2UtLWRlc2t0b3Age1xyXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiIsIu+7v1xyXG4uZG9uYXRpb24tcmVhZC1tb3JlLWNvbnRhaW5lciB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIG1heC1oZWlnaHQ6IDE1MHB4O1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgbWFyZ2luOiAwIDAgMmVtO1xyXG5cclxuICBAbWVkaWEgKG1pbi13aWR0aDogMTA4MHB4KXtcclxuICAgIG1heC1oZWlnaHQ6IG5vbmU7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgfVxyXG5cclxuICAmOmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHJnYmEoIzAwMCwgMCksICNmZmYpO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEwODBweCl7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLmlzLWFjdGl2ZSB7XHJcbiAgICBtYXgtaGVpZ2h0OiBub25lO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmRvbmF0aW9uLXJlYWQtbW9yZS1idXR0b257XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMDgwcHgpe1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcbiAgJjpiZWZvcmV7XHJcbiAgICBjb250ZW50OiBcIlJlYWQgTW9yZVwiO1xyXG4gIH1cclxuICAmLmlzLWFjdGl2ZXtcclxuICAgICY6YmVmb3Jle1xyXG4gICAgICBjb250ZW50OiBcIlJlYWQgTGVzc1wiO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCJcclxuLy8gUXVpY2sgZml4IGZvciByZW1vdmluZyBiYW5uZXIgaGVhZGluZyBhbmQgYWRqdXN0aW5nIGhlaWdodCBwdXJlbHkgb24gdGhlIGRvbmF0aW9uIHBhZ2VcclxuLy8gVG9kbyBvbmNlIGRldiBhcHByb3ZlZCBjcmVhdGUgYSBkb25hdGlvbiBiYW5uZXIgcGFydGlhbFxyXG4uZG9uYXRpb24tYmFubmVyLXRoZW1le1xyXG4gIC5zaXRlLWJhbm5lcl9faGVhZGluZ3tcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG4gIC5zaXRlLWJhbm5lci0taGVpZ2h0LWFscGhhe1xyXG4gICAgbWF4LWhlaWdodDogMTIwcHg7XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTA4MHB4KXtcclxuICAgICAgbWF4LWhlaWdodDogMjQwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8qKlxyXG4gKiBDT01QT05FTlRTXHJcbiAqIEdvb2dsZSBDdXN0b21lciBTZWFyY2hcclxuICovXHJcblxyXG4vLy0tLS0tLS0tLS1cclxuLy8gQkxPQ0tcclxuLy8tLS0tLS0tLS0tXHJcbi5nc2MtaW5wdXQgdGFibGUge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcclxuXHJcbiAgICAmW3N0eWxlXSAudGFibGUtaGVhZGVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5nc2Mtc2VhcmNoLWJ1dHRvbiB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjN0ExQjcyICFpbXBvcnRhbnQ7XHJcbiAgICBib3JkZXItY29sb3I6ICM3QTFCNzIgIWltcG9ydGFudDtcclxufVxyXG4uZ3NjLXJlc3VsdHN7XHJcbiAgICB3aWR0aDoxMDAlICFpbXBvcnRhbnQ7XHJcbn1cclxuLmdzYy1yZXN1bHQge1xyXG4gICAgcGFkZGluZzogMS41dncgIWltcG9ydGFudDtcclxuXHJcbiAgICAmOm50aC1jaGlsZChvZGQpIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFlNmZhICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgLmdzLXRpdGxlIHtcclxuICAgICAgICBjb2xvcjogIzdBMUI3MiAhaW1wb3J0YW50O1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwLjVlbSAhaW1wb3J0YW50O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG5cclxuICAgICAgICBiIHtcclxuICAgICAgICAgICAgY29sb3I6ICM3QTFCNzIgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuZ3NjLXVybC10b3Age1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwLjVlbTtcclxuICAgIH1cclxufVxyXG4uZ3Mtd2ViUmVzdWx0IGRpdi5ncy12aXNpYmxlVXJsIHtcclxuICAgIGNvbG9yOiAjYzkyOGIyICFpbXBvcnRhbnQ7XHJcbiAgICBmb250LXNpemU6IDE4cHggIWltcG9ydGFudDtcclxufVxyXG4uZ3NjLXJlc3VsdHMgLmdzYy1jdXJzb3ItYm94IC5nc2MtY3Vyc29yLXBhZ2Uge1xyXG4gICAgYm9yZGVyLWNvbG9yOiAjMUUwMDI4ICFpbXBvcnRhbnQ7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGICFpbXBvcnRhbnQ7XHJcbiAgICBjb2xvcjogIzFFMDAyOCAhaW1wb3J0YW50O1xyXG59XHJcbi5nc2MtcmVzdWx0cyAuZ3NjLWN1cnNvci1ib3ggLmdzYy1jdXJzb3ItY3VycmVudC1wYWdlIHtcclxuICAgIGJvcmRlci1jb2xvcjogI2M5MjhiMiAhaW1wb3J0YW50O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xyXG4gICAgY29sb3I6ICNjOTI4YjIgIWltcG9ydGFudDtcclxufVxyXG4uZ2NzYy1maW5kLW1vcmUtb24tZ29vZ2xlIHtcclxuICAgIGNvbG9yOiAjYzkyOGIyICFpbXBvcnRhbnQ7XHJcbn1cclxuLmdjc2MtZmluZC1tb3JlLW9uLWdvb2dsZS1tYWduaWZpZXIge1xyXG4gICAgZmlsbDogI2M5MjhiMiAhaW1wb3J0YW50O1xyXG59XHJcbi5nc2MtYWRCbG9jayB7XHJcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbn1cclxuLmdzLXNuaXBwZXQge2JhY2tncm91bmQ6dHJhbnNwYXJlbnQgIWltcG9ydGFudDsgYm9yZGVyOm5vbmUgIWltcG9ydGFudDt9XHJcbiIsIu+7v0Bmb250LWZhY2Uge1xyXG4gICAgZm9udC1mYW1pbHk6ICdpY29tb29uJztcclxuICAgIHNyYzogdXJsKCdmb250cy9pY29tb29uLmVvdCcpO1xyXG4gICAgc3JjOiB1cmwoJ2ZvbnRzL2ljb21vb24uZW90I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLCB1cmwoJ2ZvbnRzL2ljb21vb24ud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksIHVybCgnZm9udHMvaWNvbW9vbi50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyksIHVybCgnZm9udHMvaWNvbW9vbi53b2ZmJykgZm9ybWF0KCd3b2ZmJyksIHVybCgnLi4vZm9udHMvaWNvbW9vbi5zdmcnKSBmb3JtYXQoJ3N2ZycpO1xyXG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxufVxyXG5cclxuLmhvbWUtaWNvbjpiZWZvcmUge1xyXG4gICAgZm9udC1mYW1pbHk6ICdpY29tb29uJyAhaW1wb3J0YW50O1xyXG4gICAgc3BlYWs6IG5vbmU7XHJcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgZm9udC12YXJpYW50OiBub3JtYWw7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgY29udGVudDogJ1xcZTkyYic7XHJcbiAgICBmb250LXNpemU6IDE4cHg7XHJcbn1cclxuXHJcbi5icmVhZGNydW1iLWxpc3Qge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcclxufVxyXG5cclxuLmJyZWFkY3J1bWItbGlzdCBsaSB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24tY29udGVudDogY2VudGVyO1xyXG4gICAgbGluZS1oZWlnaHQ6IDE4cHg7XHJcbn1cclxuXHJcbi5icmVhZGNydW1iLWxpc3QgYSB7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICBmb250LXdlaWdodDogNDAwO1xyXG4gICAgbGluZS1oZWlnaHQ6IDE4cHg7XHJcbn1cclxuXHJcbi5kaXZpZGVyIHtcclxuICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICBjb2xvcjogJGJyYW5kLXBpbms7XHJcbiAgICBwYWRkaW5nOiAwcHggNXB4IDVweCA1cHg7XHJcbiAgICBsaW5lLWhlaWdodDogMThweDtcclxufVxyXG4iLCIuZXhpdC1zaXRlLWJ1dHRvbiB7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgYm90dG9tOiAxMCU7XHJcbiAgICB3aWR0aDogMTAwcHg7XHJcbiAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICBwYWRkaW5nOiAxMnB4O1xyXG4gICAgZm9udC1mYW1pbHk6IFwibWV0cmlmeS1ib2xkXCIsIEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XHJcbiAgICB6LWluZGV4OiA5OTk5O1xyXG4gICAgYm9yZGVyLXJhZGl1czogMHB4IDZweCA2cHggMHB4O1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgdHJhbnNpdGlvbjogY29sb3IgMC4xcywgYmFja2dyb3VuZC1jb2xvciAwLjFzO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2M5MjhiMjtcclxuICAgIGNvbG9yOiB3aGl0ZTtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwMHB4KSB7XHJcbiAgICAgICAgd2lkdGg6IDIwMHB4O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMzJweDtcclxuICAgICAgICBsZWZ0OiAxMDAlO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjAwcHgpO1xyXG4gICAgICAgIGJvdHRvbTogMCU7XHJcbiAgICAgICAgcGFkZGluZzogMjBweCAyNHB4O1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDZweCAwcHggMHB4IDBweDtcclxuICAgIH1cclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICBjb2xvcjokYnJhbmQtcHVycGxlO1xyXG4gICAgICAgIGJhY2tncm91bmQ6JGxpZ2h0LXB1cnBsZTtcclxuICAgIH1cclxufVxyXG4iLCIuY3RhLWJhbm5lciB7XHJcbiAgICAuYm9keS10ZXh0IHtcclxuICAgICAgICAvL3dpZHRoOiA2NSU7XHJcbiAgICAgICAgd2lkdGg6IDkwJTtcclxuICAgIH1cclxuXHJcbiAgICBpbWcge1xyXG4gICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICBtYXgtaGVpZ2h0OiAyNTBweDtcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc3MHB4KSB7XHJcbiAgICAgICAgLmJvZHktdGV4dCB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4uY29udGVudC13aXRoLXNpZGVtZW51IHtcclxuICAgIC5jdGEtYmFubmVyLXdyYXBwZXIge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcclxuICAgIH1cclxuXHJcbiAgICAuY3RhLWJhbm5lciB7XHJcbiAgICAgICAgLmJvZHktdGV4dCB7XHJcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzcwcHgpIHtcclxuICAgICAgICAgICAgLmJvZHktdGV4dCB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCIuaGVyby1iYW5uZXJzIHtcclxuXHJcbiAgICAuaGVyby1iYW5uZXItdGFsbCB7XHJcbiAgICAgICAgaGVpZ2h0OiAzNC42MzZ2dzsgLyogNjY1cHggcmVsYXRpdmUgKi9cclxuICAgIH1cclxuXHJcbiAgICAuaGVyby1iYW5uZXItbWVkaXVtIHtcclxuICAgICAgICBoZWlnaHQ6IDI2LjA0MTY1dnc7IC8qIDUwMHB4IHJlbGF0aXZlICovXHJcbiAgICB9XHJcblxyXG4gICAgLmhlcm8tYmFubmVyLW5hcnJvdyB7XHJcbiAgICAgICAgaGVpZ2h0OiAyMC44MzMzNHZ3OyAvKiA0MDBweCByZWxhdGl2ZSAqL1xyXG4gICAgfVxyXG5cclxuICAgIC5oZXJvLWJhbm5lci1pbWFnZSB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb24teDogNTAlO1xyXG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb24teTogNTAlO1xyXG4gICAgfVxyXG5cclxuICAgIC5oZXJvLWJhbm5lci1zbWFsbC1jb250ZW50IHtcclxuICAgICAgICB6LWluZGV4OjI7XHJcbiAgICB9IFxyXG4gICAgXHJcbiAgICAuaGVyby1iYW5uZXItd3JhcHBlciB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcclxuICAgICAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNnMgZWFzZS1pbi1vdXQ7XHJcblxyXG4gICAgICAgICYuYWN0aXZlIHtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCIuaW5mLW92ZXJ2dyB7XHJcbiAgICAuaW5mLW92ZXJ2dy1pdG0ge1xyXG4gICAgICAgIGEge1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcblxyXG4gICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuNTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmluZi1vdmVydnctc3ZnIHtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOjEyNXB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCIuZ3JpZC1tZWRpYS1ibG9jay12aWRlbyB7XHJcbiAgICAucGxheS1idG4ge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgICAgei1pbmRleDogMTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLC01MCUpO1xyXG4gICAgICAgIHdpZHRoOiA1LjVlbTtcclxuICAgICAgICBoZWlnaHQ6IDUuNWVtO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHJcbiAgICAgICAgLnBsYXktaWMge1xyXG4gICAgICAgICAgICB3aWR0aDogMDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAwO1xyXG4gICAgICAgICAgICBib3JkZXItbGVmdDogMmVtIHNvbGlkICR3aGl0ZTtcclxuICAgICAgICAgICAgYm9yZGVyLXRvcDogMS4yNWVtIHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxLjI1ZW0gc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwLjZlbTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgLnBsYXktYnRuIHtcclxuICAgICAgICAgICAgb3BhY2l0eTowLjY2O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCIuZmVhdHVyZWQtcHJvbW8tbGluayB7XHJcbiAgICAuZmVhdHVyZWQtcHJvbW86aG92ZXIge1xyXG4gICAgICAgIGJveC1zaGFkb3c6IDVweCA1cHggMTBweCByZ2JhKDAsIDAsIDAsIDAuNCk7XHJcbiAgICB9XHJcbn1cclxuLmZlYXR1cmVkLXByb21vIHtcclxuICAgIG1pbi1oZWlnaHQ6IDEwMCU7XHJcbiAgICBtYXJnaW46IGF1dG87XHJcbiAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcclxuXHJcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc3MHB4KSB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiA0NjBweCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgIGZpZ3VyZSB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICAgICBmaWdjYXB0aW9uIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICB0b3A6IDIwcHg7XHJcbiAgICAgICAgICAgIGxlZnQ6IDAlO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDIwcHg7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIiwiLnNwb25zb3ItcGVuLWJsb2NrIHtcclxuICAgIC5zcGItbG9jYXRpb24ge1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMS4yNWVtO1xyXG5cclxuICAgICAgICAuZmEtbG9jYXRpb24tZG90IHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAzMnB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuc3BiLWFnZSwgLnNwYi1nZW5kZXIge1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMS4yNWVtO1xyXG4gICAgfVxyXG5cclxuICAgIC5zcGItbGluayB7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTtcclxuICAgIH1cclxufVxyXG4iLCIjY2F0cy1yZXBvcnQge1xyXG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xyXG5cclxuICAgIC50cy0wIHtcclxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0MjVweCkge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMzJweCArIDM4ICogKCgxMDB2dyAtIDMyMHB4KSAvIDcwNCkpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAubWctdnQtbGcge1xyXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDBweDtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLm92ZXItc2l6ZS1maXgge1xyXG4gICAgbWF4LXdpZHRoOiAxOTIwcHg7XHJcbiAgICBtYXJnaW46IGF1dG87XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuLyogU0VUIE1JTiBIRUlHSFQgKi9cclxuLm1pbi1odC1sZy00MDAge1xyXG4gICAgQG1lZGlhKG1pbi13aWR0aDogJGxhcmdlKSB7XHJcbiAgICAgICAgbWluLWhlaWdodDogNDAwcHg7XHJcbiAgICB9XHJcbiAgICAvLyBVc2VkIHRvIGZpeCBJRSBpc3N1ZVxyXG4gICAgQGluY2x1ZGUgaWUtZmFsbGJhY2soJGxhcmdlKSB7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIG92ZXJmbG93OiBub25lO1xyXG4gICAgfVxyXG59XHJcblxyXG4ubWluLWh0LWxnLTUwMCB7XHJcbiAgICBAbWVkaWEobWluLXdpZHRoOiAkbGFyZ2UpIHtcclxuICAgICAgICBtaW4taGVpZ2h0OiA1MDBweDtcclxuICAgIH1cclxuICAgIC8vIFVzZWQgdG8gZml4IElFIGlzc3VlXHJcbiAgICBAaW5jbHVkZSBpZS1mYWxsYmFjaygkbGFyZ2UpIHtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgb3ZlcmZsb3c6IG5vbmU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5taW4taHQtbGctNTUwIHtcclxuICAgIEBtZWRpYShtaW4td2lkdGg6ICRsYXJnZSkge1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IDU1MHB4O1xyXG4gICAgfVxyXG4gICAgLy8gVXNlZCB0byBmaXggSUUgaXNzdWVcclxuICAgIEBpbmNsdWRlIGllLWZhbGxiYWNrKCRsYXJnZSkge1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICBvdmVyZmxvdzogbm9uZTtcclxuICAgIH1cclxufVxyXG5cclxuLm1pbi1odC1sZy02MDAge1xyXG4gICAgQG1lZGlhKG1pbi13aWR0aDogJGxhcmdlKSB7XHJcbiAgICAgICAgbWluLWhlaWdodDogNjAwcHg7XHJcbiAgICB9XHJcbiAgICAvLyBVc2VkIHRvIGZpeCBJRSBpc3N1ZVxyXG4gICAgQGluY2x1ZGUgaWUtZmFsbGJhY2soJGxhcmdlKSB7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIG92ZXJmbG93OiBub25lO1xyXG4gICAgfVxyXG59XHJcblxyXG4ubWluLWh0LWxnLTY1MCB7XHJcbiAgICBAbWVkaWEobWluLXdpZHRoOiAkbGFyZ2UpIHtcclxuICAgICAgICBtaW4taGVpZ2h0OiA2NTBweDtcclxuICAgIH1cclxuICAgIC8vIFVzZWQgdG8gZml4IElFIGlzc3VlXHJcbiAgICBAaW5jbHVkZSBpZS1mYWxsYmFjaygkbGFyZ2UpIHtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgb3ZlcmZsb3c6IG5vbmU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5taW4taHQtbGctNzAwIHtcclxuICAgIEBtZWRpYShtaW4td2lkdGg6ICRsYXJnZSkge1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IDcwMHB4O1xyXG4gICAgfVxyXG4gICAgLy8gVXNlZCB0byBmaXggSUUgaXNzdWVcclxuICAgIEBpbmNsdWRlIGllLWZhbGxiYWNrKCRsYXJnZSkge1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICBvdmVyZmxvdzogbm9uZTtcclxuICAgIH1cclxufVxyXG4vKiBHRU5FUklDIFRPIFNMSURFKFMpICovXHJcbi5jYXRzLXJlcG9ydC1zbGlkZSAudHMtMiB7XHJcbiAgICBAbWVkaWEobWF4LXdpZHRoOiAkbGFyZ2UpIHtcclxuICAgICAgICBmb250LXNpemU6IDI0cHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5iZy1zaWx2ZXItZm94IC50cy0yIHtcclxuICAgIEBpbmNsdWRlIGllLWZhbGxiYWNrKCRsYXJnZSkge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAxNnB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4uY2F0cy1yZXBvcnQtc2xpZGUge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcbi8qLmNhdHMtcmVwb3J0LXNsaWRlLS1jb250YWluZXJ7XHJcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuICAgIG1heC13aWR0aDoxOTIwcHg7XHJcbiAgICBtYXJnaW46MCBhdXRvO1xyXG59Ki9cclxuLyouY2F0cy1yZXBvcnQtc2xpZGUgcCB7XHJcbiAgICBAbWVkaWEobWluLXdpZHRoOiAkbGFyZ2UpIHtcclxuICAgICAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDM2cHg7XHJcbiAgICB9XHJcbn0qL1xyXG4uY2F0cy1yZXBvcnQtc2xpZGUgaW1nIHtcclxuICAgIG1hcmdpbjogYXV0bztcclxuICAgIC8vIG1hcmdpbi1ib3R0b206MWVtO1xyXG4gICAgQG1lZGlhKG1pbi13aWR0aDogJGxhcmdlKSB7XHJcbiAgICAgICAgbWFyZ2luOiBpbml0aWFsO1xyXG4gICAgICAgIC8vIG1hcmdpbi1ib3R0b206Mi41ZW07XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jYXRzLXJlcG9ydC1zbGlkZSAuY3JzX19hbmltIHZpZGVvIHtcclxuICAgIG1heC13aWR0aDogMTAwJTtcclxufVxyXG5cclxuLmNhdHMtcmVwb3J0LXNsaWRlX19zZWN0aW9uIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDFlbTtcclxuICAgIC8vIFVzZWQgdG8gZml4IElFIGlzc3VlXHJcbiAgICBAaW5jbHVkZSBpZS1mYWxsYmFjaygkbGFyZ2UpIHtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMWVtO1xyXG4gICAgfVxyXG59XHJcblxyXG4uY2F0cy1yZXBvcnQtc2xpZGVfX3NlY3Rpb24gLnRzLTIge1xyXG4gICAgZm9udC1mYW1pbHk6ICRjYXRzO1xyXG59XHJcblxyXG4uY2F0cy1yZXBvcnQtc2xpZGVfX3NlY3Rpb24gdWwge1xyXG4gICAgLyogICAgIGxpc3Qtc3R5bGUtdHlwZTogZGlzYztcclxuICAgIGxpc3Qtc3R5bGUtcG9zaXRpb246IGluc2lkZTsgKi9cclxuICAgIG92ZXJmbG93OiBhdXRvO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMWVtO1xyXG59XHJcblxyXG4uaG9yaXpvbnRhbC1saXN0IHtcclxuICAgIGxpc3Qtc3R5bGUtdHlwZTogZGlzYztcclxuICAgIGxpc3Qtc3R5bGUtcG9zaXRpb246IGluc2lkZTtcclxufVxyXG5cclxuLmhvcml6b250YWwtbGlzdCBsaSB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxZW07XHJcblxyXG4gICAgQG1lZGlhKG1pbi13aWR0aDogJG1lZGl1bSkge1xyXG4gICAgICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgICAgIHdpZHRoOiA1MCU7XHJcbiAgICB9XHJcbn1cclxuLy8gSGlnaGxpZ2h0ZXJcclxuLmpzLWhpZ2gtbGlnaHQgc3BhbiB7XHJcbiAgICB0cmFuc2l0aW9uOiAwLjNzIGJhY2tncm91bmQtY29sb3I7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxufVxyXG5cclxuLmpzLWhpZ2gtbGlnaHQuaXMtYWN0aXZlIHNwYW4ge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTIsIDE5NSwgNDIsIDEpO1xyXG59XHJcblxyXG4uanMtaGlnaC1saWdodC5pcy1hY3RpdmUgc3BhbiB7XHJcbiAgICBwYWRkaW5nOiAwLjFlbSAwO1xyXG4gICAgcGFkZGluZy1yaWdodDoxcHg7XHJcbiAgICBtYXJnaW4tcmlnaHQ6LTFweDtcclxufVxyXG5cclxuLmpzLWhpZ2gtbGlnaHQuaXMtYWN0aXZlIHNwYW46Zmlyc3Qtb2YtdHlwZSB7XHJcbiAgICBwYWRkaW5nOiAwLjFlbSAwIDAuMWVtIDAuMmVtO1xyXG59XHJcblxyXG4uanMtaGlnaC1saWdodC5pcy1hY3RpdmUgc3BhbjpsYXN0LW9mLXR5cGUge1xyXG4gICAgcGFkZGluZzogMC4xZW0gMC4yZW0gMC4xZW0gMDtcclxufVxyXG5cclxuLmNyc19fcXVlc3Rpb25zIHtcclxuICAgIHBhZGRpbmctbGVmdDogNDhweDtcclxuICAgIHRleHQtc2hhZG93OiBub25lO1xyXG4gICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDI1cHg7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcblxyXG4gICAgQG1lZGlhKG1pbi13aWR0aDogJHNtYWxsKSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4uY3JzX19xdWVzdGlvbnMgYSB7XHJcbiAgICBjb2xvcjogJGJyYW5kLWJsdWU7XHJcbiAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgb3BhY2l0eTogMC43NTtcclxuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuICAgIH1cclxufVxyXG5cclxuLmpzLWRpZC15b3Uta25vdy1zaG93IHtcclxuICAgIEBtZWRpYShtaW4td2lkdGg6ICRtZWRpdW0pIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIHRyYW5zaXRpb246IDAuM3Mgb3BhY2l0eTtcclxuICAgIH1cclxufVxyXG5cclxuLmpzLWRpZC15b3Uta25vdy1zaG93LnNob3dpbmcge1xyXG4gICAgb3BhY2l0eTogMTtcclxufVxyXG5cclxuLmNyc19fcXVlc3Rpb24ge1xyXG4gICAgYmFja2dyb3VuZDogJGJyYW5kLWJsdWU7XHJcbiAgICB3aWR0aDogMzJweDtcclxuICAgIGhlaWdodDogMzJweDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICBtYXJnaW46IDRweCAxNnB4IDBweCAtNDhweDtcclxuXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgICBjb250ZW50OiAnPyc7XHJcbiAgICAgICAgY29sb3I6ICNmZmZmZmY7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcclxuICAgICAgICBmb250LXNpemU6IDI0cHg7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgfVxyXG59XHJcbi8qIEhFQURJTkcgU0xJREUgKi9cclxuLnNpdGUtYmFubmVyLS1jYXRzLXJlcG9ydCB7XHJcbiAgICBtaW4taGVpZ2h0OiA2NDBweDtcclxuICAgIGJhY2tncm91bmQ6ICMxYjFiMWI7XHJcblxyXG4gICAgQG1lZGlhKG1pbi13aWR0aDogJGxhcmdlKSB7XHJcbiAgICAgICAgbWluLWhlaWdodDogOTAwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLnJvdyB7XHJcbiAgICAgICAgbWluLWhlaWdodDogNjQwcHg7XHJcblxyXG4gICAgICAgIEBtZWRpYShtaW4td2lkdGg6ICRsYXJnZSkge1xyXG4gICAgICAgICAgICBtaW4taGVpZ2h0OiA5MDBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnNpdGUtYmFubmVyX19oZWFkaW5nIHtcclxuICAgICAgICBjb2xvcjogJGJyYW5kLXNpbHZlci1mb3g7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgICB0ZXh0LXNoYWRvdzogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICAuY29sIHtcclxuICAgICAgICAvLyBVc2VkIHRvIGZpeCBJRSBpc3N1ZVxyXG4gICAgICAgIEBpbmNsdWRlIGllLWZhbGxiYWNrKCRsYXJnZSkge1xyXG4gICAgICAgICAgICBmbGV4LWJhc2lzOiBhdXRvO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuY29udGFpbmVyIHtcclxuICAgICAgICBtaW4taGVpZ2h0OiAxMDB2aDtcclxuXHJcbiAgICAgICAgQG1lZGlhKG1pbi13aWR0aDogJGxhcmdlKSB7XHJcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDEwMHZoO1xyXG4gICAgICAgICAgICB6LWluZGV4OiAyO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLnNpdGUtYmFubmVyLS1jYXRzLXJlcG9ydCAub3Zlci1zaXplLWZpeCB7XHJcbiAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb24teDogODUlO1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbi15OiAwJTtcclxuXHJcbiAgICBAbWVkaWEobWluLXdpZHRoOjc2OHB4KSB7XHJcbiAgICAgICAgLypiYWNrZ3JvdW5kLXNpemU6IDE2NSU7Ki9cclxuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IDEwMCU7XHJcbiAgICB9XHJcblxyXG4vKiAgICBAbWVkaWEobWluLXdpZHRoOjEwMjRweCkge1xyXG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XHJcbiAgICB9Ki9cclxufVxyXG5cclxuLnNpdGUtYmFubmVyLS1jYXRzLXJlcG9ydCAuY29sLWxnLTgge1xyXG4gICAgYWxpZ24tc2VsZjogZmxleC1lbmQ7XHJcblxyXG4gICAgQG1lZGlhKG1pbi13aWR0aDo3NjhweCkge1xyXG4gICAgICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5zaXRlLWJhbm5lci0tY2F0cy1yZXBvcnQgaDEge1xyXG4gICAgY29sb3I6ICNmZmZmZmY7XHJcbiAgICB0ZXh0LXNoYWRvdzogMHB4IDJweCAzcHggcmdiYSgwLDAsMCwwLjUpO1xyXG4gICAgbWFyZ2luLXRvcDogMTAwcHg7XHJcbiAgICBmb250LWZhbWlseTogJGNhdHMtbWVkO1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcclxuICAgIGZvbnQtc2l6ZTogNTBweDtcclxuICAgIG1hcmdpbi1ib3R0b206IDAuMjVlbTtcclxuXHJcbiAgICBAbWVkaWEobWluLXdpZHRoOjc2OHB4KSB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMTAwcHg7XHJcbiAgICAgICAgZm9udC1zaXplOiA1dnc7XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhKG1pbi13aWR0aDoxMDI0cHgpIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAyMDBweDtcclxuICAgICAgICBmb250LXNpemU6IDV2dztcclxuICAgIH1cclxufVxyXG5cclxuLnNpdGUtYmFubmVyLS1jYXRzLXJlcG9ydCAuYnRuLCAuYmctbW9ybmluZy10YW5nZXJpbmUgLmJ0biB7XHJcbiAgICBwb3NpdGlvbjogaW5pdGlhbDtcclxuICAgIHRvcDogYXV0bztcclxuICAgIGJvdHRvbTogYXV0bztcclxuICAgIHJpZ2h0OiBhdXRvO1xyXG4gICAgdHJhbnNmb3JtOiBub25lO1xyXG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMHB4O1xyXG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDBweDtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIGZvbnQtZmFtaWx5OiAkY2F0cztcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMWVtO1xyXG5cclxuICAgIEBtZWRpYShtaW4td2lkdGg6NzY4cHgpIHtcclxuICAgICAgICB3aWR0aDogYXV0bztcclxuICAgIH1cclxufVxyXG5cclxuLnNpdGUtYmFubmVyLS1jYXRzLXJlcG9ydCAuYXJyb3ctZG93bi1pY29uIHtcclxuICAgIGZvbnQtc2l6ZTogNGVtO1xyXG4gICAgY29sb3I6ICNmZmZmZmY7XHJcbiAgICB0ZXh0LXNoYWRvdzogMHB4IDJweCAzcHggcmdiYSgwLDAsMCwwLjUpO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgY29sb3I6ICNmY2MzMmE7XHJcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcbiAgICB9XHJcblxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgQGluY2x1ZGUgaWNvbihjaGV2LWRvd24pO1xyXG4gICAgfVxyXG59XHJcblxyXG4uY3JzX19yaHMtaW50cm9fd3JhcHBlciB7XHJcbiAgICBAbWVkaWEobWluLXdpZHRoOjEwMjRweCkge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICByaWdodDogMiU7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAzOSU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gICAgfVxyXG59XHJcblxyXG4uY3JzX19yaHMtbGctNF93cmFwcGVyIHtcclxuICAgIEBtZWRpYShtaW4td2lkdGg6MTAyNHB4KSB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIG1heC13aWR0aDogMzElO1xyXG4gICAgICAgIGxlZnQ6IDY2LjY2JTtcclxuICAgICAgICBib3R0b206IC0xMCU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jcnNfX3Jocy1sZy02X3dyYXBwZXIge1xyXG4gICAgQG1lZGlhKG1pbi13aWR0aDoxMDI0cHgpIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAzNSU7XHJcbiAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgbGVmdDogNTUlO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAlLCAtNTAlKTtcclxuICAgIH1cclxufVxyXG5cclxuLmNyc19fbGhzLWxnLTZfd3JhcHBlciB7XHJcbiAgICBAbWVkaWEobWluLXdpZHRoOjEwMjRweCkge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICBtYXgtd2lkdGg6IDM1JTtcclxuICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICBsZWZ0OiAxMCU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCUsIC01MCUpO1xyXG4gICAgfVxyXG59XHJcblxyXG4uY2F0cy1pbi10aGUtbmlnaHQtZml4IHtcclxuICAgIHRvcDogYXV0bztcclxuICAgIGJvdHRvbTogMCU7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwJSwgMCUpO1xyXG59XHJcblxyXG4uY3JzX19saHMtbGctNF93cmFwcGVyIHtcclxuICAgIEBtZWRpYShtaW4td2lkdGg6MTAyNHB4KSB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIG1heC13aWR0aDogMjMuMzMlO1xyXG4gICAgICAgIGxlZnQ6IDEwJTtcclxuICAgICAgICBib3R0b206IC0yMCU7XHJcbiAgICB9XHJcbn1cclxuLyogU1RBVFMgU0xJREUgKi9cclxuLmNhdHMtcmVwb3J0X19zdGF0cyB7XHJcbiAgICB0ZXh0LXNoYWRvdzogMnB4IDJweCAycHggcmdiYSgwLDAsMCwwLjIpO1xyXG5cclxuICAgIHVsIHtcclxuICAgICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgbGkge1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgIGZsb2F0OiBub25lO1xyXG4gICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgfVxyXG5cclxuICAgIGxpOmJlZm9yZSB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG59XHJcblxyXG4uY2F0cy1yZXBvcnRfX3N0YXRzIGltZyB7XHJcbiAgICBwYWRkaW5nOiAyZW07XHJcblxyXG4gICAgQG1lZGlhKG1pbi13aWR0aDoxMDI0cHgpIHtcclxuICAgICAgICBwYWRkaW5nOiAwZW07XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jYXRzLXJlcG9ydF9fc3RhdHMgLmxhcmdlci10ZXh0IHtcclxuICAgIGZvbnQtZmFtaWx5OiAnYmFybWVuby1tZWRpdW0nO1xyXG5cclxuICAgIEBtZWRpYShtaW4td2lkdGg6MTAyNHB4KSB7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcclxuICAgICAgICBmb250LXNpemU6IDMwcHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jYXRzLXJlcG9ydF9fc3RhdHMgbGkge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMWVtO1xyXG4gICAgLyogICAgQG1lZGlhKG1pbi13aWR0aDoxMDI0cHgpIHtcclxuICAgICAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICB9Ki9cclxufVxyXG4vKiBRVU9URSBTTElERSAqL1xyXG4uanMtY2F0cy1yZXBvcnQtcXVvdGVzLXNsaWNrIHtcclxuICAgIHBhZGRpbmctYm90dG9tOiAxLjVlbTtcclxuICAgIG1hcmdpbjogMDtcclxufVxyXG5cclxuLmNhdHMtcmVwb3J0LXNsaWRlX19xdW90ZS1ibG9jayB7XHJcbiAgICBwYWRkaW5nOiAzZW0gMGVtIDFlbTtcclxufVxyXG5cclxuLmNhdHMtcmVwb3J0LXNsaWRlX19xdW90ZS1ibG9jayBwIHtcclxuICAgIHBhZGRpbmc6IDBlbSAxNnB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcclxuICAgIGZvbnQtZmFtaWx5OiAnYmFybWVuby1yb21hbicsIEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XHJcblxyXG4gICAgQG1lZGlhKG1pbi13aWR0aDoxMDI0cHgpIHtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgfVxyXG59XHJcblxyXG4uY2F0cy1yZXBvcnQtc2xpZGVfX3F1b3RlLWJsb2NrIHAuY2F0cy1yZXBvcnQtc2xpZGVfX3F1b3RlIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHotaW5kZXg6IDEwO1xyXG5cclxuICAgIEBtZWRpYShtaW4td2lkdGg6MTAyNHB4KSB7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAzNnB4O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjRweDtcclxuICAgIH1cclxufVxyXG4uY2F0cy1yZXBvcnQtc2xpZGVfX3F1b3RlOmFmdGVyIHtcclxuICAgIGNvbnRlbnQ6ICcgJztcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZykgdHJhbnNsYXRlKC0zcHgsLThweCk7XHJcbiAgICBoZWlnaHQ6IDMycHg7XHJcbiAgICB3aWR0aDozMnB4O1xyXG4gICAgei1pbmRleDogMTtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1hZ2VzL3N2Zy9yZXBvcnQtcXVvdGUtdjIuc3ZnJyk7XHJcblxyXG4vKiAgICBAbWVkaWEobWluLXdpZHRoOjEwMjRweCkge1xyXG4gICAgICAgIGxlZnQ6IDBweDtcclxuICAgIH0qL1xyXG4gICAgLyogICAgICAgIGNvbnRlbnQ6ICdcXDIwMTggXFwyMDE4JztcclxuICAgICAgICBjb2xvcjogI2Q3Y2ZjMTtcclxuICAgICAgICBmb250LXNpemU6IDZlbTtcclxuICAgICAgICBvcGFjaXR5OiAwLjc7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogLTIwcHg7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC01MHB4O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICBmb250LWZhbWlseTogXCJiYXJtZW5vLXJlZ3VsYXJcIjtcclxuICAgICAgICB6LWluZGV4OiAtMTtcclxuICAgICAgICBsZXR0ZXItc3BhY2luZzogLThweDtcclxuXHJcbiAgICAgICAgQG1lZGlhKG1pbi13aWR0aDoxMDI0cHgpIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiA1ZW07XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC0yMHB4O1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLTU2cHg7XHJcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAtMTBweDtcclxuICAgICAgICB9Ki9cclxufVxyXG4uY2F0cy1yZXBvcnQtc2xpZGVfX3F1b3RlOmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiAnICc7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDBweDtcclxuICAgIGxlZnQ6IC0xNnB4O1xyXG4gICAgd2lkdGg6IDMycHg7XHJcbiAgICBoZWlnaHQ6IDMycHg7XHJcbiAgICB6LWluZGV4OiAxO1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWFnZXMvc3ZnL3JlcG9ydC1xdW90ZS12Mi5zdmcnKTtcclxuXHJcbiAgICBAbWVkaWEobWluLXdpZHRoOjEwMjRweCkge1xyXG4gICAgICAgIGxlZnQ6IDBweDtcclxuICAgIH1cclxuICAgIC8qICAgICAgICBjb250ZW50OiAnXFwyMDE4IFxcMjAxOCc7XHJcbiAgICAgICAgY29sb3I6ICNkN2NmYzE7XHJcbiAgICAgICAgZm9udC1zaXplOiA2ZW07XHJcbiAgICAgICAgb3BhY2l0eTogMC43O1xyXG4gICAgICAgIG1hcmdpbi10b3A6IC0yMHB4O1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtNTBweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMTtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiYmFybWVuby1yZWd1bGFyXCI7XHJcbiAgICAgICAgei1pbmRleDogLTE7XHJcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC04cHg7XHJcblxyXG4gICAgICAgIEBtZWRpYShtaW4td2lkdGg6MTAyNHB4KSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogNWVtO1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtMjBweDtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC01NnB4O1xyXG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLTEwcHg7XHJcbiAgICAgICAgfSovXHJcbn1cclxuXHJcbi5jYXRzLXJlcG9ydC1zbGlkZV9faW5mby1ibG9jayB7XHJcbiAgICBwYWRkaW5nOiAzZW0gMWVtIDJlbSAxZW07XHJcblxyXG4gICAgQG1lZGlhKG1pbi13aWR0aDogJGxhcmdlKSB7XHJcbiAgICAgICAgcGFkZGluZzogM2VtIDFlbSAyZW0gMGVtO1xyXG4gICAgfVxyXG59XHJcblxyXG4uY2F0cy1yZXBvcnQtc2xpZGVfX2luZm8tYmxvY2sgaDQge1xyXG4gICAgZm9udC1mYW1pbHk6ICRjYXRzLW1lZDtcclxuICAgIGZvbnQtc2l6ZTogMjRweDtcclxuXHJcbiAgICBAbWVkaWEobWluLXdpZHRoOiAkbGFyZ2UpIHtcclxuICAgICAgICBmb250LXNpemU6IDMwcHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jYXRzLXJlcG9ydC1zbGlkZV9faW5mby1ibG9jayBwIHtcclxuICAgIGZvbnQtZmFtaWx5OiAkY2F0cztcclxuXHJcbiAgICBAbWVkaWEobWluLXdpZHRoOiAkbGFyZ2UpIHtcclxuICAgICAgICBmb250LXNpemU6IDMwcHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDM2cHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbiNpbnBhZ2UtZmxvYXRpbmctbWVudSB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG5cclxuICAgIEBtZWRpYShtaW4td2lkdGg6ICR4TGFyZ2UpIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRibGFjaywgMC44NSk7XHJcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgICAgIGxlZnQ6IDAlO1xyXG4gICAgICAgIHRvcDogNTUlO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICAgICAgICB6LWluZGV4OiAxMDAwO1xyXG4gICAgICAgIC8vIFVzZWQgdG8gZml4IElFIGlzc3VlXHJcbiAgICAgICAgQGluY2x1ZGUgaWUtZmFsbGJhY2soJHhMYXJnZSkge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLm1lbnUtbGluay1zcGFjZXIge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB0b3A6IC0xNTBweDtcclxuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxufVxyXG5cclxuI2lucGFnZS1mbG9hdGluZy1tZW51OmhvdmVyIGEge1xyXG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxufVxyXG5cclxuI2lucGFnZS1mbG9hdGluZy1tZW51IGEge1xyXG4gICAgbWFyZ2luLWxlZnQ6IC05OTk5cHg7XHJcbiAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG59XHJcblxyXG4jaW5wYWdlLWZsb2F0aW5nLW1lbnUgdWwgbGk6YmVmb3JlIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcclxufVxyXG5cclxuI2lucGFnZS1mbG9hdGluZy1tZW51IHVsIGxpIHVsIHtcclxuICAgIG1hcmdpbi1sZWZ0OiAtMzBweDtcclxufVxyXG5cclxuI2lucGFnZS1mbG9hdGluZy1tZW51IHVsIGxpIHVsIGxpOmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgd2lkdGg6IDVweDtcclxuICAgIGhlaWdodDogNXB4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgdG9wOiAxNXB4O1xyXG4gICAgbGVmdDogMTBweDtcclxufVxyXG5cclxuI2lucGFnZS1mbG9hdGluZy1tZW51IGxpLmlzLWFjdGl2ZTpiZWZvcmUge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXllbGxvdztcclxufVxyXG5cclxuI2lucGFnZS1mbG9hdGluZy1tZW51IHVsIGxpIHVsIGEge1xyXG4gICAgZm9udC1zaXplOiAwLjc1ZW07XHJcbn1cclxuXHJcbiNpbnBhZ2UtZmxvYXRpbmctbWVudSAuaXMtYWN0aXZlID4gYSB7XHJcbiAgICBjb2xvcjogJGJyYW5kLXllbGxvdztcclxufVxyXG5cclxuI2lucGFnZS1mbG9hdGluZy1tZW51IC5kb3dubG9hZC1pYyB7XHJcbiAgICBsaW5lLWhlaWdodDogMS43NTtcclxuXHJcbiAgICAuZG93bmxvYWQtaWMtLWljb24ge1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogNnB4O1xyXG5cclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICB3aWR0aDogMjRweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jYXRzLXJlcG9ydC1zbGlkZS1hbmltYXRpb24tc3R5bGUtMSB7XHJcbiAgICB0cmFuc2l0aW9uOiAzMDBtcyBvcGFjaXR5LCAxMDBtcyB0cmFuc2Zvcm07XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpO1xyXG4gICAgb3BhY2l0eTogMC41O1xyXG5cclxuICAgICYuaXMtYWN0aXZlIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxufVxyXG5cclxuLmpzLWRlbGF5LW1lIGxpIHtcclxuICAgIHRyYW5zaXRpb246IDMwMG1zIG9wYWNpdHk7XHJcbn1cclxuXHJcbi5qcy1vcGFjaXR5LTAge1xyXG4gICAgb3BhY2l0eTogMDtcclxufVxyXG5cclxuLmNhdHMtcmVwb3J0LXNsaWRlLXN0aWNreSB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB0b3A6IDA7XHJcbiAgICB3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLmNhdHMtcmVwb3J0LXNsaWRlLXN0aWNreS0tcGFzdCB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IGF1dG87XHJcbiAgICBib3R0b206IDA7XHJcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAxMDBtcztcclxufVxyXG5cclxuLmNhdHMtcmVwb3J0LXNsaWRlLXN0aWNreS0tc3R1Y2sge1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgYm90dG9tOiBhdXRvO1xyXG4gICAgdG9wOiAwO1xyXG59XHJcblxyXG4uanMtc2xpZGUtaW1hZ2Uge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLmpzLXNsaWRlLWltYWdlLS1hY3RpdmUge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuXHJcbi5qcy1zbGlkZS1idWxsZXRzIGxpIHtcclxuICAgIEBtZWRpYShtaW4td2lkdGg6ICRsYXJnZSkge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogMC4zcztcclxuICAgIH1cclxufVxyXG5cclxuLmpzLXNsaWRlLWJ1bGxldHMgbGkuanMtc2xpZGUtYnVsbGV0cy0tYWN0aXZlIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbn1cclxuXHJcbi5vd25lcnNoaXAtYmxvY2sgbGkge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgcGFkZGluZy1sZWZ0OiAzOHB4ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5vd25lcnNoaXAtYmxvY2sgbGkgc3BhbiB7XHJcbiAgICB3aWR0aDogMjVweDtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIG1hcmdpbi1yaWdodDogOHB4O1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAwcHg7XHJcbiAgICBsZWZ0OiAwcHg7XHJcbn1cclxuXHJcbi5vd25lcnNoaXAtYmxvY2stLWNsci0xIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNjNzM1NDQ7XHJcbn1cclxuXHJcbi5vd25lcnNoaXAtYmxvY2stLWNsci0yIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNjYzVjNWI7XHJcbn1cclxuXHJcbi5vd25lcnNoaXAtYmxvY2stLWNsci0zIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNkYThmODY7XHJcbn1cclxuXHJcbi5vd25lcnNoaXAtYmxvY2stLWNsci00IHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNlNGI1YWQ7XHJcbn1cclxuXHJcbi5vd25lcnNoaXAtYmxvY2stLWNsci01IHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmM2RmZDc7XHJcbn1cclxuIiwiLmFhY19jYXB0aW9uIHtcclxuICAgIG1pbi1oZWlnaHQ6MzRweDtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgbWFyZ2luLXRvcDowcHggIWltcG9ydGFudDtcclxuICAgIHBhZGRpbmctcmlnaHQ6MjBweDtcclxuXHJcbn1cclxuLmZpbmRhQ2F0SW5mbyB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMkVNO1xyXG59XHJcblxyXG4uZmluZGFDYXRJbmZvX2ltYWdlIHtcclxuICAgIHdpZHRoOiAyOCU7XHJcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcclxuICAgIGhlaWdodDogMTN2dztcclxuICAgIG1heC1oZWlnaHQ6IDI1MHB4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogMWVtO1xyXG59XHJcblxyXG4uZmluZGFDYXRJbmZvX2ltYWdlLS1wbGFjZWhvbGQge1xyXG4gICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgI2YxZjFmMTtcclxufVxyXG5cclxuLmZpbmRhQ2F0SW5mb19jb250ZW50IHtcclxuICAgIHdpZHRoOiA2OCU7XHJcbiAgICBwYWRkaW5nOiAwIDFlbTtcclxufVxyXG5cclxuLmZpbmRhQ2F0SW5mb19pbmZvIHtcclxuICAgIHBhZGRpbmc6IDFlbTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICMxOUEwOUE7XHJcbiAgICBjb2xvcjogI2ZmZjtcclxuICAgIGJvcmRlci1yYWRpdXM6IDFlbTtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XHJcbiAgICBmb250LXNpemU6IDEuMjVlbTtcclxufVxyXG4uZmluZEFDYXRJbmZvX2ljb24ge1xyXG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICBmb250LXNpemU6IDI0cHg7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiA1cHg7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxufVxyXG4uZmluZEFDYXRJbmZvX2ljb246aG92ZXIge1xyXG4gICAgY29sb3I6ICNmY2MzMmE7XHJcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxufVxyXG4uZmluZGFDYXRJbmZvX2hlYWRpbmcge1xyXG4gICAgZm9udC1zaXplOiAxLjVlbTtcclxuICAgIHBhZGRpbmctYm90dG9tOiAxLjJyZW07XHJcbn1cclxuXHJcbkBtZWRpYShtYXgtd2lkdGg6MTAyNHB4KSB7XHJcbiAgICAuZmluZGFDYXRJbmZvX2hlYWRpbmcge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMS4yZW07XHJcbiAgICB9XHJcblxyXG4gICAgLmZpbmRhQ2F0SW5mb19pbmZvIHtcclxuICAgICAgICBmb250LXNpemU6IDEuMmVtO1xyXG4gICAgfVxyXG5cclxuICAgIC5maW5kYUNhdEluZm8ge1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBpbml0aWFsO1xyXG4gICAgfVxyXG5cclxuICAgIC5maW5kYUNhdEluZm9faW1hZ2Uge1xyXG4gICAgICAgIGhlaWdodDogYXV0bztcclxuICAgIH1cclxufVxyXG5cclxuQG1lZGlhIChtYXgtd2lkdGg6NzY4cHgpIHtcclxuICAgIC5maW5kYUNhdEluZm8ge1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBpbml0aWFsO1xyXG4gICAgfVxyXG5cclxuICAgIC5maW5kYUNhdEluZm9faW1hZ2Uge1xyXG4gICAgICAgIHdpZHRoOiA0MCU7XHJcbiAgICB9XHJcblxyXG4gICAgLmZpbmRhQ2F0SW5mb19jb250ZW50IHtcclxuICAgICAgICB3aWR0aDogNjAlO1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDo2MDBweCkge1xyXG4gICAgLmZpbmRhQ2F0SW5mbyB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB9XHJcblxyXG4gICAgLmZpbmRhQ2F0SW5mb19jb250ZW50IHtcclxuICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgfVxyXG5cclxuICAgIC5maW5kYUNhdEluZm9faW1hZ2Uge1xyXG4gICAgICAgIGhlaWdodDogMjUwcHg7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMWVtO1xyXG4gICAgfVxyXG59XHJcbiNyZWFjdENhdHMgLm1lZGlhLS1saW5rIHtcclxuICAgIGJhY2tncm91bmQ6ICRsaWdodC1wdXJwbGU7XHJcbiAgICBjb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuXHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogJGxpZ2h0LXB1cnBsZSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgIGEge1xyXG4gICAgICAgIGN1cnNvcjogcG9pbnRlciAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG59XHJcbiIsIiNTcG9uc29yUG9ydGFsQm9keSB7XHJcbiAgICAvKiBMYXlvdXQgKi9cclxuICAgIC5ncmlkLWRvdWJsZS10aGlyZCB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjlweCkge1xyXG4gICAgICAgICAgICB3aWR0aDogNjYuNjYlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuZ3JpZC1kb3VibGUtcXVhcnRlciB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjlweCkge1xyXG4gICAgICAgICAgICB3aWR0aDogNTAlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8qIEhlYWRlciAqL1xyXG4gICAgLmhlYWRlci1ncm91cF93cmFwcGVyIHtcclxuICAgICAgICAuaGVhZGVyLWdyb3VwX2J1dHRvbnMtbG9nby1zb2NpYWwge1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xyXG5cclxuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRuYXZpZ2F0aW9uLWJyZWFrcG9pbnQpIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAzNXB4O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuaGVhZGVyLWdyb3VwX2J1dHRvbnMge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiAxMTZweDtcclxuXHJcbiAgICAgICAgICAgICAgICBoMSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDYwMHB4KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5oZWFkZXItZ3JvdXBfX2xvZ28gaW1nIHtcclxuICAgICAgICAgICAgbWFyZ2luOiBpbml0aWFsO1xyXG5cclxuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRuYXZpZ2F0aW9uLWJyZWFrcG9pbnQpIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbjogYXV0bztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmhlYWRlci1ncm91cF9fc29jaWFsLXNlYXJjaCB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZW5kO1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogZW5kO1xyXG5cclxuICAgICAgICAgICAgLnNvY2lhbCB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG5cclxuICAgICAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbmF2aWdhdGlvbi1icmVha3BvaW50KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5sb2dpbiB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA4cHg7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLnNocmluay1oZWFkZXIge1xyXG4gICAgICAgICAgICAuaGVhZGVyLWdyb3VwX2J1dHRvbnMtbG9nby1zb2NpYWwge1xyXG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxMi41cHg7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5oZWFkZXItZ3JvdXBfX3NvY2lhbC1zZWFyY2gge1xyXG4gICAgICAgICAgICAgICAgZmxleC13cmFwOiBub3dyYXA7XHJcblxyXG4gICAgICAgICAgICAgICAgLnNvY2lhbCB7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAubG9naW4ge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDBweDtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8qIExhbmRpbmcgUGFnZSAtIFdlbGNvbWUgUGFuZWwgKi9cclxuICAgIC5zcC13ZWxjb21lLWdyaWQge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG5cclxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XHJcbiAgICAgICAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnNwLXdlbGNvbWUtbmFtZSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBhbGlnbi1zZWxmOiBzdGFydDtcclxuICAgICAgICAgICAgbWluLXdpZHRoOiAzMCU7XHJcblxyXG4gICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJG5hdmlnYXRpb24tYnJlYWtwb2ludCkge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgICAgICAgICAgICBhbGlnbi1zZWxmOiBzdGFydDtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDBweCAyNHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuXHJcblxyXG4gICAgICAgIC5zcC13ZWxjb21lLXRleHQge1xyXG4gICAgICAgICAgICAvKndpZHRoOiAxMDAlOyovXHJcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxNnB4O1xyXG5cclxuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuc3Atd2VsY29tZS1kYXRhIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuXHJcbiAgICAgICAgLnNwLXdlbGNvbWUtZGF0YS1pdGVtIHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgbWluLXdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEyLjVweDtcclxuXHJcbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjlweCkge1xyXG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiA1MCU7XHJcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDUwJTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRuYXZpZ2F0aW9uLWJyZWFrcG9pbnQpIHtcclxuICAgICAgICAgICAgICAgIG1pbi13aWR0aDogMjAlO1xyXG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAyMCU7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGJyYW5kLXB1cnBsZTtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMzZweDtcclxuICAgICAgICAgICAgICAgIG1hcmdpbjogMHB4IDhweCAwcHggMHB4O1xyXG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiAzNnB4O1xyXG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogMzZweDtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuXHJcbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYnJhbmQtcGluaztcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgcCB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IDBweDtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMC45ZW07XHJcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS4yNWVtO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA4cHg7XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8qIExhbmRpbmcgUGFnZSAtIFlvdXIgUGVucyAqL1xyXG4gICAgLnNwLXlvdXItcGVuLWJnLWltYWdlIHtcclxuICAgICAgICBtaW4taGVpZ2h0OiAzNzVweDtcclxuXHJcbiAgICAgICAgZGl2IHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDMwMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuc3AteW91ci1wZW4tZGl2aWRlciB7XHJcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDBweDtcclxuXHJcbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OXB4KSB7XHJcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgJGJyYW5kLXB1cnBsZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnNwLXlvdXItcGVuLXN0YXRzIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcclxuXHJcbiAgICAgICAgZGl2IHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHJcbiAgICAgICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDI2cHg7XHJcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjZweDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgc3Ryb25nIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTZweDtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA4cHg7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDI0cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAvKiBMYW5kaW5nIFBhZ2UgLSBNeSBDYXQgQ29tbXVuaXR5ICovXHJcbiAgICAuc3AtbXktY29tbXVuaXR5LW5hdiB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHJcbiAgICAgICAgdWwge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG5cclxuICAgICAgICAgICAgbGkge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMHB4IDEycHg7XHJcblxyXG4gICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRuYXZpZ2F0aW9uLWJyZWFrcG9pbnQpIHtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwcHggMjRweDtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgJHdoaXRlO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8qY29sb3I6ICRicmFuZC1waW5rOyovXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkYnJhbmQtcGluaztcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJyYW5kLXBpbms7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkYnJhbmQtcGluaztcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnNwLW15LWNvbW11bml0eS1pdG0ge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcclxuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkbGlnaHQtcHVycGxlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnNwLW15LWNvbW11bml0eS1iZy1pbWFnZSB7XHJcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDMwMHB4O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XHJcblxyXG4gICAgICAgICAgICBkaXYge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogMzAwcHg7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwcHg7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuc3AtbXktY29tbXVuaXR5LWl0bS10ZXh0IHtcclxuICAgICAgICAgICAgcGFkZGluZzogMTJweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAvKiBIb21lcGFnZSBDYXJvdXNlbCAqL1xyXG4gICAgLnNwLW15LWNvbW11bml0eS1jYXJvdXNlbCB7XHJcbiAgICAgICAgLnNsaWNrLXByZXYge1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcclxuXHJcbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxNDAwcHgpIHtcclxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0xNTAlLCAtNTAlKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnNsaWNrLW5leHQge1xyXG4gICAgICAgICAgICByaWdodDogLTE1cHg7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDUwJSwgLTUwJSk7XHJcblxyXG4gICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTQwMHB4KSB7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgxNTAlLCAtNTAlKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnNsaWNrLWRvdHMge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyNHB4O1xyXG5cclxuICAgICAgICAgICAgbGkgYnV0dG9uOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGxpLnNsaWNrLWFjdGl2ZSBidXR0b246YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1wdXJwbGU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAvKiBQZW4gUGFnZSBDcm91c2VsICovXHJcbiAgICAuc3AtbXktY29tbXVuaXR5LWNhcm91c2VsLXByZXZpb3VzLWd1ZXN0cyB7XHJcbiAgICAgICAgLnNsaWNrLXByZXYge1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcclxuXHJcbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxNDAwcHgpIHtcclxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0xNTAlLCAtNTAlKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnNsaWNrLW5leHQge1xyXG4gICAgICAgICAgICByaWdodDogLTE1cHg7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDUwJSwgLTUwJSk7XHJcblxyXG4gICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTQwMHB4KSB7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgxNTAlLCAtNTAlKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuc3AtbXktY29tbXVuaXR5LXN0YXRzIHtcclxuICAgICAgICBwYWRkaW5nLXRvcDogNHB4O1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cclxuICAgICAgICBkaXYge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG5cclxuICAgICAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJyYW5kLXBpbms7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDI2cHg7XHJcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjZweDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgc3Ryb25nIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMHB4O1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDhweDtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8qIENhdCBDb21tdW5pdHkgUG9wIFVwKi9cclxuICAgIC5zcC1jb21tdW5pdHktcG9wdXAtd3JhcHBlciB7XHJcbiAgICAgICAgbWF4LWhlaWdodDogOTAlO1xyXG4gICAgICAgIHBhZGRpbmc6IDBweDtcclxuICAgICAgICAvKm1heC13aWR0aDogMTIwMHB4OyovXHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICAgICAuc3AtY29tbXVuaXR5LXBvcHVwIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xyXG5cclxuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OXB4KSB7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuc3AtY29tbXVuaXR5LXBvcHVwLWJnLWltYWdlIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGNvbnRlbnRzO1xyXG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogMjAwcHg7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XHJcblxyXG4gICAgICAgICAgICAgICAgZGl2IHtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICAgICAgLypiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47Ki9cclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgbWluLWhlaWdodDogMzAwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwcHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5jb21tZW50cy1ibG9jay13cmFwcGVyIHtcclxuXHJcbiAgICAgICAgICAgICAgICAuY29tbWVudHMtYmxvY2stdXBwZXItc2VjdGlvbiB7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIC5zcC1teS1jb21tdW5pdHktaW50cm8ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJyYW5kLXB1cnBsZTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIC5jb21tZW50LWJsb2NrOm50aC1jaGlsZChvZGQpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGxpZ2h0LXB1cnBsZTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgLmNvbW1lbnRzLWJsb2NrLWxvd2VyLXNlY3Rpb24ge1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkYnJhbmQtcHVycGxlO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAuY29tbWVudC1ib3gge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFlNmZhO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgb3V0bGluZTogMXB4IHNvbGlkICNkYWMwZDggIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIC5jb21tZW50LWJveDpmb2N1cyB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG91dGxpbmU6IDFweCBzb2xpZCAjZGFjMGQ4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAuYnRuIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiA2cHggMTRweDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OXB4KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcclxuICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdy15OiBoaWRkZW47XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAuY29tbWVudHMtYmxvY2stdXBwZXItc2VjdGlvbiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogNzUlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdy14OiBoaWRkZW47XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIC5jb21tZW50cy1ibG9jay1sb3dlci1zZWN0aW9uIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAyNSU7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIC5zcC1teS1jb21tdW5pdHktc3RhdHMge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLyogTGFuZGluZyBQYWdlIC0gTmV3c2xldHRlciAqL1xyXG4gICAgLnNwLW15LW5ld3NsZXR0ZXItYmctaW1hZ2Uge1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IDMwMHB4O1xyXG5cclxuICAgICAgICBkaXYge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDMwMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8qIFBlbiBQYWdlICovXHJcbiAgICAuc3AtcGVuLXBhZ2UtdmlkZW8ge1xyXG4gICAgICAgIGEge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBzcGFuIHtcclxuICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgc3Ryb25nIHtcclxuICAgICAgICAgICAgY29sb3I6ICRicmFuZC1waW5rO1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDBweDtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDhweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBzdHJvbmcge1xyXG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnNwLXBlbi1wYWdlLWxpa2Uge1xyXG4gICAgICAgIGEge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcblxyXG4gICAgICAgICAgICBzcGFuIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkYnJhbmQtcGluaztcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjZweDtcclxuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNnB4O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBzdHJvbmcge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICRicmFuZC1waW5rO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA4cHg7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMHB4O1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIHN0cm9uZyB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYuaXMtbGlrZWQge1xyXG4gICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIHN0cm9uZyB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRicmFuZC1waW5rO1xyXG4gICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIHN0cm9uZyB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYnJhbmQtcGluaztcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTE5NnB4KSB7XHJcbiAgICAgICAgLmpzLXlvdXItcGVucy1pdG0ge1xyXG5cclxuICAgICAgICAgICAgLmdyaWRfX2l0ZW0ge1xyXG5cclxuICAgICAgICAgICAgICAgIC5wZW4tYnRucyB7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgLndlYmNhbXMge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHN0YXJ0ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwLjVyZW0gIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnNwLXBlbi1kZXNjcmlwdGlvbiB7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyMDBweDtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxNTBweDtcclxuICAgIH1cclxuXHJcbiAgICAuc3BvbnNvci1raWRzIHtcclxuICAgICAgICAuYnRuLS1zZWNvbmRhcnkge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMUEwMDZCICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM3RTNCRTcgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmZmZmO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuanMteW91ci1wZW5zLWJ0biB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM3RTNCRTc7XHJcblxyXG4gICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnNwLXdlbGNvbWUtZGF0YS1pdGVtIHtcclxuICAgICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMUEwMDZCICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC50ZXh0LXdoaXRlIHtcclxuICAgICAgICAgICAgLmNtcy1oZWFkaW5nIHtcclxuICAgICAgICAgICAgICAgIGgyIHtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuY21zLWhlYWRpbmcge1xyXG4gICAgICAgICAgICBoMiB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogIzFBMDA2QiAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuc3Atd2VsY29tZS1uYW1lIHtcclxuICAgICAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogIzFBMDA2QiAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBoMiB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogIzFBMDA2QiAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuanMteW91ci1wZW5zLWl0bSB7XHJcbiAgICAgICAgICAgIGgzIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAjMUEwMDZCICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC50ZXh0LXB1cnBsZSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAjMUEwMDZCICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuc3AteW91ci1wZW4tc3RhdHMge1xyXG4gICAgICAgICAgICBpIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAjMUEwMDZCICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5iZy1saWdodC1ncmV5IHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0M2QkZEQTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5zcC15b3VyLXBlbi1kaXZpZGVyIHtcclxuICAgICAgICAgICAgLmJ0biB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMUEwMDZCICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzdFM0JFNztcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGUgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmJnLWdyZXkge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMUEwMDZCICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuYmctd2hpdGUgaDIge1xyXG4gICAgICAgICAgICBjb2xvcjogIzFBMDA2QjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5zcC1teS1jb21tdW5pdHktaXRtIHtcclxuICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAuc3AtbXktY29tbXVuaXR5LWl0bS10ZXh0IHtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjQzZCRkRBO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuYnRuLXNlY29uZCB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM3RTNCRTc7XHJcblxyXG4gICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMxQTAwNkIgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5zaXRlLWJhbm5lciB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMxQTAwNkIgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5jb250YWluZXIge1xyXG4gICAgICAgICAgICAuYnRuIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMxQTAwNkI7XHJcblxyXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzdFM0JFNyAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5tZWRpYV9faW1hZ2Uge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMUEwMDZCICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAubWVkaWFfX2NhcHRpb24ge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMUEwMDZCICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICAgICAgICAuYnRuLS1mb3VydGhseSB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogIzFBMDA2QiAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuc3AtcGVuLXBhZ2UtaW5mby1ibG9jayB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMxQTAwNkIgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5zcC1wZW4tcGFnZS12aWRlbyB7XHJcbiAgICAgICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIHN0cm9uZyB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGUgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnNwLXBlbi1wYWdlLWxpa2Uge1xyXG4gICAgICAgICAgICBzdHJvbmcge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICMxQTAwNkIgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnNsaWNrLXByZXYge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMUEwMDZCICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuc2xpY2stbmV4dCB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMxQTAwNkIgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5zcC1teS1jb21tdW5pdHktbmF2IHtcclxuICAgICAgICAgICAgdWwge1xyXG4gICAgICAgICAgICAgICAgbGkge1xyXG4gICAgICAgICAgICAgICAgICAgIC5hY3RpdmUge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAjN0UzQkU3ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzdFM0JFNyAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogIzdFM0JFNyAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5zcC1wZW4tcGFnZS0tc3RhdHMge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICBmb250LXNpemU6IDI0cHg7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMWVtO1xyXG4gICAgfVxyXG5cclxuICAgIC5zcC1wZW4tcGFnZS1jb21tZW50LWJveCB7XHJcbiAgICAgICAgLmNvbW1lbnQtYm94IHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZhZTZmYTtcclxuICAgICAgICAgICAgY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAgICAgICAgIG91dGxpbmU6IDFweCBzb2xpZCAjZGFjMGQ4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuY29tbWVudC1ib3g6Zm9jdXMge1xyXG4gICAgICAgICAgICBvdXRsaW5lOiAxcHggc29saWQgI2RhYzBkOCAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmJ0biB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgICAgICAgcGFkZGluZzogNnB4IDE0cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5zcC1wZW4tcGFnZS1jb21tZW50cy1zb3J0aW5nIGEge1xyXG4gICAgICAgIGNvbG9yOiAkYnJhbmQtcGluaztcclxuICAgICAgICBwYWRkaW5nOiAwcHggMTJweDtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgICAgICY6Zmlyc3Qtb2YtdHlwZSB7XHJcbiAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgIHRvcDogMHB4O1xyXG4gICAgICAgICAgICAgICAgcmlnaHQ6IC0xcHg7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYnJhbmQtcGluaztcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuICAgICAgICAgICAgY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuc3AtcGVuLXBhZ2UtY29tbWVudHMge1xyXG4gICAgICAgIG1heC1oZWlnaHQ6IDI1MHB4O1xyXG5cclxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY5cHgpIHtcclxuICAgICAgICAgICAgbWF4LWhlaWdodDogNDQ4cHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xyXG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYnJhbmQtcHVycGxlO1xyXG5cclxuICAgICAgICAuY29tbWVudC1ibG9jayB7XHJcbiAgICAgICAgICAgIHAge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmOm50aC1jaGlsZChvZGQpIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRsaWdodC1wdXJwbGU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIiwi77u/LmV2ZW50cyB7XHJcblxyXG4gICAgI2V2ZW50cy1jb250YWluZXIge1xyXG4gICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBlYXNlO1xyXG4gICAgfVxyXG5cclxuICAgICNldmVudHMtbG9hZGluZyBwIHtcclxuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgICBhbmltYXRpb246IHB1bHNlIDFzIGluZmluaXRlO1xyXG4gICAgfVxyXG5cclxuICAgIEBrZXlmcmFtZXMgcHVsc2Uge1xyXG4gICAgICAgIDAlIHtcclxuICAgICAgICAgICAgb3BhY2l0eTogMC4zO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgNTAlIHtcclxuICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIDEwMCUge1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAwLjM7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5ldmVudC1maWx0ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNDOEJGQzk7XHJcbiAgICAgICAgY29sb3I6ICMwMDAwMDA7XHJcbiAgICAgICAgcGFkZGluZzogMjVweDtcclxuXHJcbiAgICAgICAgLmV2ZW50LWZpZWxkIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcclxuXHJcbiAgICAgICAgICAgIGJ1dHRvbiB7XHJcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogXCJjYXRzLWhlYWRsaW5lXCIsIEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogaW5pdGlhbCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuZm9ybV9fZGF0ZSB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgIG1heC13aWR0aDogbm9uZTtcclxuICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICM3QTFCNzIgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgbGFiZWwsXHJcbiAgICAgICAgICAgIC5jaGVja2JveC1ncm91cCBwIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcclxuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIm1ldHJpZnktcmVndWxhclwiLCBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxN3B4O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuY2hlY2tib3gtZ3JvdXAge1xyXG4gICAgICAgICAgICAgICAgbGFiZWwge1xyXG4gICAgICAgICAgICAgICAgICAgIGFsbDogdW5zZXQ7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICBwIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcclxuICAgICAgICAgICAgICAgICAgICBhcHBlYXJhbmNlOiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjVweDtcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDI1cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMC42ZW0gMC44cmVtIDAuNmVtIDA7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjN0ExQjcyICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICY6Y2hlY2tlZDo6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMXB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiA4cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiA2cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTRweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiBzb2xpZCBibGFjaztcclxuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXdpZHRoOiAwIDJweCAycHggMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLnNlbGVjdC13cmFwcGVyIHtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG5cclxuICAgICAgICAgICAgICAgIGkge1xyXG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgICByaWdodDogMXJlbTtcclxuICAgICAgICAgICAgICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgICAgICAgICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICMwMDAwMDA7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIHNlbGVjdCB7XHJcbiAgICAgICAgICAgICAgICBhcHBlYXJhbmNlOiBub25lO1xyXG4gICAgICAgICAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xyXG4gICAgICAgICAgICAgICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4O1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMi41cmVtO1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzdBMUI3MjtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xyXG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcclxuICAgICAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmV2ZW50LWl0ZW1zIHtcclxuICAgICAgICAuY2FyZCB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IGluaXRpYWw7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmYWU2ZmE7XHJcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG5cclxuICAgICAgICAgICAgJi5ldmVudC1jYXJkIHtcclxuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTBweCk7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDJzIGVhc2UsIHRyYW5zZm9ybSAycyBlYXNlO1xyXG5cclxuICAgICAgICAgICAgICAgICYuZmFkZS1pbi1zdGFydGVkLnZpc2libGUge1xyXG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuYnRuOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNjOGJmYzk7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5mZWF0dXJlZEl0ZW1UZXh0IHtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgIHRvcDogMjVweDtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWEwMDZiO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICNmZmZmZmY7XHJcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogXCJjYXRzLWhlYWRsaW5lXCIsIEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDI1cHg7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAyMHB4IDI1cHg7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5jYXJkLWJvZHkge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMjBweDtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICAgICAgICAgZmxleC1ncm93OiAxO1xyXG5cclxuICAgICAgICAgICAgICAgIC5jYXJkLXRpdGxlIHtcclxuICAgICAgICAgICAgICAgICAgICBmb250LWZhbWlseTogXCJjYXRzLWhlYWRsaW5lXCIsIEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgLmJ0biB7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiY2F0cy1oZWFkbGluZVwiLCBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5mZWF0dXJlZEl0ZW0ge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDNjNmVlO1xyXG5cclxuICAgICAgICAgICAgLmJ0biB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWEwMDZiO1xyXG5cclxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmYWU2ZmE7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICMxYTAwNmI7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmV2ZW50cy1wYWdpbmF0aW9uIHtcclxuICAgICAgICB1bCB7XHJcbiAgICAgICAgICAgIC5wYWdlLWl0ZW0ge1xyXG4gICAgICAgICAgICAgICAgJi5hY3RpdmUgYSB7XHJcbiAgICAgICAgICAgICAgICAgICAgLy8gZW1wdHkgYXMgaW4gb3JpZ2luYWxcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAzcHggMTBweDtcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA3NXB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uZGF0ZXJhbmdlcGlja2VyIHtcclxuICAgIHRkIHtcclxuICAgICAgICAmLmluLXJhbmdlIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZhZTZmYTtcclxuICAgICAgICAgICAgY29sb3I6ICMwMDAwMDA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLmFjdGl2ZSxcclxuICAgICAgICAmLmFjdGl2ZTpob3ZlcixcclxuICAgICAgICAmLnN0YXJ0LWRhdGUsXHJcbiAgICAgICAgJi5lbmQtZGF0ZSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM3QTFCNzIgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5tdC1hdXRvIHtcclxuICAgIG1hcmdpbi10b3A6IGF1dG87XHJcbn1cclxuIl19 */
