/*
** 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: #7A1B72 !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 {
  background-color: #7A1B72 !important;
  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 .media__image {
  border: 0px !important;
}

.branding-pink {
  background-color: #c928b2 !important;
  color: white !important;
}
.branding-pink h1, .branding-pink h2, .branding-pink h3, .branding-pink h4, .branding-pink h5, .branding-pink h6 {
  color: white !important;
}
.branding-pink .media__image {
  border: 0px !important;
}

.light-purple {
  background-color: #fae6fa !important;
  color: #7A1B72 !important;
}
.light-purple h1, .light-purple h2, .light-purple h3, .light-purple h4, .light-purple h5, .light-purple h6 {
  color: #7A1B72 !important;
}
.light-purple .media__image {
  border: 0px !important;
}

.no-theme {
  background-color: white !important;
  color: #7A1B72 !important;
}
.no-theme h1, .no-theme h2, .no-theme h3, .no-theme h4, .no-theme h5, .no-theme h6 {
  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;
  line-height: 1.2;
}
.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;
  }
}

.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;
  line-height: 1.2;
}
.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;
  }
}

.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 {
  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__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__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[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;
  transition-duration: 0s;
}
@media (min-width: 768px) {
  .pdf li {
    width: 50%;
  }
}
@media (min-width: 1024px) {
  .pdf li {
    width: 33.33%;
  }
}
.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;
  display: none;
}
[dir=rtl] .slick-slide {
  float: right;
}
.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;
}

#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 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;
  }

   */
}
.btn:hover {
  background-color: #fae6fa;
  color: #7A1B72;
  transition-duration: 0s;
}
.btn.center, .btn--center {
  margin-left: auto;
  margin-right: auto;
  max-width: 250px;
}

.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--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;
  background: #c928b2;
  color: white;
  transition-duration: 0s;
}
.btn--secondary:hover {
  background-color: #fae6fa;
  color: #7A1B72;
  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;
  background: #fae6fa;
  color: #7A1B72;
  transition-duration: 0s;
}
.btn--thirdly:hover {
  background-color: #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;
  background: white !important;
  color: #c928b2 !important;
  transition-duration: 0s;
}
.btn--fourthly:hover {
  background-color: #fae6fa;
  color: #7A1B72;
  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;
  transition-duration: 0s;
}
.btn--search:before {
  content: "\e902";
  font-size: 44px;
  width: 40px;
  margin-right: 0px;
}
.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;
  transition-duration: 0s;
}
.btn--close:after {
  content: "\e907";
}
.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;
}

.cat-community__header {
  padding-top: 10px;
  padding-bottom: 10px;
}
@media (min-width: 1024px) {
  .cat-community__header {
    display: flex;
    justify-content: space-between;
  }
}
.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;
  transition-duration: 0s;
}
@media (min-width: 640px) {
  .cat-community__header .link {
    display: inline-flex;
    align-items: center;
    margin: 0 20px 0 0;
  }
}
.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);
  float: left;
  margin-right: 10px;
}
.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 > 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);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}
.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__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;
  font-family: Arial, Helvetica, sans-serif;
  /*border-radius:6px;*/
}
.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[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
 */
.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;
      }
  }
  */
}
@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__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);
  min-width: 110px;
  margin-right: 25px;
}
.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 .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__submit{ display: flex; }
  .form__btn{ 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-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) {
  transition-duration: 0s;
}
.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):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__input--find-a-cat-search {
  margin-bottom: 40px;
}

.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;
  /*
  @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--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--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;
  transition-duration: 0s;
}
.js-sponsor-cat-slider .slick-arrow:after {
  top: unset;
}
.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;
  transition-duration: 0s;
}
.js-sponsor-cat-slider-mobile .slick-arrow:after {
  top: unset;
}
.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;
  transition-duration: 0s;
}
.hamburger:before {
  content: "";
  display: block;
  width: 100%;
  height: 0px;
  border-bottom: 4px solid;
  border-color: inherit;
}
.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;
  transition-duration: 0s;
}
.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: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;
  transition-duration: 0s;
}
.sidebar .main-nav li a {
  padding: 10px 12px;
  width: 100%;
  cursor: pointer;
  color: inherit;
}
.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__caption{
      height: 50%;
      padding-bottom: 80px;

      .btn{
          position: absolute;
          bottom: 20px;
          left: 50%;
          transform: translateX(-50%);
          white-space:nowrap;
      }
  }

   */
  transition-duration: 0s;
}
@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: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 {
  transition-duration: 0s;
}
.media--link .media__image {
  transition-duration: 400ms;
  /*border: 1px solid $placehold;*/
}
.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;
  /*}*/
  transition-duration: 0s;
  /*&:hover {
      .media__caption h5:after {
          border-color: rgba($brand-black, 0.5);
          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;
}

/**
 * COMPONENTS
 * Media - GALLERY
 */
.media--gallery .media__image {
  padding-top: 75%;
  transition-duration: 0s;
}
@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: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;
  /*&:hover {
      background-color: rgba($placehold, 0.4);
      transition-duration: 0s;
  }*/
}
.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 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%;
  transition-duration: 0s;
}
.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]: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;
  padding-top: 56.25%;
  /*
  .popup & {
      // STANDARD YT VIDEO
      @include aspect-ratio(16,9);
  }

   */
}
.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;
}

/**
 * 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 {
  transition-duration: 0s;
}
.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: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;
  transition-duration: 0s;
}
.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: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;
  transition-duration: 0s;
}
[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"]: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;
  color: white;
}
.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 p:not([class]) {
  margin-bottom: 50px;
  color: white;
}
.media--opp .media__caption .date {
  color: white;
}
@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 .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 {
  transition-duration: 0s;
}
.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:hover {
  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;
}

/**
 * COMPONENTS - SVG
 * CONTACT
 */
.media--svg-contact {
  transition-duration: 0s;
}
.media--svg-contact .st0 {
  fill: none;
  stroke: #7A1B72;
  stroke-width: 5;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-miterlimit: 10;
}
.media--svg-contact:hover {
  transition-duration: 0s;
}
.media--svg-contact:hover .st0 {
  fill: none;
  stroke: #FFFFFF;
  stroke-width: 5;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-miterlimit: 10;
}

/**
 * COMPONENTS - SVG
 * NEUTERING
 */
.media--svg-neutering {
  transition-duration: 0s;
}
.media--svg-neutering .st0 {
  fill: none;
  stroke: #7A1B72;
  stroke-width: 5;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-miterlimit: 10;
}
.media--svg-neutering:hover {
  transition-duration: 0s;
}
.media--svg-neutering:hover .st0 {
  fill: none;
  stroke: #FFFFFF;
  stroke-width: 5;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-miterlimit: 10;
}

/**
 * COMPONENTS - SVG
 * VOLUNTEER
 */
.media--svg-volunteer {
  transition-duration: 0s;
}
.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:hover {
  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;
}

/*
*
* 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;
  transition-duration: 0s;
}
.paging__item a {
  padding: 5px 11px;
  text-decoration: none;
  display: inline-block;
}
.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;
  transition-duration: 0s;
}
.slick-arrow:after {
  color: white;
  position: absolute;
  text-indent: 0;
  font-size: 25px;
  line-height: 0;
}
.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;
  color: #7A1B72;
}
@media only screen and (min-width: 1024px) {
  .stepper__step {
    margin: 0;
  }
}

.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;
  pointer-events: none;
  position: relative;
  background-color: #c928b2;
}
.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: 426px) and (max-width: 768px) {
      width: 50%;
  }

  @media (min-width: 769px) {
      width: 33.33%;
  }*/
}
@media (min-width: 769px) {
  .ecc-item .ecc-txt-wrapper {
    width: 50%;
  }
}
.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;
  }
}

#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;
}

/**
 * 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;
}

/**
 * LAYOUT
 * Footer
 *
 */
.footer {
  color: white;
  font-family: "metrify-regular", Arial, Helvetica, sans-serif;
  /*@include respond-to(desk-and-up) {*/
  /*}*/
}
.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 h6 {
  /*margin-bottom: 25px;*/
  font-size: 17px;
}

@media only screen and (min-width: 1500px) {
  .footer__details h6 {
    margin-bottom: 10px;
  }
}
.footer__details .icon-list li {
  transition-duration: 0s;
}
.footer__details .icon-list li a:hover {
  color: #c928b2;
  transition-duration: 0s;
}

@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 {
    padding-top: 0;
    border-top: none;
  }
}

.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;
}
.footer__links a:hover {
  color: #c928b2;
  background: #fae6fa;
  transition-duration: 0s;
}
@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;
  /*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 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;
}
@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;
}
@media only screen and (min-width: 769px) {
  .footer__credits {
    margin-top: 40px;
  }
  .footer__credits p {
    text-align: center;
    width: 100%;
  }
}

.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__pin a, .icon-list__phone a {
  padding: 0px 5px;
  display: block;
  border-radius: 6px;
}
.icon-list__pin a:hover, .icon-list__phone a:hover {
  color: #c928b2;
  background: #fae6fa;
  transition-duration: 0s;
}

.footer__form h6 {
  background: none !important;
  color: white !important;
}
.footer__form h6:hover {
  background: none !important;
  color: white !important;
}

/**
 * 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%;
    text-align: center;
  }
  .grid--masonry > .grid__item:nth-child(1):before {
    padding-top: 50%;
  }
}
@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;
    text-align: center;
  }
  .grid--masonry222 > .grid__item:nth-child(1):before {
    padding-top: 50%;
  }
}
@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 {
    /*
        &: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--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--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;
  transition-duration: 0s;
}
.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: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;
  /*&:not([class*="bg-"]) {
      background-color: $brand-black;
  }*/
  /*
  &:not([class*="--tall"]){
      h1,
      h2{
          margin-top:100px;
      }
  }
  */
}
@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: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;
  transition-duration: 0s;
  /*&: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:hover {
  opacity: 1;
  pointer-events: all;
  transition-duration: 0s;
}
.subnav:hover ul {
  opacity: 1;
}
li:hover .subnav {
  opacity: 1;
  pointer-events: all;
}
li:hover .subnav ul {
  opacity: 1;
}
.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;
  transition-duration: 0s;
}
.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: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;
  /*
  &:before{
      content: '';
      position: absolute;
      width: 200%;
      height: 100%;
      display: block;
      top: 0;
      left: 100%;
      background-color: #fff;
  }
  */
}
@media (min-width: 1024px) {
  .pens__item {
    max-width: none;
  }
}

.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;
  /*
      > 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%; }
      }
  */
}
@media (min-width: 1024px) {
  .user-block__profile {
    width: 420px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    text-align: left;
  }
}
.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);
  margin: 0 auto 20px;
}
.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");
}
@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;
}

.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;
}

#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:1024px) {
          background-size: cover;
      }*/
}
@media (min-width: 768px) {
  .site-banner--cats-report .over-size-fix {
    /*background-size: 165%;*/
    background-position-y: 100%;
  }
}

.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");
  /*        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;
      }*/
}
@media (min-width: 1024px) {
  .cats-report-slide__quote:before {
    left: 0px;
  }
}

.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 */
  /* Header */
  /* Landing Page - Welcome Panel */
  /* Landing Page - Your Pens */
  /* Landing Page - My Cat Community */
  /* Homepage Carousel */
  /* Pen Page Crousel */
  /* Cat Community Pop Up*/
  /* Landing Page - Newsletter */
  /* Pen Page */
}
#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-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 .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 .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 .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;
  text-align: center;
}
@media (min-width: 1200px) {
  #SponsorPortalBody .sp-my-community-nav ul li {
    padding: 0px 24px;
  }
}
#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 .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 .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 .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 .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 .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 !important;
}
#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;
  overflow-y: auto;
  border-bottom: 1px solid #7A1B72;
}
@media (min-width: 769px) {
  #SponsorPortalBody .sp-pen-page-comments {
    max-height: 448px;
  }
}
#SponsorPortalBody .sp-pen-page-comments .comment-block p {
  margin-bottom: 5px;
}
#SponsorPortalBody .sp-pen-page-comments .comment-block:nth-child(odd) {
  background: #fae6fa;
}

.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,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm1haW4uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2FsaWduLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19iYWNrZ3JvdW5kLXZhcmlhbnQuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2hvdmVyLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19iYWNrZ3JvdW5kLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19ib3JkZXJzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19jbGVhcmZpeC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fZGlzcGxheS5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYnJlYWtwb2ludHMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2VtYmVkLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19mbGV4LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19mbG9hdC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9faW50ZXJhY3Rpb25zLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19vdmVyZmxvdy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fcG9zaXRpb24uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdmFyaWFibGVzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19zY3JlZW5yZWFkZXJzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19zY3JlZW4tcmVhZGVyLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19zaGFkb3dzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19zaXppbmcuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX3NwYWNpbmcuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX3N0cmV0Y2hlZC1saW5rLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL190ZXh0LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL190ZXh0LXRydW5jYXRlLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL190ZXh0LWVtcGhhc2lzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL190ZXh0LWhpZGUuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX3Zpc2liaWxpdHkuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fZ3JpZC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZ3JpZC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZ3JpZC1mcmFtZXdvcmsuc2NzcyIsImJvaWxlcnBsYXRlL19taXhpbnMuc2NzcyIsImJvaWxlcnBsYXRlL19wbGFjZWhvbGRlcnMuc2NzcyIsImJvaWxlcnBsYXRlL19mdW5jdGlvbnMuc2NzcyIsImJvaWxlcnBsYXRlL19yZXNldC5zY3NzIiwidGhlbWUvX2Jhc2Uuc2NzcyIsInRoZW1lL19pbGx1c3RyYXRpb24uc2NzcyIsInRoZW1lL19icmFuZGluZy5zY3NzIiwidHlwZXN0eWxlcy9fZm9udC1pbXBvcnQuc2NzcyIsInR5cGVzdHlsZXMvX2Jhc2Uuc2NzcyIsInR5cGVzdHlsZXMvX3R5cGVzdHlsZXMuc2NzcyIsInR5cGVzdHlsZXMvX2hlYWRlci5zY3NzIiwidHlwZXN0eWxlcy9fYXJ0aWNsZS5zY3NzIiwidHlwZXN0eWxlcy9faWNvbnMuc2NzcyIsInR5cGVzdHlsZXMvX2xpc3Qtc3R5bGVzLnNjc3MiLCJ0eXBlc3R5bGVzL19vcGVuaW5nLXBhZ2UtaGVhZGluZy5zY3NzIiwidmVuZG9yL3NsaWNrLnNjc3MiLCJ2ZW5kb3IvY3JvcHBlci5zY3NzIiwidmVuZG9yL3NpbXBsZWJhci5zY3NzIiwiY29tcG9uZW50cy9fYXBwZWFscy5zY3NzIiwiY29tcG9uZW50cy9fYmFza2V0LnNjc3MiLCJjb21wb25lbnRzL19iYXNrZXQtdHJhY2tlci5zY3NzIiwiY29tcG9uZW50cy9fYmxvY2txdW90ZS5zY3NzIiwiY29tcG9uZW50cy9fYnV0dG9uLnNjc3MiLCJjb21wb25lbnRzL19jYXQtY29tbXVuaXR5LnNjc3MiLCJjb21wb25lbnRzL19jb21tZW50cy5zY3NzIiwiY29tcG9uZW50cy9fY291bnRlci5zY3NzIiwiY29tcG9uZW50cy9fY2FyZC5zY3NzIiwiY29tcG9uZW50cy9fY29va2llcy5zY3NzIiwiY29tcG9uZW50cy9fY3JvcC13aW5kb3cuc2NzcyIsImNvbXBvbmVudHMvX2N0YS13YWxsLnNjc3MiLCJjb21wb25lbnRzL19kb3RzLnNjc3MiLCJjb21wb25lbnRzL19leGFtcGxlLnNjc3MiLCJjb21wb25lbnRzL19lei1zZWFyY2guc2NzcyIsImNvbXBvbmVudHMvX2ZhcS5zY3NzIiwiY29tcG9uZW50cy9fZXZlbnR0aWNrZXRzLnNjc3MiLCJjb21wb25lbnRzL19sb2dpbi1idXR0b24uc2NzcyIsImNvbXBvbmVudHMvZm9ybXMvX3Jlc2V0LnNjc3MiLCJjb21wb25lbnRzL2Zvcm1zL19iYXNlLnNjc3MiLCJjb21wb25lbnRzL2Zvcm1zL19jYXQtY29tbXVuaXR5LnNjc3MiLCJjb21wb25lbnRzL2Zvcm1zL19jZW50ZXIuc2NzcyIsImNvbXBvbmVudHMvZm9ybXMvX2NvbnRhY3Quc2NzcyIsImNvbXBvbmVudHMvZm9ybXMvX2xvZ2luLnNjc3MiLCJjb21wb25lbnRzL2Zvcm1zL19sZWF2ZS1jb21tZW50LnNjc3MiLCJjb21wb25lbnRzL2Zvcm1zL19uZXdzbGV0dGVyLnNjc3MiLCJjb21wb25lbnRzL2Zvcm1zL19wb2xsLnNjc3MiLCJjb21wb25lbnRzL2Zvcm1zL19wcm9maWxlLnNjc3MiLCJjb21wb25lbnRzL2Zvcm1zL19zZWFyY2guc2NzcyIsImNvbXBvbmVudHMvZm9ybXMvX3NlbGVjdGlvbi5zY3NzIiwiY29tcG9uZW50cy9mb3Jtcy9fZmluZC1hLWNhdC5zY3NzIiwiY29tcG9uZW50cy9mb3Jtcy9fZmluZC1hLWNhdC1iYW5uZXIuc2NzcyIsImNvbXBvbmVudHMvZm9ybXMvX3ZvbHVudGVlci1vcHBzLnNjc3MiLCJjb21wb25lbnRzL2Zvcm1zL19maW5kLWEtc2hvcC5zY3NzIiwiY29tcG9uZW50cy9mb3Jtcy9fZm9ybS1zdWJzY3JpcHRpb24uc2NzcyIsImNvbXBvbmVudHMvZm9ybXMvX3Nwb25zb3JBQ2F0LnNjc3MiLCJjb21wb25lbnRzL19yZWdpb25hbC1ldmVudHMuc2NzcyIsImNvbXBvbmVudHMvX2dhbGxlcnkuc2NzcyIsImNvbXBvbmVudHMvX2hhbWJ1cmdlci5zY3NzIiwiY29tcG9uZW50cy9fbWFpbi1uYXYtZGVza3RvcC5zY3NzIiwiY29tcG9uZW50cy9fbWFpbi1uYXYtbW9iaWxlLnNjc3MiLCJjb21wb25lbnRzL19tb2JpbGUtbmF2LnNjc3MiLCJjb21wb25lbnRzL21lZGlhL19iYXNlLnNjc3MiLCJjb21wb25lbnRzL21lZGlhL19pbmxpbmUuc2NzcyIsImNvbXBvbmVudHMvbWVkaWEvX2xpbmsuc2NzcyIsImNvbXBvbmVudHMvbWVkaWEvX2JvbGQuc2NzcyIsImNvbXBvbmVudHMvbWVkaWEvX2dhbGxlcnkuc2NzcyIsImNvbXBvbmVudHMvbWVkaWEvX3dpZGUuc2NzcyIsImNvbXBvbmVudHMvbWVkaWEvX3dpZGUtb3ZlcmxhcC5zY3NzIiwiY29tcG9uZW50cy9tZWRpYS9fcmVzZXJ2ZWQuc2NzcyIsImNvbXBvbmVudHMvbWVkaWEvX2V2ZW50LnNjc3MiLCJjb21wb25lbnRzL21lZGlhL192aWRlby5zY3NzIiwiY29tcG9uZW50cy9tZWRpYS9fc29jaWFsLnNjc3MiLCJjb21wb25lbnRzL21lZGlhL19jb3Zlci5zY3NzIiwiY29tcG9uZW50cy9tZWRpYS9fY2FwdGlvbi1jb3Zlci5zY3NzIiwiY29tcG9uZW50cy9tZWRpYS9fY2FwdGlvbi1ob3Zlci5zY3NzIiwiY29tcG9uZW50cy9tZWRpYS9faG92ZXItYmFja2dyb3VuZC5zY3NzIiwiY29tcG9uZW50cy9tZWRpYS9fdGlsZS5zY3NzIiwiY29tcG9uZW50cy9tZWRpYS9fb3BwLnNjc3MiLCJjb21wb25lbnRzL21lZGlhL19zcGxpdC5zY3NzIiwiY29tcG9uZW50cy9tZWRpYS9fc2lkZWJhci5zY3NzIiwiY29tcG9uZW50cy9tZWRpYS9zdmdzL19lZHVjYXRpb24uc2NzcyIsImNvbXBvbmVudHMvbWVkaWEvc3Zncy9fY29udGFjdC5zY3NzIiwiY29tcG9uZW50cy9tZWRpYS9zdmdzL19uZXV0ZXJpbmcuc2NzcyIsImNvbXBvbmVudHMvbWVkaWEvc3Zncy9fdm9sdW50ZWVyLnNjc3MiLCJjb21wb25lbnRzL21lZGlhL190aGVtZS5zY3NzIiwiY29tcG9uZW50cy9tZWRpYS9faG92ZXItc2NhbGUuc2NzcyIsImNvbXBvbmVudHMvX21pbmktYmlvLnNjc3MiLCJjb21wb25lbnRzL19wYWdpbmcuc2NzcyIsImNvbXBvbmVudHMvX3Blbi1jYXJkLnNjc3MiLCJjb21wb25lbnRzL19waW4uc2NzcyIsImNvbXBvbmVudHMvX3BvbGwuc2NzcyIsImNvbXBvbmVudHMvX3BvcHVwLnNjc3MiLCJjb21wb25lbnRzL19zb2NpYWwuc2NzcyIsImNvbXBvbmVudHMvX3NsaWRlcnMuc2NzcyIsImNvbXBvbmVudHMvX3Nwb25zb3ItcG9zdGVyLnNjc3MiLCJjb21wb25lbnRzL19zdGVwcGVyLnNjc3MiLCJjb21wb25lbnRzL19zdG9yeS5zY3NzIiwiY29tcG9uZW50cy9fdGFiLnNjc3MiLCJjb21wb25lbnRzL19zZWFyY2gtZ3JvdXAuc2NzcyIsImNvbXBvbmVudHMvX3dhcm5pbmctbWVzc2FnZS5zY3NzIiwiY29tcG9uZW50cy9fbW9iaWxlLXN0aWNreS1iYXIuc2NzcyIsImNvbXBvbmVudHMvX2NvbW11bml0eS1zdGF0cy5zY3NzIiwiY29tcG9uZW50cy9fZG9uYXRlLW9wdGlvbi5zY3NzIiwiY29tcG9uZW50cy9fbGlua3Muc2NzcyIsImNvbXBvbmVudHMvX3BhZ2luYXRpb24uc2NzcyIsImNvbXBvbmVudHMvX3NvcnQtYnkuc2NzcyIsImNvbXBvbmVudHMvX21lbWJlcnNoaXAtdHlwZS5zY3NzIiwiY29tcG9uZW50cy9fZml4ZWQtcmF0aW8uc2NzcyIsImNvbXBvbmVudHMvX3N1Ym1pdC1jb21tZW50LnNjc3MiLCJjb21wb25lbnRzL19pcy1zdWJtaXR0aW5nLnNjc3MiLCJjb21wb25lbnRzL19vbmUtdHJ1c3QtY3VzdG9tLWNvZGUuc2NzcyIsImNvbXBvbmVudHMvX3NpbW9ucy1jYXQtYmFubmVyLWxvZ28uc2NzcyIsImNvbXBvbmVudHMvX3NpbW9ucy1jYXQtaW5mby1ib3guc2NzcyIsImNvbXBvbmVudHMvX3NpbW9ucy1jYXQtbWVkaWEuc2NzcyIsImNvbXBvbmVudHMvX2ZvbnQtc2ltb25zLWNhdC5zY3NzIiwiY29tcG9uZW50cy9fYW5pbWF0aW9uLXN0eWxlcy5zY3NzIiwiY29tcG9uZW50cy9faWZyYW1lLWZpeC5zY3NzIiwiY29tcG9uZW50cy9fZXZlbnRzLnNjc3MiLCJjb21wb25lbnRzL19zcGVjaWFsQXBwZWFscy5zY3NzIiwiY29tcG9uZW50cy9mb3Jtcy9fbWVtYmVyc2hpcC1mb3JtLnNjc3MiLCJsYXlvdXQvX2Jhc2Uuc2NzcyIsImxheW91dC9fZm9vdGVyLnNjc3MiLCJsYXlvdXQvX2dyaWRzLnNjc3MiLCJsYXlvdXQvX2ZsZXguc2NzcyIsImxheW91dC9faGVhZGVyLWdyb3VwLnNjc3MiLCJsYXlvdXQvX2hlYWRlci1tZXNzYWdlLnNjc3MiLCJsYXlvdXQvX2hlcm8tYWQtYm94ZXMuc2NzcyIsImxheW91dC9fbGluZS1jbGFtcC5zY3NzIiwibGF5b3V0L19tYXAuc2NzcyIsImxheW91dC9fc2lkZWJhci5zY3NzIiwibGF5b3V0L19zaXRlLnNjc3MiLCJsYXlvdXQvX3N1Yi1uYXYuc2NzcyIsImxheW91dC9fdGFibGVzLnNjc3MiLCJsYXlvdXQvX2Zsb3cuc2NzcyIsImxheW91dC9fcGVucy5zY3NzIiwibGF5b3V0L191c2VyLWJsb2NrLnNjc3MiLCJjb21wb25lbnRzL19ibG9nLXBvc3Quc2NzcyIsImNvbXBvbmVudHMvX3JlYWQtbW9yZS5zY3NzIiwiY29tcG9uZW50cy9fdmV0LWFwcHJvdmVkLWJhZGdlLnNjc3MiLCJjb21wb25lbnRzL19kb25hdGlvbi1yZWFkLW1vcmUtY29udGFpbmVyLnNjc3MiLCJjb21wb25lbnRzL19kb25hdGlvbi1iYW5uZXItdGhlbWUuc2NzcyIsImNvbXBvbmVudHMvX2dvb2dsZWN1c3RvbXNlYXJjaC5zY3NzIiwiY29tcG9uZW50cy9fYnJlYWRjcnVtYi5zY3NzIiwiY29tcG9uZW50cy9fZXhpdFNpdGVCdXR0b24uc2NzcyIsImNvbXBvbmVudHMvX2NhdC1yZXBvcnQuc2NzcyIsImNvbXBvbmVudHMvZm9ybXMvX2Fkb3B0LWEtY2F0LWZvcm0uc2NzcyIsInNwb25zb3JfcG9ydGFsL19tYXN0ZXIuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7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QTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBQWZGO0VBQWdDOzs7QUFDaEM7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFmRjtFQUFnQzs7O0FBQ2hDO0FBQUE7RUFFRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTs7O0FBZkY7RUFBZ0M7OztBQUNoQztBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBQWZGO0VBQWdDOzs7QUFDaEM7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFmRjtFQUFnQzs7O0FBQ2hDO0FBQUE7RUFFRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTs7O0FBZkY7RUFBZ0M7OztBQUNoQztBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBQWZGO0VBQWdDOzs7QUFDaEM7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFmRjtFQUFnQzs7O0FBQ2hDO0FBQUE7RUFFRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTs7O0FBZkY7RUFBZ0M7OztBQUNoQztBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBQWZGO0VBQWdDOzs7QUFDaEM7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFmRjtFQUFnQzs7O0FBQ2hDO0FBQUE7RUFFRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTs7O0FBZkY7RUFBZ0M7OztBQUNoQztBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBQVFGO0VBQXdCOzs7QUFDeEI7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFmRjtFQUF3Qjs7O0FBQ3hCO0FBQUE7RUFFRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTs7O0FBZkY7RUFBd0I7OztBQUN4QjtBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBQWZGO0VBQXdCOzs7QUFDeEI7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFmRjtFQUF3Qjs7O0FBQ3hCO0FBQUE7RUFFRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTs7O0FBZkY7RUFBd0I7OztBQUN4QjtBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBQWZGO0VBQXdCOzs7QUFDeEI7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFmRjtFQUF3Qjs7O0FBQ3hCO0FBQUE7RUFFRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTs7O0FBTU47RUFBbUI7OztBQUNuQjtBQUFBO0VBRUU7OztBQUVGO0FBQUE7RUFFRTs7O0FBRUY7QUFBQTtFQUVFOzs7QUFFRjtBQUFBO0VBRUU7OztBWlRGO0VZbERJO0lBQWdDOztFQUNoQztBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBZkY7SUFBZ0M7O0VBQ2hDO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFmRjtJQUFnQzs7RUFDaEM7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQWZGO0lBQWdDOztFQUNoQztBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBZkY7SUFBZ0M7O0VBQ2hDO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFmRjtJQUFnQzs7RUFDaEM7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQWZGO0lBQWdDOztFQUNoQztBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBZkY7SUFBZ0M7O0VBQ2hDO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFmRjtJQUFnQzs7RUFDaEM7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQWZGO0lBQWdDOztFQUNoQztBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBZkY7SUFBZ0M7O0VBQ2hDO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFmRjtJQUFnQzs7RUFDaEM7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQWZGO0lBQWdDOztFQUNoQztBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBZkY7SUFBZ0M7O0VBQ2hDO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFmRjtJQUFnQzs7RUFDaEM7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQWZGO0lBQWdDOztFQUNoQztBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBZkY7SUFBZ0M7O0VBQ2hDO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFmRjtJQUFnQzs7RUFDaEM7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQVFGO0lBQXdCOztFQUN4QjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBZkY7SUFBd0I7O0VBQ3hCO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFmRjtJQUF3Qjs7RUFDeEI7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQWZGO0lBQXdCOztFQUN4QjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBZkY7SUFBd0I7O0VBQ3hCO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFmRjtJQUF3Qjs7RUFDeEI7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQWZGO0lBQXdCOztFQUN4QjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBZkY7SUFBd0I7O0VBQ3hCO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFNTjtJQUFtQjs7RUFDbkI7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOzs7QVpURjtFWWxESTtJQUFnQzs7RUFDaEM7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQWZGO0lBQWdDOztFQUNoQztBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBZkY7SUFBZ0M7O0VBQ2hDO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFmRjtJQUFnQzs7RUFDaEM7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQWZGO0lBQWdDOztFQUNoQztBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBZkY7SUFBZ0M7O0VBQ2hDO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFmRjtJQUFnQzs7RUFDaEM7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQWZGO0lBQWdDOztFQUNoQztBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBZkY7SUFBZ0M7O0VBQ2hDO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFmRjtJQUFnQzs7RUFDaEM7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQWZGO0lBQWdDOztFQUNoQztBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBZkY7SUFBZ0M7O0VBQ2hDO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFmRjtJQUFnQzs7RUFDaEM7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQWZGO0lBQWdDOztFQUNoQztBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBZkY7SUFBZ0M7O0VBQ2hDO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFmRjtJQUFnQzs7RUFDaEM7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQWZGO0lBQWdDOztFQUNoQztBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBZkY7SUFBZ0M7O0VBQ2hDO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFRRjtJQUF3Qjs7RUFDeEI7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQWZGO0lBQXdCOztFQUN4QjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBZkY7SUFBd0I7O0VBQ3hCO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFmRjtJQUF3Qjs7RUFDeEI7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQWZGO0lBQXdCOztFQUN4QjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBZkY7SUFBd0I7O0VBQ3hCO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFmRjtJQUF3Qjs7RUFDeEI7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQWZGO0lBQXdCOztFQUN4QjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBTU47SUFBbUI7O0VBQ25CO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7O0FaVEY7RVlsREk7SUFBZ0M7O0VBQ2hDO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFmRjtJQUFnQzs7RUFDaEM7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQWZGO0lBQWdDOztFQUNoQztBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBZkY7SUFBZ0M7O0VBQ2hDO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFmRjtJQUFnQzs7RUFDaEM7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQWZGO0lBQWdDOztFQUNoQztBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBZkY7SUFBZ0M7O0VBQ2hDO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFmRjtJQUFnQzs7RUFDaEM7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQWZGO0lBQWdDOztFQUNoQztBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBZkY7SUFBZ0M7O0VBQ2hDO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFmRjtJQUFnQzs7RUFDaEM7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQWZGO0lBQWdDOztFQUNoQztBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBZkY7SUFBZ0M7O0VBQ2hDO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFmRjtJQUFnQzs7RUFDaEM7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQWZGO0lBQWdDOztFQUNoQztBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBZkY7SUFBZ0M7O0VBQ2hDO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFmRjtJQUFnQzs7RUFDaEM7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQWZGO0lBQWdDOztFQUNoQztBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBUUY7SUFBd0I7O0VBQ3hCO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFmRjtJQUF3Qjs7RUFDeEI7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQWZGO0lBQXdCOztFQUN4QjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBZkY7SUFBd0I7O0VBQ3hCO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFmRjtJQUF3Qjs7RUFDeEI7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQWZGO0lBQXdCOztFQUN4QjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBZkY7SUFBd0I7O0VBQ3hCO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFmRjtJQUF3Qjs7RUFDeEI7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQU1OO0lBQW1COztFQUNuQjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7OztBWlRGO0VZbERJO0lBQWdDOztFQUNoQztBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBZkY7SUFBZ0M7O0VBQ2hDO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFmRjtJQUFnQzs7RUFDaEM7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQWZGO0lBQWdDOztFQUNoQztBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBZkY7SUFBZ0M7O0VBQ2hDO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFmRjtJQUFnQzs7RUFDaEM7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQWZGO0lBQWdDOztFQUNoQztBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBZkY7SUFBZ0M7O0VBQ2hDO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFmRjtJQUFnQzs7RUFDaEM7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQWZGO0lBQWdDOztFQUNoQztBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBZkY7SUFBZ0M7O0VBQ2hDO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFmRjtJQUFnQzs7RUFDaEM7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQWZGO0lBQWdDOztFQUNoQztBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBZkY7SUFBZ0M7O0VBQ2hDO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFmRjtJQUFnQzs7RUFDaEM7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQWZGO0lBQWdDOztFQUNoQztBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBZkY7SUFBZ0M7O0VBQ2hDO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFmRjtJQUFnQzs7RUFDaEM7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQVFGO0lBQXdCOztFQUN4QjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBZkY7SUFBd0I7O0VBQ3hCO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFmRjtJQUF3Qjs7RUFDeEI7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQWZGO0lBQXdCOztFQUN4QjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBZkY7SUFBd0I7O0VBQ3hCO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFmRjtJQUF3Qjs7RUFDeEI7QUFBQTtJQUVFOztFQUVGO0FBQUE7SUFFRTs7RUFFRjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJQUVFOztFQWZGO0lBQXdCOztFQUN4QjtBQUFBO0lBRUU7O0VBRUY7QUFBQTtJ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O0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7QUFBQTtFQUVJO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtBQUFBO0FBQUE7RUFHSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBRUk7SUFDSTtJQUNBOzs7QUFJUjtFQUVJO0lBQ0k7SUFDQTs7O0FBSVI7RUFFSTtJQUNJO0lBQ0E7SUFDQTs7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUdKO0VBQ0k7OztBQUdKO0FBQUE7QUFBQTtBQUFBO0VBSUk7OztBQUdKO0VBQ0k7RUFDQTs7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBOzs7QUNwV0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdKO0FBQ0k7RUFDQTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTs7O0FBR0o7RUFDSTtFQUNBOzs7QUFHSjtFQUNJO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7QUFDQTtFQUNJO0VBQ0E7OztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FDckxKO0VBQ0k7RUFDQTtFQUNBOztBQUdBO0VBTko7SUFPUTtJQUNBO0FBQ0E7QUFBQTs7O0FBSUo7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RUFDQTs7O0FBR0Y7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7OztBQUdKO0VBQ0U7OztBQUdGO0VBQ0U7OztBQUdGO0VBQ0U7RUFDQTs7O0FBR0Y7QUFFQTtBQUFBO0FBR0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdGO0VBQ0U7RUFDQTs7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdGO0VBQ0U7OztBQUdGO0VBQ0U7RUFDQTs7O0FBR0Y7RUFDRTs7O0FBR0Y7RUFDRTs7O0FBR0Y7RUFDRTtFQUNBOzs7QUFHRjtBQUFBO0FBR0E7RUFDRTtJQUNFO0lBQ0E7OztBQUlKO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVGO0VBQ0U7OztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FDelREO0VBQ0c7RUFDQTs7QUFFQTtFQUpIO0lBS087SUFDQTs7OztBQ05QO0VBQ0c7RUFDQTs7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQVRKO0lBVVE7SUFDQTs7O0FBR0o7RUFkSjtJQWVROzs7O0FDakJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFPSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBT0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFPSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBT0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQU9KO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFLWjtF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RUFDSTs7QUFJUjtFQUNJOztBQUlBO0VBQ0k7O0FBR0o7RUFDSTs7QUFLSjtFQUNJOztBQUlSO0VBQ0k7O0FBR0o7RUFDSTs7QUFNUTtFQUNJOztBQUlBO0VBQ0k7RUFDQTs7QUFReEI7RUFDSTtFQUNBO0VBQ0E7RUFDQSxPN0k5ckJBO0U2SStyQkE7RUFDQTs7QUFJQTtFQUNJO0VBQ0EsTzdJbHVCRztFNkltdUJIO0VBQ0E7RUFDQTs7QUFHSjtFQUNJOztBQUdKO0VBQ0k7RUFDQTs7QUFJUjtFQUNJLE83SWx2Qks7RTZJbXZCTDtFQUNBOztBQUdJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLFk3STd2Qkg7RTZJOHZCRzs7QUFJUjtFQUNJO0VBQ0EsTzdJcndCRzs7QTZJd3dCUDtFQUNJOztBQUlSO0VBQ0k7RUFNQTtFQUNBOztBQUxBO0VBSEo7SUFJUTs7O0FBT0E7RUFDSTs7QUFHSjtFQUNJLFk3SXB3QkE7OztBbENzTmhCO0VBQ0ksT2tDaFBXOzs7QWxDbVBmO0VBQ0U7OztBQVFFO0VBQ0k7O0FBR0o7RUFDSTs7O0FBR1I7RUFDSSIsImZpbGUiOiJ0aGVtZS5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcclxuICogTUFJTiBDU1NcclxuICovXHJcblxyXG4vKiBWQVJJQUJMRVMgKi9cclxuXHJcbiRwcmVmaXhlczogLW1veiAtbXMgLW8gLXdlYmtpdDtcclxuXHJcbi8qIFZFTkRPUiAqL1xyXG5cclxuLy9UaGVzZSBhcmUgYmVpbmcgaW5jbHVkZWQgaW4gYXBwLmpzXHJcblxyXG5cclxuLy8gQm9vdHN0cmFwXHJcbiRzbWFsbDogNjQwcHg7XHJcbiRtZWRpdW06IDc2OHB4O1xyXG4kbGFyZ2U6IDEwMjRweDtcclxuJHhMYXJnZTogMTUwMHB4O1xyXG5cclxuJGdyaWQtYnJlYWtwb2ludHM6IChcclxuICAgIHhzOiAwLFxyXG4gICAgc206ICRzbWFsbCxcclxuICAgIG1kOiAkbWVkaXVtLFxyXG4gICAgbGc6ICRsYXJnZSxcclxuICAgIHhsOiAkeExhcmdlXHJcbik7XHJcblxyXG4kc3BhY2VyOiAxcmVtO1xyXG5cclxuJHNwYWNlcnM6ICggNjogKCRzcGFjZXIgKiA0KSwgNzogKCRzcGFjZXIgKiA1KSwgODogKCRzcGFjZXIgKiA2KSk7XHJcblxyXG4kdGhlbWUtY29sb3JzOiAoXHJcbiAgXCJjYXQteWVsbG93XCI6ICNmY2MzMmEsXHJcbiAgXCJibGFja1wiOiAjMjAyMDIwXHJcbik7XHJcblxyXG4vLyBSZXF1aXJlZFxyXG5AaW1wb3J0IFwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Z1bmN0aW9uc1wiO1xyXG5AaW1wb3J0IFwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3ZhcmlhYmxlc1wiO1xyXG5AaW1wb3J0IFwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGluc1wiO1xyXG5cclxuLy8gc3BhY2luZ1xyXG5AaW1wb3J0IFwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllc1wiO1xyXG5AaW1wb3J0IFwiLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2dyaWRcIjtcclxuXHJcblxyXG5cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIE1DTU5FVCBCT0lMRVJQTEFURVxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuQGltcG9ydCAnYm9pbGVycGxhdGUvbWl4aW5zJztcclxuQGltcG9ydCAnYm9pbGVycGxhdGUvcGxhY2Vob2xkZXJzJztcclxuQGltcG9ydCAnYm9pbGVycGxhdGUvZnVuY3Rpb25zJztcclxuQGltcG9ydCAnYm9pbGVycGxhdGUvcmVzZXQnO1xyXG5cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIFRIRU1FXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbkBpbXBvcnQgJ3RoZW1lL2Jhc2UnO1xyXG5AaW1wb3J0ICd0aGVtZS9pbGx1c3RyYXRpb24nO1xyXG5AaW1wb3J0ICd0aGVtZS9icmFuZGluZyc7XHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBUWVBPR1JBUEdZXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG5AaW1wb3J0IFwidHlwZXN0eWxlcy9mb250LWltcG9ydFwiO1xyXG5AaW1wb3J0ICd0eXBlc3R5bGVzL2Jhc2UnO1xyXG5AaW1wb3J0ICd0eXBlc3R5bGVzL3R5cGVzdHlsZXMnO1xyXG4vLyBAaW1wb3J0ICd0eXBlc3R5bGVzL2hlYWRpbmdzJztcclxuQGltcG9ydCAndHlwZXN0eWxlcy9oZWFkZXInO1xyXG4vLyBAaW1wb3J0ICd0eXBlc3R5bGVzL2NhcHRpb25zJztcclxuQGltcG9ydCAndHlwZXN0eWxlcy9hcnRpY2xlJztcclxuQGltcG9ydCAndHlwZXN0eWxlcy9pY29ucyc7XHJcbkBpbXBvcnQgJ3R5cGVzdHlsZXMvbGlzdC1zdHlsZXMnO1xyXG5cclxuQGltcG9ydCAndHlwZXN0eWxlcy9vcGVuaW5nLXBhZ2UtaGVhZGluZyc7XHJcblxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gVkVORE9SXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbkBpbXBvcnQgXCJ2ZW5kb3Ivc2xpY2tcIjtcclxuQGltcG9ydCBcInZlbmRvci9jcm9wcGVyXCI7XHJcbkBpbXBvcnQgXCJ2ZW5kb3Ivc2ltcGxlYmFyXCI7XHJcblxyXG5cclxuXHJcblxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gQ09NUE9ORU5UU1xyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5AaW1wb3J0ICdjb21wb25lbnRzL2FwcGVhbHMnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2Jhc2tldCc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYmFza2V0LXRyYWNrZXInO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2Jsb2NrcXVvdGUnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2J1dHRvbic7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvY2F0LWNvbW11bml0eSc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvY29tbWVudHMnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2NvdW50ZXInO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2NhcmQnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2Nvb2tpZXMnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2Nyb3Atd2luZG93JztcclxuQGltcG9ydCAnY29tcG9uZW50cy9jdGEtd2FsbCc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZG90cyc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZXhhbXBsZSc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZXotc2VhcmNoJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9mYXEnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2V2ZW50dGlja2V0cyc7XHJcbi8vIEBpbXBvcnQgJ2NvbXBvbmVudHMvZm9ybXMnO1xyXG5cclxuQGltcG9ydCAnY29tcG9uZW50cy9sb2dpbi1idXR0b24nO1xyXG5cclxuQGltcG9ydCAnY29tcG9uZW50cy9mb3Jtcy9yZXNldCc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZm9ybXMvYmFzZSc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZm9ybXMvY2F0LWNvbW11bml0eSc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZm9ybXMvY2VudGVyJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9mb3Jtcy9jb250YWN0JztcclxuQGltcG9ydCAnY29tcG9uZW50cy9mb3Jtcy9sb2dpbic7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZm9ybXMvbGVhdmUtY29tbWVudCc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZm9ybXMvbmV3c2xldHRlcic7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZm9ybXMvcG9sbCc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZm9ybXMvcHJvZmlsZSc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZm9ybXMvc2VhcmNoJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9mb3Jtcy9zZWxlY3Rpb24nO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2Zvcm1zL2ZpbmQtYS1jYXQnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2Zvcm1zL2ZpbmQtYS1jYXQtYmFubmVyJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9mb3Jtcy92b2x1bnRlZXItb3Bwcyc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZm9ybXMvZmluZC1hLXNob3AnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2Zvcm1zL2Zvcm0tc3Vic2NyaXB0aW9uJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9mb3Jtcy9zcG9uc29yQUNhdCc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcmVnaW9uYWwtZXZlbnRzJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9nYWxsZXJ5JztcclxuQGltcG9ydCAnY29tcG9uZW50cy9oYW1idXJnZXInO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL21haW4tbmF2LWRlc2t0b3AnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL21haW4tbmF2LW1vYmlsZSc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbW9iaWxlLW5hdic7XHJcbi8vTUVESUFcclxuQGltcG9ydCAnY29tcG9uZW50cy9tZWRpYS9iYXNlJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9tZWRpYS9pbmxpbmUnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL21lZGlhL2xpbmsnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL21lZGlhL2JvbGQnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL21lZGlhL2dhbGxlcnknO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL21lZGlhL3dpZGUnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL21lZGlhL3dpZGUtb3ZlcmxhcCc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbWVkaWEvcmVzZXJ2ZWQnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL21lZGlhL2V2ZW50JztcclxuQGltcG9ydCAnY29tcG9uZW50cy9tZWRpYS92aWRlbyc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbWVkaWEvc29jaWFsJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9tZWRpYS9jb3Zlcic7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbWVkaWEvY2FwdGlvbi1jb3Zlcic7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbWVkaWEvY2FwdGlvbi1ob3Zlcic7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbWVkaWEvaG92ZXItYmFja2dyb3VuZCc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbWVkaWEvdGlsZSc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbWVkaWEvb3BwJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9tZWRpYS9zcGxpdCc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbWVkaWEvc2lkZWJhcic7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbWVkaWEvc3Zncy9lZHVjYXRpb24nO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL21lZGlhL3N2Z3MvY29udGFjdCc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbWVkaWEvc3Zncy9uZXV0ZXJpbmcnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL21lZGlhL3N2Z3Mvdm9sdW50ZWVyJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9tZWRpYS90aGVtZSc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbWVkaWEvaG92ZXItc2NhbGUnO1xyXG5cclxuQGltcG9ydCAnY29tcG9uZW50cy9taW5pLWJpbyc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcGFnaW5nJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9wZW4tY2FyZCc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcGluJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9wb2xsJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9wb3B1cCc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvc29jaWFsJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9zbGlkZXJzJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9zcG9uc29yLXBvc3Rlcic7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvc3RlcHBlcic7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvc3RvcnknO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL3RhYic7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvc2VhcmNoLWdyb3VwJztcclxuLy8gQGltcG9ydCAnY29tcG9uZW50cy91c2VyLWJsb2NrJztcclxuQGltcG9ydCAnY29tcG9uZW50cy93YXJuaW5nLW1lc3NhZ2UnO1xyXG5cclxuQGltcG9ydCBcImNvbXBvbmVudHMvbW9iaWxlLXN0aWNreS1iYXJcIjtcclxuXHJcbkBpbXBvcnQgXCJjb21wb25lbnRzL2NvbW11bml0eS1zdGF0c1wiO1xyXG5AaW1wb3J0IFwiY29tcG9uZW50cy9wZW4tY2FyZC1vcHRpb25zXCI7XHJcbkBpbXBvcnQgXCJjb21wb25lbnRzL2RvbmF0ZS1vcHRpb25cIjtcclxuQGltcG9ydCBcImNvbXBvbmVudHMvbGlua3NcIjtcclxuQGltcG9ydCBcImNvbXBvbmVudHMvcGFnaW5hdGlvblwiO1xyXG5AaW1wb3J0IFwiY29tcG9uZW50cy9zb3J0LWJ5XCI7XHJcbkBpbXBvcnQgXCJjb21wb25lbnRzL21lbWJlcnNoaXAtdHlwZVwiO1xyXG5AaW1wb3J0IFwiY29tcG9uZW50cy9maXhlZC1yYXRpb1wiO1xyXG5AaW1wb3J0IFwiY29tcG9uZW50cy9zdWJtaXQtY29tbWVudFwiO1xyXG5AaW1wb3J0IFwiY29tcG9uZW50cy9pcy1zdWJtaXR0aW5nXCI7XHJcblxyXG5AaW1wb3J0IFwiY29tcG9uZW50cy9vbmUtdHJ1c3QtY3VzdG9tLWNvZGVcIjtcclxuXHJcbkBpbXBvcnQgXCJjb21wb25lbnRzL19zaW1vbnMtY2F0LWJhbm5lci1sb2dvLnNjc3NcIjtcclxuQGltcG9ydCBcImNvbXBvbmVudHMvX3NpbW9ucy1jYXQtaW5mby1ib3guc2Nzc1wiO1xyXG5AaW1wb3J0IFwiY29tcG9uZW50cy9fc2ltb25zLWNhdC1tZWRpYS5zY3NzXCI7XHJcbkBpbXBvcnQgXCJjb21wb25lbnRzL19mb250LXNpbW9ucy1jYXQuc2Nzc1wiO1xyXG5cclxuQGltcG9ydCBcImNvbXBvbmVudHMvYW5pbWF0aW9uLXN0eWxlc1wiO1xyXG5cclxuQGltcG9ydCBcImNvbXBvbmVudHMvX2lmcmFtZS1maXguc2Nzc1wiO1xyXG5AaW1wb3J0IFwiY29tcG9uZW50cy9fZXZlbnRzLnNjc3NcIjtcclxuXHJcbkBpbXBvcnQgXCJjb21wb25lbnRzL19hcHBlYWxzLnNjc3NcIjtcclxuQGltcG9ydCBcImNvbXBvbmVudHMvX3NwZWNpYWxBcHBlYWxzLnNjc3NcIjtcclxuQGltcG9ydCBcImNvbXBvbmVudHMvZm9ybXMvX21lbWJlcnNoaXAtZm9ybS5zY3NzXCI7XHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBMQVlPVVRcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuQGltcG9ydCAnbGF5b3V0L2Jhc2UnO1xyXG5AaW1wb3J0ICdsYXlvdXQvZm9vdGVyJztcclxuQGltcG9ydCAnbGF5b3V0L2dyaWRzJztcclxuQGltcG9ydCAnbGF5b3V0L2ZsZXgnO1xyXG5AaW1wb3J0ICdsYXlvdXQvaGVhZGVyLWdyb3VwJztcclxuQGltcG9ydCAnbGF5b3V0L2hlYWRlci1tZXNzYWdlJztcclxuQGltcG9ydCAnbGF5b3V0L2hlcm8tYWQtYm94ZXMnO1xyXG5AaW1wb3J0ICdsYXlvdXQvbGluZS1jbGFtcCc7XHJcbkBpbXBvcnQgJ2xheW91dC9tYXAnO1xyXG5AaW1wb3J0ICdsYXlvdXQvc2lkZWJhcic7XHJcbkBpbXBvcnQgJ2xheW91dC9zaXRlJztcclxuQGltcG9ydCAnbGF5b3V0L3N1Yi1uYXYnO1xyXG5AaW1wb3J0ICdsYXlvdXQvdGFibGVzJztcclxuQGltcG9ydCAnbGF5b3V0L2Zsb3cnO1xyXG5AaW1wb3J0ICdsYXlvdXQvcGVucyc7XHJcbkBpbXBvcnQgJ2xheW91dC91c2VyLWJsb2NrJztcclxuXHJcbkBpbXBvcnQgXCJjb21wb25lbnRzL19ibG9nLXBvc3Quc2Nzc1wiO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL3JlYWQtbW9yZSc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdmV0LWFwcHJvdmVkLWJhZGdlJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9fZG9uYXRpb24tcmVhZC1tb3JlLWNvbnRhaW5lci5zY3NzJztcclxuQGltcG9ydCBcImNvbXBvbmVudHMvZG9uYXRpb24tYmFubmVyLXRoZW1lXCI7XHJcbkBpbXBvcnQgXCJjb21wb25lbnRzL2dvb2dsZWN1c3RvbXNlYXJjaFwiO1xyXG5AaW1wb3J0IFwiY29tcG9uZW50cy9icmVhZGNydW1iXCI7XHJcbkBpbXBvcnQgXCJjb21wb25lbnRzL19leGl0U2l0ZUJ1dHRvbi5zY3NzXCI7XHJcblxyXG4vLyBTdGFuZGFsb25lIGNhdCByZXBvcnQgcGFnZVxyXG5AaW1wb3J0IFwiY29tcG9uZW50cy9fY2F0LXJlcG9ydFwiO1xyXG5cclxuLy8gQWRvcHQgYSBjYXQgcGFnZVxyXG5AaW1wb3J0IFwiY29tcG9uZW50cy9mb3Jtcy9fYWRvcHQtYS1jYXQtZm9ybVwiO1xyXG5cclxuLy8gU3BvbnNvciBQb3J0YWxcclxuQGltcG9ydCBcInNwb25zb3JfcG9ydGFsL21hc3RlclwiO1xyXG5cclxuLmhvbWVwYWdlIC50cy00IHtcclxuICAgIGNvbG9yOiRicmFuZC1wdXJwbGU7XHJcbn1cclxuXHJcbi5nb29nbGUtb3B0aW1pemUtLXNob3ctaW4tcHJldmlld3tcclxuICBkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG4uZ3JpZF9faXRlbS0tZ29vZ2xlLW9wdGltaXple1xyXG5cclxufVxyXG5cclxuLnVtYi1ibG9jay1ncmlkX19sYXlvdXQtY29udGFpbmVyIHtcclxuICAgICo6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xyXG4gICAgfVxyXG5cclxuICAgID4gLmJnLXdoaXRlICsgLmJnLXdoaXRlIHtcclxuICAgICAgICBwYWRkaW5nLXRvcDogMDtcclxuICAgIH1cclxufVxyXG4uYmctd2hpdGUucGQtdnQtbGcgKyAuYmctd2hpdGUucGQtdnQtbGcge1xyXG4gICAgcGFkZGluZy10b3A6IDBweDtcclxufSIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4uYWxpZ24tYmFzZWxpbmUgICAgeyB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmUgIWltcG9ydGFudDsgfSAvLyBCcm93c2VyIGRlZmF1bHRcbi5hbGlnbi10b3AgICAgICAgICB7IHZlcnRpY2FsLWFsaWduOiB0b3AgIWltcG9ydGFudDsgfVxuLmFsaWduLW1pZGRsZSAgICAgIHsgdmVydGljYWwtYWxpZ246IG1pZGRsZSAhaW1wb3J0YW50OyB9XG4uYWxpZ24tYm90dG9tICAgICAgeyB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tICFpbXBvcnRhbnQ7IH1cbi5hbGlnbi10ZXh0LWJvdHRvbSB7IHZlcnRpY2FsLWFsaWduOiB0ZXh0LWJvdHRvbSAhaW1wb3J0YW50OyB9XG4uYWxpZ24tdGV4dC10b3AgICAgeyB2ZXJ0aWNhbC1hbGlnbjogdGV4dC10b3AgIWltcG9ydGFudDsgfVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIENvbnRleHR1YWwgYmFja2dyb3VuZHNcblxuQG1peGluIGJnLXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yLCAkaWdub3JlLXdhcm5pbmc6IGZhbHNlKSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvciAhaW1wb3J0YW50O1xuICB9XG4gIGEjeyRwYXJlbnR9LFxuICBidXR0b24jeyRwYXJlbnR9IHtcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkY29sb3IsIDEwJSkgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiVGhlIGBiZy12YXJpYW50YCBtaXhpblwiLCBcInY0LjQuMFwiLCBcInY1XCIsICRpZ25vcmUtd2FybmluZyk7XG59XG5cbkBtaXhpbiBiZy1ncmFkaWVudC12YXJpYW50KCRwYXJlbnQsICRjb2xvciwgJGlnbm9yZS13YXJuaW5nOiBmYWxzZSkge1xuICAjeyRwYXJlbnR9IHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3IgbGluZWFyLWdyYWRpZW50KDE4MGRlZywgbWl4KCRib2R5LWJnLCAkY29sb3IsIDE1JSksICRjb2xvcikgcmVwZWF0LXggIWltcG9ydGFudDtcbiAgfVxuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJUaGUgYGJnLWdyYWRpZW50LXZhcmlhbnRgIG1peGluXCIsIFwidjQuNS4wXCIsIFwidjVcIiwgJGlnbm9yZS13YXJuaW5nKTtcbn1cbiIsIi8vIEhvdmVyIG1peGluIGFuZCBgJGVuYWJsZS1ob3Zlci1tZWRpYS1xdWVyeWAgYXJlIGRlcHJlY2F0ZWQuXG4vL1xuLy8gT3JpZ2luYWxseSBhZGRlZCBkdXJpbmcgb3VyIGFscGhhcyBhbmQgbWFpbnRhaW5lZCBkdXJpbmcgYmV0YXMsIHRoaXMgbWl4aW4gd2FzXG4vLyBkZXNpZ25lZCB0byBwcmV2ZW50IGA6aG92ZXJgIHN0aWNraW5lc3Mgb24gaU9TLWFuIGlzc3VlIHdoZXJlIGhvdmVyIHN0eWxlc1xuLy8gd291bGQgcGVyc2lzdCBhZnRlciBpbml0aWFsIHRvdWNoLlxuLy9cbi8vIEZvciBiYWNrd2FyZCBjb21wYXRpYmlsaXR5LCB3ZSd2ZSBrZXB0IHRoZXNlIG1peGlucyBhbmQgdXBkYXRlZCB0aGVtIHRvXG4vLyBhbHdheXMgcmV0dXJuIHRoZWlyIHJlZ3VsYXIgcHNldWRvLWNsYXNzZXMgaW5zdGVhZCBvZiBhIHNoaW1tZWQgbWVkaWEgcXVlcnkuXG4vL1xuLy8gSXNzdWU6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjUxOTVcblxuQG1peGluIGhvdmVyKCkge1xuICAmOmhvdmVyIHsgQGNvbnRlbnQ7IH1cbn1cblxuQG1peGluIGhvdmVyLWZvY3VzKCkge1xuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gcGxhaW4taG92ZXItZm9jdXMoKSB7XG4gICYsXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBob3Zlci1mb2N1cy1hY3RpdmUoKSB7XG4gICY6aG92ZXIsXG4gICY6Zm9jdXMsXG4gICY6YWN0aXZlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICBAaW5jbHVkZSBiZy12YXJpYW50KFwiLmJnLSN7JGNvbG9yfVwiLCAkdmFsdWUsIHRydWUpO1xufVxuXG5AaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgICBAaW5jbHVkZSBiZy1ncmFkaWVudC12YXJpYW50KFwiLmJnLWdyYWRpZW50LSN7JGNvbG9yfVwiLCAkdmFsdWUsIHRydWUpO1xuICB9XG59XG5cbi5iZy13aGl0ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xufVxuXG4uYmctdHJhbnNwYXJlbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0LCBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy9cbi8vIEJvcmRlclxuLy9cblxuLmJvcmRlciAgICAgICAgIHsgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3IgIWltcG9ydGFudDsgfVxuLmJvcmRlci10b3AgICAgIHsgYm9yZGVyLXRvcDogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItcmlnaHQgICB7IGJvcmRlci1yaWdodDogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItYm90dG9tICB7IGJvcmRlci1ib3R0b206ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvciAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLWxlZnQgICAgeyBib3JkZXItbGVmdDogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yICFpbXBvcnRhbnQ7IH1cblxuLmJvcmRlci0wICAgICAgICB7IGJvcmRlcjogMCAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLXRvcC0wICAgIHsgYm9yZGVyLXRvcDogMCAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLXJpZ2h0LTAgIHsgYm9yZGVyLXJpZ2h0OiAwICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItYm90dG9tLTAgeyBib3JkZXItYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cbi5ib3JkZXItbGVmdC0wICAgeyBib3JkZXItbGVmdDogMCAhaW1wb3J0YW50OyB9XG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAuYm9yZGVyLSN7JGNvbG9yfSB7XG4gICAgYm9yZGVyLWNvbG9yOiAkdmFsdWUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uYm9yZGVyLXdoaXRlIHtcbiAgYm9yZGVyLWNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcbn1cblxuLy9cbi8vIEJvcmRlci1yYWRpdXNcbi8vXG5cbi5yb3VuZGVkLXNtIHtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtc20gIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQge1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC10b3Age1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtcmlnaHQge1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLWJvdHRvbSB7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1sZWZ0IHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtbGcge1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1sZyAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1jaXJjbGUge1xuICBib3JkZXItcmFkaXVzOiA1MCUgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtcGlsbCB7XG4gIGJvcmRlci1yYWRpdXM6ICRyb3VuZGVkLXBpbGwgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtMCB7XG4gIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDtcbn1cbiIsIkBtaXhpbiBjbGVhcmZpeCgpIHtcbiAgJjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vL1xuLy8gVXRpbGl0aWVzIGZvciBjb21tb24gYGRpc3BsYXlgIHZhbHVlc1xuLy9cblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgQGVhY2ggJHZhbHVlIGluICRkaXNwbGF5cyB7XG4gICAgICAuZCN7JGluZml4fS0jeyR2YWx1ZX0geyBkaXNwbGF5OiAkdmFsdWUgIWltcG9ydGFudDsgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vXG4vLyBVdGlsaXRpZXMgZm9yIHRvZ2dsaW5nIGBkaXNwbGF5YCBpbiBwcmludFxuLy9cblxuQG1lZGlhIHByaW50IHtcbiAgQGVhY2ggJHZhbHVlIGluICRkaXNwbGF5cyB7XG4gICAgLmQtcHJpbnQtI3skdmFsdWV9IHsgZGlzcGxheTogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuIiwiLy8gQnJlYWtwb2ludCB2aWV3cG9ydCBzaXplcyBhbmQgbWVkaWEgcXVlcmllcy5cbi8vXG4vLyBCcmVha3BvaW50cyBhcmUgZGVmaW5lZCBhcyBhIG1hcCBvZiAobmFtZTogbWluaW11bSB3aWR0aCksIG9yZGVyIGZyb20gc21hbGwgdG8gbGFyZ2U6XG4vL1xuLy8gICAgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KVxuLy9cbi8vIFRoZSBtYXAgZGVmaW5lZCBpbiB0aGUgYCRncmlkLWJyZWFrcG9pbnRzYCBnbG9iYWwgdmFyaWFibGUgaXMgdXNlZCBhcyB0aGUgYCRicmVha3BvaW50c2AgYXJndW1lbnQgYnkgZGVmYXVsdC5cblxuLy8gTmFtZSBvZiB0aGUgbmV4dCBicmVha3BvaW50LCBvciBudWxsIGZvciB0aGUgbGFzdCBicmVha3BvaW50LlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSlcbi8vICAgIG1kXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBtZFxuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtLCAkYnJlYWtwb2ludC1uYW1lczogKHhzIHNtIG1kIGxnIHhsKSlcbi8vICAgIG1kXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludC1uYW1lczogbWFwLWtleXMoJGJyZWFrcG9pbnRzKSkge1xuICAkbjogaW5kZXgoJGJyZWFrcG9pbnQtbmFtZXMsICRuYW1lKTtcbiAgQHJldHVybiBpZigkbiAhPSBudWxsIGFuZCAkbiA8IGxlbmd0aCgkYnJlYWtwb2ludC1uYW1lcyksIG50aCgkYnJlYWtwb2ludC1uYW1lcywgJG4gKyAxKSwgbnVsbCk7XG59XG5cbi8vIE1pbmltdW0gYnJlYWtwb2ludCB3aWR0aC4gTnVsbCBmb3IgdGhlIHNtYWxsZXN0IChmaXJzdCkgYnJlYWtwb2ludC5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW1pbihzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIDU3NnB4XG5AZnVuY3Rpb24gYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogbWFwLWdldCgkYnJlYWtwb2ludHMsICRuYW1lKTtcbiAgQHJldHVybiBpZigkbWluICE9IDAsICRtaW4sIG51bGwpO1xufVxuXG4vLyBNYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguIE51bGwgZm9yIHRoZSBsYXJnZXN0IChsYXN0KSBicmVha3BvaW50LlxuLy8gVGhlIG1heGltdW0gdmFsdWUgaXMgY2FsY3VsYXRlZCBhcyB0aGUgbWluaW11bSBvZiB0aGUgbmV4dCBvbmUgbGVzcyAwLjAycHhcbi8vIHRvIHdvcmsgYXJvdW5kIHRoZSBsaW1pdGF0aW9ucyBvZiBgbWluLWAgYW5kIGBtYXgtYCBwcmVmaXhlcyBhbmQgdmlld3BvcnRzIHdpdGggZnJhY3Rpb25hbCB3aWR0aHMuXG4vLyBTZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSL21lZGlhcXVlcmllcy00LyNtcS1taW4tbWF4XG4vLyBVc2VzIDAuMDJweCByYXRoZXIgdGhhbiAwLjAxcHggdG8gd29yayBhcm91bmQgYSBjdXJyZW50IHJvdW5kaW5nIGJ1ZyBpbiBTYWZhcmkuXG4vLyBTZWUgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3ODI2MVxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbWF4KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgNzY3Ljk4cHhcbkBmdW5jdGlvbiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAcmV0dXJuIGlmKCRuZXh0LCBicmVha3BvaW50LW1pbigkbmV4dCwgJGJyZWFrcG9pbnRzKSAtIC4wMiwgbnVsbCk7XG59XG5cbi8vIFJldHVybnMgYSBibGFuayBzdHJpbmcgaWYgc21hbGxlc3QgYnJlYWtwb2ludCwgb3RoZXJ3aXNlIHJldHVybnMgdGhlIG5hbWUgd2l0aCBhIGRhc2ggaW4gZnJvbnQuXG4vLyBVc2VmdWwgZm9yIG1ha2luZyByZXNwb25zaXZlIHV0aWxpdGllcy5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LWluZml4KHhzLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgXCJcIiAgKFJldHVybnMgYSBibGFuayBzdHJpbmcpXG4vLyAgICA+PiBicmVha3BvaW50LWluZml4KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgXCItc21cIlxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtaW5maXgoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQHJldHVybiBpZihicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKSA9PSBudWxsLCBcIlwiLCBcIi0jeyRuYW1lfVwiKTtcbn1cblxuLy8gTWVkaWEgb2YgYXQgbGVhc3QgdGhlIG1pbmltdW0gYnJlYWtwb2ludCB3aWR0aC4gTm8gcXVlcnkgZm9yIHRoZSBzbWFsbGVzdCBicmVha3BvaW50LlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50IGFuZCB3aWRlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAaWYgJG1pbiB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gTWVkaWEgb2YgYXQgbW9zdCB0aGUgbWF4aW11bSBicmVha3BvaW50IHdpZHRoLiBObyBxdWVyeSBmb3IgdGhlIGxhcmdlc3QgYnJlYWtwb2ludC5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCBhbmQgbmFycm93ZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1kb3duKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAaWYgJG1heCB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gTWVkaWEgdGhhdCBzcGFucyBtdWx0aXBsZSBicmVha3BvaW50IHdpZHRocy5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBiZXR3ZWVuIHRoZSBtaW4gYW5kIG1heCBicmVha3BvaW50c1xuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtYmV0d2VlbigkbG93ZXIsICR1cHBlciwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbG93ZXIsICRicmVha3BvaW50cyk7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCR1cHBlciwgJGJyZWFrcG9pbnRzKTtcblxuICBAaWYgJG1pbiAhPSBudWxsIGFuZCAkbWF4ICE9IG51bGwge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSBhbmQgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtYXggPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbG93ZXIsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtaW4gPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCR1cHBlciwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8gTWVkaWEgYmV0d2VlbiB0aGUgYnJlYWtwb2ludCdzIG1pbmltdW0gYW5kIG1heGltdW0gd2lkdGhzLlxuLy8gTm8gbWluaW11bSBmb3IgdGhlIHNtYWxsZXN0IGJyZWFrcG9pbnQsIGFuZCBubyBtYXhpbXVtIGZvciB0aGUgbGFyZ2VzdCBvbmUuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgb25seSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCwgbm90IHZpZXdwb3J0cyBhbnkgd2lkZXIgb3IgbmFycm93ZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1vbmx5KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICAkbWF4OiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcblxuICBAaWYgJG1pbiAhPSBudWxsIGFuZCAkbWF4ICE9IG51bGwge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSBhbmQgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtYXggPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbmFtZSwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1pbiA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJG5hbWUsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBDcmVkaXQ6IE5pY29sYXMgR2FsbGFnaGVyIGFuZCBTVUlUIENTUy5cblxuLmVtYmVkLXJlc3BvbnNpdmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAmOjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cblxuICAuZW1iZWQtcmVzcG9uc2l2ZS1pdGVtLFxuICBpZnJhbWUsXG4gIGVtYmVkLFxuICBvYmplY3QsXG4gIHZpZGVvIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBib3JkZXI6IDA7XG4gIH1cbn1cblxuQGVhY2ggJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvIGluICRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpb3Mge1xuICAkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8teDogbnRoKCRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpbywgMSk7XG4gICRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpby15OiBudGgoJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLCAyKTtcblxuICAuZW1iZWQtcmVzcG9uc2l2ZS0jeyRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpby14fWJ5I3skZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8teX0ge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBwYWRkaW5nLXRvcDogcGVyY2VudGFnZShkaXZpZGUoJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLXksICRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpby14KSk7XG4gICAgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gRmxleCB2YXJpYXRpb25cbi8vXG4vLyBDdXN0b20gc3R5bGVzIGZvciBhZGRpdGlvbmFsIGZsZXggYWxpZ25tZW50IG9wdGlvbnMuXG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC5mbGV4I3skaW5maXh9LXJvdyAgICAgICAgICAgIHsgZmxleC1kaXJlY3Rpb246IHJvdyAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tY29sdW1uICAgICAgICAgeyBmbGV4LWRpcmVjdGlvbjogY29sdW1uICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1yb3ctcmV2ZXJzZSAgICB7IGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZSAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tY29sdW1uLXJldmVyc2UgeyBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2UgIWltcG9ydGFudDsgfVxuXG4gICAgLmZsZXgjeyRpbmZpeH0td3JhcCAgICAgICAgIHsgZmxleC13cmFwOiB3cmFwICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1ub3dyYXAgICAgICAgeyBmbGV4LXdyYXA6IG5vd3JhcCAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0td3JhcC1yZXZlcnNlIHsgZmxleC13cmFwOiB3cmFwLXJldmVyc2UgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LWZpbGwgICAgICAgICB7IGZsZXg6IDEgMSBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1ncm93LTAgICAgICAgeyBmbGV4LWdyb3c6IDAgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LWdyb3ctMSAgICAgICB7IGZsZXgtZ3JvdzogMSAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tc2hyaW5rLTAgICAgIHsgZmxleC1zaHJpbms6IDAgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LXNocmluay0xICAgICB7IGZsZXgtc2hyaW5rOiAxICFpbXBvcnRhbnQ7IH1cblxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tc3RhcnQgICB7IGp1c3RpZnktY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50OyB9XG4gICAgLmp1c3RpZnktY29udGVudCN7JGluZml4fS1lbmQgICAgIHsganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XG4gICAgLmp1c3RpZnktY29udGVudCN7JGluZml4fS1jZW50ZXIgIHsganVzdGlmeS1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tYmV0d2VlbiB7IGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50OyB9XG4gICAgLmp1c3RpZnktY29udGVudCN7JGluZml4fS1hcm91bmQgIHsganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDsgfVxuXG4gICAgLmFsaWduLWl0ZW1zI3skaW5maXh9LXN0YXJ0ICAgIHsgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1lbmQgICAgICB7IGFsaWduLWl0ZW1zOiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWl0ZW1zI3skaW5maXh9LWNlbnRlciAgIHsgYWxpZ24taXRlbXM6IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWl0ZW1zI3skaW5maXh9LWJhc2VsaW5lIHsgYWxpZ24taXRlbXM6IGJhc2VsaW5lICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24taXRlbXMjeyRpbmZpeH0tc3RyZXRjaCAgeyBhbGlnbi1pdGVtczogc3RyZXRjaCAhaW1wb3J0YW50OyB9XG5cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1zdGFydCAgIHsgYWxpZ24tY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tZW5kICAgICB7IGFsaWduLWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1jZW50ZXIgIHsgYWxpZ24tY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1iZXR3ZWVuIHsgYWxpZ24tY29udGVudDogc3BhY2UtYmV0d2VlbiAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tYXJvdW5kICB7IGFsaWduLWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tc3RyZXRjaCB7IGFsaWduLWNvbnRlbnQ6IHN0cmV0Y2ggIWltcG9ydGFudDsgfVxuXG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tYXV0byAgICAgeyBhbGlnbi1zZWxmOiBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1zdGFydCAgICB7IGFsaWduLXNlbGY6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LWVuZCAgICAgIHsgYWxpZ24tc2VsZjogZmxleC1lbmQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LWNlbnRlciAgIHsgYWxpZ24tc2VsZjogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1iYXNlbGluZSB7IGFsaWduLXNlbGY6IGJhc2VsaW5lICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1zdHJldGNoICB7IGFsaWduLXNlbGY6IHN0cmV0Y2ggIWltcG9ydGFudDsgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLmZsb2F0I3skaW5maXh9LWxlZnQgIHsgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDsgfVxuICAgIC5mbG9hdCN7JGluZml4fS1yaWdodCB7IGZsb2F0OiByaWdodCAhaW1wb3J0YW50OyB9XG4gICAgLmZsb2F0I3skaW5maXh9LW5vbmUgIHsgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDsgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuQGVhY2ggJHZhbHVlIGluICR1c2VyLXNlbGVjdHMge1xuICAudXNlci1zZWxlY3QtI3skdmFsdWV9IHsgdXNlci1zZWxlY3Q6ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuQGVhY2ggJHZhbHVlIGluICRvdmVyZmxvd3Mge1xuICAub3ZlcmZsb3ctI3skdmFsdWV9IHsgb3ZlcmZsb3c6ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gQ29tbW9uIHZhbHVlc1xuQGVhY2ggJHBvc2l0aW9uIGluICRwb3NpdGlvbnMge1xuICAucG9zaXRpb24tI3skcG9zaXRpb259IHsgcG9zaXRpb246ICRwb3NpdGlvbiAhaW1wb3J0YW50OyB9XG59XG5cbi8vIFNob3J0aGFuZFxuXG4uZml4ZWQtdG9wIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LWZpeGVkO1xufVxuXG4uZml4ZWQtYm90dG9tIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LWZpeGVkO1xufVxuXG4uc3RpY2t5LXRvcCB7XG4gIEBzdXBwb3J0cyAocG9zaXRpb246IHN0aWNreSkge1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgdG9wOiAwO1xuICAgIHotaW5kZXg6ICR6aW5kZXgtc3RpY2t5O1xuICB9XG59XG4iLCIvLyBWYXJpYWJsZXNcbi8vXG4vLyBWYXJpYWJsZXMgc2hvdWxkIGZvbGxvdyB0aGUgYCRjb21wb25lbnQtc3RhdGUtcHJvcGVydHktc2l6ZWAgZm9ybXVsYSBmb3Jcbi8vIGNvbnNpc3RlbnQgbmFtaW5nLiBFeDogJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yIGFuZCAkbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzLlxuXG4vLyBDb2xvciBzeXN0ZW1cblxuJHdoaXRlOiAgICAjZmZmICFkZWZhdWx0O1xuJGdyYXktMTAwOiAjZjhmOWZhICFkZWZhdWx0O1xuJGdyYXktMjAwOiAjZTllY2VmICFkZWZhdWx0O1xuJGdyYXktMzAwOiAjZGVlMmU2ICFkZWZhdWx0O1xuJGdyYXktNDAwOiAjY2VkNGRhICFkZWZhdWx0O1xuJGdyYXktNTAwOiAjYWRiNWJkICFkZWZhdWx0O1xuJGdyYXktNjAwOiAjNmM3NTdkICFkZWZhdWx0O1xuJGdyYXktNzAwOiAjNDk1MDU3ICFkZWZhdWx0O1xuJGdyYXktODAwOiAjMzQzYTQwICFkZWZhdWx0O1xuJGdyYXktOTAwOiAjMjEyNTI5ICFkZWZhdWx0O1xuJGJsYWNrOiAgICAjMDAwICFkZWZhdWx0O1xuXG4kZ3JheXM6ICgpICFkZWZhdWx0O1xuJGdyYXlzOiBtYXAtbWVyZ2UoXG4gIChcbiAgICBcIjEwMFwiOiAkZ3JheS0xMDAsXG4gICAgXCIyMDBcIjogJGdyYXktMjAwLFxuICAgIFwiMzAwXCI6ICRncmF5LTMwMCxcbiAgICBcIjQwMFwiOiAkZ3JheS00MDAsXG4gICAgXCI1MDBcIjogJGdyYXktNTAwLFxuICAgIFwiNjAwXCI6ICRncmF5LTYwMCxcbiAgICBcIjcwMFwiOiAkZ3JheS03MDAsXG4gICAgXCI4MDBcIjogJGdyYXktODAwLFxuICAgIFwiOTAwXCI6ICRncmF5LTkwMFxuICApLFxuICAkZ3JheXNcbik7XG5cbiRibHVlOiAgICAjMDA3YmZmICFkZWZhdWx0O1xuJGluZGlnbzogICM2NjEwZjIgIWRlZmF1bHQ7XG4kcHVycGxlOiAgIzZmNDJjMSAhZGVmYXVsdDtcbiRwaW5rOiAgICAjZTgzZThjICFkZWZhdWx0O1xuJHJlZDogICAgICNkYzM1NDUgIWRlZmF1bHQ7XG4kb3JhbmdlOiAgI2ZkN2UxNCAhZGVmYXVsdDtcbiR5ZWxsb3c6ICAjZmZjMTA3ICFkZWZhdWx0O1xuJGdyZWVuOiAgICMyOGE3NDUgIWRlZmF1bHQ7XG4kdGVhbDogICAgIzIwYzk5NyAhZGVmYXVsdDtcbiRjeWFuOiAgICAjMTdhMmI4ICFkZWZhdWx0O1xuXG4kY29sb3JzOiAoKSAhZGVmYXVsdDtcbiRjb2xvcnM6IG1hcC1tZXJnZShcbiAgKFxuICAgIFwiYmx1ZVwiOiAgICAgICAkYmx1ZSxcbiAgICBcImluZGlnb1wiOiAgICAgJGluZGlnbyxcbiAgICBcInB1cnBsZVwiOiAgICAgJHB1cnBsZSxcbiAgICBcInBpbmtcIjogICAgICAgJHBpbmssXG4gICAgXCJyZWRcIjogICAgICAgICRyZWQsXG4gICAgXCJvcmFuZ2VcIjogICAgICRvcmFuZ2UsXG4gICAgXCJ5ZWxsb3dcIjogICAgICR5ZWxsb3csXG4gICAgXCJncmVlblwiOiAgICAgICRncmVlbixcbiAgICBcInRlYWxcIjogICAgICAgJHRlYWwsXG4gICAgXCJjeWFuXCI6ICAgICAgICRjeWFuLFxuICAgIFwid2hpdGVcIjogICAgICAkd2hpdGUsXG4gICAgXCJncmF5XCI6ICAgICAgICRncmF5LTYwMCxcbiAgICBcImdyYXktZGFya1wiOiAgJGdyYXktODAwXG4gICksXG4gICRjb2xvcnNcbik7XG5cbiRwcmltYXJ5OiAgICAgICAkYmx1ZSAhZGVmYXVsdDtcbiRzZWNvbmRhcnk6ICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kc3VjY2VzczogICAgICAgJGdyZWVuICFkZWZhdWx0O1xuJGluZm86ICAgICAgICAgICRjeWFuICFkZWZhdWx0O1xuJHdhcm5pbmc6ICAgICAgICR5ZWxsb3cgIWRlZmF1bHQ7XG4kZGFuZ2VyOiAgICAgICAgJHJlZCAhZGVmYXVsdDtcbiRsaWdodDogICAgICAgICAkZ3JheS0xMDAgIWRlZmF1bHQ7XG4kZGFyazogICAgICAgICAgJGdyYXktODAwICFkZWZhdWx0O1xuXG4kdGhlbWUtY29sb3JzOiAoKSAhZGVmYXVsdDtcbiR0aGVtZS1jb2xvcnM6IG1hcC1tZXJnZShcbiAgKFxuICAgIFwicHJpbWFyeVwiOiAgICAkcHJpbWFyeSxcbiAgICBcInNlY29uZGFyeVwiOiAgJHNlY29uZGFyeSxcbiAgICBcInN1Y2Nlc3NcIjogICAgJHN1Y2Nlc3MsXG4gICAgXCJpbmZvXCI6ICAgICAgICRpbmZvLFxuICAgIFwid2FybmluZ1wiOiAgICAkd2FybmluZyxcbiAgICBcImRhbmdlclwiOiAgICAgJGRhbmdlcixcbiAgICBcImxpZ2h0XCI6ICAgICAgJGxpZ2h0LFxuICAgIFwiZGFya1wiOiAgICAgICAkZGFya1xuICApLFxuICAkdGhlbWUtY29sb3JzXG4pO1xuXG4vLyBTZXQgYSBzcGVjaWZpYyBqdW1wIHBvaW50IGZvciByZXF1ZXN0aW5nIGNvbG9yIGp1bXBzXG4kdGhlbWUtY29sb3ItaW50ZXJ2YWw6ICAgICAgOCUgIWRlZmF1bHQ7XG5cbi8vIFRoZSB5aXEgbGlnaHRuZXNzIHZhbHVlIHRoYXQgZGV0ZXJtaW5lcyB3aGVuIHRoZSBsaWdodG5lc3Mgb2YgY29sb3IgY2hhbmdlcyBmcm9tIFwiZGFya1wiIHRvIFwibGlnaHRcIi4gQWNjZXB0YWJsZSB2YWx1ZXMgYXJlIGJldHdlZW4gMCBhbmQgMjU1LlxuJHlpcS1jb250cmFzdGVkLXRocmVzaG9sZDogIDE1MCAhZGVmYXVsdDtcblxuLy8gQ3VzdG9taXplIHRoZSBsaWdodCBhbmQgZGFyayB0ZXh0IGNvbG9ycyBmb3IgdXNlIGluIG91ciBZSVEgY29sb3IgY29udHJhc3QgZnVuY3Rpb24uXG4keWlxLXRleHQtZGFyazogICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuJHlpcS10ZXh0LWxpZ2h0OiAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8gQ2hhcmFjdGVycyB3aGljaCBhcmUgZXNjYXBlZCBieSB0aGUgZXNjYXBlLXN2ZyBmdW5jdGlvblxuJGVzY2FwZWQtY2hhcmFjdGVyczogKFxuICAoXCI8XCIsIFwiJTNjXCIpLFxuICAoXCI+XCIsIFwiJTNlXCIpLFxuICAoXCIjXCIsIFwiJTIzXCIpLFxuICAoXCIoXCIsIFwiJTI4XCIpLFxuICAoXCIpXCIsIFwiJTI5XCIpLFxuKSAhZGVmYXVsdDtcblxuXG4vLyBPcHRpb25zXG4vL1xuLy8gUXVpY2tseSBtb2RpZnkgZ2xvYmFsIHN0eWxpbmcgYnkgZW5hYmxpbmcgb3IgZGlzYWJsaW5nIG9wdGlvbmFsIGZlYXR1cmVzLlxuXG4kZW5hYmxlLWNhcmV0OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcm91bmRlZDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1zaGFkb3dzOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0O1xuJGVuYWJsZS1ncmFkaWVudHM6ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0O1xuJGVuYWJsZS10cmFuc2l0aW9uczogICAgICAgICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXByZWZlcnMtcmVkdWNlZC1tb3Rpb24tbWVkaWEtcXVlcnk6ICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtaG92ZXItbWVkaWEtcXVlcnk6ICAgICAgICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCwgbm8gbG9uZ2VyIGFmZmVjdHMgYW55IGNvbXBpbGVkIENTU1xuJGVuYWJsZS1ncmlkLWNsYXNzZXM6ICAgICAgICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXBvaW50ZXItY3Vyc29yLWZvci1idXR0b25zOiAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcHJpbnQtc3R5bGVzOiAgICAgICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZXM6ICAgICAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0O1xuJGVuYWJsZS12YWxpZGF0aW9uLWljb25zOiAgICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLWRlcHJlY2F0aW9uLW1lc3NhZ2VzOiAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcblxuXG4vLyBTcGFjaW5nXG4vL1xuLy8gQ29udHJvbCB0aGUgZGVmYXVsdCBzdHlsaW5nIG9mIG1vc3QgQm9vdHN0cmFwIGVsZW1lbnRzIGJ5IG1vZGlmeWluZyB0aGVzZVxuLy8gdmFyaWFibGVzLiBNb3N0bHkgZm9jdXNlZCBvbiBzcGFjaW5nLlxuLy8gWW91IGNhbiBhZGQgbW9yZSBlbnRyaWVzIHRvIHRoZSAkc3BhY2VycyBtYXAsIHNob3VsZCB5b3UgbmVlZCBtb3JlIHZhcmlhdGlvbi5cblxuJHNwYWNlcjogMXJlbSAhZGVmYXVsdDtcbiRzcGFjZXJzOiAoKSAhZGVmYXVsdDtcbiRzcGFjZXJzOiBtYXAtbWVyZ2UoXG4gIChcbiAgICAwOiAwLFxuICAgIDE6ICgkc3BhY2VyICogLjI1KSxcbiAgICAyOiAoJHNwYWNlciAqIC41KSxcbiAgICAzOiAkc3BhY2VyLFxuICAgIDQ6ICgkc3BhY2VyICogMS41KSxcbiAgICA1OiAoJHNwYWNlciAqIDMpXG4gICksXG4gICRzcGFjZXJzXG4pO1xuXG4vLyBUaGlzIHZhcmlhYmxlIGFmZmVjdHMgdGhlIGAuaC0qYCBhbmQgYC53LSpgIGNsYXNzZXMuXG4kc2l6ZXM6ICgpICFkZWZhdWx0O1xuJHNpemVzOiBtYXAtbWVyZ2UoXG4gIChcbiAgICAyNTogMjUlLFxuICAgIDUwOiA1MCUsXG4gICAgNzU6IDc1JSxcbiAgICAxMDA6IDEwMCUsXG4gICAgYXV0bzogYXV0b1xuICApLFxuICAkc2l6ZXNcbik7XG5cblxuLy8gQm9keVxuLy9cbi8vIFNldHRpbmdzIGZvciB0aGUgYDxib2R5PmAgZWxlbWVudC5cblxuJGJvZHktYmc6ICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRib2R5LWNvbG9yOiAgICAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG5cblxuLy8gTGlua3Ncbi8vXG4vLyBTdHlsZSBhbmNob3IgZWxlbWVudHMuXG5cbiRsaW5rLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoZW1lLWNvbG9yKFwicHJpbWFyeVwiKSAhZGVmYXVsdDtcbiRsaW5rLWRlY29yYXRpb246ICAgICAgICAgICAgICAgICAgICAgICAgIG5vbmUgIWRlZmF1bHQ7XG4kbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICBkYXJrZW4oJGxpbmstY29sb3IsIDE1JSkgIWRlZmF1bHQ7XG4kbGluay1ob3Zlci1kZWNvcmF0aW9uOiAgICAgICAgICAgICAgICAgICB1bmRlcmxpbmUgIWRlZmF1bHQ7XG4vLyBEYXJrZW4gcGVyY2VudGFnZSBmb3IgbGlua3Mgd2l0aCBgLnRleHQtKmAgY2xhc3MgKGUuZy4gYC50ZXh0LXN1Y2Nlc3NgKVxuJGVtcGhhc2l6ZWQtbGluay1ob3Zlci1kYXJrZW4tcGVyY2VudGFnZTogMTUlICFkZWZhdWx0O1xuXG4vLyBQYXJhZ3JhcGhzXG4vL1xuLy8gU3R5bGUgcCBlbGVtZW50LlxuXG4kcGFyYWdyYXBoLW1hcmdpbi1ib3R0b206ICAgMXJlbSAhZGVmYXVsdDtcblxuXG4vLyBHcmlkIGJyZWFrcG9pbnRzXG4vL1xuLy8gRGVmaW5lIHRoZSBtaW5pbXVtIGRpbWVuc2lvbnMgYXQgd2hpY2ggeW91ciBsYXlvdXQgd2lsbCBjaGFuZ2UsXG4vLyBhZGFwdGluZyB0byBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLCBmb3IgdXNlIGluIG1lZGlhIHF1ZXJpZXMuXG5cbiRncmlkLWJyZWFrcG9pbnRzOiAoXG4gIHhzOiAwLFxuICBzbTogNTc2cHgsXG4gIG1kOiA3NjhweCxcbiAgbGc6IDk5MnB4LFxuICB4bDogMTIwMHB4XG4pICFkZWZhdWx0O1xuXG5AaW5jbHVkZSBfYXNzZXJ0LWFzY2VuZGluZygkZ3JpZC1icmVha3BvaW50cywgXCIkZ3JpZC1icmVha3BvaW50c1wiKTtcbkBpbmNsdWRlIF9hc3NlcnQtc3RhcnRzLWF0LXplcm8oJGdyaWQtYnJlYWtwb2ludHMsIFwiJGdyaWQtYnJlYWtwb2ludHNcIik7XG5cblxuLy8gR3JpZCBjb250YWluZXJzXG4vL1xuLy8gRGVmaW5lIHRoZSBtYXhpbXVtIHdpZHRoIG9mIGAuY29udGFpbmVyYCBmb3IgZGlmZmVyZW50IHNjcmVlbiBzaXplcy5cblxuJGNvbnRhaW5lci1tYXgtd2lkdGhzOiAoXG4gIHNtOiA1NDBweCxcbiAgbWQ6IDcyMHB4LFxuICBsZzogOTYwcHgsXG4gIHhsOiAxMTQwcHhcbikgIWRlZmF1bHQ7XG5cbkBpbmNsdWRlIF9hc3NlcnQtYXNjZW5kaW5nKCRjb250YWluZXItbWF4LXdpZHRocywgXCIkY29udGFpbmVyLW1heC13aWR0aHNcIik7XG5cblxuLy8gR3JpZCBjb2x1bW5zXG4vL1xuLy8gU2V0IHRoZSBudW1iZXIgb2YgY29sdW1ucyBhbmQgc3BlY2lmeSB0aGUgd2lkdGggb2YgdGhlIGd1dHRlcnMuXG5cbiRncmlkLWNvbHVtbnM6ICAgICAgICAgICAgICAgIDEyICFkZWZhdWx0O1xuJGdyaWQtZ3V0dGVyLXdpZHRoOiAgICAgICAgICAgMzBweCAhZGVmYXVsdDtcbiRncmlkLXJvdy1jb2x1bW5zOiAgICAgICAgICAgIDYgIWRlZmF1bHQ7XG5cblxuLy8gQ29tcG9uZW50c1xuLy9cbi8vIERlZmluZSBjb21tb24gcGFkZGluZyBhbmQgYm9yZGVyIHJhZGl1cyBzaXplcyBhbmQgbW9yZS5cblxuJGxpbmUtaGVpZ2h0LWxnOiAgICAgICAgICAgICAgMS41ICFkZWZhdWx0O1xuJGxpbmUtaGVpZ2h0LXNtOiAgICAgICAgICAgICAgMS41ICFkZWZhdWx0O1xuXG4kYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAxcHggIWRlZmF1bHQ7XG4kYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG5cbiRib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLWxnOiAgICAgICAgICAgIC4zcmVtICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtc206ICAgICAgICAgICAgLjJyZW0gIWRlZmF1bHQ7XG5cbiRyb3VuZGVkLXBpbGw6ICAgICAgICAgICAgICAgIDUwcmVtICFkZWZhdWx0O1xuXG4kYm94LXNoYWRvdy1zbTogICAgICAgICAgICAgICAwIC4xMjVyZW0gLjI1cmVtIHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcbiRib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgIDAgLjVyZW0gMXJlbSByZ2JhKCRibGFjaywgLjE1KSAhZGVmYXVsdDtcbiRib3gtc2hhZG93LWxnOiAgICAgICAgICAgICAgIDAgMXJlbSAzcmVtIHJnYmEoJGJsYWNrLCAuMTc1KSAhZGVmYXVsdDtcblxuJGNvbXBvbmVudC1hY3RpdmUtY29sb3I6ICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGNvbXBvbmVudC1hY3RpdmUtYmc6ICAgICAgICAgdGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpICFkZWZhdWx0O1xuXG4kY2FyZXQtd2lkdGg6ICAgICAgICAgICAgICAgICAuM2VtICFkZWZhdWx0O1xuJGNhcmV0LXZlcnRpY2FsLWFsaWduOiAgICAgICAgJGNhcmV0LXdpZHRoICogLjg1ICFkZWZhdWx0O1xuJGNhcmV0LXNwYWNpbmc6ICAgICAgICAgICAgICAgJGNhcmV0LXdpZHRoICogLjg1ICFkZWZhdWx0O1xuXG4kdHJhbnNpdGlvbi1iYXNlOiAgICAgICAgICAgICBhbGwgLjJzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuJHRyYW5zaXRpb24tZmFkZTogICAgICAgICAgICAgb3BhY2l0eSAuMTVzIGxpbmVhciAhZGVmYXVsdDtcbiR0cmFuc2l0aW9uLWNvbGxhcHNlOiAgICAgICAgIGhlaWdodCAuMzVzIGVhc2UgIWRlZmF1bHQ7XG4kdHJhbnNpdGlvbi1jb2xsYXBzZS13aWR0aDogICB3aWR0aCAuMzVzIGVhc2UgIWRlZmF1bHQ7XG5cbiRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpb3M6ICgpICFkZWZhdWx0O1xuJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvczogam9pbihcbiAgKFxuICAgICgyMSA5KSxcbiAgICAoMTYgOSksXG4gICAgKDQgMyksXG4gICAgKDEgMSksXG4gICksXG4gICRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpb3Ncbik7XG5cbi8vIFR5cG9ncmFwaHlcbi8vXG4vLyBGb250LCBsaW5lLWhlaWdodCwgYW5kIGNvbG9yIGZvciBib2R5IHRleHQsIGhlYWRpbmdzLCBhbmQgbW9yZS5cblxuLy8gc3R5bGVsaW50LWRpc2FibGUgdmFsdWUta2V5d29yZC1jYXNlXG4kZm9udC1mYW1pbHktc2Fucy1zZXJpZjogICAgICAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsIFwiU2Vnb2UgVUlcIiwgUm9ib3RvLCBcIkhlbHZldGljYSBOZXVlXCIsIEFyaWFsLCBcIk5vdG8gU2Fuc1wiLCBcIkxpYmVyYXRpb24gU2Fuc1wiLCBzYW5zLXNlcmlmLCBcIkFwcGxlIENvbG9yIEVtb2ppXCIsIFwiU2Vnb2UgVUkgRW1vamlcIiwgXCJTZWdvZSBVSSBTeW1ib2xcIiwgXCJOb3RvIENvbG9yIEVtb2ppXCIgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiAgICAgICBTRk1vbm8tUmVndWxhciwgTWVubG8sIE1vbmFjbywgQ29uc29sYXMsIFwiTGliZXJhdGlvbiBNb25vXCIsIFwiQ291cmllciBOZXdcIiwgbW9ub3NwYWNlICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LWJhc2U6ICAgICAgICAgICAgJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWYgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZW5hYmxlIHZhbHVlLWtleXdvcmQtY2FzZVxuXG4kZm9udC1zaXplLWJhc2U6ICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0OyAvLyBBc3N1bWVzIHRoZSBicm93c2VyIGRlZmF1bHQsIHR5cGljYWxseSBgMTZweGBcbiRmb250LXNpemUtbGc6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG4kZm9udC1zaXplLXNtOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAuODc1ICFkZWZhdWx0O1xuXG4kZm9udC13ZWlnaHQtbGlnaHRlcjogICAgICAgICBsaWdodGVyICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LWxpZ2h0OiAgICAgICAgICAgMzAwICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LW5vcm1hbDogICAgICAgICAgNDAwICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LWJvbGQ6ICAgICAgICAgICAgNzAwICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LWJvbGRlcjogICAgICAgICAgYm9sZGVyICFkZWZhdWx0O1xuXG4kZm9udC13ZWlnaHQtYmFzZTogICAgICAgICAgICAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuJGxpbmUtaGVpZ2h0LWJhc2U6ICAgICAgICAgICAgMS41ICFkZWZhdWx0O1xuXG4kaDEtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAyLjUgIWRlZmF1bHQ7XG4kaDItZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAyICFkZWZhdWx0O1xuJGgzLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS43NSAhZGVmYXVsdDtcbiRoNC1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuNSAhZGVmYXVsdDtcbiRoNS1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG4kaDYtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG5cbiRoZWFkaW5ncy1tYXJnaW4tYm90dG9tOiAgICAgICRzcGFjZXIgKiAuNSAhZGVmYXVsdDtcbiRoZWFkaW5ncy1mb250LWZhbWlseTogICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtZm9udC13ZWlnaHQ6ICAgICAgICA1MDAgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtbGluZS1oZWlnaHQ6ICAgICAgICAxLjIgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtY29sb3I6ICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kZGlzcGxheTEtc2l6ZTogICAgICAgICAgICAgICA2cmVtICFkZWZhdWx0O1xuJGRpc3BsYXkyLXNpemU6ICAgICAgICAgICAgICAgNS41cmVtICFkZWZhdWx0O1xuJGRpc3BsYXkzLXNpemU6ICAgICAgICAgICAgICAgNC41cmVtICFkZWZhdWx0O1xuJGRpc3BsYXk0LXNpemU6ICAgICAgICAgICAgICAgMy41cmVtICFkZWZhdWx0O1xuXG4kZGlzcGxheTEtd2VpZ2h0OiAgICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG4kZGlzcGxheTItd2VpZ2h0OiAgICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG4kZGlzcGxheTMtd2VpZ2h0OiAgICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG4kZGlzcGxheTQtd2VpZ2h0OiAgICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG4kZGlzcGxheS1saW5lLWhlaWdodDogICAgICAgICAkaGVhZGluZ3MtbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG5cbiRsZWFkLWZvbnQtc2l6ZTogICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG4kbGVhZC1mb250LXdlaWdodDogICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG5cbiRzbWFsbC1mb250LXNpemU6ICAgICAgICAgICAgIC44NzVlbSAhZGVmYXVsdDtcblxuJHRleHQtbXV0ZWQ6ICAgICAgICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4kYmxvY2txdW90ZS1zbWFsbC1jb2xvcjogICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kYmxvY2txdW90ZS1zbWFsbC1mb250LXNpemU6ICAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGJsb2NrcXVvdGUtZm9udC1zaXplOiAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcblxuJGhyLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcbiRoci1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cbiRtYXJrLXBhZGRpbmc6ICAgICAgICAgICAgICAgIC4yZW0gIWRlZmF1bHQ7XG5cbiRkdC1mb250LXdlaWdodDogICAgICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4ka2JkLWJveC1zaGFkb3c6ICAgICAgICAgICAgICBpbnNldCAwIC0uMXJlbSAwIHJnYmEoJGJsYWNrLCAuMjUpICFkZWZhdWx0O1xuJG5lc3RlZC1rYmQtZm9udC13ZWlnaHQ6ICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbiRsaXN0LWlubGluZS1wYWRkaW5nOiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kbWFyay1iZzogICAgICAgICAgICAgICAgICAgICAjZmNmOGUzICFkZWZhdWx0O1xuXG4kaHItbWFyZ2luLXk6ICAgICAgICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuXG5cbi8vIFRhYmxlc1xuLy9cbi8vIEN1c3RvbWl6ZXMgdGhlIGAudGFibGVgIGNvbXBvbmVudCB3aXRoIGJhc2ljIHZhbHVlcywgZWFjaCB1c2VkIGFjcm9zcyBhbGwgdGFibGUgdmFyaWF0aW9ucy5cblxuJHRhYmxlLWNlbGwtcGFkZGluZzogICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHRhYmxlLWNlbGwtcGFkZGluZy1zbTogICAgICAgLjNyZW0gIWRlZmF1bHQ7XG5cbiR0YWJsZS1jb2xvcjogICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJHRhYmxlLWJnOiAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiR0YWJsZS1hY2NlbnQtYmc6ICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMDUpICFkZWZhdWx0O1xuJHRhYmxlLWhvdmVyLWNvbG9yOiAgICAgICAgICAgJHRhYmxlLWNvbG9yICFkZWZhdWx0O1xuJHRhYmxlLWhvdmVyLWJnOiAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuJHRhYmxlLWFjdGl2ZS1iZzogICAgICAgICAgICAgJHRhYmxlLWhvdmVyLWJnICFkZWZhdWx0O1xuXG4kdGFibGUtYm9yZGVyLXdpZHRoOiAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHRhYmxlLWJvcmRlci1jb2xvcjogICAgICAgICAgJGJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuJHRhYmxlLWhlYWQtYmc6ICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJHRhYmxlLWhlYWQtY29sb3I6ICAgICAgICAgICAgJGdyYXktNzAwICFkZWZhdWx0O1xuJHRhYmxlLXRoLWZvbnQtd2VpZ2h0OiAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJHRhYmxlLWRhcmstY29sb3I6ICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstYmc6ICAgICAgICAgICAgICAgJGdyYXktODAwICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstYWNjZW50LWJnOiAgICAgICAgcmdiYSgkd2hpdGUsIC4wNSkgIWRlZmF1bHQ7XG4kdGFibGUtZGFyay1ob3Zlci1jb2xvcjogICAgICAkdGFibGUtZGFyay1jb2xvciAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWhvdmVyLWJnOiAgICAgICAgIHJnYmEoJHdoaXRlLCAuMDc1KSAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWJvcmRlci1jb2xvcjogICAgIGxpZ2h0ZW4oJHRhYmxlLWRhcmstYmcsIDcuNSUpICFkZWZhdWx0O1xuXG4kdGFibGUtc3RyaXBlZC1vcmRlcjogICAgICAgICBvZGQgIWRlZmF1bHQ7XG5cbiR0YWJsZS1jYXB0aW9uLWNvbG9yOiAgICAgICAgICR0ZXh0LW11dGVkICFkZWZhdWx0O1xuXG4kdGFibGUtYmctbGV2ZWw6ICAgICAgICAgICAgICAtOSAhZGVmYXVsdDtcbiR0YWJsZS1ib3JkZXItbGV2ZWw6ICAgICAgICAgIC02ICFkZWZhdWx0O1xuXG5cbi8vIEJ1dHRvbnMgKyBGb3Jtc1xuLy9cbi8vIFNoYXJlZCB2YXJpYWJsZXMgdGhhdCBhcmUgcmVhc3NpZ25lZCB0byBgJGlucHV0LWAgYW5kIGAkYnRuLWAgc3BlY2lmaWMgdmFyaWFibGVzLlxuXG4kaW5wdXQtYnRuLXBhZGRpbmcteTogICAgICAgICAuMzc1cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1wYWRkaW5nLXg6ICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LWZhbWlseTogICAgICAgbnVsbCAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9udC1zaXplOiAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tbGluZS1oZWlnaHQ6ICAgICAgICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLWZvY3VzLXdpZHRoOiAgICAgICAuMnJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9jdXMtY29sb3I6ICAgICAgIHJnYmEoJGNvbXBvbmVudC1hY3RpdmUtYmcsIC4yNSkgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3c6ICAwIDAgMCAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICRpbnB1dC1idG4tZm9jdXMtY29sb3IgIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tcGFkZGluZy15LXNtOiAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tcGFkZGluZy14LXNtOiAgICAgIC41cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LXNpemUtc206ICAgICAgJGZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tbGluZS1oZWlnaHQtc206ICAgICRsaW5lLWhlaWdodC1zbSAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1wYWRkaW5nLXktbGc6ICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteC1sZzogICAgICAxcmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LXNpemUtbGc6ICAgICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRpbnB1dC1idG4tbGluZS1oZWlnaHQtbGc6ICAgICRsaW5lLWhlaWdodC1sZyAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1ib3JkZXItd2lkdGg6ICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuXG4vLyBCdXR0b25zXG4vL1xuLy8gRm9yIGVhY2ggb2YgQm9vdHN0cmFwJ3MgYnV0dG9ucywgZGVmaW5lIHRleHQsIGJhY2tncm91bmQsIGFuZCBib3JkZXIgY29sb3IuXG5cbiRidG4tcGFkZGluZy15OiAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15ICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kYnRuLWZvbnQtZmFtaWx5OiAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGJ0bi1mb250LXNpemU6ICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUgIWRlZmF1bHQ7XG4kYnRuLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuJGJ0bi13aGl0ZS1zcGFjZTogICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDsgLy8gU2V0IHRvIGBub3dyYXBgIHRvIHByZXZlbnQgdGV4dCB3cmFwcGluZ1xuXG4kYnRuLXBhZGRpbmcteS1zbTogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1zbSAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy14LXNtOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LXNtICFkZWZhdWx0O1xuJGJ0bi1mb250LXNpemUtc206ICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtc20gIWRlZmF1bHQ7XG4kYnRuLWxpbmUtaGVpZ2h0LXNtOiAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LXNtICFkZWZhdWx0O1xuXG4kYnRuLXBhZGRpbmcteS1sZzogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1sZyAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy14LWxnOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LWxnICFkZWZhdWx0O1xuJGJ0bi1mb250LXNpemUtbGc6ICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kYnRuLWxpbmUtaGVpZ2h0LWxnOiAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LWxnICFkZWZhdWx0O1xuXG4kYnRuLWJvcmRlci13aWR0aDogICAgICAgICAgICAkaW5wdXQtYnRuLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJGJ0bi1mb250LXdlaWdodDogICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcbiRidG4tYm94LXNoYWRvdzogICAgICAgICAgICAgIGluc2V0IDAgMXB4IDAgcmdiYSgkd2hpdGUsIC4xNSksIDAgMXB4IDFweCByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG4kYnRuLWZvY3VzLXdpZHRoOiAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuJGJ0bi1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGJ0bi1kaXNhYmxlZC1vcGFjaXR5OiAgICAgICAgLjY1ICFkZWZhdWx0O1xuJGJ0bi1hY3RpdmUtYm94LXNoYWRvdzogICAgICAgaW5zZXQgMCAzcHggNXB4IHJnYmEoJGJsYWNrLCAuMTI1KSAhZGVmYXVsdDtcblxuJGJ0bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4kYnRuLWJsb2NrLXNwYWNpbmcteTogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuLy8gQWxsb3dzIGZvciBjdXN0b21pemluZyBidXR0b24gcmFkaXVzIGluZGVwZW5kZW50bHkgZnJvbSBnbG9iYWwgYm9yZGVyIHJhZGl1c1xuJGJ0bi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kYnRuLWJvcmRlci1yYWRpdXMtbGc6ICAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcbiRidG4tYm9yZGVyLXJhZGl1cy1zbTogICAgICAgICRib3JkZXItcmFkaXVzLXNtICFkZWZhdWx0O1xuXG4kYnRuLXRyYW5zaXRpb246ICAgICAgICAgICAgICBjb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cblxuLy8gRm9ybXNcblxuJGxhYmVsLW1hcmdpbi1ib3R0b206ICAgICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kaW5wdXQtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1mYW1pbHk6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRpbnB1dC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRpbnB1dC1mb250LXdlaWdodDogICAgICAgICAgICAgICAgICAgICAkZm9udC13ZWlnaHQtYmFzZSAhZGVmYXVsdDtcbiRpbnB1dC1saW5lLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuXG4kaW5wdXQtcGFkZGluZy15LXNtOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktc20gIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy14LXNtOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtc20gIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1zaXplLXNtOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtc20gIWRlZmF1bHQ7XG4kaW5wdXQtbGluZS1oZWlnaHQtc206ICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodC1zbSAhZGVmYXVsdDtcblxuJGlucHV0LXBhZGRpbmcteS1sZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LWxnICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmcteC1sZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LWxnICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtc2l6ZS1sZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJGlucHV0LWxpbmUtaGVpZ2h0LWxnOiAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQtbGcgIWRlZmF1bHQ7XG5cbiRpbnB1dC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kaW5wdXQtZGlzYWJsZWQtYmc6ICAgICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuXG4kaW5wdXQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktNzAwICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICRncmF5LTQwMCAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRpbnB1dC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgICAgICBpbnNldCAwIDFweCAxcHggcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuXG4kaW5wdXQtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLXJhZGl1cy1sZzogICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLXJhZGl1cy1zbTogICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtc20gIWRlZmF1bHQ7XG5cbiRpbnB1dC1mb2N1cy1iZzogICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgbGlnaHRlbigkY29tcG9uZW50LWFjdGl2ZS1iZywgMjUlKSAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy1jb2xvcjogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy13aWR0aCAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG5cbiRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjogICAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kaW5wdXQtcGxhaW50ZXh0LWNvbG9yOiAgICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG5cbiRpbnB1dC1oZWlnaHQtYm9yZGVyOiAgICAgICAgICAgICAgICAgICAkaW5wdXQtYm9yZGVyLXdpZHRoICogMiAhZGVmYXVsdDtcblxuJGlucHV0LWhlaWdodC1pbm5lcjogICAgICAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAxZW0sICRpbnB1dC1wYWRkaW5nLXkgKiAyKSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZjogICAgICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogLjVlbSwgJGlucHV0LXBhZGRpbmcteSkgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LWlubmVyLXF1YXJ0ZXI6ICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIC4yNWVtLCAkaW5wdXQtcGFkZGluZy15ICogLjUpICFkZWZhdWx0O1xuXG4kaW5wdXQtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIDFlbSwgYWRkKCRpbnB1dC1wYWRkaW5nLXkgKiAyLCAkaW5wdXQtaGVpZ2h0LWJvcmRlciwgZmFsc2UpKSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtc206ICAgICAgICAgICAgICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0LXNtICogMWVtLCBhZGQoJGlucHV0LXBhZGRpbmcteS1zbSAqIDIsICRpbnB1dC1oZWlnaHQtYm9yZGVyLCBmYWxzZSkpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1sZzogICAgICAgICAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQtbGcgKiAxZW0sIGFkZCgkaW5wdXQtcGFkZGluZy15LWxnICogMiwgJGlucHV0LWhlaWdodC1ib3JkZXIsIGZhbHNlKSkgIWRlZmF1bHQ7XG5cbiRpbnB1dC10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG4kZm9ybS10ZXh0LW1hcmdpbi10b3A6ICAgICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuXG4kZm9ybS1jaGVjay1pbnB1dC1ndXR0ZXI6ICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LW1hcmdpbi15OiAgICAgICAgICAgICAuM3JlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LW1hcmdpbi14OiAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlubGluZS1tYXJnaW4teDogICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbmxpbmUtaW5wdXQtbWFyZ2luLXg6ICAgICAgLjMxMjVyZW0gIWRlZmF1bHQ7XG5cbiRmb3JtLWdyaWQtZ3V0dGVyLXdpZHRoOiAgICAgICAgICAgICAgICAxMHB4ICFkZWZhdWx0O1xuJGZvcm0tZ3JvdXAtbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG5cbiRpbnB1dC1ncm91cC1hZGRvbi1jb2xvcjogICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tYmc6ICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGlucHV0LWdyb3VwLWFkZG9uLWJvcmRlci1jb2xvcjogICAgICAgICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG5cbiRjdXN0b20tZm9ybXMtdHJhbnNpdGlvbjogICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1ndXR0ZXI6ICAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1zcGFjZXIteDogICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWN1cnNvcjogICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZTogICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZzogICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZy1zaXplOiAgICAgIDUwJSA1MCUgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJveC1zaGFkb3c6ICAgJGlucHV0LWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci1jb2xvcjogJGdyYXktNTAwICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItd2lkdGg6ICRpbnB1dC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1sYWJlbC1jb2xvcjogICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWRpc2FibGVkLWJnOiAgICAgICAgICAkaW5wdXQtZGlzYWJsZWQtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtbGFiZWwtZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1jb2xvcjogICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJnOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtZGlzYWJsZWQtYmc6ICByZ2JhKHRoZW1lLWNvbG9yKFwicHJpbWFyeVwiKSwgLjUpICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJveC1zaGFkb3c6ICAgbnVsbCAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1ib3JkZXItY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1iZyAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1mb2N1cy1ib3gtc2hhZG93OiAgICAgJGlucHV0LWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWZvY3VzLWJvcmRlci1jb2xvcjogICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1jb2xvcjogICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJnOiAgICAgICAgICAgIGxpZ2h0ZW4oJGNvbXBvbmVudC1hY3RpdmUtYmcsIDM1JSkgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1ib3gtc2hhZG93OiAgICBudWxsICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYm9yZGVyLWNvbG9yOiAgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWJvcmRlci1yYWRpdXM6ICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaWNvbi1jaGVja2VkOiAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nOCcgaGVpZ2h0PSc4JyB2aWV3Qm94PScwIDAgOCA4Jz48cGF0aCBmaWxsPScjeyRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1jb2xvcn0nIGQ9J002LjU2NC43NWwtMy41OSAzLjYxMi0xLjUzOC0xLjU1TDAgNC4yNmwyLjk3NCAyLjk5TDggMi4xOTN6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJnOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWNvbG9yOiAgICAgICAgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaWNvbi1pbmRldGVybWluYXRlOiAgICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzQnIGhlaWdodD0nNCcgdmlld0JveD0nMCAwIDQgNCc+PHBhdGggc3Ryb2tlPScjeyRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtY29sb3J9JyBkPSdNMCAyaDQnLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJveC1zaGFkb3c6ICAgbnVsbCAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYm9yZGVyLWNvbG9yOiAkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJnICFkZWZhdWx0O1xuXG4kY3VzdG9tLXJhZGlvLWluZGljYXRvci1ib3JkZXItcmFkaXVzOiAgICAgICAgICA1MCUgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhZGlvLWluZGljYXRvci1pY29uLWNoZWNrZWQ6ICAgICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxMicgaGVpZ2h0PScxMicgdmlld0JveD0nLTQgLTQgOCA4Jz48Y2lyY2xlIHI9JzMnIGZpbGw9JyN7JGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yfScvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuJGN1c3RvbS1zd2l0Y2gtd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplICogMS43NSAhZGVmYXVsdDtcbiRjdXN0b20tc3dpdGNoLWluZGljYXRvci1ib3JkZXItcmFkaXVzOiAgICAgICAgICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSAqIC41ICFkZWZhdWx0O1xuJGN1c3RvbS1zd2l0Y2gtaW5kaWNhdG9yLXNpemU6ICAgICAgICAgICAgICAgICAgc3VidHJhY3QoJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplLCAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci13aWR0aCAqIDQpICFkZWZhdWx0O1xuXG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXk6ICAgICAgICAgICAkaW5wdXQtcGFkZGluZy15ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14OiAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZvbnQtZmFtaWx5OiAgICAgICAgICRpbnB1dC1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZvbnQtc2l6ZTogICAgICAgICAgICRpbnB1dC1mb250LXNpemUgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1oZWlnaHQ6ICAgICAgICAgICAgICAkaW5wdXQtaGVpZ2h0ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmc6ICAgMXJlbSAhZGVmYXVsdDsgLy8gRXh0cmEgcGFkZGluZyB0byBhY2NvdW50IGZvciB0aGUgcHJlc2VuY2Ugb2YgdGhlIGJhY2tncm91bmQtaW1hZ2UgYmFzZWQgaW5kaWNhdG9yXG4kY3VzdG9tLXNlbGVjdC1mb250LXdlaWdodDogICAgICAgICAkaW5wdXQtZm9udC13ZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1saW5lLWhlaWdodDogICAgICAgICAkaW5wdXQtbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1jb2xvcjogICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1kaXNhYmxlZC1jb2xvcjogICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1iZzogICAgICAgICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1kaXNhYmxlZC1iZzogICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1iZy1zaXplOiAgICAgICAgICAgICA4cHggMTBweCAhZGVmYXVsdDsgLy8gSW4gcGl4ZWxzIGJlY2F1c2UgaW1hZ2UgZGltZW5zaW9uc1xuJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLWNvbG9yOiAgICAgJGdyYXktODAwICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yOiAgICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nNCcgaGVpZ2h0PSc1JyB2aWV3Qm94PScwIDAgNCA1Jz48cGF0aCBmaWxsPScjeyRjdXN0b20tc2VsZWN0LWluZGljYXRvci1jb2xvcn0nIGQ9J00yIDBMMCAyaDR6bTAgNUwwIDNoNHonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1iYWNrZ3JvdW5kOiAgICAgICAgICBlc2NhcGUtc3ZnKCRjdXN0b20tc2VsZWN0LWluZGljYXRvcikgcmlnaHQgJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14IGNlbnRlciAvICRjdXN0b20tc2VsZWN0LWJnLXNpemUgbm8tcmVwZWF0ICFkZWZhdWx0OyAvLyBVc2VkIHNvIHdlIGNhbiBoYXZlIG11bHRpcGxlIGJhY2tncm91bmQgZWxlbWVudHMgKGUuZy4sIGFycm93IGFuZCBmZWVkYmFjayBpY29uKVxuXG4kY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXBhZGRpbmctcmlnaHQ6IGFkZCgxZW0gKiAuNzUsICgyICogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15ICogLjc1KSArICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCArICRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nKSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tcG9zaXRpb246ICAgICAgY2VudGVyIHJpZ2h0ICgkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXggKyAkY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZykgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXNpemU6ICAgICAgICAgICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZiAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGYgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LWJvcmRlci13aWR0aDogICAgICAgICRpbnB1dC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1ib3JkZXItY29sb3I6ICAgICAgICAkaW5wdXQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYm9yZGVyLXJhZGl1czogICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1ib3gtc2hhZG93OiAgICAgICAgICBpbnNldCAwIDFweCAycHggcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuXG4kY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3JkZXItY29sb3I6ICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9jdXMtd2lkdGg6ICAgICAgICAgJGlucHV0LWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9jdXMtYm94LXNoYWRvdzogICAgMCAwIDAgJGN1c3RvbS1zZWxlY3QtZm9jdXMtd2lkdGggJGlucHV0LWJ0bi1mb2N1cy1jb2xvciAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15LXNtOiAgICAgICAgJGlucHV0LXBhZGRpbmcteS1zbSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteC1zbTogICAgICAgICRpbnB1dC1wYWRkaW5nLXgtc20gIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mb250LXNpemUtc206ICAgICAgICAkaW5wdXQtZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaGVpZ2h0LXNtOiAgICAgICAgICAgJGlucHV0LWhlaWdodC1zbSAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15LWxnOiAgICAgICAgJGlucHV0LXBhZGRpbmcteS1sZyAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteC1sZzogICAgICAgICRpbnB1dC1wYWRkaW5nLXgtbGcgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mb250LXNpemUtbGc6ICAgICAgICAkaW5wdXQtZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaGVpZ2h0LWxnOiAgICAgICAgICAgJGlucHV0LWhlaWdodC1sZyAhZGVmYXVsdDtcblxuJGN1c3RvbS1yYW5nZS10cmFjay13aWR0aDogICAgICAgICAgMTAwJSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdHJhY2staGVpZ2h0OiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10cmFjay1jdXJzb3I6ICAgICAgICAgcG9pbnRlciAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdHJhY2stYmc6ICAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdHJhY2stYm9yZGVyLXJhZGl1czogIDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRyYWNrLWJveC1zaGFkb3c6ICAgICBpbnNldCAwIC4yNXJlbSAuMjVyZW0gcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcblxuJGN1c3RvbS1yYW5nZS10aHVtYi13aWR0aDogICAgICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItaGVpZ2h0OiAgICAgICAgICAgICAgICAgICRjdXN0b20tcmFuZ2UtdGh1bWItd2lkdGggIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWJnOiAgICAgICAgICAgICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyOiAgICAgICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1ib3gtc2hhZG93OiAgICAgICAgICAgICAgMCAuMXJlbSAuMjVyZW0gcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdzogICAgICAgIDAgMCAwIDFweCAkYm9keS1iZywgJGlucHV0LWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3ctd2lkdGg6ICAkaW5wdXQtZm9jdXMtd2lkdGggIWRlZmF1bHQ7IC8vIEZvciBmb2N1cyBib3ggc2hhZG93IGlzc3VlIGluIElFL0VkZ2VcbiRjdXN0b20tcmFuZ2UtdGh1bWItYWN0aXZlLWJnOiAgICAgICAgICAgICAgIGxpZ2h0ZW4oJGNvbXBvbmVudC1hY3RpdmUtYmcsIDM1JSkgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWRpc2FibGVkLWJnOiAgICAgICAgICAgICAkZ3JheS01MDAgIWRlZmF1bHQ7XG5cbiRjdXN0b20tZmlsZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICRpbnB1dC1oZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtaGVpZ2h0LWlubmVyOiAgICAgICAgICAkaW5wdXQtaGVpZ2h0LWlubmVyICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWZvY3VzLWJvcmRlci1jb2xvcjogICAgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1mb2N1cy1ib3gtc2hhZG93OiAgICAgICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWRpc2FibGVkLWJnOiAgICAgICAgICAgJGlucHV0LWRpc2FibGVkLWJnICFkZWZhdWx0O1xuXG4kY3VzdG9tLWZpbGUtcGFkZGluZy15OiAgICAgICAgICAgICAkaW5wdXQtcGFkZGluZy15ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLXBhZGRpbmcteDogICAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1saW5lLWhlaWdodDogICAgICAgICAgICRpbnB1dC1saW5lLWhlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1mb250LWZhbWlseTogICAgICAgICAgICRpbnB1dC1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1mb250LXdlaWdodDogICAgICAgICAgICRpbnB1dC1mb250LXdlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1jb2xvcjogICAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1iZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1ib3JkZXItd2lkdGg6ICAgICAgICAgICRpbnB1dC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYm9yZGVyLWNvbG9yOiAgICAgICAgICAkaW5wdXQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJvcmRlci1yYWRpdXM6ICAgICAgICAgJGlucHV0LWJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYm94LXNoYWRvdzogICAgICAgICAgICAkaW5wdXQtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1idXR0b24tY29sb3I6ICAgICAgICAgICRjdXN0b20tZmlsZS1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1idXR0b24tYmc6ICAgICAgICAgICAgICRpbnB1dC1ncm91cC1hZGRvbi1iZyAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS10ZXh0OiAoXG4gIGVuOiBcIkJyb3dzZVwiXG4pICFkZWZhdWx0O1xuXG5cbi8vIEZvcm0gdmFsaWRhdGlvblxuXG4kZm9ybS1mZWVkYmFjay1tYXJnaW4tdG9wOiAgICAgICAgICAkZm9ybS10ZXh0LW1hcmdpbi10b3AgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1mb250LXNpemU6ICAgICAgICAgICAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3I6ICAgICAgICAgdGhlbWUtY29sb3IoXCJzdWNjZXNzXCIpICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvcjogICAgICAgdGhlbWUtY29sb3IoXCJkYW5nZXJcIikgIWRlZmF1bHQ7XG5cbiRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWQtY29sb3I6ICAgICRmb3JtLWZlZWRiYWNrLXZhbGlkLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staWNvbi12YWxpZDogICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nOCcgaGVpZ2h0PSc4JyB2aWV3Qm94PScwIDAgOCA4Jz48cGF0aCBmaWxsPScjeyRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWQtY29sb3J9JyBkPSdNMi4zIDYuNzNMLjYgNC41M2MtLjQtMS4wNC40Ni0xLjQgMS4xLS44bDEuMSAxLjQgMy40LTMuOGMuNi0uNjMgMS42LS4yNyAxLjIuN2wtNCA0LjZjLS40My41LS44LjQtMS4xLjF6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLWNvbG9yOiAgJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZDogICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzEyJyBoZWlnaHQ9JzEyJyBmaWxsPSdub25lJyBzdHJva2U9JyN7JGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLWNvbG9yfScgdmlld0JveD0nMCAwIDEyIDEyJz48Y2lyY2xlIGN4PSc2JyBjeT0nNicgcj0nNC41Jy8+PHBhdGggc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgZD0nTTUuOCAzLjZoLjRMNiA2LjV6Jy8+PGNpcmNsZSBjeD0nNicgY3k9JzguMicgcj0nLjYnIGZpbGw9JyN7JGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLWNvbG9yfScgc3Ryb2tlPSdub25lJy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kZm9ybS12YWxpZGF0aW9uLXN0YXRlczogKCkgIWRlZmF1bHQ7XG4kZm9ybS12YWxpZGF0aW9uLXN0YXRlczogbWFwLW1lcmdlKFxuICAoXG4gICAgXCJ2YWxpZFwiOiAoXG4gICAgICBcImNvbG9yXCI6ICRmb3JtLWZlZWRiYWNrLXZhbGlkLWNvbG9yLFxuICAgICAgXCJpY29uXCI6ICRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWRcbiAgICApLFxuICAgIFwiaW52YWxpZFwiOiAoXG4gICAgICBcImNvbG9yXCI6ICRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3IsXG4gICAgICBcImljb25cIjogJGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkXG4gICAgKSxcbiAgKSxcbiAgJGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXNcbik7XG5cbi8vIFotaW5kZXggbWFzdGVyIGxpc3Rcbi8vXG4vLyBXYXJuaW5nOiBBdm9pZCBjdXN0b21pemluZyB0aGVzZSB2YWx1ZXMuIFRoZXkncmUgdXNlZCBmb3IgYSBiaXJkJ3MgZXllIHZpZXdcbi8vIG9mIGNvbXBvbmVudHMgZGVwZW5kZW50IG9uIHRoZSB6LWF4aXMgYW5kIGFyZSBkZXNpZ25lZCB0byBhbGwgd29yayB0b2dldGhlci5cblxuJHppbmRleC1kcm9wZG93bjogICAgICAgICAgICAgICAgICAgMTAwMCAhZGVmYXVsdDtcbiR6aW5kZXgtc3RpY2t5OiAgICAgICAgICAgICAgICAgICAgIDEwMjAgIWRlZmF1bHQ7XG4kemluZGV4LWZpeGVkOiAgICAgICAgICAgICAgICAgICAgICAxMDMwICFkZWZhdWx0O1xuJHppbmRleC1tb2RhbC1iYWNrZHJvcDogICAgICAgICAgICAgMTA0MCAhZGVmYXVsdDtcbiR6aW5kZXgtbW9kYWw6ICAgICAgICAgICAgICAgICAgICAgIDEwNTAgIWRlZmF1bHQ7XG4kemluZGV4LXBvcG92ZXI6ICAgICAgICAgICAgICAgICAgICAxMDYwICFkZWZhdWx0O1xuJHppbmRleC10b29sdGlwOiAgICAgICAgICAgICAgICAgICAgMTA3MCAhZGVmYXVsdDtcblxuXG4vLyBOYXZzXG5cbiRuYXYtbGluay1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJG5hdi1saW5rLXBhZGRpbmcteDogICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRuYXYtbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuJG5hdi10YWJzLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuJG5hdi10YWJzLWJvcmRlci13aWR0aDogICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRuYXYtdGFicy1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yOiAgJGdyYXktMjAwICRncmF5LTIwMCAkbmF2LXRhYnMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAgJGdyYXktNzAwICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1hY3RpdmUtYm9yZGVyLWNvbG9yOiAkZ3JheS0zMDAgJGdyYXktMzAwICRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJG5hdi1waWxscy1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kbmF2LXBpbGxzLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRuYXYtcGlsbHMtbGluay1hY3RpdmUtYmc6ICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kbmF2LWRpdmlkZXItY29sb3I6ICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kbmF2LWRpdmlkZXItbWFyZ2luLXk6ICAgICAgICAgICAgICAkc3BhY2VyICogLjUgIWRlZmF1bHQ7XG5cblxuLy8gTmF2YmFyXG5cbiRuYXZiYXItcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICRzcGFjZXIgKiAuNSAhZGVmYXVsdDtcbiRuYXZiYXItcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG5cbiRuYXZiYXItbmF2LWxpbmstcGFkZGluZy14OiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kbmF2YmFyLWJyYW5kLWZvbnQtc2l6ZTogICAgICAgICAgICAkZm9udC1zaXplLWxnICFkZWZhdWx0O1xuLy8gQ29tcHV0ZSB0aGUgbmF2YmFyLWJyYW5kIHBhZGRpbmcteSBzbyB0aGUgbmF2YmFyLWJyYW5kIHdpbGwgaGF2ZSB0aGUgc2FtZSBoZWlnaHQgYXMgbmF2YmFyLXRleHQgYW5kIG5hdi1saW5rXG4kbmF2LWxpbmstaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSArICRuYXYtbGluay1wYWRkaW5nLXkgKiAyICFkZWZhdWx0O1xuJG5hdmJhci1icmFuZC1oZWlnaHQ6ICAgICAgICAgICAgICAgJG5hdmJhci1icmFuZC1mb250LXNpemUgKiAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcbiRuYXZiYXItYnJhbmQtcGFkZGluZy15OiAgICAgICAgICAgICgkbmF2LWxpbmstaGVpZ2h0IC0gJG5hdmJhci1icmFuZC1oZWlnaHQpICogLjUgIWRlZmF1bHQ7XG5cbiRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXk6ICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXg6ICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1mb250LXNpemU6ICAgICAgICAgICRmb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItYm9yZGVyLXJhZGl1czogICAgICAkYnRuLWJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cbiRuYXZiYXItbmF2LXNjcm9sbC1tYXgtaGVpZ2h0OiAgICAgIDc1dmggIWRlZmF1bHQ7XG5cbiRuYXZiYXItZGFyay1jb2xvcjogICAgICAgICAgICAgICAgIHJnYmEoJHdoaXRlLCAuNSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstaG92ZXItY29sb3I6ICAgICAgICAgICByZ2JhKCR3aGl0ZSwgLjc1KSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1hY3RpdmUtY29sb3I6ICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1kaXNhYmxlZC1jb2xvcjogICAgICAgIHJnYmEoJHdoaXRlLCAuMjUpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLXRvZ2dsZXItaWNvbi1iZzogICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMzAnIGhlaWdodD0nMzAnIHZpZXdCb3g9JzAgMCAzMCAzMCc+PHBhdGggc3Ryb2tlPScjeyRuYXZiYXItZGFyay1jb2xvcn0nIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLW1pdGVybGltaXQ9JzEwJyBzdHJva2Utd2lkdGg9JzInIGQ9J000IDdoMjJNNCAxNWgyMk00IDIzaDIyJy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLXRvZ2dsZXItYm9yZGVyLWNvbG9yOiAgcmdiYSgkd2hpdGUsIC4xKSAhZGVmYXVsdDtcblxuJG5hdmJhci1saWdodC1jb2xvcjogICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC41KSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtaG92ZXItY29sb3I6ICAgICAgICAgIHJnYmEoJGJsYWNrLCAuNykgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcjogICAgICAgICByZ2JhKCRibGFjaywgLjkpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1kaXNhYmxlZC1jb2xvcjogICAgICAgcmdiYSgkYmxhY2ssIC4zKSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtdG9nZ2xlci1pY29uLWJnOiAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzMwJyBoZWlnaHQ9JzMwJyB2aWV3Qm94PScwIDAgMzAgMzAnPjxwYXRoIHN0cm9rZT0nI3skbmF2YmFyLWxpZ2h0LWNvbG9yfScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbWl0ZXJsaW1pdD0nMTAnIHN0cm9rZS13aWR0aD0nMicgZD0nTTQgN2gyMk00IDE1aDIyTTQgMjNoMjInLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LXRvZ2dsZXItYm9yZGVyLWNvbG9yOiByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuXG4kbmF2YmFyLWxpZ2h0LWJyYW5kLWNvbG9yOiAgICAgICAgICAgICAgICAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtYnJhbmQtaG92ZXItY29sb3I6ICAgICAgICAgICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWJyYW5kLWNvbG9yOiAgICAgICAgICAgICAgICAgJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1icmFuZC1ob3Zlci1jb2xvcjogICAgICAgICAgICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG5cblxuLy8gRHJvcGRvd25zXG4vL1xuLy8gRHJvcGRvd24gbWVudSBjb250YWluZXIgYW5kIGNvbnRlbnRzLlxuXG4kZHJvcGRvd24tbWluLXdpZHRoOiAgICAgICAgICAgICAgICAxMHJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24tcGFkZGluZy15OiAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1zcGFjZXI6ICAgICAgICAgICAgICAgICAgIC4xMjVyZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24tZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG4kZHJvcGRvd24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1iZzogICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3JkZXItY29sb3I6ICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMTUpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGRyb3Bkb3duLWlubmVyLWJvcmRlci1yYWRpdXM6ICAgICAgc3VidHJhY3QoJGRyb3Bkb3duLWJvcmRlci1yYWRpdXMsICRkcm9wZG93bi1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRpdmlkZXItYmc6ICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRpdmlkZXItbWFyZ2luLXk6ICAgICAgICAgJG5hdi1kaXZpZGVyLW1hcmdpbi15ICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgMCAuNXJlbSAxcmVtIHJnYmEoJGJsYWNrLCAuMTc1KSAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWxpbmstY29sb3I6ICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgZGFya2VuKCRncmF5LTkwMCwgNSUpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3I6ICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAkZ3JheS01MDAgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1pdGVtLXBhZGRpbmcteTogICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDogICAgICAgICAgIDEuNXJlbSAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWhlYWRlci1jb2xvcjogICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWhlYWRlci1wYWRkaW5nOiAgICAgICAgICAgJGRyb3Bkb3duLXBhZGRpbmcteSAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXggIWRlZmF1bHQ7XG5cblxuLy8gUGFnaW5hdGlvblxuXG4kcGFnaW5hdGlvbi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteDogICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteS1zbTogICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteC1zbTogICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy15LWxnOiAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14LWxnOiAgICAgICAgICAgMS41cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tbGluZS1oZWlnaHQ6ICAgICAgICAgICAgMS4yNSAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgJGxpbmstY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1iZzogICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyLWNvbG9yOiAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1mb2N1cy1vdXRsaW5lOiAgICAgICAgICAwICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1ob3Zlci1jb2xvcjogICAgICAgICAgICAkbGluay1ob3Zlci1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWhvdmVyLWJnOiAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWhvdmVyLWJvcmRlci1jb2xvcjogICAgICRncmF5LTMwMCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1hY3RpdmUtYmc6ICAgICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1ib3JkZXItY29sb3I6ICAgICRwYWdpbmF0aW9uLWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3I6ICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYmc6ICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiAgJGdyYXktMzAwICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzLXNtOiAgICAgICAkYm9yZGVyLXJhZGl1cy1zbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMtbGc6ICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuXG5cbi8vIEp1bWJvdHJvblxuXG4kanVtYm90cm9uLXBhZGRpbmc6ICAgICAgICAgICAgICAgICAycmVtICFkZWZhdWx0O1xuJGp1bWJvdHJvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRqdW1ib3Ryb24tYmc6ICAgICAgICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcblxuXG4vLyBDYXJkc1xuXG4kY2FyZC1zcGFjZXIteTogICAgICAgICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kY2FyZC1zcGFjZXIteDogICAgICAgICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGNhcmQtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRjYXJkLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGNhcmQtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4xMjUpICFkZWZhdWx0O1xuJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1czogICAgICAgICAgc3VidHJhY3QoJGNhcmQtYm9yZGVyLXJhZGl1cywgJGNhcmQtYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRjYXJkLWNhcC1iZzogICAgICAgICAgICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMDMpICFkZWZhdWx0O1xuJGNhcmQtY2FwLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRjYXJkLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kY2FyZC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGNhcmQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuXG4kY2FyZC1pbWctb3ZlcmxheS1wYWRkaW5nOiAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuXG4kY2FyZC1ncm91cC1tYXJnaW46ICAgICAgICAgICAgICAgICAkZ3JpZC1ndXR0ZXItd2lkdGggKiAuNSAhZGVmYXVsdDtcbiRjYXJkLWRlY2stbWFyZ2luOiAgICAgICAgICAgICAgICAgICRjYXJkLWdyb3VwLW1hcmdpbiAhZGVmYXVsdDtcblxuJGNhcmQtY29sdW1ucy1jb3VudDogICAgICAgICAgICAgICAgMyAhZGVmYXVsdDtcbiRjYXJkLWNvbHVtbnMtZ2FwOiAgICAgICAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kY2FyZC1jb2x1bW5zLW1hcmdpbjogICAgICAgICAgICAgICAkY2FyZC1zcGFjZXIteSAhZGVmYXVsdDtcblxuXG4vLyBUb29sdGlwc1xuXG4kdG9vbHRpcC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAkZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJHRvb2x0aXAtbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgMjAwcHggIWRlZmF1bHQ7XG4kdG9vbHRpcC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kdG9vbHRpcC1iZzogICAgICAgICAgICAgICAgICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kdG9vbHRpcC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiR0b29sdGlwLW9wYWNpdHk6ICAgICAgICAgICAgICAgICAgIC45ICFkZWZhdWx0O1xuJHRvb2x0aXAtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHRvb2x0aXAtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kdG9vbHRpcC1tYXJnaW46ICAgICAgICAgICAgICAgICAgICAwICFkZWZhdWx0O1xuXG4kdG9vbHRpcC1hcnJvdy13aWR0aDogICAgICAgICAgICAgICAuOHJlbSAhZGVmYXVsdDtcbiR0b29sdGlwLWFycm93LWhlaWdodDogICAgICAgICAgICAgIC40cmVtICFkZWZhdWx0O1xuJHRvb2x0aXAtYXJyb3ctY29sb3I6ICAgICAgICAgICAgICAgJHRvb2x0aXAtYmcgIWRlZmF1bHQ7XG5cbi8vIEZvcm0gdG9vbHRpcHMgbXVzdCBjb21lIGFmdGVyIHJlZ3VsYXIgdG9vbHRpcHNcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy15OiAgICAgJHRvb2x0aXAtcGFkZGluZy15ICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXg6ICAgICAkdG9vbHRpcC1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLWZvbnQtc2l6ZTogICAgICR0b29sdGlwLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtbGluZS1oZWlnaHQ6ICAgJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLW9wYWNpdHk6ICAgICAgICR0b29sdGlwLW9wYWNpdHkgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLWJvcmRlci1yYWRpdXM6ICR0b29sdGlwLWJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cblxuLy8gUG9wb3ZlcnNcblxuJHBvcG92ZXItZm9udC1zaXplOiAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwb3BvdmVyLW1heC13aWR0aDogICAgICAgICAgICAgICAgIDI3NnB4ICFkZWZhdWx0O1xuJHBvcG92ZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMikgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcbiRwb3BvdmVyLWlubmVyLWJvcmRlci1yYWRpdXM6ICAgICAgIHN1YnRyYWN0KCRwb3BvdmVyLWJvcmRlci1yYWRpdXMsICRwb3BvdmVyLWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAwIC4yNXJlbSAuNXJlbSByZ2JhKCRibGFjaywgLjIpICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1oZWFkZXItYmc6ICAgICAgICAgICAgICAgICBkYXJrZW4oJHBvcG92ZXItYmcsIDMlKSAhZGVmYXVsdDtcbiRwb3BvdmVyLWhlYWRlci1jb2xvcjogICAgICAgICAgICAgICRoZWFkaW5ncy1jb2xvciAhZGVmYXVsdDtcbiRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXk6ICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteDogICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1ib2R5LWNvbG9yOiAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvZHktcGFkZGluZy15OiAgICAgICAgICAgICRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib2R5LXBhZGRpbmcteDogICAgICAgICAgICAkcG9wb3Zlci1oZWFkZXItcGFkZGluZy14ICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1hcnJvdy13aWR0aDogICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJHBvcG92ZXItYXJyb3ctaGVpZ2h0OiAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kcG9wb3Zlci1hcnJvdy1jb2xvcjogICAgICAgICAgICAgICAkcG9wb3Zlci1iZyAhZGVmYXVsdDtcblxuJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I6ICAgICAgICAgZmFkZS1pbigkcG9wb3Zlci1ib3JkZXItY29sb3IsIC4wNSkgIWRlZmF1bHQ7XG5cblxuLy8gVG9hc3RzXG5cbiR0b2FzdC1tYXgtd2lkdGg6ICAgICAgICAgICAgICAgICAgIDM1MHB4ICFkZWZhdWx0O1xuJHRvYXN0LXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHRvYXN0LXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHRvYXN0LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgLjg3NXJlbSAhZGVmYXVsdDtcbiR0b2FzdC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kdG9hc3QtYmFja2dyb3VuZC1jb2xvcjogICAgICAgICAgICByZ2JhKCR3aGl0ZSwgLjg1KSAhZGVmYXVsdDtcbiR0b2FzdC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgIDFweCAhZGVmYXVsdDtcbiR0b2FzdC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgIHJnYmEoMCwgMCwgMCwgLjEpICFkZWZhdWx0O1xuJHRvYXN0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHRvYXN0LWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgMCAuMjVyZW0gLjc1cmVtIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG5cbiR0b2FzdC1oZWFkZXItY29sb3I6ICAgICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiR0b2FzdC1oZWFkZXItYmFja2dyb3VuZC1jb2xvcjogICAgIHJnYmEoJHdoaXRlLCAuODUpICFkZWZhdWx0O1xuJHRvYXN0LWhlYWRlci1ib3JkZXItY29sb3I6ICAgICAgICAgcmdiYSgwLCAwLCAwLCAuMDUpICFkZWZhdWx0O1xuXG5cbi8vIEJhZGdlc1xuXG4kYmFkZ2UtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICA3NSUgIWRlZmF1bHQ7XG4kYmFkZ2UtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcbiRiYWRnZS1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgIC4yNWVtICFkZWZhdWx0O1xuJGJhZGdlLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgLjRlbSAhZGVmYXVsdDtcbiRiYWRnZS1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG4kYmFkZ2UtdHJhbnNpdGlvbjogICAgICAgICAgICAgICAgICAkYnRuLXRyYW5zaXRpb24gIWRlZmF1bHQ7XG4kYmFkZ2UtZm9jdXMtd2lkdGg6ICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuXG4kYmFkZ2UtcGlsbC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAuNmVtICFkZWZhdWx0O1xuLy8gVXNlIGEgaGlnaGVyIHRoYW4gbm9ybWFsIHZhbHVlIHRvIGVuc3VyZSBjb21wbGV0ZWx5IHJvdW5kZWQgZWRnZXMgd2hlblxuLy8gY3VzdG9taXppbmcgcGFkZGluZyBvciBmb250LXNpemUgb24gbGFiZWxzLlxuJGJhZGdlLXBpbGwtYm9yZGVyLXJhZGl1czogICAgICAgICAgMTByZW0gIWRlZmF1bHQ7XG5cblxuLy8gTW9kYWxzXG5cbi8vIFBhZGRpbmcgYXBwbGllZCB0byB0aGUgbW9kYWwgYm9keVxuJG1vZGFsLWlubmVyLXBhZGRpbmc6ICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcblxuLy8gTWFyZ2luIGJldHdlZW4gZWxlbWVudHMgaW4gZm9vdGVyLCBtdXN0IGJlIGxvd2VyIHRoYW4gb3IgZXF1YWwgdG8gMiAqICRtb2RhbC1pbm5lci1wYWRkaW5nXG4kbW9kYWwtZm9vdGVyLW1hcmdpbi1iZXR3ZWVuOiAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJG1vZGFsLWRpYWxvZy1tYXJnaW46ICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwOiAgICAgICAxLjc1cmVtICFkZWZhdWx0O1xuXG4kbW9kYWwtdGl0bGUtbGluZS1oZWlnaHQ6ICAgICAgICAgICAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcblxuJG1vZGFsLWNvbnRlbnQtY29sb3I6ICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJnOiAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJvcmRlci1jb2xvcjogICAgICAgIHJnYmEoJGJsYWNrLCAuMikgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGg6ICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXJhZGl1czogICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1pbm5lci1ib3JkZXItcmFkaXVzOiBzdWJ0cmFjdCgkbW9kYWwtY29udGVudC1ib3JkZXItcmFkaXVzLCAkbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy14czogICAgICAgMCAuMjVyZW0gLjVyZW0gcmdiYSgkYmxhY2ssIC41KSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJveC1zaGFkb3ctc20tdXA6ICAgIDAgLjVyZW0gMXJlbSByZ2JhKCRibGFjaywgLjUpICFkZWZhdWx0O1xuXG4kbW9kYWwtYmFja2Ryb3AtYmc6ICAgICAgICAgICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kbW9kYWwtYmFja2Ryb3Atb3BhY2l0eTogICAgICAgICAgICAuNSAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICRib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kbW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcjogICAgICAgICAkbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRtb2RhbC1mb290ZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICRtb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1wYWRkaW5nLXk6ICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItcGFkZGluZy14OiAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLXBhZGRpbmc6ICAgICAgICAgICAgICAkbW9kYWwtaGVhZGVyLXBhZGRpbmcteSAkbW9kYWwtaGVhZGVyLXBhZGRpbmcteCAhZGVmYXVsdDsgLy8gS2VlcCB0aGlzIGZvciBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eVxuXG4kbW9kYWwteGw6ICAgICAgICAgICAgICAgICAgICAgICAgICAxMTQwcHggIWRlZmF1bHQ7XG4kbW9kYWwtbGc6ICAgICAgICAgICAgICAgICAgICAgICAgICA4MDBweCAhZGVmYXVsdDtcbiRtb2RhbC1tZDogICAgICAgICAgICAgICAgICAgICAgICAgIDUwMHB4ICFkZWZhdWx0O1xuJG1vZGFsLXNtOiAgICAgICAgICAgICAgICAgICAgICAgICAgMzAwcHggIWRlZmF1bHQ7XG5cbiRtb2RhbC1mYWRlLXRyYW5zZm9ybTogICAgICAgICAgICAgIHRyYW5zbGF0ZSgwLCAtNTBweCkgIWRlZmF1bHQ7XG4kbW9kYWwtc2hvdy10cmFuc2Zvcm06ICAgICAgICAgICAgICBub25lICFkZWZhdWx0O1xuJG1vZGFsLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIC4zcyBlYXNlLW91dCAhZGVmYXVsdDtcbiRtb2RhbC1zY2FsZS10cmFuc2Zvcm06ICAgICAgICAgICAgIHNjYWxlKDEuMDIpICFkZWZhdWx0O1xuXG5cbi8vIEFsZXJ0c1xuLy9cbi8vIERlZmluZSBhbGVydCBjb2xvcnMsIGJvcmRlciByYWRpdXMsIGFuZCBwYWRkaW5nLlxuXG4kYWxlcnQtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kYWxlcnQtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGFsZXJ0LW1hcmdpbi1ib3R0b206ICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGFsZXJ0LWxpbmstZm9udC13ZWlnaHQ6ICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kYWxlcnQtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kYWxlcnQtYmctbGV2ZWw6ICAgICAgICAgICAgICAgICAgICAtMTAgIWRlZmF1bHQ7XG4kYWxlcnQtYm9yZGVyLWxldmVsOiAgICAgICAgICAgICAgICAtOSAhZGVmYXVsdDtcbiRhbGVydC1jb2xvci1sZXZlbDogICAgICAgICAgICAgICAgIDYgIWRlZmF1bHQ7XG5cblxuLy8gUHJvZ3Jlc3MgYmFyc1xuXG4kcHJvZ3Jlc3MtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJHByb2dyZXNzLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogLjc1ICFkZWZhdWx0O1xuJHByb2dyZXNzLWJnOiAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJHByb2dyZXNzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYm94LXNoYWRvdzogICAgICAgICAgICAgICBpbnNldCAwIC4xcmVtIC4xcmVtIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWNvbG9yOiAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWJnOiAgICAgICAgICAgICAgICAgICB0aGVtZS1jb2xvcihcInByaW1hcnlcIikgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWFuaW1hdGlvbi10aW1pbmc6ICAgICAxcyBsaW5lYXIgaW5maW5pdGUgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLXRyYW5zaXRpb246ICAgICAgICAgICB3aWR0aCAuNnMgZWFzZSAhZGVmYXVsdDtcblxuXG4vLyBMaXN0IGdyb3VwXG5cbiRsaXN0LWdyb3VwLWNvbG9yOiAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1iZzogICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1ib3JkZXItY29sb3I6ICAgICAgICAgICByZ2JhKCRibGFjaywgLjEyNSkgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1czogICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy15OiAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy14OiAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWhvdmVyLWJnOiAgICAgICAgICAgICAgICRncmF5LTEwMCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWJnOiAgICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyLWNvbG9yOiAgICAkbGlzdC1ncm91cC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWRpc2FibGVkLWJnOiAgICAgICAgICAgICRsaXN0LWdyb3VwLWJnICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1hY3Rpb24tY29sb3I6ICAgICAgICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3Rpb24taG92ZXItY29sb3I6ICAgICAkbGlzdC1ncm91cC1hY3Rpb24tY29sb3IgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtY29sb3I6ICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1iZzogICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuXG5cbi8vIEltYWdlIHRodW1ibmFpbHNcblxuJHRodW1ibmFpbC1wYWRkaW5nOiAgICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHRodW1ibmFpbC1iZzogICAgICAgICAgICAgICAgICAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJvcmRlci13aWR0aDogICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAwIDFweCAycHggcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuXG5cbi8vIEZpZ3VyZXNcblxuJGZpZ3VyZS1jYXB0aW9uLWZvbnQtc2l6ZTogICAgICAgICAgOTAlICFkZWZhdWx0O1xuJGZpZ3VyZS1jYXB0aW9uLWNvbG9yOiAgICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG5cbi8vIEJyZWFkY3J1bWJzXG5cbiRicmVhZGNydW1iLWZvbnQtc2l6ZTogICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRicmVhZGNydW1iLXBhZGRpbmcteTogICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRicmVhZGNydW1iLXBhZGRpbmcteDogICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1pdGVtLXBhZGRpbmc6ICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJGJyZWFkY3J1bWItbWFyZ2luLWJvdHRvbTogICAgICAgICAgMXJlbSAhZGVmYXVsdDtcblxuJGJyZWFkY3J1bWItYmc6ICAgICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItZGl2aWRlci1jb2xvcjogICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItYWN0aXZlLWNvbG9yOiAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItZGl2aWRlcjogICAgICAgICAgICAgICAgcXVvdGUoXCIvXCIpICFkZWZhdWx0O1xuXG4kYnJlYWRjcnVtYi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuXG4vLyBDYXJvdXNlbFxuXG4kY2Fyb3VzZWwtY29udHJvbC1jb2xvcjogICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg6ICAgICAgICAgICAgIDE1JSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLW9wYWNpdHk6ICAgICAgICAgICAuNSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLWhvdmVyLW9wYWNpdHk6ICAgICAuOSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLXRyYW5zaXRpb246ICAgICAgICBvcGFjaXR5IC4xNXMgZWFzZSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWluZGljYXRvci13aWR0aDogICAgICAgICAgIDMwcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWhlaWdodDogICAgICAgICAgM3B4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1oaXQtYXJlYS1oZWlnaHQ6IDEwcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLXNwYWNlcjogICAgICAgICAgM3B4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtYmc6ICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItdHJhbnNpdGlvbjogICAgICBvcGFjaXR5IC42cyBlYXNlICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY2FwdGlvbi13aWR0aDogICAgICAgICAgICAgNzAlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNhcHRpb24tY29sb3I6ICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNvbnRyb2wtaWNvbi13aWR0aDogICAgICAgIDIwcHggIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbi1iZzogICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIGZpbGw9JyN7JGNhcm91c2VsLWNvbnRyb2wtY29sb3J9JyB3aWR0aD0nOCcgaGVpZ2h0PSc4JyB2aWV3Qm94PScwIDAgOCA4Jz48cGF0aCBkPSdNNS4yNSAwbC00IDQgNCA0IDEuNS0xLjVMNC4yNSA0bDIuNS0yLjVMNS4yNSAweicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbi1iZzogICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIGZpbGw9JyN7JGNhcm91c2VsLWNvbnRyb2wtY29sb3J9JyB3aWR0aD0nOCcgaGVpZ2h0PSc4JyB2aWV3Qm94PScwIDAgOCA4Jz48cGF0aCBkPSdNMi43NSAwbC0xLjUgMS41TDMuNzUgNGwtMi41IDIuNUwyLjc1IDhsNC00LTQtNHonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC10cmFuc2l0aW9uLWR1cmF0aW9uOiAgICAgICAuNnMgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtdHJhbnNpdGlvbjogICAgICAgICAgICAgICAgdHJhbnNmb3JtICRjYXJvdXNlbC10cmFuc2l0aW9uLWR1cmF0aW9uIGVhc2UtaW4tb3V0ICFkZWZhdWx0OyAvLyBEZWZpbmUgdHJhbnNmb3JtIHRyYW5zaXRpb24gZmlyc3QgaWYgdXNpbmcgbXVsdGlwbGUgdHJhbnNpdGlvbnMgKGUuZy4sIGB0cmFuc2Zvcm0gMnMgZWFzZSwgb3BhY2l0eSAuNXMgZWFzZS1vdXRgKVxuXG5cbi8vIFNwaW5uZXJzXG5cbiRzcGlubmVyLXdpZHRoOiAgICAgICAgICAgMnJlbSAhZGVmYXVsdDtcbiRzcGlubmVyLWhlaWdodDogICAgICAgICAgJHNwaW5uZXItd2lkdGggIWRlZmF1bHQ7XG4kc3Bpbm5lci12ZXJ0aWNhbC1hbGlnbjogIC0uMTI1ZW0gIWRlZmF1bHQ7XG4kc3Bpbm5lci1ib3JkZXItd2lkdGg6ICAgIC4yNWVtICFkZWZhdWx0O1xuXG4kc3Bpbm5lci13aWR0aC1zbTogICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kc3Bpbm5lci1oZWlnaHQtc206ICAgICAgICRzcGlubmVyLXdpZHRoLXNtICFkZWZhdWx0O1xuJHNwaW5uZXItYm9yZGVyLXdpZHRoLXNtOiAuMmVtICFkZWZhdWx0O1xuXG5cbi8vIENsb3NlXG5cbiRjbG9zZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuNSAhZGVmYXVsdDtcbiRjbG9zZS1mb250LXdlaWdodDogICAgICAgICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuJGNsb3NlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJGNsb3NlLXRleHQtc2hhZG93OiAgICAgICAgICAgICAgICAgMCAxcHggMCAkd2hpdGUgIWRlZmF1bHQ7XG5cblxuLy8gQ29kZVxuXG4kY29kZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICA4Ny41JSAhZGVmYXVsdDtcbiRjb2RlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICRwaW5rICFkZWZhdWx0O1xuXG4ka2JkLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgICAuMnJlbSAhZGVmYXVsdDtcbiRrYmQtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAgIC40cmVtICFkZWZhdWx0O1xuJGtiZC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgJGNvZGUtZm9udC1zaXplICFkZWZhdWx0O1xuJGtiZC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGtiZC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuXG4kcHJlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG4kcHJlLXNjcm9sbGFibGUtbWF4LWhlaWdodDogICAgICAgICAzNDBweCAhZGVmYXVsdDtcblxuXG4vLyBVdGlsaXRpZXNcblxuJGRpc3BsYXlzOiBub25lLCBpbmxpbmUsIGlubGluZS1ibG9jaywgYmxvY2ssIHRhYmxlLCB0YWJsZS1yb3csIHRhYmxlLWNlbGwsIGZsZXgsIGlubGluZS1mbGV4ICFkZWZhdWx0O1xuJG92ZXJmbG93czogYXV0bywgaGlkZGVuICFkZWZhdWx0O1xuJHBvc2l0aW9uczogc3RhdGljLCByZWxhdGl2ZSwgYWJzb2x1dGUsIGZpeGVkLCBzdGlja3kgIWRlZmF1bHQ7XG4kdXNlci1zZWxlY3RzOiBhbGwsIGF1dG8sIG5vbmUgIWRlZmF1bHQ7XG5cblxuLy8gUHJpbnRpbmdcblxuJHByaW50LXBhZ2Utc2l6ZTogICAgICAgICAgICAgICAgICAgYTMgIWRlZmF1bHQ7XG4kcHJpbnQtYm9keS1taW4td2lkdGg6ICAgICAgICAgICAgICBtYXAtZ2V0KCRncmlkLWJyZWFrcG9pbnRzLCBcImxnXCIpICFkZWZhdWx0O1xuIiwiLy9cbi8vIFNjcmVlbnJlYWRlcnNcbi8vXG5cbi5zci1vbmx5IHtcbiAgQGluY2x1ZGUgc3Itb25seSgpO1xufVxuXG4uc3Itb25seS1mb2N1c2FibGUge1xuICBAaW5jbHVkZSBzci1vbmx5LWZvY3VzYWJsZSgpO1xufVxuIiwiLy8gT25seSBkaXNwbGF5IGNvbnRlbnQgdG8gc2NyZWVuIHJlYWRlcnNcbi8vXG4vLyBTZWU6IGh0dHBzOi8vd3d3LmExMXlwcm9qZWN0LmNvbS9wb3N0cy8yMDEzLTAxLTExLWhvdy10by1oaWRlLWNvbnRlbnQvXG4vLyBTZWU6IGh0dHBzOi8va2l0dHlnaXJhdWRlbC5jb20vMjAxNi8xMC8xMy9jc3MtaGlkZS1hbmQtc2Vlay9cblxuQG1peGluIHNyLW9ubHkoKSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogLTFweDsgLy8gRml4IGZvciBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI1Njg2XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJvcmRlcjogMDtcbn1cblxuLy8gVXNlIGluIGNvbmp1bmN0aW9uIHdpdGggLnNyLW9ubHkgdG8gb25seSBkaXNwbGF5IGNvbnRlbnQgd2hlbiBpdCdzIGZvY3VzZWQuXG4vL1xuLy8gVXNlZnVsIGZvciBcIlNraXAgdG8gbWFpbiBjb250ZW50XCIgbGlua3M7IHNlZSBodHRwczovL3d3dy53My5vcmcvVFIvMjAxMy9OT1RFLVdDQUcyMC1URUNIUy0yMDEzMDkwNS9HMVxuLy9cbi8vIENyZWRpdDogSFRNTDUgQm9pbGVycGxhdGVcblxuQG1peGluIHNyLW9ubHktZm9jdXNhYmxlKCkge1xuICAmOmFjdGl2ZSxcbiAgJjpmb2N1cyB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICB3aWR0aDogYXV0bztcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgY2xpcDogYXV0bztcbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLnNoYWRvdy1zbSB7IGJveC1zaGFkb3c6ICRib3gtc2hhZG93LXNtICFpbXBvcnRhbnQ7IH1cbi5zaGFkb3cgeyBib3gtc2hhZG93OiAkYm94LXNoYWRvdyAhaW1wb3J0YW50OyB9XG4uc2hhZG93LWxnIHsgYm94LXNoYWRvdzogJGJveC1zaGFkb3ctbGcgIWltcG9ydGFudDsgfVxuLnNoYWRvdy1ub25lIHsgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50OyB9XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gV2lkdGggYW5kIGhlaWdodFxuXG5AZWFjaCAkcHJvcCwgJGFiYnJldiBpbiAod2lkdGg6IHcsIGhlaWdodDogaCkge1xuICBAZWFjaCAkc2l6ZSwgJGxlbmd0aCBpbiAkc2l6ZXMge1xuICAgIC4jeyRhYmJyZXZ9LSN7JHNpemV9IHsgI3skcHJvcH06ICRsZW5ndGggIWltcG9ydGFudDsgfVxuICB9XG59XG5cbi5tdy0xMDAgeyBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfVxuLm1oLTEwMCB7IG1heC1oZWlnaHQ6IDEwMCUgIWltcG9ydGFudDsgfVxuXG4vLyBWaWV3cG9ydCBhZGRpdGlvbmFsIGhlbHBlcnNcblxuLm1pbi12dy0xMDAgeyBtaW4td2lkdGg6IDEwMHZ3ICFpbXBvcnRhbnQ7IH1cbi5taW4tdmgtMTAwIHsgbWluLWhlaWdodDogMTAwdmggIWltcG9ydGFudDsgfVxuXG4udnctMTAwIHsgd2lkdGg6IDEwMHZ3ICFpbXBvcnRhbnQ7IH1cbi52aC0xMDAgeyBoZWlnaHQ6IDEwMHZoICFpbXBvcnRhbnQ7IH1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBNYXJnaW4gYW5kIFBhZGRpbmdcblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgQGVhY2ggJHByb3AsICRhYmJyZXYgaW4gKG1hcmdpbjogbSwgcGFkZGluZzogcCkge1xuICAgICAgQGVhY2ggJHNpemUsICRsZW5ndGggaW4gJHNwYWNlcnMge1xuICAgICAgICAuI3skYWJicmV2fSN7JGluZml4fS0jeyRzaXplfSB7ICN7JHByb3B9OiAkbGVuZ3RoICFpbXBvcnRhbnQ7IH1cbiAgICAgICAgLiN7JGFiYnJldn10I3skaW5maXh9LSN7JHNpemV9LFxuICAgICAgICAuI3skYWJicmV2fXkjeyRpbmZpeH0tI3skc2l6ZX0ge1xuICAgICAgICAgICN7JHByb3B9LXRvcDogJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC4jeyRhYmJyZXZ9ciN7JGluZml4fS0jeyRzaXplfSxcbiAgICAgICAgLiN7JGFiYnJldn14I3skaW5maXh9LSN7JHNpemV9IHtcbiAgICAgICAgICAjeyRwcm9wfS1yaWdodDogJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC4jeyRhYmJyZXZ9YiN7JGluZml4fS0jeyRzaXplfSxcbiAgICAgICAgLiN7JGFiYnJldn15I3skaW5maXh9LSN7JHNpemV9IHtcbiAgICAgICAgICAjeyRwcm9wfS1ib3R0b206ICRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAuI3skYWJicmV2fWwjeyRpbmZpeH0tI3skc2l6ZX0sXG4gICAgICAgIC4jeyRhYmJyZXZ9eCN7JGluZml4fS0jeyRzaXplfSB7XG4gICAgICAgICAgI3skcHJvcH0tbGVmdDogJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gTmVnYXRpdmUgbWFyZ2lucyAoZS5nLiwgd2hlcmUgYC5tYi1uMWAgaXMgbmVnYXRpdmUgdmVyc2lvbiBvZiBgLm1iLTFgKVxuICAgIEBlYWNoICRzaXplLCAkbGVuZ3RoIGluICRzcGFjZXJzIHtcbiAgICAgIEBpZiBcIiN7JHNpemV9XCIgIT0gXCIwXCIge1xuICAgICAgICAubSN7JGluZml4fS1uI3skc2l6ZX0geyBtYXJnaW46IC0kbGVuZ3RoICFpbXBvcnRhbnQ7IH1cbiAgICAgICAgLm10I3skaW5maXh9LW4jeyRzaXplfSxcbiAgICAgICAgLm15I3skaW5maXh9LW4jeyRzaXplfSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogLSRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAubXIjeyRpbmZpeH0tbiN7JHNpemV9LFxuICAgICAgICAubXgjeyRpbmZpeH0tbiN7JHNpemV9IHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0kbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLm1iI3skaW5maXh9LW4jeyRzaXplfSxcbiAgICAgICAgLm15I3skaW5maXh9LW4jeyRzaXplfSB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogLSRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAubWwjeyRpbmZpeH0tbiN7JHNpemV9LFxuICAgICAgICAubXgjeyRpbmZpeH0tbiN7JHNpemV9IHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogLSRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNvbWUgc3BlY2lhbCBtYXJnaW4gdXRpbHNcbiAgICAubSN7JGluZml4fS1hdXRvIHsgbWFyZ2luOiBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgICAubXQjeyRpbmZpeH0tYXV0byxcbiAgICAubXkjeyRpbmZpeH0tYXV0byB7XG4gICAgICBtYXJnaW4tdG9wOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5tciN7JGluZml4fS1hdXRvLFxuICAgIC5teCN7JGluZml4fS1hdXRvIHtcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAubWIjeyRpbmZpeH0tYXV0byxcbiAgICAubXkjeyRpbmZpeH0tYXV0byB7XG4gICAgICBtYXJnaW4tYm90dG9tOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5tbCN7JGluZml4fS1hdXRvLFxuICAgIC5teCN7JGluZml4fS1hdXRvIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gU3RyZXRjaGVkIGxpbmtcbi8vXG5cbi5zdHJldGNoZWQtbGluayB7XG4gICY6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IDE7XG4gICAgLy8gSnVzdCBpbiBjYXNlIGBwb2ludGVyLWV2ZW50czogbm9uZWAgaXMgc2V0IG9uIGEgcGFyZW50XG4gICAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gICAgY29udGVudDogXCJcIjtcbiAgICAvLyBJRTEwIGJ1Z2ZpeCwgc2VlIGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vcXVlc3Rpb25zLzE2OTQ3OTY3L2llMTAtaG92ZXItcHNldWRvLWNsYXNzLWRvZXNudC13b3JrLXdpdGhvdXQtYmFja2dyb3VuZC1jb2xvclxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vL1xuLy8gVGV4dFxuLy9cblxuLnRleHQtbW9ub3NwYWNlIHsgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1tb25vc3BhY2UgIWltcG9ydGFudDsgfVxuXG4vLyBBbGlnbm1lbnRcblxuLnRleHQtanVzdGlmeSAgeyB0ZXh0LWFsaWduOiBqdXN0aWZ5ICFpbXBvcnRhbnQ7IH1cbi50ZXh0LXdyYXAgICAgIHsgd2hpdGUtc3BhY2U6IG5vcm1hbCAhaW1wb3J0YW50OyB9XG4udGV4dC1ub3dyYXAgICB7IHdoaXRlLXNwYWNlOiBub3dyYXAgIWltcG9ydGFudDsgfVxuLnRleHQtdHJ1bmNhdGUgeyBAaW5jbHVkZSB0ZXh0LXRydW5jYXRlKCk7IH1cblxuLy8gUmVzcG9uc2l2ZSBhbGlnbm1lbnRcblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLnRleHQjeyRpbmZpeH0tbGVmdCAgIHsgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50OyB9XG4gICAgLnRleHQjeyRpbmZpeH0tcmlnaHQgIHsgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDsgfVxuICAgIC50ZXh0I3skaW5maXh9LWNlbnRlciB7IHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gIH1cbn1cblxuLy8gVHJhbnNmb3JtYXRpb25cblxuLnRleHQtbG93ZXJjYXNlICB7IHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2UgIWltcG9ydGFudDsgfVxuLnRleHQtdXBwZXJjYXNlICB7IHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2UgIWltcG9ydGFudDsgfVxuLnRleHQtY2FwaXRhbGl6ZSB7IHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplICFpbXBvcnRhbnQ7IH1cblxuLy8gV2VpZ2h0IGFuZCBpdGFsaWNzXG5cbi5mb250LXdlaWdodC1saWdodCAgIHsgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1saWdodCAhaW1wb3J0YW50OyB9XG4uZm9udC13ZWlnaHQtbGlnaHRlciB7IGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbGlnaHRlciAhaW1wb3J0YW50OyB9XG4uZm9udC13ZWlnaHQtbm9ybWFsICB7IGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsICFpbXBvcnRhbnQ7IH1cbi5mb250LXdlaWdodC1ib2xkICAgIHsgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkICFpbXBvcnRhbnQ7IH1cbi5mb250LXdlaWdodC1ib2xkZXIgIHsgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkZXIgIWltcG9ydGFudDsgfVxuLmZvbnQtaXRhbGljICAgICAgICAgeyBmb250LXN0eWxlOiBpdGFsaWMgIWltcG9ydGFudDsgfVxuXG4vLyBDb250ZXh0dWFsIGNvbG9yc1xuXG4udGV4dC13aGl0ZSB7IGNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDsgfVxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgQGluY2x1ZGUgdGV4dC1lbXBoYXNpcy12YXJpYW50KFwiLnRleHQtI3skY29sb3J9XCIsICR2YWx1ZSwgdHJ1ZSk7XG59XG5cbi50ZXh0LWJvZHkgeyBjb2xvcjogJGJvZHktY29sb3IgIWltcG9ydGFudDsgfVxuLnRleHQtbXV0ZWQgeyBjb2xvcjogJHRleHQtbXV0ZWQgIWltcG9ydGFudDsgfVxuXG4udGV4dC1ibGFjay01MCB7IGNvbG9yOiByZ2JhKCRibGFjaywgLjUpICFpbXBvcnRhbnQ7IH1cbi50ZXh0LXdoaXRlLTUwIHsgY29sb3I6IHJnYmEoJHdoaXRlLCAuNSkgIWltcG9ydGFudDsgfVxuXG4vLyBNaXNjXG5cbi50ZXh0LWhpZGUge1xuICBAaW5jbHVkZSB0ZXh0LWhpZGUoJGlnbm9yZS13YXJuaW5nOiB0cnVlKTtcbn1cblxuLnRleHQtZGVjb3JhdGlvbi1ub25lIHsgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7IH1cblxuLnRleHQtYnJlYWsge1xuICB3b3JkLWJyZWFrOiBicmVhay13b3JkICFpbXBvcnRhbnQ7IC8vIERlcHJlY2F0ZWQsIGJ1dCBhdm9pZHMgaXNzdWVzIHdpdGggZmxleCBjb250YWluZXJzXG4gIHdvcmQtd3JhcDogYnJlYWstd29yZCAhaW1wb3J0YW50OyAvLyBVc2VkIGluc3RlYWQgb2YgYG92ZXJmbG93LXdyYXBgIGZvciBJRSAmIEVkZ2UgTGVnYWN5XG59XG5cbi8vIFJlc2V0XG5cbi50ZXh0LXJlc2V0IHsgY29sb3I6IGluaGVyaXQgIWltcG9ydGFudDsgfVxuIiwiLy8gVGV4dCB0cnVuY2F0ZVxuLy8gUmVxdWlyZXMgaW5saW5lLWJsb2NrIG9yIGJsb2NrIGZvciBwcm9wZXIgc3R5bGluZ1xuXG5AbWl4aW4gdGV4dC10cnVuY2F0ZSgpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gVHlwb2dyYXBoeVxuXG5AbWl4aW4gdGV4dC1lbXBoYXNpcy12YXJpYW50KCRwYXJlbnQsICRjb2xvciwgJGlnbm9yZS13YXJuaW5nOiBmYWxzZSkge1xuICAjeyRwYXJlbnR9IHtcbiAgICBjb2xvcjogJGNvbG9yICFpbXBvcnRhbnQ7XG4gIH1cbiAgQGlmICRlbXBoYXNpemVkLWxpbmstaG92ZXItZGFya2VuLXBlcmNlbnRhZ2UgIT0gMCB7XG4gICAgYSN7JHBhcmVudH0ge1xuICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICAgIGNvbG9yOiBkYXJrZW4oJGNvbG9yLCAkZW1waGFzaXplZC1saW5rLWhvdmVyLWRhcmtlbi1wZXJjZW50YWdlKSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJgdGV4dC1lbXBoYXNpcy12YXJpYW50KClgXCIsIFwidjQuNC4wXCIsIFwidjVcIiwgJGlnbm9yZS13YXJuaW5nKTtcbn1cbiIsIi8vIENTUyBpbWFnZSByZXBsYWNlbWVudFxuQG1peGluIHRleHQtaGlkZSgkaWdub3JlLXdhcm5pbmc6IGZhbHNlKSB7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBmb250LWZhbWlseS1uby1taXNzaW5nLWdlbmVyaWMtZmFtaWx5LWtleXdvcmRcbiAgZm9udDogMC8wIGE7XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG5cbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiYHRleHQtaGlkZSgpYFwiLCBcInY0LjEuMFwiLCBcInY1XCIsICRpZ25vcmUtd2FybmluZyk7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy9cbi8vIFZpc2liaWxpdHkgdXRpbGl0aWVzXG4vL1xuXG4udmlzaWJsZSB7XG4gIHZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcbn1cblxuLmludmlzaWJsZSB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbiAhaW1wb3J0YW50O1xufVxuIiwiLy8gQ29udGFpbmVyIHdpZHRoc1xuLy9cbi8vIFNldCB0aGUgY29udGFpbmVyIHdpZHRoLCBhbmQgb3ZlcnJpZGUgaXQgZm9yIGZpeGVkIG5hdmJhcnMgaW4gbWVkaWEgcXVlcmllcy5cblxuQGlmICRlbmFibGUtZ3JpZC1jbGFzc2VzIHtcbiAgLy8gU2luZ2xlIGNvbnRhaW5lciBjbGFzcyB3aXRoIGJyZWFrcG9pbnQgbWF4LXdpZHRoc1xuICAuY29udGFpbmVyLFxuICAvLyAxMDAlIHdpZGUgY29udGFpbmVyIGF0IGFsbCBicmVha3BvaW50c1xuICAuY29udGFpbmVyLWZsdWlkIHtcbiAgICBAaW5jbHVkZSBtYWtlLWNvbnRhaW5lcigpO1xuICB9XG5cbiAgLy8gUmVzcG9uc2l2ZSBjb250YWluZXJzIHRoYXQgYXJlIDEwMCUgd2lkZSB1bnRpbCBhIGJyZWFrcG9pbnRcbiAgQGVhY2ggJGJyZWFrcG9pbnQsICRjb250YWluZXItbWF4LXdpZHRoIGluICRjb250YWluZXItbWF4LXdpZHRocyB7XG4gICAgLmNvbnRhaW5lci0jeyRicmVha3BvaW50fSB7XG4gICAgICBAZXh0ZW5kIC5jb250YWluZXItZmx1aWQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgICAgICVyZXNwb25zaXZlLWNvbnRhaW5lci0jeyRicmVha3BvaW50fSB7XG4gICAgICAgIG1heC13aWR0aDogJGNvbnRhaW5lci1tYXgtd2lkdGg7XG4gICAgICB9XG5cbiAgICAgIC8vIEV4dGVuZCBlYWNoIGJyZWFrcG9pbnQgd2hpY2ggaXMgc21hbGxlciBvciBlcXVhbCB0byB0aGUgY3VycmVudCBicmVha3BvaW50XG4gICAgICAkZXh0ZW5kLWJyZWFrcG9pbnQ6IHRydWU7XG5cbiAgICAgIEBlYWNoICRuYW1lLCAkd2lkdGggaW4gJGdyaWQtYnJlYWtwb2ludHMge1xuICAgICAgICBAaWYgKCRleHRlbmQtYnJlYWtwb2ludCkge1xuICAgICAgICAgIC5jb250YWluZXIje2JyZWFrcG9pbnQtaW5maXgoJG5hbWUsICRncmlkLWJyZWFrcG9pbnRzKX0ge1xuICAgICAgICAgICAgQGV4dGVuZCAlcmVzcG9uc2l2ZS1jb250YWluZXItI3skYnJlYWtwb2ludH07XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLy8gT25jZSB0aGUgY3VycmVudCBicmVha3BvaW50IGlzIHJlYWNoZWQsIHN0b3AgZXh0ZW5kaW5nXG4gICAgICAgICAgQGlmICgkYnJlYWtwb2ludCA9PSAkbmFtZSkge1xuICAgICAgICAgICAgJGV4dGVuZC1icmVha3BvaW50OiBmYWxzZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBSb3dcbi8vXG4vLyBSb3dzIGNvbnRhaW4geW91ciBjb2x1bW5zLlxuXG5AaWYgJGVuYWJsZS1ncmlkLWNsYXNzZXMge1xuICAucm93IHtcbiAgICBAaW5jbHVkZSBtYWtlLXJvdygpO1xuICB9XG5cbiAgLy8gUmVtb3ZlIHRoZSBuZWdhdGl2ZSBtYXJnaW4gZnJvbSBkZWZhdWx0IC5yb3csIHRoZW4gdGhlIGhvcml6b250YWwgcGFkZGluZ1xuICAvLyBmcm9tIGFsbCBpbW1lZGlhdGUgY2hpbGRyZW4gY29sdW1ucyAodG8gcHJldmVudCBydW5hd2F5IHN0eWxlIGluaGVyaXRhbmNlKS5cbiAgLm5vLWd1dHRlcnMge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcblxuICAgID4gLmNvbCxcbiAgICA+IFtjbGFzcyo9XCJjb2wtXCJdIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgfVxuICB9XG59XG5cbi8vIENvbHVtbnNcbi8vXG4vLyBDb21tb24gc3R5bGVzIGZvciBzbWFsbCBhbmQgbGFyZ2UgZ3JpZCBjb2x1bW5zXG5cbkBpZiAkZW5hYmxlLWdyaWQtY2xhc3NlcyB7XG4gIEBpbmNsdWRlIG1ha2UtZ3JpZC1jb2x1bW5zKCk7XG59XG4iLCIvLy8gR3JpZCBzeXN0ZW1cbi8vXG4vLyBHZW5lcmF0ZSBzZW1hbnRpYyBncmlkIGNvbHVtbnMgd2l0aCB0aGVzZSBtaXhpbnMuXG5cbkBtaXhpbiBtYWtlLWNvbnRhaW5lcigkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctcmlnaHQ6ICRndXR0ZXIgKiAuNTtcbiAgcGFkZGluZy1sZWZ0OiAkZ3V0dGVyICogLjU7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG59XG5cbkBtaXhpbiBtYWtlLXJvdygkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW4tcmlnaHQ6IC0kZ3V0dGVyICogLjU7XG4gIG1hcmdpbi1sZWZ0OiAtJGd1dHRlciAqIC41O1xufVxuXG4vLyBGb3IgZWFjaCBicmVha3BvaW50LCBkZWZpbmUgdGhlIG1heGltdW0gd2lkdGggb2YgdGhlIGNvbnRhaW5lciBpbiBhIG1lZGlhIHF1ZXJ5XG5AbWl4aW4gbWFrZS1jb250YWluZXItbWF4LXdpZHRocygkbWF4LXdpZHRoczogJGNvbnRhaW5lci1tYXgtd2lkdGhzLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBlYWNoICRicmVha3BvaW50LCAkY29udGFpbmVyLW1heC13aWR0aCBpbiAkbWF4LXdpZHRocyB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBtYXgtd2lkdGg6ICRjb250YWluZXItbWF4LXdpZHRoO1xuICAgIH1cbiAgfVxuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJUaGUgYG1ha2UtY29udGFpbmVyLW1heC13aWR0aHNgIG1peGluXCIsIFwidjQuNS4yXCIsIFwidjVcIik7XG59XG5cbkBtaXhpbiBtYWtlLWNvbC1yZWFkeSgkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAvLyBQcmV2ZW50IGNvbHVtbnMgZnJvbSBiZWNvbWluZyB0b28gbmFycm93IHdoZW4gYXQgc21hbGxlciBncmlkIHRpZXJzIGJ5XG4gIC8vIGFsd2F5cyBzZXR0aW5nIGB3aWR0aDogMTAwJTtgLiBUaGlzIHdvcmtzIGJlY2F1c2Ugd2UgdXNlIGBmbGV4YCB2YWx1ZXNcbiAgLy8gbGF0ZXIgb24gdG8gb3ZlcnJpZGUgdGhpcyBpbml0aWFsIHdpZHRoLlxuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy1yaWdodDogJGd1dHRlciAqIC41O1xuICBwYWRkaW5nLWxlZnQ6ICRndXR0ZXIgKiAuNTtcbn1cblxuQG1peGluIG1ha2UtY29sKCRzaXplLCAkY29sdW1uczogJGdyaWQtY29sdW1ucykge1xuICBmbGV4OiAwIDAgcGVyY2VudGFnZShkaXZpZGUoJHNpemUsICRjb2x1bW5zKSk7XG4gIC8vIEFkZCBhIGBtYXgtd2lkdGhgIHRvIGVuc3VyZSBjb250ZW50IHdpdGhpbiBlYWNoIGNvbHVtbiBkb2VzIG5vdCBibG93IG91dFxuICAvLyB0aGUgd2lkdGggb2YgdGhlIGNvbHVtbi4gQXBwbGllcyB0byBJRTEwKyBhbmQgRmlyZWZveC4gQ2hyb21lIGFuZCBTYWZhcmlcbiAgLy8gZG8gbm90IGFwcGVhciB0byByZXF1aXJlIHRoaXMuXG4gIG1heC13aWR0aDogcGVyY2VudGFnZShkaXZpZGUoJHNpemUsICRjb2x1bW5zKSk7XG59XG5cbkBtaXhpbiBtYWtlLWNvbC1hdXRvKCkge1xuICBmbGV4OiAwIDAgYXV0bztcbiAgd2lkdGg6IGF1dG87XG4gIG1heC13aWR0aDogMTAwJTsgLy8gUmVzZXQgZWFybGllciBncmlkIHRpZXJzXG59XG5cbkBtaXhpbiBtYWtlLWNvbC1vZmZzZXQoJHNpemUsICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW5zKSB7XG4gICRudW06IGRpdmlkZSgkc2l6ZSwgJGNvbHVtbnMpO1xuICBtYXJnaW4tbGVmdDogaWYoJG51bSA9PSAwLCAwLCBwZXJjZW50YWdlKCRudW0pKTtcbn1cblxuLy8gUm93IGNvbHVtbnNcbi8vXG4vLyBTcGVjaWZ5IG9uIGEgcGFyZW50IGVsZW1lbnQoZS5nLiwgLnJvdykgdG8gZm9yY2UgaW1tZWRpYXRlIGNoaWxkcmVuIGludG8gTk5cbi8vIG51bWJlcm9mIGNvbHVtbnMuIFN1cHBvcnRzIHdyYXBwaW5nIHRvIG5ldyBsaW5lcywgYnV0IGRvZXMgbm90IGRvIGEgTWFzb25yeVxuLy8gc3R5bGUgZ3JpZC5cbkBtaXhpbiByb3ctY29scygkY291bnQpIHtcbiAgPiAqIHtcbiAgICBmbGV4OiAwIDAgZGl2aWRlKDEwMCUsICRjb3VudCk7XG4gICAgbWF4LXdpZHRoOiBkaXZpZGUoMTAwJSwgJGNvdW50KTtcbiAgfVxufVxuIiwiLy8gRnJhbWV3b3JrIGdyaWQgZ2VuZXJhdGlvblxuLy9cbi8vIFVzZWQgb25seSBieSBCb290c3RyYXAgdG8gZ2VuZXJhdGUgdGhlIGNvcnJlY3QgbnVtYmVyIG9mIGdyaWQgY2xhc3NlcyBnaXZlblxuLy8gYW55IHZhbHVlIG9mIGAkZ3JpZC1jb2x1bW5zYC5cblxuQG1peGluIG1ha2UtZ3JpZC1jb2x1bW5zKCRjb2x1bW5zOiAkZ3JpZC1jb2x1bW5zLCAkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgLy8gQ29tbW9uIHByb3BlcnRpZXMgZm9yIGFsbCBicmVha3BvaW50c1xuICAlZ3JpZC1jb2x1bW4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkZ3V0dGVyICogLjU7XG4gICAgcGFkZGluZy1sZWZ0OiAkZ3V0dGVyICogLjU7XG4gIH1cblxuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkYnJlYWtwb2ludHMpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cyk7XG5cbiAgICBAaWYgJGNvbHVtbnMgPiAwIHtcbiAgICAgIC8vIEFsbG93IGNvbHVtbnMgdG8gc3RyZXRjaCBmdWxsIHdpZHRoIGJlbG93IHRoZWlyIGJyZWFrcG9pbnRzXG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRjb2x1bW5zIHtcbiAgICAgICAgLmNvbCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgQGV4dGVuZCAlZ3JpZC1jb2x1bW47XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuY29sI3skaW5maXh9LFxuICAgIC5jb2wjeyRpbmZpeH0tYXV0byB7XG4gICAgICBAZXh0ZW5kICVncmlkLWNvbHVtbjtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIC8vIFByb3ZpZGUgYmFzaWMgYC5jb2wte2JwfWAgY2xhc3NlcyBmb3IgZXF1YWwtd2lkdGggZmxleGJveCBjb2x1bW5zXG4gICAgICAuY29sI3skaW5maXh9IHtcbiAgICAgICAgZmxleC1iYXNpczogMDtcbiAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICB9XG5cbiAgICAgIEBpZiAkZ3JpZC1yb3ctY29sdW1ucyA+IDAge1xuICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLXJvdy1jb2x1bW5zIHtcbiAgICAgICAgICAucm93LWNvbHMjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgcm93LWNvbHMoJGkpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuY29sI3skaW5maXh9LWF1dG8ge1xuICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbC1hdXRvKCk7XG4gICAgICB9XG5cbiAgICAgIEBpZiAkY29sdW1ucyA+IDAge1xuICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRjb2x1bW5zIHtcbiAgICAgICAgICAuY29sI3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1ha2UtY29sKCRpLCAkY29sdW1ucyk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5vcmRlciN7JGluZml4fS1maXJzdCB7IG9yZGVyOiAtMTsgfVxuXG4gICAgICAub3JkZXIjeyRpbmZpeH0tbGFzdCB7IG9yZGVyOiAkY29sdW1ucyArIDE7IH1cblxuICAgICAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAkY29sdW1ucyB7XG4gICAgICAgIC5vcmRlciN7JGluZml4fS0jeyRpfSB7IG9yZGVyOiAkaTsgfVxuICAgICAgfVxuXG4gICAgICBAaWYgJGNvbHVtbnMgPiAwIHtcbiAgICAgICAgLy8gYCRjb2x1bW5zIC0gMWAgYmVjYXVzZSBvZmZzZXR0aW5nIGJ5IHRoZSB3aWR0aCBvZiBhbiBlbnRpcmUgcm93IGlzbid0IHBvc3NpYmxlXG4gICAgICAgIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggKCRjb2x1bW5zIC0gMSkge1xuICAgICAgICAgIEBpZiBub3QgKCRpbmZpeCA9PSBcIlwiIGFuZCAkaSA9PSAwKSB7IC8vIEF2b2lkIGVtaXR0aW5nIHVzZWxlc3MgLm9mZnNldC0wXG4gICAgICAgICAgICAub2Zmc2V0I3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2wtb2Zmc2V0KCRpLCAkY29sdW1ucyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvKipcclxuICogTUlYSU5TXHJcbiAqL1xyXG5cclxuJGluY3JlbWVudC1mcm9tOiBudWxsO1xyXG4kaW5jcmVtZW50LXRvOiBudWxsO1xyXG4kaW5jcmVtZW50LWZyb20tcHg6IG51bGw7XHJcbiRpbmNyZW1lbnQtdG8tcHg6IG51bGw7XHJcblxyXG4kZGVzazogMTUwMHB4O1xyXG4kd2lkZTogMTAyNHB4O1xyXG4kbWVkaXVtOiA3NjlweDtcclxuJHNtYWxsOiA2NDBweDtcclxuXHJcbi8vTUVESUEgUVVFUklFU1xyXG5cclxuLy8gVGhlIHJlc3BvbmQtdG8gbWl4aW4gaW4gaW50ZW5kZWQgdG8gYmUgdXNlZCBnbG9iYWxseSBhY2Nyb3NzXHJcbi8vIGxheW91dHMgYW5kIGNvbXBvbmVudHNcclxuQG1peGluIHJlc3BvbmQtdG8oJG1lZGlhKXtcclxuICAgIEBpZiAkbWVkaWEgPT0gZGVzay1hbmQtdXB7XHJcbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoIDogJGRlc2speyBAY29udGVudDt9XHJcbiAgICB9XHJcbiAgICBAZWxzZSBpZiAkbWVkaWEgPT0gZGVzay1hbmQtZG93bntcclxuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGggOiAkZGVzayAtMSl7IEBjb250ZW50O31cclxuICAgIH1cclxuICAgIEBlbHNlIGlmICRtZWRpYSA9PSB3aWRlLWFuZC11cHtcclxuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGggOiAkd2lkZSl7IEBjb250ZW50O31cclxuICAgIH1cclxuICAgIEBlbHNlIGlmICRtZWRpYSA9PSB3aWRlLWFuZC1kb3due1xyXG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aCA6ICR3aWRlIC0xKXsgQGNvbnRlbnQ7fVxyXG4gICAgfVxyXG4gICAgQGVsc2UgaWYgJG1lZGlhID09IG1lZGl1bS1hbmQtdXB7XHJcbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoIDogJG1lZGl1bSl7IEBjb250ZW50O31cclxuICAgIH1cclxuICAgIEBlbHNlIGlmICRtZWRpYSA9PSBtZWRpdW0tYW5kLWRvd257XHJcbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoIDogJG1lZGl1bSAtIDEpeyBAY29udGVudDt9XHJcbiAgICB9XHJcbiAgICBAZWxzZSBpZiAkbWVkaWEgPT0gc21hbGwtYW5kLXVwe1xyXG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aCA6ICRzbWFsbCl7IEBjb250ZW50O31cclxuICAgIH1cclxuICAgIEBlbHNlIGlmICRtZWRpYSA9PSBzbWFsbC1hbmQtZG93bntcclxuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGggOiAkc21hbGwgLSAxKXsgQGNvbnRlbnQ7fVxyXG4gICAgfVxyXG4gICAgQGVsc2UgaWYgJG1lZGlhID09IGRlc2t7XHJcbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoIDogJGRlc2sgLSAxKSBhbmQgKG1pbi13aWR0aCA6ICR3aWRlICsgMSl7IEBjb250ZW50O31cclxuICAgIH1cclxuICAgIEBlbHNlIGlmICRtZWRpYSA9PSB3aWRle1xyXG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aCA6ICR3aWRlKSBhbmQgKG1pbi13aWR0aCA6ICRtZWRpdW0gKyAxKXsgQGNvbnRlbnQ7fVxyXG4gICAgfVxyXG4gICAgQGVsc2UgaWYgJG1lZGlhID09IG1lZGl1bXtcclxuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGggOiAkbWVkaXVtKSBhbmQgKG1pbi13aWR0aCA6ICRzbWFsbCArIDEpeyBAY29udGVudDt9XHJcbiAgICB9XHJcbiAgICBAZWxzZSBpZiAkbWVkaWEgPT0gc21hbGx7XHJcbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoIDogJHNtYWxsKXsgQGNvbnRlbnQ7fVxyXG4gICAgfVxyXG59XHJcblxyXG4vL1RoZSBtZWRpYS13aWR0aCBtaXhpbiBpcyB1c2VkIHRvIHBhdGNoIGFueSBob2xlcyBpbiB0aGUgcHJvamVjdFxyXG4vL1VzZSBzcGFyaW5nbHkgYW5kIHBsYWNlIGFueSBuZXcgYnJlYWtwb2ludCB2YXJpYWJsZXMgaW4gdGhlIHByb2plY3RcclxuLy90aGVtZSBmaWxlIGZvciBzYWZlIGtlZXBpbmcuXHJcbkBtaXhpbiBtZWRpYS13aWR0aCgkYnJlYWtwb2ludCl7XHJcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGggOiAkYnJlYWtwb2ludCl7IEBjb250ZW50O31cclxufVxyXG5cclxuLy9CUk9XU0VSUyBGQUxMQkFDS1NcclxuLy9jYW4gYmUgdXNlZCB3aXRoIG9yIHdpdGhvdXQgZ2l2aW5nIGEgd2lkdGggaW4gcHhcclxuQG1peGluIGllLWZhbGxiYWNrKCR3aWR0aDogbnVsbCl7XHJcbiAgICBAaWYgJHdpZHRoIHtcclxuICAgICAgICBAbWVkaWEgYWxsIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIGFuZCAobWluLXdpZHRoOiAkd2lkdGgpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSkgYW5kIChtaW4td2lkdGg6ICR3aWR0aCkge1xyXG4gICAgICAgICAgICBAY29udGVudDtcclxuICAgICAgICB9XHJcbiAgICB9QGVsc2V7XHJcbiAgICAgICAgQG1lZGlhIGFsbCBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpIHtcclxuICAgICAgICAgICAgQGNvbnRlbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5AbWl4aW4gZmlyZWZveC1mYWxsYmFja3tcclxuICAgIEAtbW96LWRvY3VtZW50IHVybC1wcmVmaXgoKXtcclxuICAgICAgICBAY29udGVudDtcclxuICAgIH1cclxufVxyXG5cclxuQG1peGluIGVkZ2UtZmFsbGJhY2t7XHJcbiAgICBAc3VwcG9ydHMgKC1tcy1pbWUtYWxpZ246YXV0bykge1xyXG4gICAgICAgIEBjb250ZW50O1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWl4aW4gc2FmYXJpLWZhbGxiYWNre1xyXG4gICAgQGNvbnRlbnQ7XHJcbn1cclxuXHJcbkBtaXhpbiBjaHJvbWUtZmFsbGJhY2t7XHJcbiAgICBAY29udGVudDtcclxufVxyXG5cclxuLy9BU1BFQ1QgUkFUSU8gQ0FMQ1VMQVRPUlxyXG5AbWl4aW4gYXNwZWN0LXJhdGlvKCR3aWR0aCwgJGhlaWdodCl7XHJcbiAgICBwYWRkaW5nLXRvcDogKCgkaGVpZ2h0IC8gJHdpZHRoKSAqIDEwMCUpO1xyXG59XHJcblxyXG4vL0FTUEVDVCBSQVRJTyBIQUNLXHJcbi8vdGhpcyBtaXhpbiBhbGxvd3MgeW91IHRvIHBsYWNlIGEgcmVzcG9uc2l2ZSBhc3BlY3QgcmF0aW9cclxuLy9iYXNlZCBvbiB0aGUgdmlld3BvcnQgd2lkdGguIFlvdSBjYW4gYWxzbyBzZXQgdGhlIGJyZWFrcG9pbnRcclxuLy93aGVyZSB0aGUgY29tcG9uZW50IGdldHMgdG8gaXQncyBsYXJnZXN0IGRlc2lyYWJsZSBzaXplIGFuZFxyXG4vL2FwcGx5IGEgZml4ZWQgaGVpZ2h0L1xyXG5AbWl4aW4gYXItaGFjaygkdmFsdWUsICRtYXgtd2lkdGg6IDEwMCUsICRmaXgtaGVpZ2h0OiAwKXtcclxuXHJcbiAgICBALW1vei1kb2N1bWVudCB1cmwtcHJlZml4KCl7XHJcbiAgICAgICAgcGFkZGluZy10b3A6ICR2YWx1ZSArIHZ3O1xyXG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aCA6ICRtYXgtd2lkdGgpe1xyXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAkZml4LWhlaWdodDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQHN1cHBvcnRzICgtbXMtaW1lLWFsaWduOmF1dG8pe1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAkdmFsdWUgKyB2dztcclxuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGggOiAkbWF4LXdpZHRoKXtcclxuICAgICAgICAgICAgcGFkZGluZy10b3A6IDA7XHJcbiAgICAgICAgICAgIGhlaWdodDogJGZpeC1oZWlnaHQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vL0JBQ0tHUk9VTkQgTUlYSU5TXHJcbkBtaXhpbiBiYWNrZ3JvdW5kKCRtZWRpYSl7XHJcbiAgICBAaWYgJG1lZGlhID09IGNvdmVye1xyXG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XHJcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgO1xyXG4gICAgfVxyXG4gICAgQGVsc2UgaWYgJG1lZGlhID09IGNvbnRhaW57XHJcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xyXG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xyXG4gICAgfVxyXG59XHJcblxyXG4vL0NPVkVSIE1JWElOU1xyXG5AbWl4aW4gY292ZXIoJG1lZGlhKXtcclxuICAgIEBpZiAkbWVkaWEgPT0gYWJzb2x1dGV7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICByaWdodDogMDtcclxuICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgIH1cclxuICAgIEBlbHNlIGlmICRtZWRpYSA9PSBmaXhlZHtcclxuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgfVxyXG59XHJcblxyXG4vL0NMRUFSRklYIE1JWElOXHJcbkBtaXhpbiBjbGVhcmZpeHtcclxuICAgICY6YmVmb3JlLCAmOmFmdGVye1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xyXG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xyXG4gICAgfVxyXG5cclxuICAgICY6YWZ0ZXJ7XHJcbiAgICAgICAgY2xlYXI6IGJvdGg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vU0NST0xMQUJMRSBNSVhJTlxyXG5AbWl4aW4gc2Nyb2xsYWJsZSggJGF4aXMgKXtcclxuICAgIG92ZXJmbG93LSN7JGF4aXN9OiBzY3JvbGw7XHJcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XHJcbn1cclxuXHJcbi8vVFJBTlNJVElPTlxyXG5AbWl4aW4gdHJhbnNpdGlvbiggJHRyYW5zaXRpb24sICRoYXJkd2FyZS1hY2NlbGVyYXRlOiB0cnVlICl7XHJcbiAgICBAZWFjaCAkcHJlZml4IGluICRwcmVmaXhlc3tcclxuICAgICAgICAjeyRwcmVmaXh9LXRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xyXG4gICAgfVxyXG4gICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XHJcblxyXG4gICAgQGlmICRoYXJkd2FyZS1hY2NlbGVyYXRle1xyXG4gICAgICAgIEBleHRlbmQgJWhhO1xyXG4gICAgfVxyXG59XHJcblxyXG4vL0JPWCBTSVpJTkdcclxuQG1peGluIGJveC1zaXppbmcoJHR5cGUpe1xyXG4gICAgLy8gQGVhY2ggJHByZWZpeCBpbiAkcHJlZml4ZXN7XHJcbiAgICAvLyAgICAgI3skcHJlZml4fS1ib3gtc2l6aW5nOiAkdHlwZTtcclxuICAgIC8vIH1cclxuICAgIGJveC1zaXppbmc6ICR0eXBlO1xyXG59XHJcblxyXG5cclxuLy9BTklNQVRFXHJcbkBtaXhpbiBhbmltYXRlKCR4OiBhbGwgMjAwbXMpe1xyXG4gICAgQGlmKCR4KXtcclxuICAgICAgICB0cmFuc2l0aW9uOiAkeDtcclxuICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XHJcbiAgICB9XHJcbiAgICBAZWxzZSBpZigkeCA9PSBudWxsKXtcclxuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMjAwbXMgZWFzZS1pbi1vdXQ7XHJcbiAgICB9XHJcbiAgICAvLyAtd2Via2l0LXRyYW5zaXRpb246ICR4O1xyXG4gICAgLy8gICAgLW1vei10cmFuc2l0aW9uOiAkeDtcclxuICAgIC8vICAgICAtbXMtdHJhbnNpdGlvbjogJHg7XHJcbiAgICAvLyAgICAgIC1vLXRyYW5zaXRpb246ICR4O1xyXG59XHJcblxyXG5cclxuLy9GTFVJRCBGT05UXHJcbi8vIGV4YW1wbGUgdXNlIGgxIHsgQGluY2x1ZGUgZmx1aWQtdHlwZSgkbWluX3dpZHRoLCAkbWF4X3dpZHRoLCAkbWluX2ZvbnQsICRtYXhfZm9udCk7IH1cclxuXHJcbkBmdW5jdGlvbiBzdHJpcC11bml0KCR2YWx1ZSkge1xyXG4gICAgQHJldHVybiAkdmFsdWUgLyAoJHZhbHVlICogMCArIDEpO1xyXG59XHJcblxyXG5AbWl4aW4gZmx1aWQtdHlwZSgkbWluLXZ3LCAkbWF4LXZ3LCAkbWluLWZvbnQtc2l6ZSwgJG1heC1mb250LXNpemUpIHtcclxuICAgICR1MTogdW5pdCgkbWluLXZ3KTtcclxuICAgICR1MjogdW5pdCgkbWF4LXZ3KTtcclxuICAgICR1MzogdW5pdCgkbWluLWZvbnQtc2l6ZSk7XHJcbiAgICAkdTQ6IHVuaXQoJG1heC1mb250LXNpemUpO1xyXG5cclxuICAgIEBpZiAkdTEgPT0gJHUyIGFuZCAkdTEgPT0gJHUzIGFuZCAkdTEgPT0gJHU0IHtcclxuICAgICAgICAmIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAkbWluLWZvbnQtc2l6ZTtcclxuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1pbi12dykge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKCN7JG1pbi1mb250LXNpemV9ICsgI3tzdHJpcC11bml0KCRtYXgtZm9udC1zaXplIC0gJG1pbi1mb250LXNpemUpfSAqICgoMTAwdncgLSAjeyRtaW4tdnd9KSAvICN7c3RyaXAtdW5pdCgkbWF4LXZ3IC0gJG1pbi12dyl9KSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1heC12dykge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAkbWF4LWZvbnQtc2l6ZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy8gPXRyYW5zaXRpb24oICR0cmFuc2l0aW9uLCAkaGFyZHdhcmUtYWNjZWxlcmF0ZTogdHJ1ZSApXHJcbi8vICAgQGVhY2ggJHByZWZpeCBpbiAkcHJlZml4ZXNcclxuLy8gICAgICN7JHByZWZpeH0tdHJhbnNpdGlvbjogdW5xdW90ZSgkdHJhbnNpdGlvbilcclxuLy8gICB0cmFuc2l0aW9uOiB1bnF1b3RlKCR0cmFuc2l0aW9uKVxyXG4vLyAgIEBpZiAkaGFyZHdhcmUtYWNjZWxlcmF0ZVxyXG4vLyAgICAgQGV4dGVuZCAlaGFcclxuXHJcbi8vID10cmFuc2Zvcm0oICRhcmd1bWVudHMuLi4gKVxyXG4vLyAgIEBlYWNoICRwcmVmaXggaW4gJHByZWZpeGVzXHJcbi8vICAgICAjeyRwcmVmaXh9LXRyYW5zZm9ybTogJGFyZ3VtZW50c1xyXG4vLyAgIHRyYW5zZm9ybTogJGFyZ3VtZW50c1xyXG5cclxuLy8gPWZpbHRlciggJGFyZ3VtZW50cy4uLiApXHJcbi8vICAgQGVhY2ggJHByZWZpeCBpbiAkcHJlZml4ZXNcclxuLy8gICAgICN7JHByZWZpeH0tZmlsdGVyOiAkYXJndW1lbnRzXHJcbi8vICAgZmlsdGVyOiAkYXJndW1lbnRzXHJcblxyXG4vLyA9Y2lyY2xlKCAkcmFkaXVzIClcclxuLy8gICBkaXNwbGF5OiBibG9ja1xyXG4vLyAgIHdpZHRoOiAkcmFkaXVzXHJcbi8vICAgaGVpZ2h0OiAkcmFkaXVzXHJcbi8vICAgYm9yZGVyLXJhZGl1czogJHJhZGl1c1xyXG5cclxuLy8gPXNxdWFyZSggJHNpemUgKVxyXG4vLyAgIHdpZHRoOiAkc2l6ZVxyXG4vLyAgIGhlaWdodDogJHNpemVcclxuXHJcbi8vID1kaWFtb25kKCAkc2l6ZSwgJGJhY2tncm91bmRDb2xvciApXHJcbi8vICAgK3NxdWFyZSggJHNpemUgKVxyXG4vLyAgICt0cmFuc2Zvcm0oIHJvdGF0ZSg0NWRlZykgKVxyXG4vLyAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kQ29sb3JcclxuXHJcbi8vID10cmlhbmdsZSggJHNpemUsICRkaXJlY3Rpb24sICRjb2xvciApXHJcbi8vICAgJGhhbGYtc2l6ZTogJHNpemUgLyAyXHJcbi8vICAgd2lkdGg6IDBcclxuLy8gICBoZWlnaHQ6IDBcclxuLy8gICBAaWYgJGRpcmVjdGlvbiA9PSBcInVwXCJcclxuLy8gICAgIGJvcmRlci1sZWZ0OiAkaGFsZi1zaXplIHNvbGlkIHRyYW5zcGFyZW50XHJcbi8vICAgICBib3JkZXItcmlnaHQ6ICRoYWxmLXNpemUgc29saWQgdHJhbnNwYXJlbnRcclxuLy8gICAgIGJvcmRlci1ib3R0b206ICRzaXplIHNvbGlkICRjb2xvclxyXG4vLyAgIEBpZiAkZGlyZWN0aW9uID09IFwiZG93blwiXHJcbi8vICAgICBib3JkZXItbGVmdDogJGhhbGYtc2l6ZSBzb2xpZCB0cmFuc3BhcmVudFxyXG4vLyAgICAgYm9yZGVyLXJpZ2h0OiAkaGFsZi1zaXplIHNvbGlkIHRyYW5zcGFyZW50XHJcbi8vICAgICBib3JkZXItdG9wOiAkc2l6ZSBzb2xpZCAkY29sb3JcclxuLy8gICBAaWYgJGRpcmVjdGlvbiA9PSBcImxlZnRcIlxyXG4vLyAgICAgYm9yZGVyLXRvcDogJGhhbGYtc2l6ZSBzb2xpZCB0cmFuc3BhcmVudFxyXG4vLyAgICAgYm9yZGVyLXJpZ2h0OiAkc2l6ZSBzb2xpZCAkY29sb3JcclxuLy8gICAgIGJvcmRlci1ib3R0b206ICRoYWxmLXNpemUgc29saWQgdHJhbnNwYXJlbnRcclxuLy8gICBAaWYgJGRpcmVjdGlvbiA9PSBcInJpZ2h0XCJcclxuLy8gICAgIGJvcmRlci10b3A6ICRoYWxmLXNpemUgc29saWQgdHJhbnNwYXJlbnRcclxuLy8gICAgIGJvcmRlci1sZWZ0OiAkc2l6ZSBzb2xpZCAkY29sb3JcclxuLy8gICAgIGJvcmRlci1ib3R0b206ICRoYWxmLXNpemUgc29saWQgdHJhbnNwYXJlbnRcclxuLy8gICBAaWYgJGRpcmVjdGlvbiA9PSBcInRvcGxlZnRcIlxyXG4vLyAgICAgYm9yZGVyLXRvcDogJHNpemUgc29saWQgJGNvbG9yXHJcbi8vICAgICBib3JkZXItcmlnaHQ6ICRzaXplIHNvbGlkIHRyYW5zcGFyZW50XHJcbi8vICAgQGlmICRkaXJlY3Rpb24gPT0gXCJ0b3ByaWdodFwiXHJcbi8vICAgICBib3JkZXItdG9wOiAkc2l6ZSBzb2xpZCAkY29sb3JcclxuLy8gICAgIGJvcmRlci1sZWZ0OiAkc2l6ZSBzb2xpZCB0cmFuc3BhcmVudFxyXG4vLyAgIEBpZiAkZGlyZWN0aW9uID09IFwiYm90dG9tcmlnaHRcIlxyXG4vLyAgICAgYm9yZGVyLWJvdHRvbTogJHNpemUgc29saWQgJGNvbG9yXHJcbi8vICAgICBib3JkZXItbGVmdDogJHNpemUgc29saWQgdHJhbnNwYXJlbnRcclxuLy8gICBAaWYgJGRpcmVjdGlvbiA9PSBcImJvdHRvbWxlZnRcIlxyXG4vLyAgICAgYm9yZGVyLWJvdHRvbTogJHNpemUgc29saWQgJGNvbG9yXHJcbi8vICAgICBib3JkZXItcmlnaHQ6ICRzaXplIHNvbGlkIHRyYW5zcGFyZW50XHJcblxyXG5cclxuLy8gPXJlc3BvbmQtdG8taW5jcmVtZW50YWwtcmFuZ2UoICRmcm9tLCAkdG8sICRpbmNyZW1lbnQsICRkaW1lbnNpb24gKVxyXG5cclxuLy8gICAkaW5jcmVtZW50LWZyb206ICRmcm9tXHJcbi8vICAgJGluY3JlbWVudC10bzogJGZyb20gKyAkaW5jcmVtZW50XHJcblxyXG4vLyAgIEB3aGlsZSAkaW5jcmVtZW50LXRvIDw9ICR0b1xyXG4vLyAgICAgJGluY3JlbWVudC1mcm9tLXB4OiAkaW5jcmVtZW50LWZyb20gKyBweFxyXG4vLyAgICAgJGluY3JlbWVudC10by1weDogJGluY3JlbWVudC10byArIHB4XHJcbi8vICAgICBAY29udGVudFxyXG4vLyAgICAgJGluY3JlbWVudC1mcm9tOiAkaW5jcmVtZW50LWZyb20gKyAkaW5jcmVtZW50XHJcbi8vICAgICAkaW5jcmVtZW50LXRvOiAkaW5jcmVtZW50LWZyb20gKyAkaW5jcmVtZW50XHJcblxyXG4vLyA9Zm9udC1mYWNlKCRuYW1lLCAkbG9jYWwsICR1cmwsICRmb3JtYXQpXHJcbi8vICAgQGZvbnQtZmFjZVxyXG4vLyAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbFxyXG4vLyAgICAgZm9udC1zdHlsZTogbm9ybWFsXHJcbi8vICAgICBmb250LWZhbWlseTogcXVvdGUoJG5hbWUpXHJcbi8vICAgICBzcmM6IGxvY2FsKHF1b3RlKCRsb2NhbCkpLCB1cmwoJHVybCkgZm9ybWF0KHF1b3RlKCRmb3JtYXQpKVxyXG5cclxuLy8gPWJveC1zaXppbmcoJHR5cGUpXHJcbi8vICAgQGVhY2ggJHByZWZpeCBpbiAkcHJlZml4ZXNcclxuLy8gICAgICN7JHByZWZpeH0tYm94LXNpemluZzogJHR5cGVcclxuLy8gICBib3gtc2l6aW5nOiAkdHlwZVxyXG5cclxuLy8gPXN0cmV0Y2goJG9mZnNldC10b3A6IDAsICRvZmZzZXQtcmlnaHQ6IDAsICRvZmZzZXQtYm90dG9tOiAwLCAkb2Zmc2V0LWxlZnQ6IDApXHJcbi8vICAgcG9zaXRpb246IGFic29sdXRlXHJcbi8vICAgQGlmICRvZmZzZXQtdG9wXHJcbi8vICAgICB0b3A6ICRvZmZzZXQtdG9wXHJcbi8vICAgQGlmICRvZmZzZXQtYm90dG9tXHJcbi8vICAgICBib3R0b206ICRvZmZzZXQtYm90dG9tXHJcbi8vICAgQGlmICRvZmZzZXQtbGVmdFxyXG4vLyAgICAgbGVmdDogJG9mZnNldC1sZWZ0XHJcbi8vICAgQGlmICRvZmZzZXQtcmlnaHRcclxuLy8gICAgIHJpZ2h0OiAkb2Zmc2V0LXJpZ2h0XHJcbiIsIi8qKlxyXG4gKiBQTEFDRUhPTERFUlNcclxuICovXHJcblxyXG4lY2xpY2thYmxle1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG4laXJ7XHJcbiAgICB0ZXh0LWluZGVudDogMTAwJTtcclxuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4laGF7XHJcbiAgICBAZWFjaCAkcHJlZml4IGluICRwcmVmaXhlc3tcclxuICAgICAgI3skcHJlZml4fS10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCAwLCAwLCAwICk7XHJcbiAgICB9XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCAwLCAwLCAwICk7XHJcbn1cclxuXHJcbiVuby1tYXJnaW4tcGFkZGluZ3tcclxuICBtYXJnaW46IDA7XHJcbiAgcGFkZGluZzogMDtcclxufVxyXG5cclxuJWRpc2FibGUtc2VsZWN0aW9ue1xyXG4gICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcclxuICAgIC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTtcclxuICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcclxufVxyXG5cclxuJWhvcml6b250YWwtbGlzdHtcclxuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xyXG4gICAgbGl7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIH1cclxufVxyXG5cclxuJXNjcm9sbGFibGV7XHJcbiAgICBvdmVyZmxvdy15OiBzY3JvbGw7XHJcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XHJcbn0iLCIvKipcclxuICogRlVOQ1RJT05TXHJcbiAqL1xyXG5cclxuJGZvbnQtYmFzZTogMTY7IC8vIHB4XHJcblxyXG5AZnVuY3Rpb24gcmVtKCR0YXJnZXQ6IDE2KXtcclxuICAgIEByZXR1cm4gdW5xdW90ZSgkdGFyZ2V0IC8gJGZvbnQtYmFzZSArIFwicmVtXCIpO1xyXG59XHJcblxyXG5AZnVuY3Rpb24gbmVhcmVzdC1tdWx0aXBsZS1mbG9vciggJG51bSwgJG11bHRpcGxlICl7XHJcbiAgICBAcmV0dXJuIGZsb29yKCAoICRudW0gLyAkbXVsdGlwbGUgKSApICogJG11bHRpcGxlO1xyXG59XHJcblxyXG5AZnVuY3Rpb24gbmVhcmVzdC1tdWx0aXBsZS1jZWlsKCAkbnVtLCAkbXVsdGlwbGUgKXtcclxuICAgIEByZXR1cm4gY2VpbCggKCAkbnVtIC8gJG11bHRpcGxlICkgKSAqICRtdWx0aXBsZTtcclxufSIsIi8qKlxyXG4gKiBSRVNFVFxyXG4gKi9cclxuXHJcbmJvZHl7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcclxufVxyXG5cclxuQC1tcy12aWV3cG9ydHtcclxuICAgIHdpZHRoOiBkZXZpY2Utd2lkdGg7XHJcbn1cclxuQC1vLXZpZXdwb3J0e1xyXG4gICAgd2lkdGg6IGRldmljZS13aWR0aDtcclxufVxyXG5cclxuQHZpZXdwb3J0e1xyXG4gICAgd2lkdGg6IGRldmljZS13aWR0aDtcclxufVxyXG5cclxuYSxhYmJyLGFjcm9ueW0sYWRkcmVzcyxhcHBsZXQsYXJlYSxhcnRpY2xlLGFzaWRlLGF1ZGlvLFxyXG5iLGJhc2UsYmFzZWZvbnQsYmRpLGJkbyxiaWcsYmxvY2txdW90ZSxib2R5LGJyLGJ1dHRvbixcclxuY2FudmFzLGNhcHRpb24sY2VudGVyLGNpdGUsY29kZSxjb2wsY29sZ3JvdXAsY29tbWFuZCxcclxuZGF0YWxpc3QsZGQsZGVsLGRldGFpbHMsZGZuLGRpcixkaXYsZGwsZHQsZW0sZW1iZWQsXHJcbmZpZWxkc2V0LGZpZ2NhcHRpb24sZmlndXJlLGZvbnQsZm9vdGVyLGZvcm0sZnJhbWUsXHJcbmZyYW1lc2V0LGgxLGgyLGgzLGg0LGg1LGg2LGhlYWQsaGVhZGVyLGhncm91cCxocixcclxuaHRtbCxpLGlmcmFtZSxpbWcsaW5wdXQsaW5wdXRbdHlwZV0saW5zLGtiZCxrZXlnZW4sbGFiZWwsbGVnZW5kLFxyXG5saSxsaW5rLG1hcCxtYXJrLG1lbnUsbWV0YSxtZXRlcixuYXYsbm9mcmFtZXMsbm9zY3JpcHQsXHJcbm9iamVjdCxvbCxvcHRncm91cCxvcHRpb24sb3V0cHV0LHAscGFyYW0scHJlLHByb2dyZXNzLFxyXG5xLHJwLHJ0LHJ1YnkscyxzYW1wLHNjcmlwdCxzZWN0aW9uLHNlbGVjdCxzbWFsbCxzb3VyY2UsXHJcbnNwYW4sc3RyaWtlLHN0cm9uZyxzdHlsZSxzdWIsc3VtbWFyeSxzdXAsdGFibGUsdGJvZHksXHJcbnRkLHRleHRhcmVhLHRmb290LHRoLHRoZWFkLHRpbWUsdGl0bGUsdHIsdHJhY2ssdHQsdSxcclxudWwsdmFyLHZpZGVvLHdicntcclxuICAgIEBpbmNsdWRlIGJveC1zaXppbmcoIGJvcmRlci1ib3ggKTtcclxuICAgIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcclxuICAgIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSggYmxhY2ssIDAgKTtcclxufVxyXG5cclxuYXtcclxuICAgIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIGNvbG9yOmluaGVyaXQ7XHJcbn1cclxuXHJcbi8vIGgxeyBmb250LXNpemU6IDMycHg7IH1cclxuXHJcbi8vIGgyeyBmb250LXNpemU6IDI0cHg7IH1cclxuXHJcbi8vIGgzeyBmb250LXNpemU6IDE4cHg7IH1cclxuXHJcbi8vIGg0eyBmb250LXNpemU6IDE2cHg7IH1cclxuXHJcbi8vIGg1eyBmb250LXNpemU6IDEzcHg7IH1cclxuXHJcbi8vIGg2eyBmb250LXNpemU6IDEwcHg7IH1cclxuXHJcbmgxLFxyXG5oMixcclxuaDMsXHJcbmg0LFxyXG5oNSxcclxuaDYsXHJcbmVtLFxyXG5zdHJvbmd7XHJcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG59XHJcblxyXG5oMSxcclxuaDIsXHJcbmgzLFxyXG5oNCxcclxuaDUsXHJcbmg2LFxyXG5wLFxyXG5vbCxcclxudWwsXHJcbmRsLFxyXG5kdCxcclxuZGQsXHJcbmJsb2NrcXVvdGUsXHJcbmZpZ3VyZSxcclxuYm9keXtcclxuICAgIEBleHRlbmQgJW5vLW1hcmdpbi1wYWRkaW5nO1xyXG4gICAgLy93aWR0aDogMTAwJTtcclxufVxyXG5cclxudWwsXHJcbm9se1xyXG4gICAgbGlzdC1zdHlsZTogbm9uZTtcclxufVxyXG5cclxuaW1ne1xyXG4gICAgLyp3aWR0aDogMTAwJTsqL1xyXG4gICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbml7IGZvbnQtc3R5bGU6IG5vcm1hbDsgfVxyXG5cclxuLy8gcmVtb3ZlIGJ1dHRvbiBkZWZhdWx0IHN0eWxlc1xyXG5idXR0b257XHJcbiAgICBmb250LXNpemU6IDEwMCU7XHJcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDtcclxuICAgIGJvcmRlcjogMDtcclxuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIGNvbG9yOiBpbmhlcml0O1xyXG4gICAgb3V0bGluZTogbm9uZTtcclxufVxyXG5cclxuaWZyYW1le1xyXG4gICAgbWF4LXdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG5cclxuc2VsZWN0OjotbXMtZXhwYW5kIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuIiwiLyoqXHJcbiAqIFRIRU1FXHJcbiAqXHJcbiAqIEZvciBiYXNpYyBzaXRlcyB0aGlzIHNob3VsZCBzaW1wbHkgY29udGFpbiBjb2xvdXIgdmFyaWFibGVzLlxyXG4gKiBJZiBhIHByb3BlciB0aGVtZSBpcyB0byBiZSBhcHBsaWVkIHRoaXMgZmlsZSBzaG91bGQgc2ltcGx5XHJcbiAqIGltcG9ydCB0aGUgdGhlbWUgZmlsZSBmb3IgZWFjaCBjb21wb25lbnQgd2hpY2ggc2hvdWxkIGJlXHJcbiAqIGNvbnRhaW5lZCB3aXRoaW4gYSB0aGVtZSBmb2xkZXIuXHJcbiAqL1xyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIEJSQU5EIENPTE9VUlNcclxuLy8tLS0tLS0tLS0tLS0tLS0tXHJcbiRicmFuZC1wdXJwbGU6ICM3QTFCNzI7XHJcbiRicmFuZC1waW5rOiAjYzkyOGIyO1xyXG4kYnJhbmQtYmxhY2s6ICMxRTAwMjg7XHJcbiRicmFuZC1ncmV5OiAjOGU4MDkzO1xyXG5cclxuJGJyYW5kLXllbGxvdzogI0Y3RTMxMzsgLy90aGlzIGlzIGEgcGxhY2Vob2xkZXIgLSBubyB5ZWxsb3cgZ2l2ZW4gb3IgY3VycmVudGx5IHVzZWQuXHJcbiRicmFuZC1ibHVlOiAkYnJhbmQtcHVycGxlOyAvLyBCUkFORCBCTFVFIE1BUFBFRCBUTyBCUkFORCBQVVJQTEVcclxuJGJyYW5kLWxpZ2h0LWJsdWU6ICRicmFuZC1waW5rOyAvLyBCUkFORCBMSUdIVCBCTFVFIE1BUFBFRCBUTyBCUkFORCBQSU5LXHJcbiRicmFuZC1ncmVlbjogIzUwYWQ0NTtcclxuJGJyYW5kLWJyaWdodC1ncmVlbjogIzlmY2MzZjtcclxuJGJyYW5kLWRhcmstZ3JlZW46IGdyZWVuO1xyXG4kYnJhbmQtcmVkOiAjZWI1MzNiO1xyXG5cclxuJGJyYW5kLWNyZW1lOiByZ2IoMjU1LDI0NSwyMTQpO1xyXG4kYnJhbmQtc2lsdmVyLWZveDogIzE5MTgxYTtcclxuJGJyYW5kLWZsYW1pbmdvOiAjZDI1YjVlO1xyXG5cclxuJGZvcm0taW5wdXQtYm9yZGVyOiAjZGFjMGQ4O1xyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gU0VNQU5USUMgQ09MT1JTXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiRibGFjazogJGJyYW5kLWJsYWNrO1xyXG4kZGFyay1nbGFzczogcmdiYSgkYmxhY2ssIDAuOCk7XHJcbiRncmV5OiAkYnJhbmQtYmxhY2s7XHJcbiRsaWdodC1wdXJwbGUgOiAjZmFlNmZhO1xyXG4kbGlnaHQtZ3JleTogI2I3YjdiNztcclxuJHBsYWNlaG9sZDogI2I3YjdiNztcclxuJHdoaXRlOiB3aGl0ZTtcclxuXHJcbiR0d2l0dGVyLWJsdWU6ICM3ZGI2ZGY7XHJcbiRmYWNlYm9vay1ibHVlOiAjM2I1OTk4O1xyXG4kcGF5cGFsLWJsdWU6ICMwMDliZGQ7XHJcbiRwYXlwYWwtZGFyay1ibHVlOiAjMDAzMzg2O1xyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIENPTE9VUiBNQVBcclxuLy8tLS0tLS0tLS0tLS0tLS0tXHJcbiRjb2xvcnMtbWFwOihcclxuICAgIHByaW1hcnk6ICRicmFuZC1wdXJwbGUsXHJcbiAgICBzZWNvbmRhcnk6ICRicmFuZC1ibHVlLFxyXG4gICAgb3JhbmdlOiAkYnJhbmQtcHVycGxlLCAvLyBZRUxMT1cgTUFQUEVEIFRPIFBVUlBMRVxyXG4gICAgYmx1ZTogJGJyYW5kLXBpbmssIC8vIEJMVUUgTUFQUEVEIFRPIFBJTktcclxuICAgIGxpZ2h0LWJsdWU6ICRicmFuZC1saWdodC1ibHVlLFxyXG4gICAgZ3JlZW46ICRicmFuZC1wdXJwbGUsXHJcbiAgICBkYXJrLWdyZWVuOiAkYnJhbmQtcHVycGxlLFxyXG4gICAgYnJpZ2h0LWdyZWVuOiAkYnJhbmQtYnJpZ2h0LWdyZWVuLFxyXG4gICAgeWVsbG93OiAkYnJhbmQteWVsbG93LFxyXG4gICAgcmVkOiAkYnJhbmQtcGluayxcclxuICAgIHB1cnBsZTogJGJyYW5kLXB1cnBsZSxcclxuICAgIGdyZXk6ICRicmFuZC1wdXJwbGUsXHJcbiAgICBtaWQtZ3JleTogJGxpZ2h0LXB1cnBsZSwgLy8gTUlEIEdSRVkgTUFQUEVEIFRPIExJR0hUIFBVUlBMRVxyXG4gICAgbGlnaHQtZ3JleTogJGxpZ2h0LXB1cnBsZSwgLy8gTElHSFQgR1JFWSBNQVBQRUQgVE8gTElHSFQgUFVSUExFXHJcbiAgICBicmFuZC1ibGFjazogJGJsYWNrLFxyXG4gICAgbGlnaHQtcmVkOiAkbGlnaHQtcHVycGxlLFxyXG4gICAgd2hpdGU6ICR3aGl0ZSxcclxuICAgIHR3aXR0ZXI6ICR0d2l0dGVyLWJsdWUsXHJcbiAgICBmYWNlYm9vazogJGZhY2Vib29rLWJsdWUsXHJcbiAgICB0aW50OiByZ2JhKCRibGFjaywgMC41KSxcclxuICAgIGNyZW1lOiAkYnJhbmQtY3JlbWUsXHJcbiAgICBzaWx2ZXItZm94OiAkYnJhbmQtc2lsdmVyLWZveCxcclxuICAgIGZsYW1pbmdvOiAkYnJhbmQtZmxhbWluZ28sXHJcblxyXG4pO1xyXG5cclxuXHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLVxyXG4vLyBUSEVNRSBDT05GSUdcclxuLy8tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi8vQlVUVE9OU1xyXG4kYnRuLXByaW1hcnktY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcbiRidG4tcHJpbWFyeS1oaWdobGlnaHQtY29sb3I6ICRicmFuZC1ibHVlO1xyXG4kYnRuLXNlY29uZGFyeS1jb2xvcjogJGJyYW5kLWJsdWU7XHJcbiRidG4tc2Vjb25kYXJ5LWhpZ2hsaWdodC1jb2xvcjogd2hpdGU7XHJcblxyXG4vL0hBTUJVUkdFUlxyXG4kaGFtYnVyZ2VyLWNvbG9yOiAkd2hpdGU7XHJcbiRoYW1idXJnZXItaG92ZXItY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcblxyXG4vL0xJU1QgU1RZTEVTXHJcbiRsaXN0LXN0eWxlLWNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG5cclxuLy9TVUJOQVZcclxuJHN1Ym5hdi1iYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LDAuOTUpO1xyXG4kc3VibmF2LWxpbmstY29sb3I6ICRicmFuZC1ibGFjaztcclxuXHJcbi8vU0lERUJBUlxyXG4kc2lkZWJhci1iYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4kc2lkZWJhci1saW5rLWNvbG9yOiAkYnJhbmQtYmx1ZTtcclxuXHJcbi8vVFlQRVxyXG4kaGVhZGluZy1mb250LWNvbG9yOiAkYnJhbmQtYmxhY2s7XHJcbiRpbWFnZS1jYXB0aW9uLWNvbG9yOiAkYnJhbmQtYmxhY2s7XHJcbiRsaW5rLWNvbG9yOiAkYnJhbmQtcGluaztcclxuJGxpbmstaG92ZXItY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcbiRsaW5lLWhlaWdodDogMjVweDtcclxuXHJcbi8vQ1VTVE9NIFZBTFVFU1xyXG4kbmF2aWdhdGlvbi1icmVha3BvaW50OiAxMjAwcHg7IC8vMTA4MHB4O1xyXG4kZ2xvYmFsLWFuaW1hdGlvbi1zcGVlZDogMzAwbXM7XHJcblxyXG4uZHJvcC1zaGFkb3csXHJcbiVkcm9wLXNoYWRvd3tcclxuICAgIGJveC1zaGFkb3c6IDAgNnB4IDAgMCByZ2JhKCRibGFjaywgMC4wOCk7XHJcbn1cclxuXHJcblxyXG46OnNlbGVjdGlvbiB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgY29sb3I6IHdoaXRlO1xyXG59XHJcblxyXG46Oi1tb3otZWxlY3Rpb24ge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuICAgIGNvbG9yOiB3aGl0ZTtcclxufVxyXG5cclxuXHJcbiVob3Zlci1zaGFkb3ctbGlnaHQge1xyXG4gICAgYm94LXNoYWRvdzogbm9uZTtcclxuICAgIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMjAwbXMgZWFzZS1pbi1vdXQ7XHJcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICBib3gtc2hhZG93OiBub25lO1xyXG4gICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG4gICAgfVxyXG5cclxuICAgICYuaXMtc2VsZWN0ZWQsXHJcbiAgICAmLmlzLWFjdGl2ZSB7XHJcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcclxuICAgIH1cclxufVxyXG5cclxuJXNldC1zaGFkb3ctbGlnaHQge1xyXG4gICAgYm94LXNoYWRvdzogbm9uZTtcclxufVxyXG5cclxuOjotbW96LXNlbGVjdGlvbixcclxuOjpzZWxlY3Rpb24geyBiYWNrZ3JvdW5kOiAkYnJhbmQtcHVycGxlOyB9XHJcblxyXG4vLy0tLS0tLS0tLS0tLS1cclxuLy8gQU5JTUFUSU9OU1xyXG4vLy0tLS0tLS0tLS0tLS1cclxuXHJcbi8vLS0tLS0tLS0tLVxyXG4vLyBGQURFIElOXHJcbi8vLS0tLS0tLS0tLVxyXG4vLyBBIHNlbGVjdG9yIHRvIHNldCBhIHN0YXRlIGZvciBhIGZhZGUtaW4gb24gcGFnZSBsb2FkLlxyXG4vLyBJdCB1c2VzIGFuIGlzLXZpc2libGUgY2xhc3MgdG8gaW5pdGlhdGUgdGhlIGFuaW1hdGlvbi5cclxuXHJcbi5mYWRlLWlue1xyXG4gIG9wYWNpdHk6IDA7XHJcblxyXG4gICYuaXMtdmlzaWJsZXtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICBhbmltYXRpb246IEZBREVJTiAyNTBtcyBlYXNlLWluLW91dDtcclxuICB9XHJcbn1cclxuXHJcblxyXG4vLy0tLS0tLS0tLS0tLVxyXG4vLyBLRVlGUkFNRVNcclxuLy8tLS0tLS0tLS0tLS1cclxuXHJcbkBrZXlmcmFtZXMgRkFERUlOe1xyXG4gICAgMCUgICB7IG9wYWNpdHk6IDA7IH1cclxuICAgIDEwMCUgeyBvcGFjaXR5OiAxOyB9XHJcbn1cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tXHJcbi8vIFRIRU1FIENMQVNTRVNcclxuLy8tLS0tLS0tLS0tLS0tLVxyXG5cclxuW2NsYXNzKj0nYmctJ117XHJcbiAgICAvLyBvdmVyZmxvdzogaGlkZGVuO1xyXG5cclxuICAgICYuYmctaW1hZ2V7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIC8vIFByb3ZpZGUgYmFja2dyb3VuZCBjb2xvciBhcyBmYWxsYmFja1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcblxyXG4gICAgICAgICY6YmVmb3Jle1xyXG4gICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgQGluY2x1ZGUgY292ZXIoYWJzb2x1dGUpO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0O1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAwLjI7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IDA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICA+ICp7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgei1pbmRleDogMTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5iZy1pbWFnZS0tZGFya2Vye1xyXG4gICAgICAgICY6YmVmb3Jle1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAwLjc7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIFRFWFQgVEhFTUUgQ09MT1VSU1xyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkY29sb3JzLW1hcHtcclxuICAgICV0ZXh0LSN7XCJcIiArICRjb2xvcn17Y29sb3I6ICR2YWx1ZX1cclxuICAgIC50ZXh0LSN7XCJcIiArICRjb2xvcn17Y29sb3I6ICR2YWx1ZX1cclxufVxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gQkFDS0dST1VORCBUSEVNRSBDT0xPVVJTXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICRjb2xvcnMtbWFwe1xyXG4gICAgJWJnLSN7XCJcIiArICRjb2xvcn17YmFja2dyb3VuZC1jb2xvcjogJHZhbHVlfVxyXG4gICAgLmJnLSN7XCJcIiArICRjb2xvcn17YmFja2dyb3VuZC1jb2xvcjogJHZhbHVlfVxyXG59XHJcblxyXG4uYmctY3JlbWUtZ3JhZGllbnQge1xyXG4vKiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDI1NSwyNDUsMjE0LDEpIDAlLCByZ2JhKDIzOSwyMzAsMjE0LDEpIDEwMCUpOyovXHJcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDIzOSwyMzAsMjE0LDEpO1xyXG59XHJcbi5iZy1yZWQtc3Vuc2V0IHtcclxuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMjIxLDE1MiwxMDAsMSkgMCUsIHJnYmEoMjA1LDkyLDkzLDEpIDEwMCUpO1xyXG59XHJcbi5iZy1yZWQtc3Vuc2V0LXJldmVyc2Uge1xyXG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgyMDUsOTIsOTMsMSkgMCUsIHJnYmEoMjIxLDE1MiwxMDAsMSkgMTAwJSk7XHJcbn1cclxuLmJnLW1vcm5pbmctdGFuZ2VyaW5lIHtcclxuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMjIxLDE1MiwxMDAsMSkgMCUsIHJnYmEoMjM5LDIzMCwyMTQsIDEpIDEwMCUpO1xyXG59XHJcbi5iZy1zdG9uZSxcclxuJWJnLXN0b25lIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1wdXJwbGU7XHJcbiAgICAvKmJveC1zaGFkb3c6XHJcbiAgICAgICAgaW5zZXQgMjVweCAwIDUwcHggI2QxZDFkMSxcclxuICAgICAgICBpbnNldCAtMjVweCAwIDUwcHggI2QxZDFkMTsqL1xyXG59XHJcblxyXG4uYmctaW1hZ2V7XHJcbiAgICBAaW5jbHVkZSBiYWNrZ3JvdW5kKGNvdmVyKTtcclxufVxyXG5cclxuLmJnLWJ0biB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcblxyXG4gICAgJi5pcy1hY3RpdmUsXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtYmx1ZTtcclxuICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG4gICAgfVxyXG59XHJcbi8qIE1ha2UgYnVsbGV0cyB3aGl0ZSBvbiBwdXJwbGUgYmFja2dyb3VuZCAqL1xyXG4uYmctZ3JlZW4sIC5iZy1ibHVlIHtcclxuICAgIGE6bm90KC5idG4pIHtcclxuICAgICAgICBjb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7IFxyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgY29sb3I6ICRicmFuZC1wdXJwbGUgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgdWwge1xyXG4gICAgICAgIGxpIHtcclxuICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLmJnLWJsdWUge1xyXG4gICAgLm1lZGlhLS10aGVtZS1hbHBoYSAubWVkaWFfX2hlYWRpbmcsIC5tZWRpYS0tdGhlbWUtYWxwaGEgLm1lZGlhX19jb3B5IHtcclxuICAgICAgICBjb2xvcjogJGJyYW5kLXB1cnBsZSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG59XHJcbi5iZy1ncmV5IHtcclxuICAgIHVsIHtcclxuICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi5iZy1waW5rIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1waW5rICFpbXBvcnRhbnQ7XHJcbn1cclxuLy8gVGhpcyBpcyBhIGxpdHRsZSB0b28gc3BlY2lmaWMgYXMgaXQncyBzZXJ2aW5nIGp1c3RcclxuLy8gb25lIGNhc2UgcmlnaHQgbm93LiBMZWF2aW5nIGl0IGhlcmUgZm9yIHBvdGVudGlhbFxyXG4vLyBleHBhbnNpb24uXHJcbkBtaXhpbiBoZWFkaW5nLXVuZXJsaW5lIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDA7XHJcblxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgd2lkdGg6IDQwJTtcclxuICAgICAgICBtaW4td2lkdGg6IDE1MHB4O1xyXG4gICAgICAgIGhlaWdodDogNXB4O1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDM1cHg7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5hc2lkZXtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1wdXJwbGU7XHJcbiAgICBwYWRkaW5nOiAzMHB4IDMwcHggMDtcclxuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gRVhURVJOQUwgSUZSQU1FXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIEFkZGluZyBzb21lIHN1cHBvcnQgZm9yIGlmcmFtZXMgdGhhdFxyXG4vLyBoYXZlbid0IGxvYWRlZCB5ZXQuXHJcbi5leHRlcm5hbC1pZnJhbWUge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLWJsYWNrO1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9iYXNlNjQvU1ZHL3RhaWwtc3Bpbi5zdmcpO1xyXG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciB0b3AgNTBweDtcclxuICAgIGJhY2tncm91bmQtc2l6ZTogNTBweDtcclxuXHJcbiAgICBpZnJhbWUge1xyXG4gICAgICAgIHdpZHRoOiAxMDElO1xyXG4gICAgICAgIGhlaWdodDogMTAwMHB4O1xyXG4gICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICBvdmVyZmxvdzogc2Nyb2xsO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgfVxyXG59XHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBURU1QIFRFWFRcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS1cclxuQGtleWZyYW1lcyBISURFLVRFWFR7XHJcbiAgICAwJXsgb3BhY2l0eTogMSB9XHJcbiAgICA4MCV7IG9wYWNpdHk6IDEgfVxyXG4gICAgMTAwJXsgb3BhY2l0eTogMCB9XHJcbn1cclxuXHJcbi50ZXh0LXRlbXB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IEhJREUtVEVYVDtcclxuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogNXNcclxufVxyXG5cclxuXHJcbi5iYWNrZ3JvdW5kLWFsdGVybmF0ZXtcclxuICAgICY6bnRoLWNoaWxkKG9kZCl7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LXB1cnBsZTtcclxuICAgICAgICAuYnRuOmhvdmVyIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDokd2hpdGU7XHJcbiAgICAgICAgICAgIGNvbG9yOiRicmFuZC1waW5rO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuaHJ7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRsaWdodC1ncmV5O1xyXG4gICAgbWFyZ2luOiAzMHB4IDA7XHJcbn1cclxuI3Nwb25zb3JDYXRzIC5tZWRpYS0tbGluayB7XHJcbiAgICAvKmJhY2tncm91bmQ6ICRicmFuZC1wdXJwbGU7Ki9cclxuICAgIC8qY29sb3I6ICR3aGl0ZTsqL1xyXG5cclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICAvKmJhY2tncm91bmQ6ICRicmFuZC1wdXJwbGUgIWltcG9ydGFudDsqL1xyXG4gICAgfVxyXG5cclxuICAgIGEge1xyXG4gICAgICAgIGN1cnNvcjogcG9pbnRlciAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG59XHJcbiIsIi8qKlxyXG4gKiBUSEVNRVxyXG4gKiBJTExVU1RSQVRJT05cclxuICovXHJcblxyXG4vLyAkbmFtZTogdm9sdW50ZWVyO1xyXG5cclxuXHJcblxyXG4vLy0tLS0tLS0tLS0tXHJcbi8vIFZPTFVOVEVFUlxyXG4vLy0tLS0tLS0tLS0tXHJcblxyXG4vLyAuI3skbmFtZX0tdm9sdW50ZWVye1xyXG4vLyAgICAgLmhhaXJ7ZmlsbDojNzI2RjcwO31cclxuLy8gICAgIC5oZWFydHN7ZmlsbDojRjhCQTM3O31cclxuLy8gICAgIC5mYWNle2ZpbGw6I0ZGRkZGRjt9XHJcbi8vICAgICAuc2hpcnR7ZmlsbDojRDFEMUQxO31cclxuLy8gICAgIC5jYXRfaGFpcntmaWxsOiM3MjZGNzA7fVxyXG5cclxuLy8gICAgIDpob3ZlciB7XHJcbi8vICAgICAgICAgLmhhaXJ7ZmlsbDpyZWQ7fVxyXG4vLyAgICAgICAgIC5oZWFydHN7ZmlsbDojRjhCQTM3O31cclxuLy8gICAgICAgICAuZmFjZXtmaWxsOiNGRkZGRkY7fVxyXG4vLyAgICAgICAgIC5zaGlydHtmaWxsOiNEMUQxRDE7fVxyXG4vLyAgICAgICAgIC5jYXRfaGFpcntmaWxsOiM3MjZGNzA7fVxyXG4vLyAgICAgfVxyXG4vLyB9XHJcblxyXG4vLyAuaWxsdXN0cmF0aW9uLXZvbHVudGVlcjpob3ZlciAuaGFpcntcclxuLy8gICAgIGZpbGw6IHJlZDtcclxuLy8gfSIsIi8qIFRleHQgQ29sb3JzICovXHJcbi50ZXh0LXdoaXRlOm5vdCguc2l0ZS1iYW5uZXIpIHtcclxuICAgIGNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcclxuXHJcbiAgICBoMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcclxuICAgICAgICBjb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbi50ZXh0LWJyYW5kLWJsYWNrIHtcclxuICAgIGNvbG9yOiAkYnJhbmQtYmxhY2sgIWltcG9ydGFudDtcclxuXHJcbiAgICBoMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcclxuICAgICAgICBjb2xvcjogJGJyYW5kLWJsYWNrICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbi50ZXh0LWJyYW5kLXBpbmsge1xyXG4gICAgY29sb3I6ICRicmFuZC1waW5rICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XHJcbiAgICAgICAgY29sb3I6ICRicmFuZC1waW5rICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbi50ZXh0LWJyYW5kLXB1cnBsZSB7XHJcbiAgICBjb2xvcjogJGJyYW5kLXB1cnBsZSAhaW1wb3J0YW50O1xyXG5cclxuICAgIGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xyXG4gICAgICAgIGNvbG9yOiAkYnJhbmQtcHVycGxlICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbi50ZXh0LWxpZ2h0LXB1cnBsZSB7XHJcbiAgICBjb2xvcjogJGxpZ2h0LXB1cnBsZSAhaW1wb3J0YW50O1xyXG5cclxuICAgIGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xyXG4gICAgICAgIGNvbG9yOiAkbGlnaHQtcHVycGxlICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn1cclxuLyogQmFja2dyb3VuZHMgKi9cclxuLmJnLXdoaXRlIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xyXG5cclxuICAgIGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xyXG4gICAgICAgIGNvbG9yOiAkYnJhbmQtcHVycGxlICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5iZy1icmFuZC1ibGFjayB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtYmxhY2sgIWltcG9ydGFudDtcclxufVxyXG5cclxuLmJnLWJyYW5kLXBpbmsge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXBpbmsgIWltcG9ydGFudDtcclxuXHJcbiAgICBoMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcclxuICAgICAgICBjb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgYSB7XHJcbiAgICAgICAgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgY29sb3I6ICRicmFuZC1wdXJwbGUgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmJ0bi0tc2Vjb25kYXJ5IHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcclxuICAgICAgICBjb2xvcjogJGJyYW5kLXBpbmsgIWltcG9ydGFudDtcclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1wdXJwbGUgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgY29sb3I6ICRicmFuZC1waW5rICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYudGV4dC13aGl0ZSB7XHJcbiAgICAgICAgbGk6YmVmb3JlIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYudGV4dC1icmFuZC1ibGFjayB7XHJcbiAgICAgICAgbGk6YmVmb3JlIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LXB1cnBsZSAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLnRleHQtYnJhbmQtcHVycGxlIHtcclxuICAgICAgICBsaTpiZWZvcmUge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtcHVycGxlICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYudGV4dC1saWdodC1wdXJwbGUge1xyXG4gICAgICAgIGxpOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1wdXJwbGUgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5iZy1icmFuZC1wdXJwbGUge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXB1cnBsZSAhaW1wb3J0YW50O1xyXG5cclxuICAgIGE6aG92ZXIge1xyXG4gICAgICAgIGNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcclxuICAgIH1cclxuXHJcbiAgICBoMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcclxuICAgICAgICBjb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgLmJ0biB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgY29sb3I6ICRicmFuZC1wdXJwbGUgIWltcG9ydGFudDtcclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1wdXJwbGUgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgY29sb3I6ICRicmFuZC1wdXJwbGUgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmJ0bi0tc2Vjb25kYXJ5IHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcGluayAhaW1wb3J0YW50O1xyXG4gICAgICAgIGNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcclxuICAgIH1cclxuXHJcbiAgICAmLnRleHQtd2hpdGUge1xyXG4gICAgICAgIGxpOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLnRleHQtYnJhbmQtYmxhY2sge1xyXG4gICAgICAgIGxpOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1wdXJwbGUgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi50ZXh0LWJyYW5kLXBpbmsge1xyXG4gICAgICAgIGxpOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1wdXJwbGUgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi50ZXh0LWxpZ2h0LXB1cnBsZSB7XHJcbiAgICAgICAgbGk6YmVmb3JlIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LXB1cnBsZSAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmJnLWxpZ2h0LXB1cnBsZSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtcHVycGxlICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XHJcbiAgICAgICAgY29sb3I6ICRicmFuZC1wdXJwbGUgIWltcG9ydGFudDtcclxuICAgIH1cclxuXHJcbiAgICAuYnRuIHtcclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkYnJhbmQtcGluayAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuYnRuLS1zZWNvbmRhcnkge1xyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLy8gQURCT1hFU1xyXG4uYnJhbmRpbmctcHVycGxlIHtcclxuXHJcbiAgICBoMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcclxuICAgICAgICBjb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXB1cnBsZSAhaW1wb3J0YW50O1xyXG4gICAgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xyXG5cclxuICAgIC5tZWRpYV9faW1hZ2Uge1xyXG4gICAgICAgIGJvcmRlcjogMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5icmFuZGluZy1waW5rIHtcclxuXHJcbiAgICBoMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcclxuICAgICAgICBjb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXBpbmsgIWltcG9ydGFudDtcclxuICAgIGNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcclxuXHJcbiAgICAubWVkaWFfX2ltYWdlIHtcclxuICAgICAgICBib3JkZXI6IDBweCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG59XHJcblxyXG4ubGlnaHQtcHVycGxlIHtcclxuXHJcbiAgICBoMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcclxuICAgICAgICBjb2xvcjogJGJyYW5kLXB1cnBsZSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1wdXJwbGUgIWltcG9ydGFudDtcclxuICAgIGNvbG9yOiAkYnJhbmQtcHVycGxlICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgLm1lZGlhX19pbWFnZSB7XHJcbiAgICAgICAgYm9yZGVyOiAwcHggIWltcG9ydGFudDtcclxuICAgIH1cclxufVxyXG5cclxuLm5vLXRoZW1lIHtcclxuXHJcbiAgICBoMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcclxuICAgICAgICBjb2xvcjogJGJyYW5kLXB1cnBsZSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xyXG4gICAgY29sb3I6ICRicmFuZC1wdXJwbGUgIWltcG9ydGFudDtcclxuXHJcbiAgICAubWVkaWFfX2ltYWdlIHtcclxuICAgICAgICBib3JkZXI6IDBweCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG59XHJcbi8vIEZBUSdzXHJcbi5mYXEtYnJhbmRpbmcge1xyXG4gICAgcGFkZGluZzogMTBweCAxNnB4O1xyXG4gICAgZm9udC1mYW1pbHk6IEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XHJcbn1cclxuXHJcbi5iZy13aGl0ZSB7XHJcbiAgICAuZmFxLWJyYW5kaW5nIHtcclxuICAgICAgICBjb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5iZy1icmFuZC1wdXJwbGUge1xyXG4gICAgLmZhcS1icmFuZGluZyB7XHJcbiAgICAgICAgY29sb3I6ICRicmFuZC1wdXJwbGUgIWltcG9ydGFudDtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtcHVycGxlICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgLmZhcS1hIHtcclxuICAgICAgICBjb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5iZy1icmFuZC1waW5rIHtcclxuICAgIC5mYXEtYSB7XHJcbiAgICAgICAgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG59XHJcblxyXG4uYmctbGlnaHQtcHVycGxlIHtcclxuICAgIC5mYXEtYnJhbmRpbmcge1xyXG4gICAgICAgIGNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcclxuICAgIH1cclxufVxyXG4vLyBET1dOTE9BRCBHUklEXHJcbi5icmFuZGluZy1kb3dubG9hZC1ncmlkIHtcclxuICAgIC5tZWRpYV9fY2FwdGlvbiB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgwLDAsMCwwLjI1KTtcclxuICAgIH1cclxuXHJcbiAgICBoMi50cy0zIHtcclxuICAgICAgICBjb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn1cclxuIiwiQGZvbnQtZmFjZSB7XHJcbiAgICBmb250LWZhbWlseTogJ21ldHJpZnktbGlnaHQnO1xyXG4gICAgc3JjOiB1cmwoJ2ZvbnRzL25hbm1ldHJpZnljLVN0ZC1saWdodC53b2ZmMicpIGZvcm1hdCgnd29mZjInKSwgLyogU3VwZXIgTW9kZXJuIEJyb3dzZXJzICovXHJcbiAgICB1cmwoJ2ZvbnRzL25hbm1ldHJpZnljLVN0ZC1saWdodC53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7IC8qIFByZXR0eSBNb2Rlcm4gQnJvd3NlcnMgKi9cclxuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbn1cclxuXHJcbkBmb250LWZhY2Uge1xyXG4gICAgZm9udC1mYW1pbHk6ICdtZXRyaWZ5LXJlZ3VsYXInO1xyXG4gICAgc3JjOiB1cmwoJ2ZvbnRzL25hbm1ldHJpZnljLVN0ZC1yZWcud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksIC8qIFN1cGVyIE1vZGVybiBCcm93c2VycyAqL1xyXG4gICAgdXJsKCdmb250cy9uYW5tZXRyaWZ5Yy1TdGQtcmVnLndvZmYnKSBmb3JtYXQoJ3dvZmYnKTsgLyogUHJldHR5IE1vZGVybiBCcm93c2VycyAqL1xyXG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxufVxyXG5cclxuQGZvbnQtZmFjZSB7XHJcbiAgICBmb250LWZhbWlseTogJ21ldHJpZnktYm9sZCc7XHJcbiAgICBzcmM6IHVybCgnZm9udHMvbmFubWV0cmlmeWMtU3RkLWJsZC53b2ZmMicpIGZvcm1hdCgnd29mZjInKSwgLyogU3VwZXIgTW9kZXJuIEJyb3dzZXJzICovXHJcbiAgICB1cmwoJ2ZvbnRzL25hbm1ldHJpZnljLVN0ZC1ibGQud29mZicpIGZvcm1hdCgnd29mZicpOyAvKiBQcmV0dHkgTW9kZXJuIEJyb3dzZXJzICovXHJcbiAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG59XHJcbkBmb250LWZhY2Uge1xyXG4gICAgZm9udC1mYW1pbHk6ICdjYXRzLWhlYWRsaW5lJztcclxuICAgIHNyYzogdXJsKCdmb250cy9DYXRzSGVhZGxpbmUtUmVndWxhci53b2ZmMicpIGZvcm1hdCgnd29mZjInKSwgLyogU3VwZXIgTW9kZXJuIEJyb3dzZXJzICovXHJcbiAgICB1cmwoJ2ZvbnRzL0NhdHNIZWFkbGluZS1SZWd1bGFyLndvZmYnKSBmb3JtYXQoJ3dvZmYnKTsgLyogUHJldHR5IE1vZGVybiBCcm93c2VycyAqL1xyXG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxufVxyXG4iLCIvKiBUWVBFU1RZTEVTXHJcbiAqIEJBU0VcclxuICogVGhlc2UgYXJlIHRoZSBiYXNlIHR5cGVzdHlsZXMuXHJcbiAqL1xyXG5cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBUWVBFU1RZTEUgQ09ORklHXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJGNhdHM6ICdtZXRyaWZ5LWxpZ2h0JywgQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcclxuJGNhdHMtbWVkOiAnbWV0cmlmeS1yZWd1bGFyJywgQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcclxuJGNhdHMtYm9sZDogJ21ldHJpZnktYm9sZCcsIEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XHJcbiRjYXRzLWhlYWRsaW5lOiAnY2F0cy1oZWFkbGluZScsIEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XHJcblxyXG4kaGVhZGluZy1mb250OiAkY2F0cztcclxuJGhlYWRpbmctbWVkLWZvbnQ6ICRjYXRzLW1lZDtcclxuJGhlYWRpbmctYm9sZC1mb250OiAkY2F0cy1ib2xkO1xyXG5cclxuJHNhbnM6IEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XHJcbiRzZXJpZjogc2VyaWY7XHJcblxyXG4kYnRuLWZvbnQ6ICRzYW5zO1xyXG5cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBHTE9CQUwgVFlQRVNUWUxFU1xyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbkBtaXhpbiBib2R5LWNvcHl7XHJcbiAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0O1xyXG5cclxuICAgIHNtYWxse1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDtcclxuICAgIH1cclxuXHJcbiAgICBzdHJvbmd7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcblxyXG4gICAgICAgIGVte1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBlbXtcclxuICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XHJcblxyXG4gICAgICAgIHN0cm9uZ3tcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0tYW5kLXVwKXtcclxuICAgICAgICBmb250LXNpemU6IDE3cHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodDtcclxuICAgIH1cclxufVxyXG5cclxuYm9keXtcclxuICAgIGZvbnQtZmFtaWx5OiAgJHNhbnM7XHJcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgY29sb3I6ICRicmFuZC1ibGFjaztcclxufVxyXG5cclxucCxcclxubGksXHJcbmxhYmVsIHtcclxuICAgIEBpbmNsdWRlIGJvZHktY29weTtcclxuXHJcbiAgICBhIHtcclxuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgICBjb2xvcjogJGxpbmstY29sb3I7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDVweDtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuICAgICAgICBAaW5jbHVkZSBhbmltYXRlKGNvbG9yIDEwMG1zKTtcclxuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uaW50cm97XHJcbiAgICBmb250LWZhbWlseTogJGNhdHMtYm9sZDtcclxuICAgIGZvbnQtc2l6ZTogMTEwJTtcclxufVxyXG5cclxuLnRleHQtY2VudGVyLFxyXG4uY2VudHJlLWNvcHl7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbn1cclxuXHJcbi5mb250LWZhY2UtYmFzaWMge1xyXG4gICAgZm9udC1mYW1pbHk6ICRzYW5zICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi51cHtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbn1cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBOQVZJR0FUSU9OIExJTktTXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5AbWl4aW4gbWFpbi1uYXZpZ2F0aW9uLXN0eWxlIHtcclxuICAgIGNvbG9yOiBpbmhlcml0O1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgZm9udC1mYW1pbHk6ICRoZWFkaW5nLWJvbGQtZm9udDtcclxuICAgIGZvbnQtc2l6ZTogMjBweDtcclxufVxyXG5cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBEQVRFXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5bY2xhc3MqPVwiZGF0ZVwiXXtcclxuICAgIEBleHRlbmQgJXRzLTk7XHJcblxyXG4gICAgJjpub3QoW2NsYXNzKj1cInRleHQtXCJdKXtcclxuICAgICAgICBjb2xvcjogJGJyYW5kLWJsYWNrO1xyXG4gICAgfVxyXG59XHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gSFJcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbmhye1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWdyZXk7XHJcbiAgICBoZWlnaHQ6IDFweDtcclxuICAgIG1hcmdpbjogJGxpbmUtaGVpZ2h0IDA7XHJcbn1cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBHSUZUQUlEXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5oNS5naWZ0YWlke1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMTJweDtcclxuICAgIGNvbG9yOiRicmFuZC1wdXJwbGU7XHJcbn1cclxuXHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gUkVHSU9OQUxcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi50cy1yZWdpb25hbHtcclxuICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgIGZvbnQtZmFtaWx5OiAkY2F0cy1tZWQ7XHJcbiAgICBsZXR0ZXItc3BhY2luZzogMC43cHg7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIGNvbG9yOiB3aGl0ZTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1yZWQ7XHJcbiAgICBwYWRkaW5nOiA1cHggMjBweDtcclxuICAgIHdpZHRoOiBhdXRvO1xyXG5cclxuICAgICY6YmVmb3Jle1xyXG4gICAgICAgIGNvbnRlbnQ6ICdSZWdpb25hbDogJztcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBMSU5LXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyAubGlua3t9XHJcblxyXG4ubGluay0taW5mbyB7XHJcbiAgICBjb2xvcjogJGJyYW5kLWxpZ2h0LWJsdWU7XHJcbiAgICBmb250LWZhbWlseTogJGNhdHMtbWVkO1xyXG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgY29sb3I6ICRicmFuZC1ibGFjaztcclxuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuXHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtYmxhY2s7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiAnaSc7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcclxuICAgICAgICBjb2xvcjogd2hpdGU7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLWxpZ2h0LWJsdWU7XHJcbiAgICAgICAgcGFkZGluZzogMnB4IDhweDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICAgICAgZm9udC1zaXplOiA4MCU7XHJcbiAgICB9XHJcbn1cclxuIiwiLyoqXHJcbiAqIFRZUEVTVFlMRVNcclxuICogTUFTVEVSIFNFVFxyXG4gKlxyXG4gKi9cclxuXHJcbi8vIE1haW50YWluaW5nIFN1YmhlYWQgUmVmZXJlbmNlcyBmb3IgYmFja3dhcmRzIGNvbXBhdGFiaWxpdHkuXHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLVxyXG4vLyBUWVBFU1RZTEUgLSAwXHJcbi8vLS0tLS0tLS0tLS0tLS0tXHJcbi50cy0wLFxyXG4ldHMtMHtcclxuICAgIGZvbnQtZmFtaWx5OiAkY2F0cy1oZWFkbGluZTtcclxuICAgIEBpbmNsdWRlIGZsdWlkLXR5cGUoMzIwcHgsIDEwMjRweCwgMjBweCwgNDZweCk7XHJcbiAgICBsaW5lLWhlaWdodDogMS4yO1xyXG59XHJcbi5iZy13aGl0ZSB7XHJcbiAgICAudHMtMCB7XHJcbiAgICAgICAgY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcbiAgICB9XHJcbn1cclxuLy8tLS0tLS0tLS0tLS0tLS1cclxuLy8gVFlQRVNUWUxFIC0gMVxyXG4vLy0tLS0tLS0tLS0tLS0tLVxyXG4uc3ViaGVhZC0xLFxyXG4udHMtMSxcclxuJXRzLTEge1xyXG4gICAgZm9udC1mYW1pbHk6ICRjYXRzLWhlYWRsaW5lO1xyXG4gICAgQGluY2x1ZGUgZmx1aWQtdHlwZSgzMjBweCwgMTAyNHB4LCAxOXB4LCA0NnB4KTtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XHJcbn1cclxuLmJnLXdoaXRlLCAuYmctbGlnaHQtZ3JleSB7XHJcbiAgICAuc3ViaGVhZC0xLFxyXG4gICAgLnRzLTEge1xyXG4gICAgICAgIGNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgfVxyXG59XHJcbi5iZy1ibHVlLCAuYmctb3JhbmdlIHtcclxuICAgIC5zdWJoZWFkLTEsXHJcbiAgICAudHMtMSB7XHJcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgIH1cclxufVxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS1cclxuLy8gVFlQRVNUWUxFIC0gMlxyXG4vLy0tLS0tLS0tLS0tLS0tLVxyXG4uc3ViaGVhZC0yLFxyXG4udHMtMixcclxuJXRzLTIge1xyXG4gICAgZm9udC1mYW1pbHk6ICRjYXRzLWhlYWRsaW5lO1xyXG4gICAgZm9udC1zaXplOiAzMXB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuMmVtO1xyXG4gICAgY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcbn1cclxuLmJnLXdoaXRlLCAuYmctbGlnaHQtZ3JleSB7XHJcbiAgICAuc3ViaGVhZC0yLFxyXG4gICAgLnRzLTIge1xyXG4gICAgICAgIGNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgfVxyXG59XHJcbi5iZy1ibHVlLCAuYmctb3JhbmdlIHtcclxuICAgIC5zdWJoZWFkLTIsXHJcbiAgICAudHMtMiB7XHJcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgIH1cclxufVxyXG4vLy0tLS0tLS0tLS0tLS0tLVxyXG4vLyBUWVBFU1RZTEUgLSAzXHJcbi8vLS0tLS0tLS0tLS0tLS0tXHJcbi5zdWJoZWFkLTMsXHJcbi50cy0zLFxyXG4ldHMtMyB7XHJcbiAgICBmb250LWZhbWlseTogJGNhdHMtaGVhZGxpbmU7XHJcbiAgICBmb250LXNpemU6IDI2cHg7XHJcbiAgICBsaW5lLWhlaWdodDogMjlweDtcclxuICAgIGNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG59XHJcbi5iZy13aGl0ZSwgLmJnLWxpZ2h0LWdyZXkge1xyXG4gICAgLnN1YmhlYWQtMyxcclxuICAgIC50cy0zIHtcclxuICAgICAgICBjb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuICAgIH1cclxufVxyXG4uYmctYmx1ZSwgLmJnLW9yYW5nZSwgLmJnLWxpZ2h0LWJsdWUge1xyXG4gICAgLnN1YmhlYWQtMyxcclxuICAgIC50cy0zIHtcclxuICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgfVxyXG59XHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLVxyXG4vLyBUWVBFU1RZTEUgLSA0XHJcbi8vLS0tLS0tLS0tLS0tLS0tXHJcbi5zdWJoZWFkLTQsXHJcbi50cy00LFxyXG4ldHMtNCB7XHJcbiAgICBmb250LWZhbWlseTogJGNhdHMtaGVhZGxpbmU7XHJcbiAgICBmb250LXNpemU6IDI2cHg7XHJcbiAgICAvKnRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7Ki9cclxufVxyXG4uYmctd2hpdGUsIC5iZy1saWdodC1ncmV5IHtcclxuICAgIC5zdWJoZWFkLTQsXHJcbiAgICAudHMtNCB7XHJcbiAgICAgICAgY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcbiAgICB9XHJcbn1cclxuLmJnLWJsdWUsIC5iZy1vcmFuZ2Uge1xyXG4gICAgLnN1YmhlYWQtNCxcclxuICAgIC50cy00IHtcclxuICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgfVxyXG59XHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLVxyXG4vLyBUWVBFU1RZTEUgLSA1XHJcbi8vLS0tLS0tLS0tLS0tLS0tXHJcbi5zdWJoZWFkLTUsXHJcbi50cy01LFxyXG4ldHMtNSB7XHJcbiAgICBmb250LWZhbWlseTogJGNhdHMtaGVhZGxpbmU7XHJcbiAgICBmb250LXNpemU6IDIzcHg7XHJcbiAgICBsaW5lLWhlaWdodDogMjlweDtcclxufVxyXG4uYmctd2hpdGUsIC5iZy1saWdodC1ncmV5IHtcclxuICAgIC5zdWJoZWFkLTUsXHJcbiAgICAudHMtNSB7XHJcbiAgICAgICAgY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcbiAgICB9XHJcbn1cclxuLmJnLWJsdWUsIC5iZy1vcmFuZ2Uge1xyXG4gICAgLnN1YmhlYWQtNSxcclxuICAgIC50cy01e1xyXG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tXHJcbi8vIFRZUEVTVFlMRSAtIDZcclxuLy8tLS0tLS0tLS0tLS0tLS1cclxuLnN1YmhlYWQtNixcclxuLnRzLTYsXHJcbiV0cy02e1xyXG4gICAgZm9udC1mYW1pbHk6ICRjYXRzO1xyXG4gICAgZm9udC1zaXplOiAyMXB4O1xyXG59XHJcbi5iZy13aGl0ZSwgLmJnLWxpZ2h0LWdyZXkge1xyXG4gICAgLnN1YmhlYWQtNixcclxuICAgIC50cy02IHtcclxuICAgICAgICBjb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuICAgIH1cclxufVxyXG4uYmctYmx1ZSwgLmJnLW9yYW5nZSB7XHJcbiAgICAuc3ViaGVhZC02LFxyXG4gICAgLnRzLTYge1xyXG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tXHJcbi8vIFRZUEVTVFlMRSAtIDdcclxuLy8tLS0tLS0tLS0tLS0tLS1cclxuLnRzLTcsXHJcbiV0cy03IHtcclxuICAgIGZvbnQtZmFtaWx5OiAkY2F0cy1ib2xkO1xyXG4gICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDI2cHg7XHJcbiAgICAvKmxldHRlci1zcGFjaW5nOiAwLjRweDsqL1xyXG4gICAgY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcbn1cclxuLmJnLXdoaXRlLCAuYmctbGlnaHQtZ3JleSB7XHJcbiAgICAudHMtNyB7XHJcbiAgICAgICAgY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcbiAgICB9XHJcbn1cclxuLmJnLWJsdWUsIC5iZy1vcmFuZ2Uge1xyXG4gICAgLnRzLTcge1xyXG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tXHJcbi8vIFRZUEVTVFlMRSAtIDhcclxuLy8tLS0tLS0tLS0tLS0tLS1cclxuLnRzLTgsXHJcbiV0cy04IHtcclxuICAgIGZvbnQtZmFtaWx5OiBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xyXG4gICAgZm9udC1zaXplOiAxN3B4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDI0cHg7XHJcbiAgICBsZXR0ZXItc3BhY2luZzogMC43cHg7XHJcbn1cclxuLmJnLXdoaXRlLCAuYmctbGlnaHQtZ3JleSB7XHJcbiAgICAudHMtOCB7XHJcbiAgICAgICAgY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcbiAgICB9XHJcbn1cclxuLmJnLWJsdWUsIC5iZy1vcmFuZ2Uge1xyXG4gICAgLnRzLTgge1xyXG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tXHJcbi8vIFRZUEVTVFlMRSAtIDlcclxuLy8tLS0tLS0tLS0tLS0tLS1cclxuLnRzLTksXHJcbiV0cy05eyBcclxuICAgIGZvbnQtZmFtaWx5OiAkY2F0cztcclxuICAgIGZvbnQtc2l6ZTogMTVweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xyXG59XHJcbi5iZy13aGl0ZSB7XHJcbiAgICAudHMtOSxcclxuICAgIC5iZy1saWdodC1ncmV5IHtcclxuICAgICAgICBjb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuICAgIH1cclxufVxyXG4uYmctYmx1ZSwgLmJnLW9yYW5nZSB7XHJcbiAgICAudHMtOSB7XHJcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgIH1cclxufVxyXG4udHMtMTB7XHJcbiAgICBmb250LWZhbWlseTogJGNhdHM7XHJcbiAgICBmb250LXdlaWdodDogYm9sZDtcclxufVxyXG4uYmctd2hpdGUsIC5iZy1saWdodC1ncmV5IHtcclxuICAgIC50cy0xMCB7XHJcbiAgICAgICAgY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcbiAgICB9XHJcbn1cclxuLmJnLWJsdWUsIC5iZy1vcmFuZ2Uge1xyXG4gICAgLnRzLTEwIHtcclxuICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgfVxyXG59XHJcblxyXG4uaW5oZXJpdC1jb2xvcntcclxuICAgIGNvbG9yOiBpbmhlcml0O1xyXG59XHJcblxyXG4udGV4dC1kZWNvcmF0aW9uLW5vbmV7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246bm9uZTtcclxufSIsIi8qKlxyXG4gKiBUWVBFU1RZTEVTXHJcbiAqIEhFQURFUlxyXG4gKiBUeXBlc3R5bGVzIGFzc2lnbmVkIHRvIGVsZW1lbnRzIGluc2lkZSB0aGUgSGVhZGVyLlxyXG4gKi9cclxuXHJcblxyXG5oZWFkZXJ7XHJcbiAgICBoMTpub3QoW2NsYXNzXSl7XHJcbiAgICAgICAgQGV4dGVuZCAldHMtMTtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIGgyOm5vdChbY2xhc3NdKXtcclxuICAgICAgICBAZXh0ZW5kICV0cy0xO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgaDM6bm90KFtjbGFzc10pe1xyXG4gICAgICAgIEBleHRlbmQgJXRzLTI7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgIH1cclxuXHJcbiAgICBoNDpub3QoW2NsYXNzXSl7XHJcbiAgICAgICAgQGV4dGVuZCAldHMtMztcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIGg1Om5vdChbY2xhc3NdKXtcclxuICAgICAgICBAZXh0ZW5kICV0cy00O1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgaDY6bm90KFtjbGFzc10pe1xyXG4gICAgICAgIEBleHRlbmQgJXRzLTU7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgIH1cclxuXHJcbiAgICBwOm5vdChbY2xhc3NdKXtcclxuICAgICAgICBAZXh0ZW5kICV0cy04O1xyXG4gICAgfVxyXG5cclxuICAgIGgxLFxyXG4gICAgaDIsXHJcbiAgICBoMyxcclxuICAgIGg0LFxyXG4gICAgaDUsXHJcbiAgICBoNntcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgfVxyXG59XHJcbiIsIi8qKlxyXG4gKiBUWVBFU1RZTEVTXHJcbiAqIEFSVElDTEVcclxuICogVHlwZXN0eWxlcyBhc3NpZ25lZCB0byBlbGVtZW50cyBpbnNpZGUgdGhlIEFydGljbGUuXHJcbiAqL1xyXG5cclxuQG1peGluIGFydGljbGUtdHlwZXN0eWxlcyB7XHJcbiAgICBoMSB7XHJcbiAgICAgICAgQGV4dGVuZCAldHMtMTtcclxuICAgIH1cclxuXHJcbiAgICAuaDEtbGlrZSB7XHJcbiAgICAgICAgQGV4dGVuZCAldHMtMTtcclxuICAgIH1cclxuXHJcbiAgICBoMiB7XHJcbiAgICAgICAgQGV4dGVuZCAldHMtMjtcclxuICAgIH1cclxuXHJcbiAgICAuaDItbGlrZSB7XHJcbiAgICAgICAgQGV4dGVuZCAldHMtMjtcclxuICAgIH1cclxuXHJcbiAgICBoMyB7XHJcbiAgICAgICAgQGV4dGVuZCAldHMtMztcclxuICAgIH1cclxuXHJcbiAgICAuaDMtbGlrZSB7XHJcbiAgICAgICAgQGV4dGVuZCAldHMtMztcclxuICAgIH1cclxuXHJcbiAgICBoNCB7XHJcbiAgICAgICAgQGV4dGVuZCAldHMtNDtcclxuICAgIH1cclxuXHJcbiAgICAuaDQtbGlrZSB7XHJcbiAgICAgICAgQGV4dGVuZCAldHMtNDtcclxuICAgIH1cclxuXHJcbiAgICBoNSB7XHJcbiAgICAgICAgQGV4dGVuZCAldHMtNTtcclxuICAgIH1cclxuXHJcbiAgICAuaDUtbGlrZSB7XHJcbiAgICAgICAgQGV4dGVuZCAldHMtNTtcclxuICAgIH1cclxuXHJcbiAgICBoNiB7XHJcbiAgICAgICAgQGV4dGVuZCAldHMtNjtcclxuICAgIH1cclxuXHJcbiAgICAuaDYtbGlrZSB7XHJcbiAgICAgICAgQGV4dGVuZCAldHMtNjtcclxuICAgIH1cclxuXHJcbiAgICBwOm5vdChbY2xhc3NdKSB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgIH1cclxuXHJcbiAgICBhLmJ0biB7XHJcbiAgICAgICAgKyBhLmJ0biB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmFydGljbGUtdHlwZXN0eWxlc3tcclxuICAgIEBpbmNsdWRlIGFydGljbGUtdHlwZXN0eWxlcztcclxufVxyXG4iLCIvKiBUWVBFU1RZTEVTXHJcbiAqIEljb21vb24gaWNvbiBzZXRcclxuICogUGxhY2UgYW5kIGljb25zIGZvciB0aGUgc2l0ZSBoZXJlXHJcbiAqL1xyXG5cclxuIEBmb250LWZhY2Uge1xyXG4gICAgZm9udC1mYW1pbHk6ICdpY29tb29uJztcclxuICAgIHNyYzogIHVybCgnLi4vZGlzdC9mb250cy9pY29tb29uLmVvdCcpO1xyXG4gICAgc3JjOiAgdXJsKCcuLi9kaXN0L2ZvbnRzL2ljb21vb24uZW90I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxyXG4gICAgICB1cmwoJy4uL2Rpc3QvZm9udHMvaWNvbW9vbi53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcclxuICAgICAgdXJsKCcuLi9kaXN0L2ZvbnRzL2ljb21vb24udHRmJykgZm9ybWF0KCd0cnVldHlwZScpLFxyXG4gICAgICB1cmwoJy4uL2Rpc3QvZm9udHMvaWNvbW9vbi53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXHJcbiAgICAgIHVybCgnLi4vZGlzdC9mb250cy9pY29tb29uLnN2ZycpIGZvcm1hdCgnc3ZnJyk7XHJcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gIH1cclxuXHJcbiVpY29uc3tcclxuICAgIGZvbnQtZmFtaWx5OiAnaWNvbW9vbicgIWltcG9ydGFudDtcclxuICAgIHNwZWFrOiBub25lO1xyXG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxufVxyXG5cclxuJGljb25zLW1hcDogKFxyXG4gICAgY2xvc2U6ICdcXGU5MDcnLFxyXG4gICAgYXJyb3ctbGVmdDogJ1xcZTkwNScsXHJcbiAgICBhcnJvdy1yaWdodDogJ1xcZTkwNicsXHJcbiAgICBhcnJvdy1kb3duOiAnXFxlOTA4JyxcclxuICAgIHRpY2s6ICdcXGU5MDMnLFxyXG4gICAgc2VhcmNoOiAnXFxlOTAyJyxcclxuICAgIHBsYXk6ICdcXGU5MDAnLFxyXG4gICAgcGx1czogJ1xcZTkwMScsXHJcbiAgICBtaW51czogJ1xcZTkwYicsXHJcbiAgICBmYms6ICdcXGU5MDknLFxyXG4gICAgbGluOiAnXFxlOTBhJyxcclxuICAgIGluc3Q6ICdcXGU5MTcnLFxyXG4gICAgeW91dDogJ1xcZTkxYScsXHJcbiAgICB0d3Q6ICdcXGU5MDQnLFxyXG4gICAgcGluOiAnXFxlOTBjJyxcclxuICAgIG1hcC1waW46ICdcXGU5MGUnLFxyXG4gICAgcGhvbmU6ICdcXGU5MGQnLFxyXG4gICAgbWFpbDogJ1xcZTkyYycsXHJcbiAgICBjaGFyaXR5OiAnXFxlOTBmJyxcclxuICAgIGNhbGVuZGFyOiAnXFxlOTEwJyxcclxuICAgIG1hcC1waW4tMjogJ1xcZTkxMScsXHJcbiAgICBwZGY6ICdcXGU5MTInLFxyXG4gICAgZmFtaWx5OiAnXFxlOTEzJyxcclxuICAgIGRvZzogJ1xcZTkxNCcsXHJcbiAgICBjYXQ6ICdcXGU5MTYnLFxyXG4gICAgY2hpbGRyZW46ICdcXGU5MTUnLFxyXG4gICAgZmluZC1hLWNhdDogJ1xcZTkxOCcsXHJcbiAgICBsaWtlOiAnXFxlOTFjJyxcclxuICAgIGNvbW1lbnQ6ICdcXGU5MWInLFxyXG4gICAgcGF5cGFsOiAnXFxlOTI2JyxcclxuICAgIGZlbWFsZTogJ1xcZTkyNycsXHJcbiAgICBtYWxlOiAnXFxlOTI5JyxcclxuICAgIGdpZnQ6ICdcXGU5MjgnLFxyXG4gICAgbWU6ICdcXGU5MmEnLFxyXG4gICAgaG91c2U6ICdcXGU5MmInLFxyXG4gICAgbG9naW46ICdcXGU5MmUnLFxyXG4gICAgYmFza2V0OiAnXFxlOTJkJyxcclxuICAgIHJvdGF0ZTogJ1xcZTkyZicsXHJcbiAgICBjaGV2LWRvd246ICdcXGU5MzEnXHJcbik7XHJcblxyXG5cclxuQG1peGluIGljb24oJGljb24tbmFtZSl7XHJcbiAgICAkaWNvbjogbWFwLWdldCgkaWNvbnMtbWFwLCAkaWNvbi1uYW1lKTtcclxuICAgIEBleHRlbmQgJWljb25zO1xyXG4gICAgY29udGVudDogJGljb247XHJcbn1cclxuXHJcbkBtaXhpbiBmaW5kLWEtY2F0LW5vLXRleHR7XHJcbiAgICBAZXh0ZW5kICVpY29ucztcclxuICAgIGNvbnRlbnQ6IFwiXFxlOTE5XCI7XHJcbn1cclxuXHJcbkBtaXhpbiBjbG9zZS1pY29ue1xyXG4gICAgQGV4dGVuZCAlaWNvbnM7XHJcbiAgICBjb250ZW50OiBcIlxcZTkwN1wiO1xyXG59XHJcblxyXG5AbWl4aW4gYXJyb3ctbGVmdC1pY29ue1xyXG4gICAgQGV4dGVuZCAlaWNvbnM7XHJcbiAgICBjb250ZW50OiBcIlxcZTkwNVwiO1xyXG59XHJcblxyXG5AbWl4aW4gYXJyb3ctcmlnaHQtaWNvbntcclxuICAgIEBleHRlbmQgJWljb25zO1xyXG4gICAgY29udGVudDogXCJcXGU5MDZcIjtcclxufVxyXG5cclxuQG1peGluIGFycm93LWRvd24taWNvbntcclxuICAgIEBleHRlbmQgJWljb25zO1xyXG4gICAgY29udGVudDogXCJcXGU5MDhcIjtcclxufVxyXG5cclxuQG1peGluIHRpY2staWNvbntcclxuICAgIEBleHRlbmQgJWljb25zO1xyXG4gICAgY29udGVudDogXCJcXGU5MDNcIjtcclxufVxyXG5cclxuQG1peGluIHNlYXJjaC1pY29ue1xyXG4gICAgQGV4dGVuZCAlaWNvbnM7XHJcbiAgICBjb250ZW50OiBcIlxcZTkwMlwiO1xyXG59XHJcblxyXG5AbWl4aW4gcGxheS1pY29ue1xyXG4gICAgQGV4dGVuZCAlaWNvbnM7XHJcbiAgICBjb250ZW50OiBcIlxcZTkwMFwiO1xyXG59XHJcblxyXG5AbWl4aW4gcGx1cy1pY29ue1xyXG4gICAgQGV4dGVuZCAlaWNvbnM7XHJcbiAgICBjb250ZW50OiBcIlxcZTkwMVwiO1xyXG59XHJcblxyXG5AbWl4aW4gbWludXMtaWNvbntcclxuICAgIEBleHRlbmQgJWljb25zO1xyXG4gICAgY29udGVudDogXCJcXGU5MGJcIjtcclxufVxyXG5cclxuQG1peGluIHJvdGF0ZS1pY29uIHtcclxuICAgIEBleHRlbmQgJWljb25zO1xyXG4gICAgY29udGVudDogXCJcXGU5MmZcIjtcclxufVxyXG5cclxuQG1peGluIGZiay1pY29ue1xyXG4gICAgQGV4dGVuZCAlaWNvbnM7XHJcbiAgICBjb250ZW50OiBcIlxcZTkwOVwiO1xyXG59XHJcblxyXG5AbWl4aW4gbGluLWljb257XHJcbiAgICBAZXh0ZW5kICVpY29ucztcclxuICAgIGNvbnRlbnQ6IFwiXFxlOTBhXCI7XHJcbn1cclxuXHJcbkBtaXhpbiBpbnN0LWljb257XHJcbiAgICBAZXh0ZW5kICVpY29ucztcclxuICAgIGNvbnRlbnQ6IFwiXFxlOTE3XCI7XHJcbn1cclxuXHJcbkBtaXhpbiB5b3V0LWljb24ge1xyXG4gICAgQGV4dGVuZCAlaWNvbnM7XHJcbiAgICBjb250ZW50OiBcIlxcZTkxYVwiO1xyXG59XHJcblxyXG5AbWl4aW4gdHd0LWljb257XHJcbiAgICBAZXh0ZW5kICVpY29ucztcclxuICAgIGNvbnRlbnQ6IFwiXFxlOTA0XCI7XHJcbn1cclxuXHJcbkBtaXhpbiBwaW4taWNvbntcclxuICAgIEBleHRlbmQgJWljb25zO1xyXG4gICAgY29udGVudDogXCJcXGU5MGNcIjtcclxufVxyXG5cclxuQG1peGluIG1hcC1waW4taWNvbntcclxuICAgIEBleHRlbmQgJWljb25zO1xyXG4gICAgY29udGVudDogXCJcXGU5MGVcIjtcclxufVxyXG5cclxuQG1peGluIHBob25lLWljb257XHJcbiAgICBAZXh0ZW5kICVpY29ucztcclxuICAgIGNvbnRlbnQ6IFwiXFxlOTBkXCI7XHJcbn1cclxuXHJcbkBtaXhpbiBtYWlsLWljb257XHJcbiAgICBAZXh0ZW5kICVpY29ucztcclxuICAgIGNvbnRlbnQ6IFwiXFxlOTJjXCI7XHJcbn1cclxuXHJcbkBtaXhpbiBjaGFyaXR5LWljb257XHJcbiAgICBAZXh0ZW5kICVpY29ucztcclxuICAgIGNvbnRlbnQ6IFwiXFxlOTBmXCI7XHJcbn1cclxuXHJcbkBtaXhpbiBjYWxlbmRhci1pY29ue1xyXG4gICAgQGV4dGVuZCAlaWNvbnM7XHJcbiAgICBjb250ZW50OiBcIlxcZTkxMFwiO1xyXG59XHJcblxyXG5AbWl4aW4gbWFwLXBpbi0yLWljb257XHJcbiAgICBAZXh0ZW5kICVpY29ucztcclxuICAgIGNvbnRlbnQ6IFwiXFxlOTExXCI7XHJcbn1cclxuXHJcbkBtaXhpbiBwZGYtaWNvbntcclxuICAgIEBleHRlbmQgJWljb25zO1xyXG4gICAgY29udGVudDogXCJcXGU5MTJcIjtcclxufVxyXG5cclxuQG1peGluIGZhbWlseS1pY29ue1xyXG4gICAgQGV4dGVuZCAlaWNvbnM7XHJcbiAgICBjb250ZW50OiBcIlxcZTkxM1wiO1xyXG59XHJcblxyXG5AbWl4aW4gZG9nLWljb257XHJcbiAgICBAZXh0ZW5kICVpY29ucztcclxuICAgIGNvbnRlbnQ6IFwiXFxlOTE0XCI7XHJcbn1cclxuXHJcbkBtaXhpbiBjYXQtaWNvbntcclxuICAgIEBleHRlbmQgJWljb25zO1xyXG4gICAgY29udGVudDogXCJcXGU5MTZcIjtcclxufVxyXG5cclxuQG1peGluIGNoaWxkcmVuLWljb257XHJcbiAgICBAZXh0ZW5kICVpY29ucztcclxuICAgIGNvbnRlbnQ6IFwiXFxlOTE1XCI7XHJcbn1cclxuXHJcbkBtaXhpbiBmaW5kLWEtY2F0LWljb257XHJcbiAgICBAZXh0ZW5kICVpY29ucztcclxuICAgIGNvbnRlbnQ6IFwiXFxlOTE4XCI7XHJcbn1cclxuXHJcbkBtaXhpbiBsaWtlLWljb257XHJcbiAgICBAZXh0ZW5kICVpY29ucztcclxuICAgIGNvbnRlbnQ6IFwiXFxlOTFjXCI7XHJcbn1cclxuXHJcbkBtaXhpbiBjb21tZW50LWljb257XHJcbiAgICBAZXh0ZW5kICVpY29ucztcclxuICAgIGNvbnRlbnQ6IFwiXFxlOTFiXCI7XHJcbn1cclxuXHJcbkBtaXhpbiBwYXlwYWwtaWNvbntcclxuICAgIEBleHRlbmQgJWljb25zO1xyXG4gICAgY29udGVudDogXCJcXGU5MjZcIjtcclxufVxyXG5cclxuQG1peGluIGZlbWFsZS1pY29ue1xyXG4gICAgQGV4dGVuZCAlaWNvbnM7XHJcbiAgICBjb250ZW50OiBcIlxcZTkyN1wiO1xyXG59XHJcblxyXG5AbWl4aW4gbWFsZS1pY29ue1xyXG4gICAgQGV4dGVuZCAlaWNvbnM7XHJcbiAgICBjb250ZW50OiBcIlxcZTkyOVwiO1xyXG59XHJcblxyXG5AbWl4aW4gZ2lmdC1pY29ue1xyXG4gICAgQGV4dGVuZCAlaWNvbnM7XHJcbiAgICBjb250ZW50OiBcIlxcZTkyOFwiO1xyXG59XHJcblxyXG5AbWl4aW4gbWUtaWNvbntcclxuICAgIEBleHRlbmQgJWljb25zO1xyXG4gICAgY29udGVudDogXCJcXGU5MmFcIjtcclxufVxyXG5cclxuQG1peGluIGhvdXNlLWljb257XHJcbiAgICBAZXh0ZW5kICVpY29ucztcclxuICAgIGNvbnRlbnQ6IFwiXFxlOTJiXCI7XHJcbn1cclxuXHJcbkBtaXhpbiBsb2dpbi1pY29ue1xyXG4gICAgQGV4dGVuZCAlaWNvbnM7XHJcbiAgICBjb250ZW50OiBcIlxcZTkyZVwiO1xyXG59XHJcblxyXG5AbWl4aW4gYmFza2V0LWljb257XHJcbiAgICBAZXh0ZW5kICVpY29ucztcclxuICAgIGNvbnRlbnQ6IFwiXFxlOTJkXCI7XHJcbn1cclxuXHJcbkBtaXhpbiBjaGV2LWRvd24taWNvbiB7XHJcbiAgICBAZXh0ZW5kICVpY29ucztcclxuICAgIGNvbnRlbnQ6IFwiXFxlOTMxXCI7XHJcbn1cclxuXHJcblxyXG5AbWl4aW4gdXNlci1pY29uKCRzaXplKXtcclxuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgIHdpZHRoOiAkc2l6ZTtcclxuICAgIGhlaWdodDogJHNpemU7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgYm94LXNoYWRvdzogMCA3cHggMTJweCAtMXB4IHJnYmEoJGJsYWNrLCAwLjIpO1xyXG5cclxuICAgICY6bm90KFtjbGFzcyo9XCJiZy10aGVtZVwiXSl7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWdyZXk7XHJcbiAgICB9XHJcblxyXG4gICAgJltzdHlsZSo9XCJiYWNrZ3JvdW5kLWltYWdlXCJde1xyXG4gICAgICAgIEBpbmNsdWRlIGJhY2tncm91bmQoY292ZXIpO1xyXG4gICAgfVxyXG5cclxuICAgICZbc3R5bGUqPSdiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvXCIpOyddLFxyXG4gICAgJltzdHlsZSo9XCJiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy8nKTtcIl17XHJcbiAgICAgICAgJjphZnRlcntcclxuICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDgwJTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogYm90dG9tIC0xcHggY2VudGVyO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvYmFzZTY0L1NWRy91c2VyLWljb24uc3ZnXCIpO1xyXG5cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG4vLyAudXNlci1pY29ue1xyXG4vLyAgICAgQGluY2x1ZGUgdXNlci1pY29uKDEwMHB4KTtcclxuLy8gfVxyXG5cclxuXHJcbi5naWZ0YWlkLWxvZ297XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICB3aWR0aDogMTAwcHg7XHJcbiAgICBoZWlnaHQ6IDUwcHg7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAtMTVweDtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvYmFzZTY0L1NWRy9naWZ0YWlkLWdyZXkuc3ZnKTtcclxuICAgIEBpbmNsdWRlIGJhY2tncm91bmQoY29udGFpbik7XHJcbn1cclxuIiwiLyogVFlQRVNUWUxFU1xyXG4gKiBMaXN0IHN0eWxlc1xyXG4gKi9cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBHTE9CQUwgLSBMSVNUIFNUWUxFU1xyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbkBtaXhpbiBsaXN0LXN0eWxlcyB7XHJcbiAgICB1bDpub3QoW2NsYXNzXSksIG9sOm5vdChbY2xhc3NdKSB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIG1hcmdpbjogMTBweCAwO1xyXG4gICAgICAgIC8qY29sb3I6IHJnYmEoJGJsYWNrLCAwLjgpOyovXHJcbiAgICAgICAgbGkge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMzBweDtcclxuXHJcbiAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgbGVmdDogNHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHVsOm5vdChbY2xhc3NdKSBsaTpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgIHdpZHRoOiAxMHB4O1xyXG4gICAgICAgIGhlaWdodDogMTBweDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3Qtc3R5bGUtY29sb3I7XHJcbiAgICAgICAgdG9wOiA4cHg7XHJcbiAgICB9XHJcblxyXG4gICAgb2w6bm90KFtjbGFzc10pIHtcclxuICAgICAgICBjb3VudGVyLXJlc2V0OiBjb3VudGVyO1xyXG5cclxuICAgICAgICBsaTpiZWZvcmUge1xyXG4gICAgICAgICAgICBjb250ZW50OiBjb3VudGVyKGNvdW50ZXIpIFwiLlwiO1xyXG4gICAgICAgICAgICBjb3VudGVyLWluY3JlbWVudDogY291bnRlcjtcclxuICAgICAgICAgICAgdG9wOiAwcHg7XHJcbiAgICAgICAgICAgIGxlZnQ6NHB4O1xyXG4gICAgICAgICAgICBjb2xvcjogJGxpc3Qtc3R5bGUtY29sb3I7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uYm9keS1jb3B5e1xyXG4gICAgQGluY2x1ZGUgbGlzdC1zdHlsZXM7XHJcbn1cclxuXHJcbi5idWxsZXRze1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgIGxpIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XHJcblxyXG4gICAgICAgIC5saW5re1xyXG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmJlZm9yZXtcclxuICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGxlZnQ6IDRweDtcclxuICAgICAgICAgICAgd2lkdGg6IDEwcHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTBweDtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtZ3JlZW47XHJcbiAgICAgICAgICAgIHRvcDogOHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIElDT04gLSBMSVNUIFNUWUxFU1xyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi5pY29uLWxpc3Qge1xyXG5cclxuICAgIGxpIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA1NHB4O1xyXG5cclxuICAgICAgICBhIHtcclxuICAgICAgICAgICAgY29sb3I6IGluaGVyaXQ7XHJcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG5cclxuICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMzNweDtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmljb24tbGlzdF9fcGluOmJlZm9yZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgbWFwLXBpbi1pY29uO1xyXG4gICAgICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogNnB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5pY29uLWxpc3RfX3Bob25lOmJlZm9yZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgcGhvbmUtaWNvbjtcclxuICAgIH1cclxuXHJcbiAgICAuaWNvbi1saXN0X19jaGFyaXR5OmJlZm9yZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgY2hhcml0eS1pY29uO1xyXG4gICAgfVxyXG5cclxuICAgIC5pY29uLWxpc3RfX3BpbjI6YmVmb3JlIHtcclxuICAgICAgICBAaW5jbHVkZSBtYXAtcGluLTItaWNvbjtcclxuICAgIH1cclxuXHJcbiAgICAuaWNvbi1saXN0X19jYWxlbmRhcjpiZWZvcmUge1xyXG4gICAgICAgIEBpbmNsdWRlIGNhbGVuZGFyLWljb247XHJcbiAgICB9XHJcblxyXG4gICAgLmljb24tbGlzdF9fcGxheTpiZWZvcmUge1xyXG4gICAgICAgIEBpbmNsdWRlIHBsYXktaWNvbjtcclxuICAgIH1cclxuXHJcbiAgICAmW2NsYXNzKj1cImxhcmdlXCJdIHtcclxuICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjFweDtcclxuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRjYXRzLW1lZDtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjVweDtcclxuXHJcbiAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogNDBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLnBkZiB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgbGkge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgICAgICBmb250LWZhbWlseTogJGNhdHMtbWVkO1xyXG4gICAgICAgIEBpbmNsdWRlIGFuaW1hdGUoY29sb3IgMjAwbXMpO1xyXG4gICAgICAgIHBhZGRpbmc6IDEwcHg7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuICAgICAgICAgICAgd2lkdGg6IDUwJTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcclxuICAgICAgICAgICAgd2lkdGg6IDMzLjMzJTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgY29sb3I6ICRicmFuZC1saWdodC1ibHVlO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgYSB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGNvbG9yOiBpbmhlcml0O1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogaW5oZXJpdDtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcclxuXHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBwZGYtaWNvbjtcclxuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMjBweDtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAzNXB4O1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogNDVweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5idG4tbGlzdCB7XHJcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xyXG5cclxuICAgIGxpIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgaGVpZ2h0OiA3MHB4O1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgICAgICAgbWFyZ2luOiAwIGF1dG8gMTBweDtcclxuICAgICAgICBtYXgtd2lkdGg6IDUwMHB4O1xyXG4gICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDIycHggNHB4IHJnYmEoJGJyYW5kLWJsYWNrLCAwLjQpO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIFNUQVRJU1RJQ1MgLSBMSVNUIFNUWUxFU1xyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4uc3RhdC1saXN0e1xyXG4gICAgcGFkZGluZzogMTBweCAzMHB4O1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtd3JhcDogd3JhcDtcclxuXHJcbiAgICBsaXtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBmb250LWZhbWlseTogJGNhdHMtYm9sZDtcclxuICAgICAgICBwYWRkaW5nOiAxMHB4IDA7XHJcblxyXG4gICAgICAgICY6bm90KDpudGgtbGFzdC1jaGlsZCgtbiArIDIpKXtcclxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEod2hpdGUsIDAuNCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBwe1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgNXB4O1xyXG5cclxuICAgICAgICAgICAgJjpmaXJzdC1vZi10eXBle1xyXG4gICAgICAgICAgICAgICAgJjphZnRlcntcclxuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnOic7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgW2NsYXNzKj1cImZ1bGxcIl0gJntcclxuICAgICAgICBsaXtcclxuICAgICAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0tYW5kLXVwKSB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogNTAlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5cclxuXHJcbi5kZXRhaWwtbGlzdHtcclxuICAgIGxpe1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiAkY2F0cy1tZWQ7XHJcbiAgICAgICAgZm9udC1zaXplOiAyNXB4O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xyXG4gICAgICAgIHN0cm9uZ3tcclxuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRjYXRzLWJvbGQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmICsgbGl7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDEzcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiIsIi5vcGVuaW5nLXBhZ2UtaGVhZGluZ3tcclxuICBmb250LWZhbWlseTogXCJiYXJtZW5vLWJvbGRcIiwgQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcclxuICBmb250LXNpemU6IDIwcHg7XHJcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCl7XHJcbiAgICBmb250LXNpemU6IDMxcHg7XHJcbiAgfVxyXG59XHJcbiIsIi8qIFNsaWRlciAqL1xyXG5cclxuLnNsaWNrLXNsaWRlciB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XHJcbiAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xyXG4gICAgLWtodG1sLXVzZXItc2VsZWN0OiBub25lO1xyXG4gICAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcclxuICAgIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcclxuICAgIHVzZXItc2VsZWN0OiBub25lO1xyXG4gICAgLW1zLXRvdWNoLWFjdGlvbjogcGFuLXk7XHJcbiAgICB0b3VjaC1hY3Rpb246IHBhbi15O1xyXG4gICAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcclxufVxyXG4uc2xpY2stbGlzdCB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG5cclxuICAgICY6Zm9jdXMge1xyXG4gICAgICAgIG91dGxpbmU6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgJi5kcmFnZ2luZyB7XHJcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgIGN1cnNvcjogaGFuZDtcclxuICAgIH1cclxufVxyXG4uc2xpY2stc2xpZGVyIC5zbGljay10cmFjayxcclxuLnNsaWNrLXNsaWRlciAuc2xpY2stbGlzdCB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG59XHJcblxyXG4uc2xpY2stdHJhY2sge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHRvcDogMDtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG5cclxuICAgICY6YmVmb3JlLFxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcclxuICAgIH1cclxuXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgICBjbGVhcjogYm90aDtcclxuICAgIH1cclxuXHJcbiAgICAuc2xpY2stbG9hZGluZyAmIHtcclxuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICB9XHJcbn1cclxuLnNsaWNrLXNsaWRlIHtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgbWluLWhlaWdodDogMXB4O1xyXG4gICAgW2Rpcj1cInJ0bFwiXSAmIHtcclxuICAgICAgICBmbG9hdDogcmlnaHQ7XHJcbiAgICB9XHJcbiAgICBpbWcge1xyXG4gICAgICAgIC8vZGlzcGxheTogYmxvY2s7XHJcbiAgICB9XHJcbiAgICAmLnNsaWNrLWxvYWRpbmcgaW1nIHtcclxuICAgICAgIC8vIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgZGlzcGxheTogbm9uZTtcclxuXHJcbiAgICAmLmRyYWdnaW5nIGltZyB7XHJcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgLnNsaWNrLWluaXRpYWxpemVkICYge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgfVxyXG5cclxuICAgIC5zbGljay1sb2FkaW5nICYge1xyXG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgIH1cclxuXHJcbiAgICAuc2xpY2stdmVydGljYWwgJiB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gICAgfVxyXG59XHJcbi5zbGljay1hcnJvdy5zbGljay1oaWRkZW4ge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxufVxyXG4iLCIvKiFcclxuICogQ3JvcHBlci5qcyB2MS42LjFcclxuICogaHR0cHM6Ly9mZW5neXVhbmNoZW4uZ2l0aHViLmlvL2Nyb3BwZXJqc1xyXG4gKlxyXG4gKiBDb3B5cmlnaHQgMjAxNS1wcmVzZW50IENoZW4gRmVuZ3l1YW5cclxuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlXHJcbiAqXHJcbiAqIERhdGU6IDIwMjMtMDktMTdUMDM6NDQ6MTcuNTY1WlxyXG4gKi9cclxuXHJcbi5jcm9wcGVyLWNvbnRhaW5lciB7XHJcbiAgICBkaXJlY3Rpb246IGx0cjtcclxuICAgIGZvbnQtc2l6ZTogMDtcclxuICAgIGxpbmUtaGVpZ2h0OiAwO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgLW1zLXRvdWNoLWFjdGlvbjogbm9uZTtcclxuICAgIHRvdWNoLWFjdGlvbjogbm9uZTtcclxuICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xyXG4gICAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xyXG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XHJcbn1cclxuXHJcbi5jcm9wcGVyLWNvbnRhaW5lciBpbWcge1xyXG4gICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICBpbWFnZS1vcmllbnRhdGlvbjogMGRlZztcclxuICAgIG1heC1oZWlnaHQ6IG5vbmUgIWltcG9ydGFudDtcclxuICAgIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgbWluLWhlaWdodDogMCAhaW1wb3J0YW50O1xyXG4gICAgbWluLXdpZHRoOiAwICFpbXBvcnRhbnQ7XHJcbiAgICB3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLmNyb3BwZXItd3JhcC1ib3gsXHJcbi5jcm9wcGVyLWNhbnZhcyxcclxuLmNyb3BwZXItZHJhZy1ib3gsXHJcbi5jcm9wcGVyLWNyb3AtYm94LFxyXG4uY3JvcHBlci1tb2RhbCB7XHJcbiAgICBib3R0b206IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICB0b3A6IDA7XHJcbn1cclxuXHJcbi5jcm9wcGVyLXdyYXAtYm94LFxyXG4uY3JvcHBlci1jYW52YXMge1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLmNyb3BwZXItZHJhZy1ib3gge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxuICAgIG9wYWNpdHk6IDA7XHJcbn1cclxuXHJcbi5jcm9wcGVyLW1vZGFsIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XHJcbiAgICBvcGFjaXR5OiAwLjU7XHJcbn1cclxuXHJcbi5jcm9wcGVyLXZpZXctYm94IHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgb3V0bGluZTogMXB4IHNvbGlkICMzOWY7XHJcbiAgICBvdXRsaW5lLWNvbG9yOiByZ2JhKDUxLCAxNTMsIDI1NSwgMC43NSk7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi5jcm9wcGVyLWRhc2hlZCB7XHJcbiAgICBib3JkZXI6IDAgZGFzaGVkICNlZWU7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIG9wYWNpdHk6IDAuNTtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxufVxyXG5cclxuLmNyb3BwZXItZGFzaGVkLmRhc2hlZC1oIHtcclxuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDFweDtcclxuICAgIGJvcmRlci10b3Atd2lkdGg6IDFweDtcclxuICAgIGhlaWdodDogY2FsYygxMDAlIC8gMyk7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgdG9wOiBjYWxjKDEwMCUgLyAzKTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4uY3JvcHBlci1kYXNoZWQuZGFzaGVkLXYge1xyXG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDFweDtcclxuICAgIGJvcmRlci1yaWdodC13aWR0aDogMXB4O1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgbGVmdDogY2FsYygxMDAlIC8gMyk7XHJcbiAgICB0b3A6IDA7XHJcbiAgICB3aWR0aDogY2FsYygxMDAlIC8gMyk7XHJcbn1cclxuXHJcbi5jcm9wcGVyLWNlbnRlciB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGhlaWdodDogMDtcclxuICAgIGxlZnQ6IDUwJTtcclxuICAgIG9wYWNpdHk6IDAuNzU7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDUwJTtcclxuICAgIHdpZHRoOiAwO1xyXG59XHJcblxyXG4uY3JvcHBlci1jZW50ZXI6OmJlZm9yZSxcclxuLmNyb3BwZXItY2VudGVyOjphZnRlciB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlO1xyXG4gICAgY29udGVudDogJyAnO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbn1cclxuXHJcbi5jcm9wcGVyLWNlbnRlcjo6YmVmb3JlIHtcclxuICAgIGhlaWdodDogMXB4O1xyXG4gICAgbGVmdDogLTNweDtcclxuICAgIHRvcDogMDtcclxuICAgIHdpZHRoOiA3cHg7XHJcbn1cclxuXHJcbi5jcm9wcGVyLWNlbnRlcjo6YWZ0ZXIge1xyXG4gICAgaGVpZ2h0OiA3cHg7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgdG9wOiAtM3B4O1xyXG4gICAgd2lkdGg6IDFweDtcclxufVxyXG5cclxuLmNyb3BwZXItZmFjZSxcclxuLmNyb3BwZXItbGluZSxcclxuLmNyb3BwZXItcG9pbnQge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICBvcGFjaXR5OiAwLjE7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLmNyb3BwZXItZmFjZSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHRvcDogMDtcclxufVxyXG5cclxuLmNyb3BwZXItbGluZSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzlmO1xyXG59XHJcblxyXG4uY3JvcHBlci1saW5lLmxpbmUtZSB7XHJcbiAgICBjdXJzb3I6IGV3LXJlc2l6ZTtcclxuICAgIHJpZ2h0OiAtM3B4O1xyXG4gICAgdG9wOiAwO1xyXG4gICAgd2lkdGg6IDVweDtcclxufVxyXG5cclxuLmNyb3BwZXItbGluZS5saW5lLW4ge1xyXG4gICAgY3Vyc29yOiBucy1yZXNpemU7XHJcbiAgICBoZWlnaHQ6IDVweDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB0b3A6IC0zcHg7XHJcbn1cclxuXHJcbi5jcm9wcGVyLWxpbmUubGluZS13IHtcclxuICAgIGN1cnNvcjogZXctcmVzaXplO1xyXG4gICAgbGVmdDogLTNweDtcclxuICAgIHRvcDogMDtcclxuICAgIHdpZHRoOiA1cHg7XHJcbn1cclxuXHJcbi5jcm9wcGVyLWxpbmUubGluZS1zIHtcclxuICAgIGJvdHRvbTogLTNweDtcclxuICAgIGN1cnNvcjogbnMtcmVzaXplO1xyXG4gICAgaGVpZ2h0OiA1cHg7XHJcbiAgICBsZWZ0OiAwO1xyXG59XHJcblxyXG4uY3JvcHBlci1wb2ludCB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzlmO1xyXG4gICAgaGVpZ2h0OiA1cHg7XHJcbiAgICBvcGFjaXR5OiAwLjc1O1xyXG4gICAgd2lkdGg6IDVweDtcclxufVxyXG5cclxuLmNyb3BwZXItcG9pbnQucG9pbnQtZSB7XHJcbiAgICBjdXJzb3I6IGV3LXJlc2l6ZTtcclxuICAgIG1hcmdpbi10b3A6IC0zcHg7XHJcbiAgICByaWdodDogLTNweDtcclxuICAgIHRvcDogNTAlO1xyXG59XHJcblxyXG4uY3JvcHBlci1wb2ludC5wb2ludC1uIHtcclxuICAgIGN1cnNvcjogbnMtcmVzaXplO1xyXG4gICAgbGVmdDogNTAlO1xyXG4gICAgbWFyZ2luLWxlZnQ6IC0zcHg7XHJcbiAgICB0b3A6IC0zcHg7XHJcbn1cclxuXHJcbi5jcm9wcGVyLXBvaW50LnBvaW50LXcge1xyXG4gICAgY3Vyc29yOiBldy1yZXNpemU7XHJcbiAgICBsZWZ0OiAtM3B4O1xyXG4gICAgbWFyZ2luLXRvcDogLTNweDtcclxuICAgIHRvcDogNTAlO1xyXG59XHJcblxyXG4uY3JvcHBlci1wb2ludC5wb2ludC1zIHtcclxuICAgIGJvdHRvbTogLTNweDtcclxuICAgIGN1cnNvcjogcy1yZXNpemU7XHJcbiAgICBsZWZ0OiA1MCU7XHJcbiAgICBtYXJnaW4tbGVmdDogLTNweDtcclxufVxyXG5cclxuLmNyb3BwZXItcG9pbnQucG9pbnQtbmUge1xyXG4gICAgY3Vyc29yOiBuZXN3LXJlc2l6ZTtcclxuICAgIHJpZ2h0OiAtM3B4O1xyXG4gICAgdG9wOiAtM3B4O1xyXG59XHJcblxyXG4uY3JvcHBlci1wb2ludC5wb2ludC1udyB7XHJcbiAgICBjdXJzb3I6IG53c2UtcmVzaXplO1xyXG4gICAgbGVmdDogLTNweDtcclxuICAgIHRvcDogLTNweDtcclxufVxyXG5cclxuLmNyb3BwZXItcG9pbnQucG9pbnQtc3cge1xyXG4gICAgYm90dG9tOiAtM3B4O1xyXG4gICAgY3Vyc29yOiBuZXN3LXJlc2l6ZTtcclxuICAgIGxlZnQ6IC0zcHg7XHJcbn1cclxuXHJcbi5jcm9wcGVyLXBvaW50LnBvaW50LXNlIHtcclxuICAgIGJvdHRvbTogLTNweDtcclxuICAgIGN1cnNvcjogbndzZS1yZXNpemU7XHJcbiAgICBoZWlnaHQ6IDIwcHg7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgcmlnaHQ6IC0zcHg7XHJcbiAgICB3aWR0aDogMjBweDtcclxufVxyXG5cclxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XHJcblxyXG4gICAgLmNyb3BwZXItcG9pbnQucG9pbnQtc2Uge1xyXG4gICAgICAgIGhlaWdodDogMTVweDtcclxuICAgICAgICB3aWR0aDogMTVweDtcclxuICAgIH1cclxufVxyXG5cclxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XHJcblxyXG4gICAgLmNyb3BwZXItcG9pbnQucG9pbnQtc2Uge1xyXG4gICAgICAgIGhlaWdodDogMTBweDtcclxuICAgICAgICB3aWR0aDogMTBweDtcclxuICAgIH1cclxufVxyXG5cclxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xyXG5cclxuICAgIC5jcm9wcGVyLXBvaW50LnBvaW50LXNlIHtcclxuICAgICAgICBoZWlnaHQ6IDVweDtcclxuICAgICAgICBvcGFjaXR5OiAwLjc1O1xyXG4gICAgICAgIHdpZHRoOiA1cHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jcm9wcGVyLXBvaW50LnBvaW50LXNlOjpiZWZvcmUge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzM5ZjtcclxuICAgIGJvdHRvbTogLTUwJTtcclxuICAgIGNvbnRlbnQ6ICcgJztcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgaGVpZ2h0OiAyMDAlO1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHJpZ2h0OiAtNTAlO1xyXG4gICAgd2lkdGg6IDIwMCU7XHJcbn1cclxuXHJcbi5jcm9wcGVyLWludmlzaWJsZSB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG59XHJcblxyXG4uY3JvcHBlci1iZyB7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQkFBQUFBUUFRTUFBQUFsUFcwaUFBQUFBM05DU1ZRSUNBamI0VS9nQUFBQUJsQk1WRVhNek16Ly8vL1RqUlYyQUFBQUNYQklXWE1BQUFyckFBQUs2d0dDaXcxYUFBQUFISFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JHYVhKbGQyOXlhM01nUTFNMjZMeXlqQUFBQUJGSlJFRlVDSmxqK00vQWdCVmhGLzBQQUg2L0QvSGtEeE9HQUFBQUFFbEZUa1N1UW1DQycpO1xyXG59XHJcblxyXG4uY3JvcHBlci1oaWRlIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgaGVpZ2h0OiAwO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgd2lkdGg6IDA7XHJcbn1cclxuXHJcbi5jcm9wcGVyLWhpZGRlbiB7XHJcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5jcm9wcGVyLW1vdmUge1xyXG4gICAgY3Vyc29yOiBtb3ZlO1xyXG59XHJcblxyXG4uY3JvcHBlci1jcm9wIHtcclxuICAgIGN1cnNvcjogY3Jvc3NoYWlyO1xyXG59XHJcblxyXG4uY3JvcHBlci1kaXNhYmxlZCAuY3JvcHBlci1kcmFnLWJveCxcclxuLmNyb3BwZXItZGlzYWJsZWQgLmNyb3BwZXItZmFjZSxcclxuLmNyb3BwZXItZGlzYWJsZWQgLmNyb3BwZXItbGluZSxcclxuLmNyb3BwZXItZGlzYWJsZWQgLmNyb3BwZXItcG9pbnQge1xyXG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcclxufVxyXG5cclxuI2ltYWdlQ2FudmFzIHtcclxuICAgIGhlaWdodDogMzAwcHggIWltcG9ydGFudDtcclxuICAgIHdpZHRoOiAzMDBweCAhaW1wb3J0YW50O1xyXG59XHJcbi5pbWFnZS1jcm9wcGVyLXBvcHVwIHtcclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIGJhY2tncm91bmQ6IHJnYmEoNTcsNDgsMTEyLC45KTtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICB6LWluZGV4OiAxMDA7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbn1cclxuXHJcbi5pbWFnZS1jcm9wcGVyLXBvcHVwX19pbm5lciB7XHJcbiAgICBwYWRkaW5nOiAyMHB4O1xyXG4gICAgYmFja2dyb3VuZDogI2ZmZjtcclxuICAgIGJveC1zaGFkb3c6IDAgMCAyMHB4IDVweCByZ2JhKDMyLDMyLDMyLC4yKTtcclxuICAgIG1heC13aWR0aDogNDQwcHg7XHJcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgIG1hcmdpbi1yaWdodDogYXV0bztcclxufVxyXG5cclxuLmltYWdlLWNyb3BwZXItcG9wdXBfX2NhbnZhcyB7XHJcbiAgICB3aWR0aDogMzAwcHg7XHJcbiAgICBoZWlnaHQ6IDMwMHB4O1xyXG4gICAgbWFyZ2luOiAwIGF1dG8gMjBweDtcclxufVxyXG5cclxuLmltYWdlLWNyb3BwZXItcG9wdXBfX2J1dHRvbnMgLmJ0biB7XHJcbiAgICBtYXJnaW46IDAgMnB4IDEwcHg7XHJcbn1cclxuXHJcbi5pbWFnZS1jcm9wcGVyLXBvcHVwX19idXR0b25zIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbn1cclxuXHJcbi5pbWFnZS1jcm9wcGVyLXBvcHVwLmlzLWFjdGl2ZSB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgcG9pbnRlci1ldmVudHM6IGFsbDtcclxufVxyXG4gICIsIltkYXRhLXNpbXBsZWJhcl0ge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcclxuICAgIGFsaWduLWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuICAgIHdpZHRoOiBpbmhlcml0O1xyXG4gICAgaGVpZ2h0OiBpbmhlcml0O1xyXG4gICAgbWF4LXdpZHRoOiBpbmhlcml0O1xyXG4gICAgbWF4LWhlaWdodDogaW5oZXJpdDtcclxufVxyXG5cclxuLnNpbXBsZWJhci13cmFwcGVyIHtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICB3aWR0aDogaW5oZXJpdDtcclxuICAgIGhlaWdodDogaW5oZXJpdDtcclxuICAgIG1heC13aWR0aDogaW5oZXJpdDtcclxuICAgIG1heC1oZWlnaHQ6IGluaGVyaXQ7XHJcbn1cclxuXHJcbi5zaW1wbGViYXItbWFzayB7XHJcbiAgICBkaXJlY3Rpb246IGluaGVyaXQ7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBib3R0b206IDA7XHJcbiAgICByaWdodDogMDtcclxuICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcclxuICAgIHotaW5kZXg6IDA7XHJcbn1cclxuXHJcbi5zaW1wbGViYXItb2Zmc2V0IHtcclxuICAgIGRpcmVjdGlvbjogaW5oZXJpdCAhaW1wb3J0YW50O1xyXG4gICAgYm94LXNpemluZzogaW5oZXJpdCAhaW1wb3J0YW50O1xyXG4gICAgcmVzaXplOiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xyXG59XHJcblxyXG4uc2ltcGxlYmFyLWNvbnRlbnQge1xyXG4gICAgZGlyZWN0aW9uOiBpbmhlcml0O1xyXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveCAhaW1wb3J0YW50O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBoZWlnaHQ6IDEwMCU7IC8qIFJlcXVpcmVkIGZvciBob3Jpem9udGFsIG5hdGl2ZSBzY3JvbGxiYXIgdG8gbm90IGFwcGVhciBpZiBwYXJlbnQgaXMgdGFsbGVyIHRoYW4gbmF0dXJhbCBoZWlnaHQgKi9cclxuICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgIG92ZXJmbG93OiBzY3JvbGw7IC8qIFNjcm9sbCBvbiB0aGlzIGVsZW1lbnQgb3RoZXJ3aXNlIGVsZW1lbnQgY2FuJ3QgaGF2ZSBhIHBhZGRpbmcgYXBwbGllZCBwcm9wZXJseSAqL1xyXG4gICAgbWF4LXdpZHRoOiAxMDAlOyAvKiBOb3QgcmVxdWlyZWQgZm9yIGhvcml6b250YWwgc2Nyb2xsIHRvIHRyaWdnZXIgKi9cclxuICAgIG1heC1oZWlnaHQ6IDEwMCU7IC8qIE5lZWRlZCBmb3IgdmVydGljYWwgc2Nyb2xsIHRvIHRyaWdnZXIgKi9cclxufVxyXG5cclxuLnNpbXBsZWJhci1wbGFjZWhvbGRlciB7XHJcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xyXG4gICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxufVxyXG5cclxuLnNpbXBsZWJhci1oZWlnaHQtYXV0by1vYnNlcnZlci13cmFwcGVyIHtcclxuICAgIGJveC1zaXppbmc6IGluaGVyaXQgIWltcG9ydGFudDtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIHdpZHRoOiBpbmhlcml0O1xyXG4gICAgbWF4LXdpZHRoOiAxcHg7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICAgIG1heC1oZWlnaHQ6IDFweDtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICB6LWluZGV4OiAtMTtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgIGZsZXgtZ3JvdzogaW5oZXJpdDtcclxuICAgIGZsZXgtc2hyaW5rOiAwO1xyXG4gICAgZmxleC1iYXNpczogMDtcclxufVxyXG5cclxuLnNpbXBsZWJhci1oZWlnaHQtYXV0by1vYnNlcnZlciB7XHJcbiAgICBib3gtc2l6aW5nOiBpbmhlcml0O1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIGhlaWdodDogMTAwMCU7XHJcbiAgICB3aWR0aDogMTAwMCU7XHJcbiAgICBtaW4taGVpZ2h0OiAxcHg7XHJcbiAgICBtaW4td2lkdGg6IDFweDtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgIHotaW5kZXg6IC0xO1xyXG59XHJcblxyXG4uc2ltcGxlYmFyLXRyYWNrIHtcclxuICAgIHotaW5kZXg6IDE7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICByaWdodDogMDtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG59XHJcblxyXG4uc2ltcGxlYmFyLXNjcm9sbGJhciB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICByaWdodDogMnB4O1xyXG4gICAgd2lkdGg6IDdweDtcclxuICAgIG1pbi1oZWlnaHQ6IDEwcHg7XHJcbn1cclxuXHJcbi5zaW1wbGViYXItc2Nyb2xsYmFyOmJlZm9yZSB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgYmFja2dyb3VuZDogYmxhY2s7XHJcbiAgICBib3JkZXItcmFkaXVzOiA3cHg7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGxpbmVhcjtcclxufVxyXG5cclxuLnNpbXBsZWJhci10cmFjayAuc2ltcGxlYmFyLXNjcm9sbGJhci5zaW1wbGViYXItdmlzaWJsZTpiZWZvcmUge1xyXG4gICAgLyogV2hlbiBob3ZlcmVkLCByZW1vdmUgYWxsIHRyYW5zaXRpb25zIGZyb20gZHJhZyBoYW5kbGUgKi9cclxuICAgIG9wYWNpdHk6IDAuNTtcclxuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMHMgbGluZWFyO1xyXG59XHJcblxyXG4uc2ltcGxlYmFyLXRyYWNrLnNpbXBsZWJhci12ZXJ0aWNhbCB7XHJcbiAgICB0b3A6IDA7XHJcbiAgICB3aWR0aDogMTFweDtcclxufVxyXG5cclxuLnNpbXBsZWJhci10cmFjay5zaW1wbGViYXItdmVydGljYWwgLnNpbXBsZWJhci1zY3JvbGxiYXI6YmVmb3JlIHtcclxuICAgIHRvcDogMnB4O1xyXG4gICAgYm90dG9tOiAycHg7XHJcbn1cclxuXHJcbi5zaW1wbGViYXItdHJhY2suc2ltcGxlYmFyLWhvcml6b250YWwge1xyXG4gICAgbGVmdDogMDtcclxuICAgIGhlaWdodDogMTFweDtcclxufVxyXG5cclxuLnNpbXBsZWJhci10cmFjay5zaW1wbGViYXItaG9yaXpvbnRhbCAuc2ltcGxlYmFyLXNjcm9sbGJhcjpiZWZvcmUge1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgbGVmdDogMnB4O1xyXG4gICAgcmlnaHQ6IDJweDtcclxufVxyXG5cclxuLnNpbXBsZWJhci10cmFjay5zaW1wbGViYXItaG9yaXpvbnRhbCAuc2ltcGxlYmFyLXNjcm9sbGJhciB7XHJcbiAgICByaWdodDogYXV0bztcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB0b3A6IDJweDtcclxuICAgIGhlaWdodDogN3B4O1xyXG4gICAgbWluLWhlaWdodDogMDtcclxuICAgIG1pbi13aWR0aDogMTBweDtcclxuICAgIHdpZHRoOiBhdXRvO1xyXG59XHJcblxyXG4vKiBSdGwgc3VwcG9ydCAqL1xyXG5bZGF0YS1zaW1wbGViYXItZGlyZWN0aW9uPVwicnRsXCJdIC5zaW1wbGViYXItdHJhY2suc2ltcGxlYmFyLXZlcnRpY2FsIHtcclxuICAgIHJpZ2h0OiBhdXRvO1xyXG4gICAgbGVmdDogMDtcclxufVxyXG5cclxuLmhzLWR1bW15LXNjcm9sbGJhci1zaXplIHtcclxuICAgIGRpcmVjdGlvbjogcnRsO1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgIGhlaWdodDogNTAwcHg7XHJcbiAgICB3aWR0aDogNTAwcHg7XHJcbiAgICBvdmVyZmxvdy15OiBoaWRkZW47XHJcbiAgICBvdmVyZmxvdy14OiBzY3JvbGw7XHJcbn1cclxuIiwiI2FwcGVhbHMtZGF0YSB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcclxuXHJcblxyXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjlweCkge1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgICAgIC8qZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyovXHJcbiAgICB9XHJcblxyXG4gICAgLmFwcGVhbHMtdG90YWxpc2VyIHtcclxuICAgICAgICBtYXgtd2lkdGg6IDYwJTtcclxuXHJcbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjlweCkge1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDM1JTtcclxuICAgICAgICAgICAgYWxpZ24tc2VsZjogc3RhcnQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuanMtYXBwZWFscy10b3RhbC1wY250IHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogJGxpZ2h0LXB1cnBsZTtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDA7XHJcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA5NiU7XHJcbiAgICAgICAgICAgIHdpZHRoOiA5NiU7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgICAgICAgICAgY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCUgMiUgMWVtO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICAgIGZmb250LWZhbWlseTogJGNhdHMtaGVhZGxpbmU7XHJcblxyXG4gICAgICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OXB4KSB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMzAwcHg7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDMwMHB4O1xyXG4gICAgICAgICAgICAgICAgLyptYXJnaW46IGF1dG87Ki9cclxuICAgICAgICAgICAgfVxyXG5cclxuXHJcbiAgICAgICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLC01MCUpO1xyXG4gICAgICAgICAgICAgICAgei1pbmRleDogOTk7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDNlbTtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAuNWVtIDAuMzVlbTtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRsaWdodC1wdXJwbGU7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICAgICAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjlweCkge1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogNGVtO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICclJztcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmpzLWFwcGVhbHMtdG90YWwtcGNudC1iZyB7XHJcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRicmFuZC1waW5rO1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgIHRvcDogMTAwJTtcclxuICAgICAgICAgICAgICAgIHJpZ2h0OiAwJTtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogNTAwJTtcclxuXHJcbiAgICAgICAgICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OXB4KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDMwMHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuanMtYXBwZWFscy10b3RhbC1yYWlzZWQge1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnXFwwMEEzJztcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAzZW07XHJcblxyXG4gICAgICAgICAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjlweCkge1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogNGVtO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBzcGFuIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAzZW07XHJcblxyXG4gICAgICAgICAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjlweCkge1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogNGVtO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5hcHBlYWxzLWxiIHtcclxuICAgICAgICBtaW4td2lkdGg6IDkwJTtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblxyXG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY5cHgpIHtcclxuICAgICAgICAgICAgbWluLXdpZHRoOiA2MCU7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogNjAlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmFwcGVhbHMtbGItYnJhbmNoIHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIGdyZXk7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblxyXG4gICAgICAgICAgICAuYXBwZWFscy1sYi1kYXRhIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuNWVtO1xyXG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHJcbiAgICAgICAgICAgICAgICAuYXBwZWFscy1sYi1uYW1lIHtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNGVtO1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxNXB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkY2F0cy1oZWFkbGluZTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYnJhbmQtcGluaztcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIC5hcHBlYWxzLWxiLXJvdyB7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDEwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAuYXBwZWFscy1sYi1yYWlzZWQge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNWVtO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgLmFwcGVhbHMtbGItc3VwcG9ydGVycyB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5qcy1hcHBlYWxzLXRvdGFsLXBjbnQtYnJhbmNoIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRicmFuZC1waW5rO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDUwcHg7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDUwcHg7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuXHJcbiAgICAgICAgICAgICAgICBzcGFuIHtcclxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogNTAlO1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsLTUwJSk7XHJcbiAgICAgICAgICAgICAgICAgICAgei1pbmRleDogOTk7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnJSc7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIC5qcy1hcHBlYWxzLXRvdGFsLXBjbnQtYmctYnJhbmNoIHtcclxuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAzMDBweDtcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDMwMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogYXV0bztcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgICB0b3A6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDAlO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5hY3RpdmUtYnJhbmNoIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5hcHBlYWxzLWxnLWJ0biB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICAuYXBwZWFscy1tZC1zbS1idG4ge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIH1cclxuXHJcbiAgICAuYXBwZWFscy10b3RhbGlzZXItZml4IHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHJcbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2MDBweCkge1xyXG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuanMtYXBwZWFscy10b3RhbC1wY250LWZpeCB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAzMDBweDtcclxuICAgICAgICBtYXgtaGVpZ2h0OiAzMDBweDtcclxuICAgICAgICBoZWlnaHQ6IDMwMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgd2lkdGg6IDMwMHB4O1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwJSAhaW1wb3J0YW50O1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxZW07XHJcbiAgICB9XHJcblxyXG4gICAgLmpzLWFwcGVhbHMtdG90YWwtcGNudC1iZyB7XHJcbiAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgYmFja2dyb3VuZDogJGJyYW5kLXB1cnBsZTtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDEwMCU7XHJcbiAgICAgICAgcmlnaHQ6IDAlO1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xyXG4gICAgICAgIC5hcHBlYWxzLWxnLWJ0biB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5hcHBlYWxzLW1kLXNtLWJ0biB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiIsIi8qKlxyXG4gKiBDT01QT05FTlRTXHJcbiAqIEJhc2tldFxyXG4gKi9cclxuXHJcbiRuYW1lOiBiYXNrZXQ7XHJcblxyXG4vLy0tLS0tLS0tLS1cclxuLy8gQkxPQ0tcclxuLy8tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfSB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxufVxyXG5cclxuXHJcblxyXG4vLy0tLS0tLS0tLS1cclxuLy8gRUxFTUVOVFxyXG4vLy0tLS0tLS0tLS1cclxuLiN7JG5hbWV9X19pdGVtLFxyXG4uI3skbmFtZX1fX3N1bW1hcnkge1xyXG4gICAgcGFkZGluZzogMjBweDtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYS13aWR0aCgkbmF2aWdhdGlvbi1icmVha3BvaW50KSB7XHJcbiAgICAgICAgcGFkZGluZzogMjBweCAxMDBweDtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgfVxyXG5cclxuICAgIC5tZWRpYSB7XHJcbiAgICAgICAgbWluLXdpZHRoOiAyMDBweDtcclxuICAgICAgICB3aWR0aDogYXV0bztcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtd2lkdGgoJG5hdmlnYXRpb24tYnJlYWtwb2ludCkge1xyXG4gICAgICAgICAgICB3aWR0aDogMjAwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGRpdiB7XHJcbiAgICAgICAgcGFkZGluZzogNXB4O1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBtZWRpYS13aWR0aCgkbmF2aWdhdGlvbi1icmVha3BvaW50KSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgNSU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGgzIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XHJcbiAgICAgICAgY29sb3I6JGJyYW5kLXB1cnBsZTtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtd2lkdGgoJG5hdmlnYXRpb24tYnJlYWtwb2ludCkge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLiN7JG5hbWV9X19pdGVtIHtcclxuICAgICY6bnRoLWNoaWxkKG9kZCkge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1wdXJwbGU7XHJcbiAgICB9XHJcblxyXG4gICAgJjpudGgtY2hpbGQoZXZlbikge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xyXG4gICAgfVxyXG59XHJcblxyXG5cclxuXHJcbkBrZXlmcmFtZXMgRkxBU0gge1xyXG4gICAgMCUge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcbiAgICB9XHJcblxyXG4gICAgMTAwJSB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWdyZXk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi4jeyRuYW1lfV9fc3VtbWFyeSB7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG5cclxuICAgIGgzIHtcclxuICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgIG1hcmdpbjogMCAyMHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLy8tLS0tLS0tLS0tXHJcbi8vIFJFTEFURURcclxuLy8tLS0tLS0tLS0tXHJcblxyXG4uYmFza2V0LWl0ZW1zIHtcclxuICAgIHRvcDogMDtcclxufVxyXG5cclxuLmJhc2tldC1pdGVtLXZhbHVlIHtcclxuICAgIGZvbnQtZmFtaWx5OiAkY2F0cy1oZWFkbGluZTtcclxuICAgIGNvbG9yOiRicmFuZC1wdXJwbGU7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTo4cHg7XHJcbiAgICBmb250LXNpemU6IDUwcHg7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgd2lkdGg6IGF1dG87XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG5cclxuICAgIEBpbmNsdWRlIG1lZGlhLXdpZHRoKCRuYXZpZ2F0aW9uLWJyZWFrcG9pbnQpIHtcclxuICAgICAgICBmbG9hdDogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICBzcGFuIHtcclxuICAgICAgICBmb250LXNpemU6IDMzJTtcclxuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMjBweDtcclxuICAgIH1cclxuXHJcbiAgICAuI3skbmFtZX1fX3N1bW1hcnkgJiB7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICBmb250LXNpemU6IDcwcHg7XHJcblxyXG4gICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5iYXNrZXQtaXRlbS1idG4ge1xyXG4gICAgZmxvYXQ6IHJpZ2h0O1xyXG5cclxuICAgIEBpbmNsdWRlIG1lZGlhLXdpZHRoKCRuYXZpZ2F0aW9uLWJyZWFrcG9pbnQpIHtcclxuICAgICAgICBmbG9hdDogbm9uZTtcclxuICAgIH1cclxufVxyXG4iLCIvKipcclxuICogQ09NUE9ORU5UU1xyXG4gKiBCYXNrZXQgVHJhY2tlclxyXG4gKi9cclxuXHJcbiRuYW1lOiBiYXNrZXQtdHJhY2tlcjtcclxuXHJcbi8vLS0tLS0tLS0tLVxyXG4vLyBCTE9DS1xyXG4vLy0tLS0tLS0tLS1cclxuLiN7JG5hbWV9e1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgbWFyZ2luLXJpZ2h0OiA0NXB4O1xyXG4gICAgJjpiZWZvcmV7XHJcbiAgICAgIEBpbmNsdWRlIGJhc2tldC1pY29uO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogNDVweDtcclxuICAgICAgICBjb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuICAgIH1cclxuXHJcbiAgICAmOmFmdGVye1xyXG4gICAgICAgIGNvbnRlbnQ6IFwicGVucyBhZGRlZFwiO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6NTAlO1xyXG4gICAgICAgIGxlZnQ6IDEwMCU7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgQGV4dGVuZCAldHMtMztcclxuICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICBmb250LXNpemU6IDE1cHg7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogNXB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4uYmFza2V0LXRyYWNrZXItLXNwb25zb3J7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7XHJcbiAgICAmOmJlZm9yZXtcclxuICAgICAgICBmb250LXNpemU6IDMwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgJjphZnRlcntcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgIC5iYXNrZXQtdHJhY2tlcl9fdmFsdWV7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNXB4O1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAuNGVtO1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbmF2aWdhdGlvbi1icmVha3BvaW50KXtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDQ1cHg7XHJcbiAgICAgICAgJjpiZWZvcmV7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogNDVweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJjphZnRlcntcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5iYXNrZXQtdHJhY2tlcl9fdmFsdWV7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcclxuICAgICAgICAgICAgcGFkZGluZy10b3A6IC4xZW07XHJcbiAgICAgICAgfVxyXG5cclxuICAgIH1cclxufVxyXG5cclxuXHJcblxyXG4vLy0tLS0tLS0tLS1cclxuLy8gRUxFTUVOVFxyXG4vLy0tLS0tLS0tLS1cclxuLiN7JG5hbWV9X192YWx1ZXtcclxuICAgIGZvbnQtc2l6ZTogMjRweDtcclxuICAgIHBhZGRpbmctdG9wOiAuMWVtO1xyXG4gICAgd2lkdGg6IGF1dG87XHJcbiAgICBAZXh0ZW5kICV0cy0xO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgY29sb3I6ICRicmFuZC1ibGFjaztcclxuICAgIHRvcDogNTAlO1xyXG4gICAgbGVmdDogNTAlO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwtNTAlKTtcclxufVxyXG4iLCIvKipcclxuICogQ09NUE9ORU5UU1xyXG4gKiBCTE9DS1FVT1RFXHJcbiAqL1xyXG5cclxuJG5hbWU6IGJsb2NrcXVvdGU7XHJcblxyXG4vLy0tLS0tLS0tLS1cclxuLy8gQkxPQ0tcclxuLy8tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfXtcclxuICAgIEBleHRlbmQgJXRzLTM7XHJcbiAgICBAZXh0ZW5kICViZy1saWdodC1ncmV5O1xyXG4gICAgcGFkZGluZzogMzBweCA3MHB4IDI1cHg7XHJcbiAgICBjb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuICAgICY6YmVmb3Jle1xyXG4gICAgICAgIGNvbnRlbnQ6ICdcXDIwMUMnO1xyXG4gICAgICAgIEBleHRlbmQgJXRleHQtb3JhbmdlO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTMwcHg7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtNTdweDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDA7XHJcbiAgICB9XHJcblxyXG4gICAgJjphZnRlcntcclxuICAgICAgICBjb250ZW50OiAnXFwyMDFEJztcclxuICAgICAgICBAZXh0ZW5kICV0ZXh0LW9yYW5nZTtcclxuICAgICAgICBmb250LXNpemU6IDEwMHB4O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAwO1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IC01MHB4O1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IC0yNXB4O1xyXG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgfVxyXG59XHJcblxyXG5cclxuXHJcbiIsIi8qKlxyXG4gKiBDT01QT05FTlRTXHJcbiAqIEJVVFRPTlNcclxuICogYnRuIGJ0bi0tY29sb3IgYnRuLS1pY29uIGJ0bi0tbW9yZVxyXG4gKi9cclxuXHJcbi8vIFRPRE8gLSBPUkRFUiBCRUxPVyBJTlRPIExPR0lDQUwgU1RFUFMsIEJBU0UgLSBERUNPUkFUSU9OIC0gVEhFTUUgLyBCTE9DSyAtIEVMRU1FTlQgLSBNT0RJRklFUlxyXG5cclxuJG5hbWU6IGJ0bjtcclxuXHJcbi8vLS0tLS0tLS0tLVxyXG4vLyBCTE9DS1xyXG4vLy0tLS0tLS0tLS1cclxuXHJcbkBtaXhpbiBidXR0b24ge1xyXG4gICAgLy8gREVGQVVMVCBCVVRUT04gQkFTRSBDT01QXHJcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuNXM7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAvL3doaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgb3V0bGluZTogbm9uZTtcclxuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgd2lkdGg6IGF1dG87XHJcbiAgICBwYWRkaW5nOiAxMHB4IDIzcHg7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAvLyBERUZBVUxUIEJVVFRPTiBUWVBFU1RZTEVcclxuICAgIEBleHRlbmQgJXRzLTc7XHJcbiAgICAvL2xpbmUtaGVpZ2h0OiAwO1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgYm9yZGVyLXJhZGl1czogNnB4O1xyXG4gICAgLy8gREVGQVVMVCBCVVRUT04gVEhFTUVcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcbiAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LXB1cnBsZTtcclxuICAgICAgICBjb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuICAgIH1cclxufVxyXG5cclxuXHJcbi4jeyRuYW1lfSB7XHJcbiAgICBAaW5jbHVkZSBidXR0b247XHJcbiAgICAvLyBDRU5URVIgLSBIRUxQRVJcclxuICAgICYuY2VudGVyLFxyXG4gICAgJi0tY2VudGVyIHtcclxuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgICAgICAgbWF4LXdpZHRoOiAyNTBweDtcclxuICAgIH1cclxuICAgIC8qXHJcbiAgICAvLyBCVE4gU1RZTEVTIFdISUxFIFNJTUJJVFRJTkdcclxuICAgIC8vIFVTSU5HIERPVUJMRSBTRUxFQ1RPUiBGT1IgSElHSEVSIFNQRUNJRklDSVRZXHJcbiAgICAmLmlzLXN1Ym1pdHRpbmcuaXMtc3VibWl0dGluZ3tcclxuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgICAgICBjb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcclxuICAgICAgICAvLyBISURFIEFSUk9XU1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgLy8gU0VUIEJBQ0tHUk9VTkQgU1RZTEVTXHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLWJsYWNrO1xyXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvYmFzZTY0L1NWRy90YWlsLXNwaW4uZ2lmKTtcclxuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcclxuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDMwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgICovXHJcbn1cclxuXHJcbi5iZy1ncmV5IC5idG4sIC5iZy1ncmVlbiAuYnRuIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcclxuICAgIGNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1wdXJwbGU7XHJcbiAgICAgICAgY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5iZy1saWdodC1ncmV5IC5idG4ge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuICAgIGNvbG9yOiAkd2hpdGU7XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXBpbms7XHJcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgIH1cclxuXHJcbiAgICAmLmJ0bi0td2hpdGUge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICBjb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1waW5rO1xyXG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBNT0RJRklFUiAtIFNFQ09ORCBTVFlMRVxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfS0tc2Vjb25kYXJ5IHtcclxuICAgIEBpbmNsdWRlIGJ1dHRvbjtcclxuICAgIGJhY2tncm91bmQ6ICRicmFuZC1waW5rO1xyXG4gICAgY29sb3I6IHdoaXRlO1xyXG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogJGxpZ2h0LXB1cnBsZTtcclxuICAgICAgICBjb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuICAgIH1cclxufVxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIE1PRElGSUVSIC0gVEhJUkQgU1RZTEVcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4uI3skbmFtZX0tLXRoaXJkbHkge1xyXG4gICAgQGluY2x1ZGUgYnV0dG9uO1xyXG4gICAgYmFja2dyb3VuZDogJGxpZ2h0LXB1cnBsZTtcclxuICAgIGNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuICAgICAgICBjb2xvcjogd2hpdGU7XHJcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcbiAgICB9XHJcbn1cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBNT0RJRklFUiAtIFRISVJEIFNUWUxFXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLiN7JG5hbWV9LS1mb3VydGhseSB7XHJcbiAgICBAaW5jbHVkZSBidXR0b247XHJcbiAgICBiYWNrZ3JvdW5kOiAkd2hpdGUgIWltcG9ydGFudDtcclxuICAgIGNvbG9yOiAkYnJhbmQtcGluayAhaW1wb3J0YW50O1xyXG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LXB1cnBsZSAhaW1wb3J0YW50O1xyXG4gICAgICAgIGNvbG9yOiAkYnJhbmQtcGluayAhaW1wb3J0YW50O1xyXG4gICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG4gICAgfVxyXG59XHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIE1PRElGSUVSIC0gTEFSR0VcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLiN7JG5hbWV9LS1sZyB7XHJcbiAgICBmb250LXNpemU6IDI2cHg7XHJcbiAgICBwYWRkaW5nOiAxNnB4IDMwcHg7XHJcbn1cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gTU9ESUZJRVIgLSBTTUFMTFxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4uI3skbmFtZX0tLXNtIHtcclxuICAgIEBleHRlbmQgJXRzLTg7XHJcbiAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICBwYWRkaW5nOiA1cHggMTVweDtcclxufVxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBNT0RJRklFUiAtIFNFQVJDSFxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4uI3skbmFtZX0tLXNlYXJjaCB7XHJcbiAgICB3aWR0aDogNDBweDtcclxuICAgIG1pbi13aWR0aDogNDBweDtcclxuICAgIGhlaWdodDogNDBweDtcclxuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgY29sb3I6ICRicmFuZC1ibGFjaztcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgYm9yZGVyLXJhZGl1czogMnB4O1xyXG5cclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgICBAaW5jbHVkZSBzZWFyY2gtaWNvbjtcclxuICAgICAgICBmb250LXNpemU6IDQ0cHg7XHJcbiAgICAgICAgd2lkdGg6IDQwcHg7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcblxyXG4gICAgJjpob3ZlcixcclxuICAgIC5pcy1hY3RpdmUgJiB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG5cclxuXHJcbi5idG4tLWJsb2NrIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIE1PRElGSUVSIC0gVEhFTUVTXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIE1BUElORyBCRyBDT0xPVVIsIFRYVCBDT0xPVVQsIEhPVkVSIElOVkVSVCBUSEVNRSBUUlVFLydmYWxzZSc7XHJcbiRidG4tdGhlbWUtbWFwOiAoIHByaW1hcnk6ICgkYnJhbmQtcHVycGxlLCAkd2hpdGUsICdmYWxzZScpLCBvcmFuZ2U6ICgkYnJhbmQtcHVycGxlLCAkYnJhbmQtYmxhY2ssICdmYWxzZScpLCBibHVlOiAoJGJyYW5kLWJsdWUsICR3aGl0ZSwgJ2ZhbHNlJyksIGdyZWVuOiAoJGJyYW5kLWdyZWVuLCAkd2hpdGUsICdmYWxzZScpLCBkYXJrLWdyZWVuOiAoJGJyYW5kLWRhcmstZ3JlZW4sICR3aGl0ZSwgJ2ZhbHNlJyksIGJyaWdodC1ncmVlbjogKCRicmFuZC1icmlnaHQtZ3JlZW4sICR3aGl0ZSwgJ2ZhbHNlJyksIGxpZ2h0LWJsdWU6ICgkYnJhbmQtbGlnaHQtYmx1ZSwgJHdoaXRlLCAnZmFsc2UnKSwgeWVsbG93OiAoJGJyYW5kLXllbGxvdywgJGJyYW5kLWJsYWNrLCAnZmFsc2UnKSwgcmVkOiAoJGJyYW5kLXJlZCwgJHdoaXRlLCAnZmFsc2UnKSwgcHVycGxlOiAoJGJyYW5kLXB1cnBsZSwgJHdoaXRlLCAnZmFsc2UnKSwgZ3JleTogKCRicmFuZC1ibGFjaywgJHdoaXRlLCAnZmFsc2UnKSwgbWlkLWdyZXk6ICgkbGlnaHQtcHVycGxlLCAkd2hpdGUsICdmYWxzZScpLCBsaWdodC1ncmV5OiAoJGxpZ2h0LWdyZXksICRicmFuZC1ibGFjaywgJ2ZhbHNlJyksIGJsYWNrOiAoJGJsYWNrLCAkd2hpdGUsICdmYWxzZScpLCB3aGl0ZTogKCR3aGl0ZSwgJGJyYW5kLXB1cnBsZSwgJ2ZhbHNlJyksIHR3dDogKCR0d2l0dGVyLWJsdWUsICR3aGl0ZSwgJ2ZhbHNlJyksIGZiazogKCRmYWNlYm9vay1ibHVlLCAkd2hpdGUsICdmYWxzZScpLCB0d3QyOiAoJHdoaXRlLCAkYnJhbmQtYmxhY2ssICd0cnVlJyksIGZiazI6ICgkd2hpdGUsICcjMUEwMDZCJywgJ3RydWUnKSwgcGF5cGFsOiAoJGJyYW5kLXB1cnBsZSwgJHdoaXRlLCAnZmFsc2UnKSApOyBAZWFjaCAkYnRuLXRoZW1lLW5hbWUsICRidG4tdGhlbWUtdmFsdWUgaW4gJGJ0bi10aGVtZS1tYXAge1xyXG4gICAgLiN7JG5hbWV9LS0je1wiXCIgKyAkYnRuLXRoZW1lLW5hbWV9IHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAje250aCgkYnRuLXRoZW1lLXZhbHVlLCAxKX07XHJcbiAgICAgICAgY29sb3I6ICN7bnRoKCRidG4tdGhlbWUtdmFsdWUsIDIpfTtcclxuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuXHJcbiAgICAgICAgQGlmIG50aCgkYnRuLXRoZW1lLXZhbHVlLCAzKSA9PSAndHJ1ZScge1xyXG4gICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICN7bnRoKCRidG4tdGhlbWUtdmFsdWUsIDIpfTtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAje250aCgkYnRuLXRoZW1lLXZhbHVlLCAxKX07XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4vKiBGaXggUHJpbWFyeSAqL1xyXG4uYnRuLS1wcmltYXJ5OmhvdmVyIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6JHdoaXRlO1xyXG4gICAgY29sb3I6JGJyYW5kLXBpbms7XHJcbn1cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBNT0RJRklFUiAtIFRBQlMgVEhFTUVcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4uI3skbmFtZX0tLXRhYnMge1xyXG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgIHBhZGRpbmc6IDI2cHggMzBweDtcclxuXHJcbiAgICAmLmlzLWFjdGl2ZSxcclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICBjb2xvcjogJGJyYW5kLWJsYWNrO1xyXG4gICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG4gICAgfVxyXG59XHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gTU9ESUZJRVIgLSBFRElUIENBVFxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfS0tZWRpdC1jYXQge1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xyXG59XHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gTU9ESUZJRVIgLSBNT1JFXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLiN7JG5hbWV9LS1tb3JlIHtcclxuXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgICBAaW5jbHVkZSBwbHVzLWljb247XHJcbiAgICAgICAgZm9udC1zaXplOiAyNHB4O1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg1MCUpO1xyXG4gICAgfVxyXG5cclxuICAgICYuaXMtYWN0aXZlOmFmdGVyIHtcclxuICAgICAgICBAaW5jbHVkZSBtaW51cy1pY29uO1xyXG4gICAgfVxyXG5cclxuICAgICZbY2xhc3MqPVwiLS1sZ1wiXTphZnRlciB7XHJcbiAgICAgICAgZm9udC1zaXplOiAzMHB4O1xyXG4gICAgfVxyXG5cclxuICAgICZbY2xhc3MqPVwiLS1zbVwiXTphZnRlciB7XHJcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgfVxyXG59XHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gTU9ESUZJRVIgLSBDT1ZFUlxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfS0tY292ZXIge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG59XHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBNT0RJRklFUiAtIEhBUyBMT0dPXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4kbG9nby1tYXA6ICggZmJrOiBmYmssIHR3dDogdHd0LCBmYmsyOiBmYmssIHR3dDI6IHR3dCwgbWFpbDogbWFpbCwgcGhvbmU6IHBob25lLCBwYXlwYWw6IHBheXBhbCApO1xyXG5cclxuQGVhY2ggJGxvZ28tbmFtZSwgJGxvZ28tdmFsdWUgaW4gJGxvZ28tbWFwIHtcclxuICAgIC4jeyRuYW1lfS0tI3skbG9nby1uYW1lfSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IDQ0cHg7XHJcblxyXG4gICAgICAgIEBpZiAkbG9nby1uYW1lID09ICdwYXlwYWwnIHtcclxuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBpY29uKCRsb2dvLXZhbHVlKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0zNSUpO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDM2cHg7XHJcblxyXG4gICAgICAgICAgICBAaWYgJGxvZ28tbmFtZSA9PSAncGF5cGFsJyB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDI4cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLy8tLS0tLS0tLS0tXHJcbi8vIFJFTEFURURcclxuLy8tLS0tLS0tLS0tXHJcbltkYXRhLXJldmVhbF0sXHJcbltkYXRhLXRvZ2dsZV0ge1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG59XHJcbi8vLS0tLS0tLS0tLS0tLVxyXG4vLyBTVEFUIEJUTlxyXG4vLy0tLS0tLS0tLS0tLS1cclxuLy8gVE9ET1xyXG4vLyBTUE9OU09SIFBPUlRBTFxyXG4vLyBUSEVTRSBBUkUgTk9XIE5PVCBCVVRUT05TIFNPIFRISVMgU1RZTElORyBDQU4gQkUgTU9WRUQgVE8gT1dOIENPTVBPTkVOVC5cclxuLypcclxuYnV0dG9uW2RhdGEtc3RhdF17XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIEBleHRlbmQgJXRzLTg7XHJcbiAgICBjb2xvcjogJGJyYW5kLWJsYWNrO1xyXG4gICAgbWF4LXdpZHRoOiAxODBweDtcclxuICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICBsaW5lLWhlaWdodDogMjBweDtcclxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG5cclxuICAgIHNwYW57XHJcbiAgICAgICAgd2lkdGg6IDQwcHg7XHJcbiAgICAgICAgbWluLXdpZHRoOiA0MHB4O1xyXG4gICAgICAgIGhlaWdodDogNDBweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogNDBweDtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgY29sb3I6IHdoaXRlO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1yZWQ7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcclxuICAgIH1cclxuXHJcbiAgICAmOmhvdmVye1xyXG4gICAgICAgIHNwYW57XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiovXHJcbi8vLS0tLS0tLS0tLS0tLVxyXG4vLyBUT0dHTEUgUEVOU1xyXG4vLy0tLS0tLS0tLS0tLS1cclxuLy8gVmlldyB5b3VyIHByZXZpb3VzIHNwb25zb3IgY2F0c1xyXG4vLyBidG4gb24gc3BvbnNvcnMgcG9ydGFsLlxyXG4vLyBUb2dnbGUgYnRuIGxhYmVsLlxyXG5idXR0b25bZGF0YS10b2dnbGU9XCJwcmV2aW91cy1ndWVzdHNcIl0ge1xyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6ICdWaWV3IHlvdXIgcHJldmlvdXMgc3BvbnNvciBjYXRzJztcclxuICAgIH1cclxuXHJcbiAgICAmLmlzLWFjdGl2ZSB7XHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICBjb250ZW50OiAnQ2xvc2UnO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIE1PRElGSUVSIC0gQ1JPUFBFUlxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfVtjbGFzcyo9XCItLWNyb3BcIl0ge1xyXG4gICAgZm9udC1zaXplOiAyMnB4O1xyXG4gICAgcGFkZGluZzogNHB4IDRweDtcclxufVxyXG5cclxuLiN7JG5hbWV9LS1jcm9wLXJvdGF0ZSB7XHJcbiAgICBmb250LXNpemU6IDIwcHhcclxufVxyXG5cclxuLiN7JG5hbWV9LS1jcm9wLWluOmJlZm9yZSB7XHJcbiAgICBAaW5jbHVkZSBwbHVzLWljb247XHJcbn1cclxuXHJcbi4jeyRuYW1lfS0tY3JvcC1vdXQ6YmVmb3JlIHtcclxuICAgIEBpbmNsdWRlIG1pbnVzLWljb247XHJcbn1cclxuXHJcbi4jeyRuYW1lfS0tY3JvcC1yb3RhdGU6YmVmb3JlIHtcclxuICAgIEBpbmNsdWRlIHJvdGF0ZS1pY29uO1xyXG4gICAgZm9udC1zaXplOiAyMnB4XHJcbn1cclxuXHJcbi4jeyRuYW1lfS0tY3JvcC1sZWZ0OmJlZm9yZSB7XHJcbiAgICBAaW5jbHVkZSBhcnJvdy1sZWZ0LWljb247XHJcbn1cclxuXHJcbi4jeyRuYW1lfS0tY3JvcC1yaWdodDpiZWZvcmUge1xyXG4gICAgQGluY2x1ZGUgYXJyb3ctcmlnaHQtaWNvbjtcclxufVxyXG5cclxuLiN7JG5hbWV9LS1jcm9wLXVwOmJlZm9yZSB7XHJcbiAgICBAaW5jbHVkZSBhcnJvdy1sZWZ0LWljb247XHJcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XHJcbn1cclxuXHJcbi4jeyRuYW1lfS0tY3JvcC1kb3duOmJlZm9yZSB7XHJcbiAgICBAaW5jbHVkZSBhcnJvdy1sZWZ0LWljb247XHJcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xyXG59XHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBNT0RJRklFUiAtIE5FWFQvUFJFVlxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLiN7JG5hbWV9LS1uZXh0LFxyXG4uI3skbmFtZX0tLXByZXYge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG4uI3skbmFtZX0tLW5leHQge1xyXG4gICAgcGFkZGluZy1yaWdodDogMTBweDtcclxuICAgIHdpZHRoOiAxNDRweDtcclxuXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgICBAaW5jbHVkZSBhcnJvdy1yaWdodC1pY29uO1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4uI3skbmFtZX0tLXByZXYge1xyXG4gICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xyXG5cclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgICBAaW5jbHVkZSBhcnJvdy1sZWZ0LWljb247XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xyXG4gICAgfVxyXG59XHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBNT0RJRklFUiAtIFJJR0hUXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4uI3skbmFtZX0tLXJpZ2h0IHtcclxuICAgIGZsb2F0OiByaWdodDtcclxufVxyXG4vLy0tLS0tLS0tLVxyXG4vLyBSRUxBVEVEXHJcbi8vLS0tLS0tLS0tXHJcbi8vIFJURSBTVVBQT1JUIEZPUiBORVNUSU5HXHJcbi4jeyRuYW1lfSB7XHJcbiAgICBhIHtcclxuICAgICAgICBjb2xvcjogaW5oZXJpdCAhaW1wb3J0YW50O1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogaW5oZXJpdCAhaW1wb3J0YW50O1xyXG4gICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcclxuICAgIH1cclxuXHJcbiAgICAmW3N0eWxlKj1cInRleHQtYWxpZ246IHJpZ2h0O1wiXSB7XHJcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgfVxyXG59XHJcblxyXG5wIHtcclxuICAgIC4jeyRuYW1lfSB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLiN7JG5hbWV9LS1mdWxsLXdpZHRoIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbn1cclxuXHJcblxyXG4uI3skbmFtZX0tLW1vYmlsZS1zZWFyY2gge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICBjb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuICAgIHBhZGRpbmc6IDVweDtcclxuXHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAzNXB4O1xyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLiN7JG5hbWV9LS1jbG9zZSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgIGNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgd2lkdGg6IDQ0cHg7XHJcbiAgICBoZWlnaHQ6IDQ0cHg7XHJcbiAgICBmb250LXNpemU6IDM1cHg7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG5cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIEBpbmNsdWRlIGNsb3NlLWljb247XHJcbiAgICB9XHJcblxyXG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgY29sb3I6IGluaGVyaXQ7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG4uYnRuLS1sb25nIHtcclxuICAgIHBhZGRpbmc6IDIwcHggNTBweDtcclxufVxyXG4iLCIvKipcclxuICogQ09NUE9ORU5UU1xyXG4gKiBDQVQgQ09NTVVOSVRZXHJcbiAqIFNlXHJcbiAqL1xyXG5cclxuJG5hbWU6IGNhdC1jb21tdW5pdHk7XHJcblxyXG5cclxuLmNhdHMtY29tbXVuaXR5LWNvbnRhaW5lcntcclxuICAgIG1heC13aWR0aDogNDYwcHg7XHJcbiAgICBtYXJnaW46IDAgYXV0bztcclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKXtcclxuICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgfVxyXG59XHJcblxyXG4vLy0tLS0tLS0tXHJcbi8vIEJMT0NLXHJcbi8vLS0tLS0tLS1cclxuLiN7JG5hbWV9e1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWdyZXk7XHJcbiAgICBAZXh0ZW5kICVwZC1ibS1sZztcclxufVxyXG5cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBFTEVNRU5UIC0gSEVBREVSXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4uI3skbmFtZX1fX2hlYWRlciB7XHJcbiAgICBAZXh0ZW5kICVwZC12dC1tZDtcclxuXHJcblxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgfVxyXG5cclxuICAgIHBhZGRpbmctdG9wOiAxMHB4O1xyXG4gICAgcGFkZGluZy1ib3R0b206IDEwcHg7XHJcblxyXG5cclxuICAgIGJ1dHRvbixcclxuICAgIC5saW5rIHtcclxuICAgICAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgIGJ1dHRvbiB7XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgICAgICAgICAvLyAgICAgbWFyZ2luOiAwIDIwcHggMCAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAubGluayB7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6ICRjYXRzO1xyXG4gICAgICAgIGNvbG9yOiAkYnJhbmQtYmxhY2s7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIG1hcmdpbjogMCAwIDEwcHg7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCAyMHB4IDAgMDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6Zmlyc3Qtb2YtdHlwZSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcclxuICAgICAgICAgICAgICAgIC8vIG1hcmdpbjogMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcblxyXG4gICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgJi5pcy1hY3RpdmUge1xyXG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLWJsYWNrO1xyXG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgICBib3R0b206IDRweDtcclxuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLmlzLWFjdGl2ZSB7XHJcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkY2F0cy1tZWQ7XHJcbiAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJiArIC5saW5rIHtcclxuICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogLTEwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMjBweDtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtYmxhY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLmNhdC1jb21tdW5pdHlfX2xpbmtze1xyXG5cclxufVxyXG5cclxuLmNhdHMtY29tbXVuaXR5LWhlYWRpbmd7XHJcbiAgICBtYXJnaW46IDAgMCAyMHB4O1xyXG59XHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIEVMRU1FTlQgLSBDQVRTXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS1cclxuLiN7JG5hbWV9X19jYXRze1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XHJcbiAgICBAZXh0ZW5kICVwZC12dC1sZztcclxufVxyXG4iLCIvKipcclxuICogQ09NUE9ORU5UU1xyXG4gKiBDb21tZW50c1xyXG4gKiBUaGVzZSBzdHlsZXMgaGFuZGxlIHRoZSBjb21tZW50cyBzZWN0aW9uIGZvdW5kIGluIHRoZSBzcG9uc29yc2hpcCB0ZW1wbGF0ZXMuXHJcbiAqL1xyXG5cclxuJG5hbWU6IGNvbW1lbnRzO1xyXG5cclxuXHJcbi8vLS0tLS0tLS1cclxuLy8gQkxPQ0tcclxuLy8tLS0tLS0tLVxyXG4uI3skbmFtZX17XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47XHJcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG5cclxuICAgIC8qXHJcbiAgICAubWVkaWEgJntcclxuICAgICAgICAmOmFmdGVye1xyXG4gICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIGhlaWdodDogNzVweDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgICovXHJcbn1cclxuXHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS1cclxuLy8gRUxFTUVOVCBIRUFERVJcclxuLy8tLS0tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfV9faGVhZGVyIHtcclxuXHJcbiAgICAubWVkaWEgJiB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAgbWFyZ2luOiAwIDAgMWVtO1xyXG5cclxuICAgICAgICBoMyB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcblxyXG4gICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDUwcHg7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDUwcHg7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvYmFzZTY0L1NWRy9nYWxsZXJ5LWljb24teWVsbG93LnN2Zyk7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBiYWNrZ3JvdW5kKGNvbnRhaW4pO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBoMiB7XHJcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkY2F0cy1ib2xkO1xyXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogNnB4XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBoNCB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgICAgICAgICBmb250LWZhbWlseTogJGNhdHMtbWVkO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnVzZXItaWNvbiB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHVzZXItaWNvbig2MHB4KTtcclxuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgID4gZGl2Om50aC1jaGlsZCgxKSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiA2MCU7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICA+IGRpdjpudGgtY2hpbGQoMikge1xyXG4gICAgICAgICAgICB3aWR0aDogNDAlO1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmNvbW1lbnRzLS1wYWdlICYge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDIwcHg7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRsaWdodC1ncmV5O1xyXG5cclxuICAgICAgICBidXR0b24sXHJcbiAgICAgICAgLmxpbmsge1xyXG4gICAgICAgICAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMjBweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5saW5rIHtcclxuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRjYXRzO1xyXG4gICAgICAgICAgICBjb2xvcjogJGJyYW5kLWJsYWNrO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkY2F0cztcclxuICAgICAgICAgICAgY29sb3I6ICRicmFuZC1ibGFjaztcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcblxyXG4gICAgICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICAgICAmLmlzLWFjdGl2ZSB7XHJcbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDFweDtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtYmxhY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogNHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICYuaXMtYWN0aXZlIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkY2F0cy1tZWQ7XHJcbiAgICAgICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJiArIC5saW5rIHtcclxuXHJcbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDFweDtcclxuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAtMTBweDtcclxuICAgICAgICAgICAgICAgICAgICB0b3A6IDEwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAyMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1ibGFjaztcclxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBFTEVNRU5UIEZFRURcclxuLy8tLS0tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfV9fZmVlZHtcclxuICAgIC5tZWRpYSAme1xyXG4gICAgICAgIHBhZGRpbmc6IDIwcHggMCA1MHB4O1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICBtYXgtaGVpZ2h0OiA0MDBweDtcclxuICAgICAgICAvL2JvcmRlci10b3A6IDFweCBzb2xpZCAkbGlnaHQtZ3JleTtcclxuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gICAgICAgIG92ZXJmbG93OiBhdXRvO1xyXG4gICAgICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmNvbW1lbnRzLS1wYWdlICZ7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcclxuICAgICAgICBjbGVhcjogYm90aDtcclxuXHJcblxyXG4gICAgICAgIC5idG57XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDtcclxuICAgICAgICB9XHJcblxyXG4gICAgfVxyXG5cclxuICAgIHVse1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6MDtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICBwYWRkaW5nOiAwIDEwcHggMCAwO1xyXG4gICAgfVxyXG59XHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gRUxFTUVOVCBDT01NRU5UIEJPWFxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLiN7JG5hbWV9X19pbnB1dHtcclxuICAgIGJvcmRlcjogbm9uZTtcclxuICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDA7XHJcbiAgICBwYWRkaW5nLXRvcDogMTVweDtcclxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkbGlnaHQtZ3JleTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4uY29tbWVudHNfX2lucHV0LXdyYXBwZXJ7XHJcblxyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgei1pbmRleDogMjAwO1xyXG4gICAgbGVmdDogMjBweDtcclxuICAgIHJpZ2h0OiAyMHB4O1xyXG4gICAgYm90dG9tOiAyMHB4O1xyXG59XHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS1cclxuLy8gRUxFTUVOVCBIRUxQRVJcclxuLy8tLS0tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfV9faGVscGVye1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLWJsYWNrO1xyXG4gICAgY29sb3I6IHdoaXRlO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgcGFkZGluZzogMjBweDtcclxuICAgIGJvdHRvbTogNTBweDtcclxuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDI1MG1zO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpO1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgei1pbmRleDogMzAwO1xyXG59XHJcblxyXG4uI3skbmFtZX1fX2lucHV0OmZvY3VzICsgLiN7JG5hbWV9X19oZWxwZXJ7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIHBvaW50ZXItZXZlbnRzOiBhbGw7XHJcbn1cclxuXHJcblxyXG4vLy0tLS0tLS0tLS0tXHJcbi8vIE1PRElGSUVSXHJcbi8vLS0tLS0tLS0tLS1cclxuLiN7JG5hbWV9LS1tb2RpZmllcnt9XHJcblxyXG4uI3skbmFtZX1fX2VsZW1lbnQtLW1vZGlmaWVye31cclxuXHJcblxyXG4vLy0tLS0tLS0tLS0tXHJcbi8vIFJFTEFURURcclxuLy8tLS0tLS0tLS0tLVxyXG4uY29tbWVudHtcclxuICAgIC8qXHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgIHBhZGRpbmctbGVmdDogNDVweDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIG1hcmdpbi1ib3R0b206IDEycHg7XHJcbiAgICAgKi9cclxuXHJcbiAgICAuY29tbWVudF9faGVhZHNob3R7XHJcbiAgICAgICAgQGluY2x1ZGUgdXNlci1pY29uKDM1cHgpO1xyXG4gICAgICAgIC8vcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIC8vbGVmdDogMDtcclxuICAgICAgICAvL3RvcDogMDtcclxuICAgICAgICBAaW5jbHVkZSBiYWNrZ3JvdW5kKGNvdmVyKTtcclxuICAgIH1cclxuXHJcbiAgICAuY29tbWVudF9fbmFtZXtcclxuICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICBmb250LWZhbWlseTogJGNhdHMtYm9sZDtcclxuICAgICAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogM3B4O1xyXG4gICAgfVxyXG5cclxuICAgIC5jb21tZW50X19kYXRle1xyXG4gICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgfVxyXG5cclxuICAgIC5jb21tZW50cy0tcGFnZSAme1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMTAwcHg7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxuICAgICAgICBmb250LWZhbWlseTogJGNhdHMtbWVkO1xyXG5cclxuICAgICAgICBwe1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDE5cHg7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkYnJhbmQtYmxhY2s7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuODtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5jb21tZW50X19oZWFkc2hvdHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgdXNlci1pY29uKDYwcHgpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmNvbW1lbnRfX2RhdGV7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgICAgICAgICBmb250LWZhbWlseTogJGNhdHMtbWVkO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuY29tbWVudF9fbmFtZXtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA3cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5jb21tZW50cy0tbm8taGVhZHNob3QgJntcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jb21tZW50e1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjFmMTtcclxuICAgIHBhZGRpbmc6IDFlbTtcclxuICAgIG1hcmdpbjogMCAwIDFlbTtcclxuICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDAuNGVtO1xyXG59XHJcblxyXG4uY29tbWVudF9faGVhZGVye1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIG1hcmdpbjogMCAwIDAuNWVtO1xyXG59XHJcblxyXG4uY29tbWVudF9fY29weXtcclxuICAgIGZvbnQtc2l6ZTogMTJweDtcclxufVxyXG5cclxuLmNvbW1lbnRfX2RhdGV7XHJcbiAgICBmb250LXNpemU6IDEycHg7XHJcbn1cclxuIiwiLyoqXHJcbiAqIENPTVBPTkVOVFNcclxuICogQ09VTlRFUlxyXG4gKiBUaGVzZSBjb21wb25lbnRzIGFyZSB1c2VkIHRvIGtlZXAgdHJhY2sgb2YgY29tbWVudCBhbmQgbGlrZSBjb3VudHMgaW4gdGhlIENhdCBDb21tdW5pdHkgU2VjdGlvbnMuXHJcbiAqL1xyXG5cclxuJG5hbWU6IGNvdW50ZXI7XHJcblxyXG4vLy0tLS0tLS0tXHJcbi8vIEJMT0NLXHJcbi8vLS0tLS0tLS1cclxuLiN7JG5hbWV9e1xyXG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICB3aWR0aDogYXV0bztcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG4gICAgZm9udC1mYW1pbHk6ICRjYXRzLWJvbGQ7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAycHg7XHJcbiAgICBjb2xvcjogJGJyYW5kLWJsYWNrO1xyXG5cclxuICAgICY6YmVmb3Jle1xyXG4gICAgICAgIHdpZHRoOiAzMHB4O1xyXG4gICAgICAgIGhlaWdodDogMzBweDtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcclxuICAgICAgICBmb250LXNpemU6IDI1cHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDMwcHg7XHJcbiAgICAgICAgY29sb3I6ICRsaWdodC1ncmV5O1xyXG4gICAgfVxyXG5cclxuICAgIGgzICZ7XHJcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgICAgIGZsb2F0OiByaWdodDtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcclxuICAgIH1cclxufVxyXG5cclxuLy8tLS0tLS0tLS0tLVxyXG4vLyBNT0RJRklFUlxyXG4vLy0tLS0tLS0tLS0tXHJcblxyXG5idXR0b24uI3skbmFtZX17XHJcbiAgICBvdXRsaW5lOiBub25lO1xyXG5cclxuICAgICYuaXMtYWN0aXZle1xyXG4gICAgICAgICY6YmVmb3Jle1xyXG4gICAgICAgICAgICBjb2xvcjogJGJyYW5kLXJlZFxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy8gT3B0aW5nIHRvIGp1c3Qgc2NhbGUgdGhlIGNvbXBvbmVudCB1cFxyXG4vLyBmb3Igbm93IGFuZCBub3QgcmVzZXQgc3R5bGVzLlxyXG4uI3skbmFtZX0tLWxhcmdle1xyXG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjIpO1xyXG5cclxuICAgIC8vIFdoZW4gcGFpcmVkLCBhbGxvdyBmb3Igc29tZSBicmVhdGhpbmcgcm9vbS5cclxuICAgIC8vIENvbnRleHQ6IFNwb25zb3JzaGlwIHBvcnRhbCwgbWFpbiBwZW4gQ2FyZC5cclxuICAgICYgKyAuI3skbmFtZX0tLWxhcmdlLFxyXG4gICAgJiArIGZvcm0gLiN7JG5hbWV9LS1sYXJnZXtcclxuICAgICAgICBtYXJnaW4tbGVmdDogMjRweDtcclxuICAgICAgICAvLyBtYXJnaW4tdG9wOiA1cHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi4jeyRuYW1lfS0tbGlrZXtcclxuXHJcbiAgICAmW2RhdGEtbGlrZT1cInRydWVcIl17XHJcbiAgICAgICAgJjpiZWZvcmV7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkYnJhbmQtcmVkO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvLyBNaXhpbiB0aGUgbGlrZSBpY29uXHJcbiAgICAmOmJlZm9yZXtcclxuICAgICAgICBAaW5jbHVkZSBsaWtlLWljb247XHJcbiAgICAgICAgLy8gcGFkZGluZy10b3A6IDJweDtcclxuICAgIH1cclxufVxyXG5cclxuLiN7JG5hbWV9LS1jb21tZW50czpiZWZvcmV7IFxyXG4gICAgQGluY2x1ZGUgY29tbWVudC1pY29uO1xyXG4gICAgZm9udC1zaXplOiAzNHB4O1xyXG4gICAgcGFkZGluZy1yaWdodDogNHB4O1xyXG59XHJcblxyXG5cclxuLmNvdW50ZXItc3VtbWFyeXtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHJpZ2h0OiAzdnc7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjIpO1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xyXG5cclxuICAgIC4jeyRuYW1lfXtcclxuICAgICAgICBjb2xvcjogd2hpdGU7XHJcbiAgICAgICAgXHJcbiAgICAgICAgJjpiZWZvcmV7XHJcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0iLCIvKipcclxuICogQ09NUE9ORU5UU1xyXG4gKiBDQVJEXHJcbiAqIFxyXG4gKi9cclxuXHJcbiRuYW1lOiBjYXJkO1xyXG5cclxuLy8tLS0tLS0tLVxyXG4vLyBCTE9DS1xyXG4vLy0tLS0tLS0tXHJcbi4jeyRuYW1lfXtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgcGFkZGluZzogMjBweCAxNXB4O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgJGxpZ2h0LWdyZXk7XHJcblxyXG4gICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0tYW5kLXVwKXtcclxuICAgICAgICBwYWRkaW5nOiAzMHB4O1xyXG4gICAgfSBcclxufVxyXG5cclxuYS4jeyRuYW1lfS4jeyRuYW1lfS4jeyRuYW1lfS4jeyRuYW1lfSB7XHJcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtZ3JlZW47XHJcbiAgICAgICAgY29sb3I6IHdoaXRlO1xyXG4gICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLy8tLS0tLS0tLVxyXG4vLyBNT0RJRklFUlxyXG4vLy0tLS0tLS0tXHJcbi4jeyRuYW1lfS0tYnRue1xyXG4gICAgcGFkZGluZy1ib3R0b206IDcwcHg7XHJcblxyXG4gICAgLmJ0bntcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgYm90dG9tOiAzMHB4O1xyXG4gICAgfVxyXG5cclxufSIsIi8qKlxyXG4gKiBDT01QT05FTlRTXHJcbiAqIENvb2tpZXNcclxuICogVGhpcyBpcyBhbiBleGFtcGxlIG9mIGEgY29tcG9uZW50IHBhcnRpYWxcclxuICovXHJcblxyXG4kbmFtZTogY29va2llcztcclxuXHJcbi4jeyRuYW1lfXtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgIHotaW5kZXg6IDEwMDtcclxuICAgIHBhZGRpbmc6IDIwcHg7XHJcbiAgICB0b3A6IC0zMDBweDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xyXG4gICAgQGluY2x1ZGUgYW5pbWF0ZSh0b3AgNTAwbXMgNTAwbXMpO1xyXG5cclxuICAgIC5vcGVuLW5vdGlmaWNhdGlvbnMgJntcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICB9XHJcbn1cclxuXHJcbi4jeyRuYW1lfV9fbWVzc2FnZXtcclxuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbn1cclxuXHJcblxyXG4vL0JSRUFLUE9JTlRTXHJcbkBpbmNsdWRlIHJlc3BvbmQtdG8obWVkaXVtLWFuZC11cCl7XHJcbiAgICAuI3skbmFtZX17XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcclxuICAgIH1cclxuXHJcbiAgICAuI3skbmFtZX1fX21lc3NhZ2V7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgIH1cclxufVxyXG4iLCIvKipcclxuICogQ09NUE9ORU5UU1xyXG4gKiBDUk9QIFdJTkRPV1xyXG4gKiBUaGlzIGlzIHRoZSBzdWIgcG9wdXAgZm9yIG1hbmFnaW5nIGltYWdlIGNyb3BzIGJlZm9yZSB1cGxvYWQuXHJcbiAqL1xyXG5cclxuJG5hbWU6IGNyb3Atd2luZG93O1xyXG5cclxuXHJcbiNjcm9wLW1leyBtYXgtd2lkdGg6IDEwMCU7fVxyXG5cclxuLy8tLS0tLS0tLVxyXG4vLyBCTE9DS1xyXG4vLy0tLS0tLS0tXHJcbi4jeyRuYW1lfXtcclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIGJhY2tncm91bmQ6IHJnYmEoJGJyYW5kLWJsdWUsIDAuOSk7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG5cclxuICAgICYuaXMtYWN0aXZle1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IGFsbDtcclxuICAgIH1cclxufVxyXG5cclxuLy8tLS0tLS0tLS0tLVxyXG4vLyBFTEVNRU5UXHJcbi8vLS0tLS0tLS0tLS1cclxuLiN7JG5hbWV9X19pbm5lcntcclxuICAgIHBhZGRpbmc6IDIwcHg7XHJcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcclxuICAgIGJveC1zaGFkb3c6IDAgMCAyMHB4IDVweCByZ2JhKCRibGFjaywgMC4yKTtcclxuICAgIG1heC13aWR0aDogNDQwcHg7XHJcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgIG1hcmdpbi1yaWdodDogYXV0bztcclxufVxyXG5cclxuLy8tLS0tLS0tLS0tLVxyXG4vLyBDQU5WQVNcclxuLy8tLS0tLS0tLS0tLVxyXG4uI3skbmFtZX1fX2NhbnZhc3tcclxuICAgIHdpZHRoOiAzMDBweDtcclxuICAgIGhlaWdodDogMzAwcHg7XHJcbiAgICBtYXJnaW46IDAgYXV0byAyMHB4O1xyXG59XHJcblxyXG4vLy0tLS0tLS0tLS0tXHJcbi8vIEJVVFRPTlNcclxuLy8tLS0tLS0tLS0tLVxyXG4uI3skbmFtZX1fX2J0bnN7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgYWxpZ24tY29udGVudDogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cclxuICAgIC5idG57XHJcbiAgICAgICAgbWFyZ2luOiAwIDJweCAxMHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLy8tLS0tLS0tLS0tLVxyXG4vLyBSRVNVTFRcclxuLy8tLS0tLS0tLS0tLVxyXG4jY3JvcFJlc3VsdHtcclxuICAgIGNhbnZhc3tcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxufVxyXG4iLCIvKipcclxuICogQ09NUE9ORU5UU1xyXG4gKiBDVEEgV0FMTFxyXG4gKiBcclxuICovXHJcblxyXG4kbmFtZTogY3RhLXdhbGw7XHJcblxyXG5cclxuLy8tLS0tLS0tLVxyXG4vLyBCTE9DS1xyXG4vLy0tLS0tLS0tXHJcbi4jeyRuYW1lfXtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAmLmlzLWFjdGl2ZXtcclxuICAgICAgICBAZXh0ZW5kICVwZC10cC1sZztcclxuICAgICAgICAmOmFmdGVye1xyXG4gICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGJsYWNrLCAwLjMpO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBjb3ZlcihhYnNvbHV0ZSk7XHJcbiAgICAgICAgICAgIC8vIHRvcDogLTQwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLy8tLS0tLS0tLS0tXHJcbi8vIEVMRU1FTlRcclxuLy8tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfV9fcG9wdXB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDEwMHB4O1xyXG4gICAgei1pbmRleDogMTtcclxuICAgIGNvbG9yOiB3aGl0ZTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGJsYWNrLCAwLjgpO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBwYWRkaW5nOiAzMHB4O1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuXHJcbiAgICBoM3tcclxuICAgICAgICBjb2xvcjogd2hpdGUgIWltcG9ydGFudDtcclxuICAgICAgICBmb250LXNpemU6IDQwcHggIWltcG9ydGFudDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xyXG4gICAgfVxyXG5cclxuICAgIGg2e1xyXG4gICAgICAgIGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgIC5pcy1hY3RpdmUgJntcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIH1cclxufVxyXG5cclxuXHJcbi8vLS0tLS0tLS0tLS1cclxuLy8gTU9ESUZJRVJcclxuLy8tLS0tLS0tLS0tLSIsIi8qKlxyXG4gKiBDT01QT05FTlRTXHJcbiAqIERPVFMgZm9yIHNsaWNrIHNsaWRlcnNcclxuICovXHJcblxyXG5cclxuJG5hbWU6IHNsaWNrLWRvdHM7XHJcblxyXG4uc2xpY2stZG90cyB7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICB0b3A6IDYwcHg7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG5cclxuXHJcbiAgICBsaTpvbmx5LWNoaWxkIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICBsaSB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICBoZWlnaHQ6IDIwcHg7XHJcbiAgICAgICAgd2lkdGg6IDIwcHg7XHJcbiAgICAgICAgbWFyZ2luOiAwIDJweDtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuXHJcbiAgICAgICAgYnV0dG9uIHtcclxuICAgICAgICAgICAgYm9yZGVyOiAwO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIGhlaWdodDogaW5oZXJpdDtcclxuICAgICAgICAgICAgd2lkdGg6IGluaGVyaXQ7XHJcbiAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAwcHg7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMHB4O1xyXG4gICAgICAgICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDVweDtcclxuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuXHJcbiAgICAgICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcclxuXHJcbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IGluaGVyaXQ7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGluaGVyaXQ7XHJcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGxhY2Vob2xkO1xyXG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG4gICAgICAgICAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIFtjbGFzcyo9XCJ0d2l0dGVyXCJdICYsXHJcbiAgICAgICAgW2NsYXNzKj1cImZhY2Vib29rXCJdICYge1xyXG4gICAgICAgICAgICB3aWR0aDogMTJweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxMnB4O1xyXG5cclxuICAgICAgICAgICAgYnV0dG9uOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2NjY2NjO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLnNsaWNrLWFjdGl2ZSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAyNXB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDI1cHg7XHJcblxyXG4gICAgICAgICAgICBidXR0b24ge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IGluaGVyaXQ7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGluaGVyaXQ7XHJcblxyXG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiBpbmhlcml0O1xyXG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogaW5oZXJpdDtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBbY2xhc3MqPVwidHdpdHRlclwiXSAmLFxyXG4gICAgICAgICAgICBbY2xhc3MqPVwiZmFjZWJvb2tcIl0gJiB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTZweDtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMTZweDtcclxuXHJcbiAgICAgICAgICAgICAgICBidXR0b246YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjN2E3YTdhO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59IiwiLyoqXHJcbiAqIENPTVBPTkVOVFNcclxuICogRXhhbXBsZVxyXG4gKiBUaGlzIGlzIGFuIGV4YW1wbGUgb2YgYSBjb21wb25lbnQgcGFydGlhbFxyXG4gKi9cclxuXHJcbiRuYW1lOiBleGFtcGxlO1xyXG5cclxuXHJcbi8vLS0tLS0tLS1cclxuLy8gQkxPQ0tcclxuLy8tLS0tLS0tLVxyXG4uI3skbmFtZX17XHJcbiAgICAmOmJlZm9yZXtcclxuICAgICAgICBjb250ZW50OiAnIFRoaXMgaXMgdGhlIFxcJyAjeyRuYW1lfSBcXCcgY29tcG9uZW50LiDwn6STIEhFWSBUSEVSRSEnO1xyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLy8tLS0tLS0tLS0tXHJcbi8vIEVMRU1FTlRcclxuLy8tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfV9fZWxlbWVudHt9XHJcblxyXG5cclxuLy8tLS0tLS0tLS0tLVxyXG4vLyBNT0RJRklFUlxyXG4vLy0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfS0tbW9kaWZpZXJ7fVxyXG5cclxuLiN7JG5hbWV9X19lbGVtZW50LS1tb2RpZmllcnt9XHJcbiIsIi8qKlxyXG4gKiBDT01QT05FTlRTIC8gTEFZT1VUXHJcbiAqIGV6IFNlYXJjaFxyXG4gKi9cclxuXHJcbiRuYW1lOiBlenNlYXJjaDtcclxuXHJcbi4jeyRuYW1lfXt9XHJcblxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS1cclxuLy8gU1VNTUFSWVxyXG4vLy0tLS0tLS0tLS0tLS0tLVxyXG4uI3skbmFtZX0tc3VtbWFyeSB7fVxyXG5cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tXHJcbi8vIFJFU1VMVCBDT1VOVFxyXG4vLy0tLS0tLS0tLS0tLS0tLVxyXG4uI3skbmFtZX0tcmVzdWx0LWNvdW50e31cclxuXHJcblxyXG4vLy0tLS0tLS0tLS1cclxuLy8gUkVTVUxUU1xyXG4vLy0tLS0tLS0tLS1cclxuLiN7JG5hbWV9LXJlc3VsdHN7fVxyXG5cclxuXHJcbi8vLS0tLS0tLS0tXHJcbi8vIFJFU1VMVFxyXG4vLy0tLS0tLS0tLVxyXG4uI3skbmFtZX0tcmVzdWx0e1xyXG5cclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA2MDBweCl7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIH1cclxufVxyXG5cclxuXHJcbi8vLS0tLS0tLS1cclxuLy8gUEFHRVJcclxuLy8tLS0tLS0tLVxyXG4uI3skbmFtZX0tcGFnZXIge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBwYWRkaW5nOiAwIDAgNDBweDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICBkaXYge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAgbWFyZ2luOiAwIDAgMjBweDtcclxuICAgIH1cclxuICAgIC5wYWdlLS1saW5re1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgfVxyXG5cclxuICAgIC5wcmV2IHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICBib3R0b206IDA7XHJcblxyXG4gICAgICAgICY6YmVmb3Jle1xyXG4gICAgICAgIEBpbmNsdWRlIGFycm93LWxlZnQtaWNvbjtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLm5leHQge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICByaWdodDogMDtcclxuICAgICAgICBib3R0b206IDA7XHJcblxyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIEBpbmNsdWRlIGFycm93LXJpZ2h0LWljb247XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgc3Bhbi5wcmV2LFxyXG4gICAgc3Bhbi5uZXh0IHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgIC5wYWdlIHtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgd2lkdGg6IDMwcHg7XHJcbiAgICAgICAgaGVpZ2h0OiAzMHB4O1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIH1cclxuXHJcbn1cclxuXHJcblxyXG4vLy0tLS0tLS1cclxuLy8gRk9STVxyXG4vLy0tLS0tLS1cclxuLiN7JG5hbWV9LWZvcm17XHJcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbn1cclxuIiwiLyoqXHJcbiAqIENPTVBPTkVOVFNcclxuICogRkFRXHJcbiAqL1xyXG5cclxuXHJcbi5mYXEtcSwgLmZhcS1saW5rIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcbiAgICBwYWRkaW5nOiAxMHB4IDMwcHg7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgY29sb3I6ICRicmFuZC1ibGFjaztcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIHRleHQtaW5kZW50OiAwO1xyXG4gICAgdHJhbnNpdGlvbjogdGV4dC1pbmRlbnQgMjAwbXMgZWFzZS1pbi1vdXQ7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICBjb2xvcjogJGJyYW5kLWJsYWNrO1xyXG4gICAgICAgIHRleHQtaW5kZW50OiA1cHg7XHJcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcbiAgICB9XHJcblxyXG5cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIEBpbmNsdWRlIHBsdXMtaWNvbjtcclxuICAgICAgICBtYXJnaW4tdG9wOiAycHg7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XHJcbiAgICAgICAgdGV4dC1pbmRlbnQ6IDA7XHJcbiAgICB9XHJcblxyXG4gICAgJi5pcy1hY3RpdmUge1xyXG4gICAgICAgIHRleHQtaW5kZW50OiA1cHg7XHJcblxyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBtaW51cy1pY29uO1xyXG4gICAgICAgICAgICB0ZXh0LWluZGVudDogMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLmZhcS1xLS1hbHQge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICBwYWRkaW5nOiAzMHB4IDA7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRsaWdodC1ncmV5O1xyXG5cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIEBpbmNsdWRlIGNoZXYtZG93bi1pY29uO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICByaWdodDogMTVweDtcclxuICAgIH1cclxuXHJcbiAgICAmLmlzLWFjdGl2ZSB7XHJcblxyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBjaGV2LWRvd24taWNvbjtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJjpmaXJzdC1vZi10eXBlIHtcclxuICAgICAgICBib3JkZXItdG9wOiBub25lO1xyXG4gICAgfVxyXG59XHJcblxyXG4gICAgLmZhcS1saW5rIHtcclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLmlzLWFjdGl2ZSB7XHJcbiAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4uZmFxLWEge1xyXG4gICAgcGFkZGluZzogMCAwIDAgMDtcclxuICAgIC8vcGFkZGluZzogMzBweCAzMHB4IDIwcHg7XHJcbiAgICAvL2JhY2tncm91bmQtY29sb3I6ICRwbGFjZWhvbGQ7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG5cclxuXHJcbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKHdpZGUtYW5kLXVwKSB7XHJcbiAgICAgICAgcGFkZGluZzogMCAwIDAgMDtcclxuICAgIH1cclxuXHJcbiAgICA+IHAge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XHJcbiAgICB9XHJcblxyXG4gICAgLmZhcS1hIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcclxuICAgICAgICBwYWRkaW5nOiAwIDAgMCAxMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5ib2R5LWNvcHkge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDBweDtcclxuICAgIH1cclxuICAgIC8vIEFjY291bnQgZm9yIGlmIG1heCBoZWlnaHQgd2FzIHNldCBvbiBhIGxhcmdlIHNjcmVlbiBidXQgcm90YXRlcyB0byBhIHNtYWxsZXIgc2NyZWVuXHJcbiAgICAmW3N0eWxlKj1cIm1heC1oZWlnaHRcIl0ge1xyXG4gICAgICAgIG92ZXJmbG93LXk6IGF1dG8gIWltcG9ydGFudDtcclxuICAgIH1cclxufVxyXG5cclxuICAgIC5mYXEtYS0tYWx0IHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8od2lkZS1hbmQtdXApIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMHB4IDVweCAyMHB4IDVweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiIsIu+7vy5ldmVudHNfY2FydCB7XHJcbiAgICB3aWR0aDoxMDAlO1xyXG4gICAgcGFkZGluZzoxZW0gMWVtIDA7XHJcbiAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xyXG4gICAgfVxyXG59XHJcblxyXG4uY2FydF9pdGVtIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgcGFkZGluZzogMCAwIDFlbTtcclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICB9XHJcblxyXG59XHJcblxyXG4uY2FydF9pbmZvX2NvbCB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIG1pbi1oZWlnaHQ6NzBweDtcclxuICAgIC50cy01XHJcbiAgICB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IC43NWVtO1xyXG4gICAgfVxyXG59XHJcbi5jYXJ0X2l0ZW1fZGV0YWlscyB7XHJcbiAgICBkaXNwbGF5OmZsZXg7XHJcbn1cclxuLmNhcnRfaXRlbV90aXRsZSB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxufVxyXG4uY2FydF9pdGVtX3ByaWNlIHtcclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xyXG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgfVxyXG59XHJcbi5jYXJ0X2l0ZW1fcXVhbnRpdHkge1xyXG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbiAgICAuZm9ybV9fc2VsZWN0XHJcbiAgICB7XHJcbiAgICAgICAgd2lkdGg6IDEyMHB4O1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmYgIWltcG9ydGFudDtcclxuICAgICAgICBtYXJnaW46IDAuNWVtIDAgMDtcclxuICAgIH1cclxufVxyXG4uY2FydF9kaXNjb3VudF9jb2RlIHtcclxuICAgIG1heC13aWR0aDoyMDBweDtcclxufVxyXG4iLCJcclxuJGxvZ2luLWltYWdlLXNpemU6IDQ1cHg7XHJcblxyXG4ubG9naW4tYnV0dG9ue1xyXG4gIEBleHRlbmQgJXRzLTM7XHJcbiAgY29sb3I6ICNmZmY7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBmb250LXNpemU6IDE1cHg7XHJcbiAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHJcbiAgJjpiZWZvcmV7XHJcbiAgICBAaW5jbHVkZSBsb2dpbi1pY29uO1xyXG4gICAgZm9udC1zaXplOiA0NXB4O1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBjb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuICB9XHJcbn1cclxuXHJcblxyXG4ubG9naW4tYnV0dG9uLS1zcG9uc29ye1xyXG4gIG1hcmdpbi1yaWdodDogMzBweDtcclxuICBzcGFue1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcbiAgJjpiZWZvcmV7XHJcbiAgICBmb250LXNpemU6IDMwcHg7XHJcbiAgfVxyXG5cclxuICBAbWVkaWEgKG1pbi13aWR0aDogJG5hdmlnYXRpb24tYnJlYWtwb2ludCl7XHJcbiAgICBtYXJnaW46IDAgMjBweDtcclxuICAgIHNwYW57XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZTtcclxuICAgIH1cclxuICAgICY6YmVmb3Jle1xyXG4gICAgICBmb250LXNpemU6IDQ1cHg7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcblN1cGVyIEZvcm0gUmVzZXRcclxuXHJcbkEgY291cGxlIG9mIHRoaW5ncyB0byB3YXRjaCBvdXQgZm9yOlxyXG5cclxuLSBJRTg6IElmIGEgdGV4dCBpbnB1dCBkb2Vzbid0IGhhdmUgcGFkZGluZyBvbiBhbGwgc2lkZXMgb3Igbm9uZSB0aGUgdGV4dCB3b24ndCBiZSBjZW50ZXJlZC5cclxuLSBUaGUgZGVmYXVsdCBib3JkZXIgc2l6ZXMgb24gdGV4dCBpbnB1dHMgaW4gYWxsIFVBcyBzZWVtIHRvIGJlIHNsaWdodGx5IGRpZmZlcmVudC4gWW91J3JlIGJldHRlciBvZmYgdXNpbmcgY3VzdG9tIGJvcmRlcnMuXHJcbi0gWW91IE5FRUQgdG8gc2V0IHRoZSBmb250LXNpemUgYW5kIGZhbWlseSBvbiBhbGwgZm9ybSBlbGVtZW50c1xyXG4tIFNlYXJjaCBpbnB1dHMgbmVlZCB0byBoYXZlIHRoZWlyIGFwcGVhcmFuY2UgcmVzZXQgYW5kIHRoZSBib3gtc2l6aW5nIHNldCB0byBjb250ZW50LWJveCB0byBtYXRjaCBvdGhlciBVQXNcclxuLSBZb3UgY2FuIHN0eWxlIHRoZSB1cGxvYWQgYnV0dG9uIGluIHdlYmtpdCB1c2luZyA6Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uXHJcbi0gOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiBzZWxlY3RvcnMgY2FuJ3QgYmUgdXNlZCBpbiB0aGUgc2FtZSBzZWxlY3RvciBhcyBub3JtYWwgb25lcy4gRkYgYW5kIElFIGZyZWFrIG91dC5cclxuLSBJRTogWW91IGRvbid0IG5lZWQgdG8gZmFrZSBpbmxpbmUtYmxvY2sgd2l0aCBsYWJlbHMgYW5kIGZvcm0gY29udHJvbHMgaW4gSUUuIFRoZXkgZnVuY3Rpb24gYXMgaW5saW5lLWJsb2NrLlxyXG4tIEJ5IHR1cm5pbmcgb2ZmIDo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiwgaXQgcmVtb3ZlcyB0aGUgZXh0cmEgd2hpdGVzcGFjZSBvbiB0aGUgbGVmdCBvbiBzZWFyY2ggaW5wdXRzXHJcblxyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuXHJcbmlucHV0LFxyXG5sYWJlbCxcclxuc2VsZWN0LFxyXG5idXR0b24sXHJcbnRleHRhcmVhe1xyXG5cdG1hcmdpbjogMDtcclxuXHRib3JkZXI6IDA7XHJcblx0cGFkZGluZzogMDtcclxuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuXHR3aGl0ZS1zcGFjZTogbm9ybWFsO1xyXG5cdGJhY2tncm91bmQ6IG5vbmU7XHJcblx0bGluZS1oZWlnaHQ6IDE7XHJcbn1cclxuXHJcbi8qIFJlbW92ZSB0aGUgc3R1cGlkIG91dGVyIGdsb3cgaW4gV2Via2l0ICovXHJcbmlucHV0OmZvY3Vze1xyXG5cdG91dGxpbmU6IDA7XHJcbn1cclxuXHJcbi8qIEJveCBTaXppbmcgUmVzZXRcclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG5cclxuLyogQWxsIG9mIG91ciBjdXN0b20gY29udHJvbHMgc2hvdWxkIGJlIHdoYXQgd2UgZXhwZWN0IHRoZW0gdG8gYmUgKi9cclxuaW5wdXQsXHJcbnRleHRhcmVhXHJcbntcclxuXHQtd2Via2l0LWJveC1zaXppbmc6Y29udGVudC1ib3g7XHJcblx0LW1vei1ib3gtc2l6aW5nOmNvbnRlbnQtYm94O1xyXG5cdGJveC1zaXppbmc6Y29udGVudC1ib3g7XHJcbn1cclxuXHJcbi8qIFRoZXNlIGVsZW1lbnRzIGFyZSB1c3VhbGx5IHJlbmRlcmVkIGEgY2VydGFpbiB3YXkgYnkgdGhlIGJyb3dzZXIgKi9cclxuYnV0dG9uLFxyXG5pbnB1dFt0eXBlPXJlc2V0XSxcclxuaW5wdXRbdHlwZT1idXR0b25dLFxyXG5pbnB1dFt0eXBlPXN1Ym1pdF0sXHJcbmlucHV0W3R5cGU9Y2hlY2tib3hdLFxyXG5pbnB1dFt0eXBlPXJhZGlvXSxcclxuc2VsZWN0XHJcbntcclxuXHQtd2Via2l0LWJveC1zaXppbmc6Ym9yZGVyLWJveDtcclxuXHQtbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtcclxuXHRib3gtc2l6aW5nOmJvcmRlci1ib3g7XHJcbn1cclxuXHJcbi8qIEJ1dHRvbiBDb250cm9sc1xyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcblxyXG5pbnB1dFt0eXBlPWNoZWNrYm94XSxcclxuaW5wdXRbdHlwZT1yYWRpb11cclxue1xyXG5cdHdpZHRoOjEzcHg7XHJcblx0aGVpZ2h0OjEzcHg7XHJcbn1cclxuXHJcbi8qIEZpbGUgVXBsb2Fkc1xyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcblxyXG5pbnB1dFt0eXBlPWZpbGVdXHJcbntcclxuXHJcbn1cclxuXHJcbi8qIFNlYXJjaCBJbnB1dFxyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcblxyXG4vKiBNYWtlIHdlYmtpdCByZW5kZXIgdGhlIHNlYXJjaCBpbnB1dCBsaWtlIGEgbm9ybWFsIHRleHQgZmllbGQgKi9cclxuaW5wdXRbdHlwZT1zZWFyY2hdXHJcbntcclxuXHQtd2Via2l0LWFwcGVhcmFuY2U6dGV4dGZpZWxkO1xyXG5cdC13ZWJraXQtYm94LXNpemluZzpjb250ZW50LWJveDtcclxufVxyXG5cclxuLyogVHVybiBvZmYgdGhlIHJlY2VudCBzZWFyY2ggZm9yIHdlYmtpdC4gSXQgYWRkcyBhYm91dCAxNXB4IHBhZGRpbmcgb24gdGhlIGxlZnQgKi9cclxuOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uXHJcbntcclxuXHRkaXNwbGF5Om5vbmU7XHJcbn1cclxuXHJcbi8qIEJ1dHRvbnNcclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG5cclxuYnV0dG9uLFxyXG5pbnB1dFt0eXBlPVwicmVzZXRcIl0sXHJcbmlucHV0W3R5cGU9XCJidXR0b25cIl0sXHJcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl1cclxue1xyXG5cdC8qIEZpeCBJRTcgZGlzcGxheSBidWcgKi9cclxuXHRvdmVyZmxvdzp2aXNpYmxlO1xyXG5cdHdpZHRoOmF1dG87XHJcbn1cclxuXHJcbi8qIElFOCBhbmQgRkYgZnJlYWsgb3V0IGlmIHRoaXMgcnVsZSBpcyB3aXRoaW4gYW5vdGhlciBzZWxlY3RvciAqL1xyXG46Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uXHJcbntcdFxyXG5cdHBhZGRpbmc6MDtcclxuXHRib3JkZXI6MDtcclxuXHRiYWNrZ3JvdW5kOm5vbmU7XHJcbn1cclxuXHJcbi8qIFRleHRhcmVhXHJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuXHJcbnRleHRhcmVhIFxyXG57XHJcblx0LyogTW92ZSB0aGUgbGFiZWwgdG8gdGhlIHRvcCAqL1xyXG5cdHZlcnRpY2FsLWFsaWduOnRvcDtcclxuXHRcclxuXHQvKiBUdXJuIG9mZiBzY3JvbGwgYmFycyBpbiBJRSB1bmxlc3MgbmVlZGVkICovXHJcblx0b3ZlcmZsb3c6YXV0bztcclxufVxyXG5cclxuLyogU2VsZWN0c1xyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcblxyXG5zZWxlY3Rcclxue1xyXG5cclxufVxyXG5cclxuc2VsZWN0W211bHRpcGxlXSBcclxue1xyXG5cdC8qIE1vdmUgdGhlIGxhYmVsIHRvIHRoZSB0b3AgKi9cclxuXHR2ZXJ0aWNhbC1hbGlnbjp0b3A7XHJcbn1cclxuXHJcbmZpZWxkc2V0e1xyXG5cdGJvcmRlcjogbm9uZTtcclxuXHR3aWR0aDogYXV0bztcclxuXHRwYWRkaW5nOiAwO1xyXG59IiwiLyoqXHJcbiAqIENPTVBPTkVOVFNcclxuICogRk9STSAtIEJBU0VcclxuICovXHJcblxyXG4kbmFtZTogZm9ybTtcclxuXHJcbi4jeyRuYW1lfSB7XHJcbn1cclxuXHJcblxyXG4vL01JWElOXHJcblxyXG5AbWl4aW4gcGxhY2Vob2xkLWNvbG9yKCRjb2xvcikge1xyXG4gICAgJjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7IC8qIENocm9tZS9PcGVyYS9TYWZhcmkgKi9cclxuICAgICAgICBjb2xvcjogJGNvbG9yO1xyXG4gICAgfVxyXG5cclxuICAgICY6Oi1tb3otcGxhY2Vob2xkZXIgeyAvKiBGaXJlZm94IDE5KyAqL1xyXG4gICAgICAgIGNvbG9yOiAkY29sb3I7XHJcbiAgICB9XHJcblxyXG4gICAgJjotbXMtaW5wdXQtcGxhY2Vob2xkZXIgeyAvKiBJRSAxMCsgKi9cclxuICAgICAgICBjb2xvcjogJGNvbG9yO1xyXG4gICAgfVxyXG5cclxuICAgICY6LW1vei1wbGFjZWhvbGRlciB7IC8qIEZpcmVmb3ggMTgtICovXHJcbiAgICAgICAgY29sb3I6ICRjb2xvcjtcclxuICAgIH1cclxufVxyXG5cclxuQG1peGluIHBsYWNlaG9sZCgkcHJvcGVydHksICR2YWx1ZSkge1xyXG4gICAgJjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7IC8qIENocm9tZS9PcGVyYS9TYWZhcmkgKi9cclxuICAgICAgICAkcHJvcGVydHk6ICR2YWx1ZTtcclxuICAgIH1cclxuXHJcbiAgICAmOjotbW96LXBsYWNlaG9sZGVyIHsgLyogRmlyZWZveCAxOSsgKi9cclxuICAgICAgICAkcHJvcGVydHk6ICR2YWx1ZTtcclxuICAgIH1cclxuXHJcbiAgICAmOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7IC8qIElFIDEwKyAqL1xyXG4gICAgICAgICRwcm9wZXJ0eTogJHZhbHVlO1xyXG4gICAgfVxyXG5cclxuICAgICY6LW1vei1wbGFjZWhvbGRlciB7IC8qIEZpcmVmb3ggMTgtICovXHJcbiAgICAgICAgJHByb3BlcnR5OiAkdmFsdWU7XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG4vKiBUZXh0IElucHV0c1xyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcbi8vIGlucHV0W3R5cGU9J2RhdGUnXSxcclxuLy8gaW5wdXRbdHlwZT0nZGF0ZXRpbWUnXSxcclxuLy8gaW5wdXRbdHlwZT0nZGF0ZXRpbWUtbG9jYWwnXSxcclxuLy8gaW5wdXRbdHlwZT0nZW1haWwnXSxcclxuLy8gaW5wdXRbdHlwZT0nbW9udGgnXSxcclxuLy8gaW5wdXRbdHlwZT0nbnVtYmVyJ10sXHJcbi8vIGlucHV0W3R5cGU9J3Bhc3N3b3JkJ10sXHJcbi8vIGlucHV0W3R5cGU9J3JhbmdlJ10sXHJcbi8vIGlucHV0W3R5cGU9J3NlYXJjaCddLFxyXG4vLyBpbnB1dFt0eXBlPSd0ZWwnXSxcclxuLy8gaW5wdXRbdHlwZT0ndGV4dCddLFxyXG4vLyBpbnB1dFt0eXBlPSd0aW1lJ10sXHJcbi8vIGlucHV0W3R5cGU9J3VybCddLFxyXG4vLyBpbnB1dFt0eXBlPSd3ZWVrJ10sXHJcbi8vIGlucHV0W3R5cGVdLFxyXG4uaW5wdXQsXHJcbi4jeyRuYW1lfV9faW5wdXQsXHJcbi4jeyRuYW1lfV9fbWVzc2FnZSxcclxuLnNlbGVjdCxcclxuLiN7JG5hbWV9X19zZWxlY3QsXHJcbi4jeyRuYW1lfV9fZGF0ZSB7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKCRicmFuZC1ibGFjaywgMCk7XHJcbiAgICAvLyBAaW5jbHVkZSBwbGFjZWhvbGQtY29sb3IocmdiYSgkYnJhbmQtYmxhY2ssIDAuNSkpO1xyXG4gICAgaGVpZ2h0OiA0NHB4O1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBwYWRkaW5nOiAwIDEycHg7XHJcbiAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICByZXNpemU6IG5vbmU7XHJcbiAgICBAaW5jbHVkZSBib2R5LWNvcHk7XHJcbiAgICBmb250LWZhbWlseTogJHNhbnM7XHJcbiAgICAvKmJvcmRlci1yYWRpdXM6NnB4OyovXHJcblxyXG4gICAgJltjbGFzcyo9XCJsYXJnZVwiXSB7XHJcbiAgICAgICAgaGVpZ2h0OiA1NnB4O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgIH1cclxuXHJcbiAgICAmW3R5cGU9J3Bhc3N3b3JkJ10ge1xyXG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAycHg7XHJcblxyXG4gICAgICAgICY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIgeyAvKiBDaHJvbWUvT3BlcmEvU2FmYXJpICovXHJcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjo6LW1vei1wbGFjZWhvbGRlciB7IC8qIEZpcmVmb3ggMTkrICovXHJcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjotbXMtaW5wdXQtcGxhY2Vob2xkZXIgeyAvKiBJRSAxMCsgKi9cclxuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOi1tb3otcGxhY2Vob2xkZXIgeyAvKiBGaXJlZm94IDE4LSAqL1xyXG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5pbnB1dCxcclxuLiN7JG5hbWV9X19pbnB1dCxcclxuLiN7JG5hbWV9X19zZWxlY3QsXHJcbi4jeyRuYW1lfV9fbWVzc2FnZSxcclxuLiN7JG5hbWV9X19jaGVja2JveCxcclxuLiN7JG5hbWV9X19yYWRpbyxcclxuLiN7JG5hbWV9X19kYXRlIHtcclxuICAgIC8vIGNvbG9yOiBpbmhlcml0O1xyXG4gICAgYm9yZGVyLXJhZGl1czo2cHg7XHJcbiAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcclxuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcclxuICAgIEBpbmNsdWRlIGFuaW1hdGUoYm94LXNoYWRvdyA1MG1zKTtcclxuXHJcbiAgICAmOmZvY3VzIHtcclxuICAgICAgICBvdXRsaW5lOiAwO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICAvKmJveC1zaGFkb3c6IDAgMCA1cHggMnB4IHJnYmEoOTQsIDk0LCA5NCwgMC4xNSk7Ki9cclxuICAgIH1cclxufVxyXG5cclxuLiN7JG5hbWV9X19tZXNzYWdlIHtcclxuICAgIHBhZGRpbmctdG9wOiAxMnB4O1xyXG4gICAgcGFkZGluZy1ib3R0b206IDEycHg7XHJcbiAgICBoZWlnaHQ6IGF1dG87XHJcbn1cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIElOUFVUXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi5pbnB1dCxcclxuLiN7JG5hbWV9X19pbnB1dCxcclxuW3R5cGU9XCJ0ZXh0XCJdIHtcclxuICAgIEBpbmNsdWRlIHBsYWNlaG9sZC1jb2xvcihyZ2JhKCRicmFuZC1ibGFjaywgMC41KSk7XHJcblxyXG4gICAgJjpmb2N1cyB7XHJcbiAgICAgICAgLy8gaGlkZSBwbGFjZWhvbGRlciBjb3B5IG9uIGZvY3VzXHJcbiAgICAgICAgQGluY2x1ZGUgcGxhY2Vob2xkLWNvbG9yKHJnYmEoJGJyYW5kLWJsYWNrLCAwKSk7XHJcbiAgICB9XHJcbn1cclxuXHJcbmlucHV0W3R5cGU9J2ltYWdlJ10ge1xyXG4gICAgd2lkdGg6IGF1dG87XHJcbiAgICBtYXgtd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgJjpjaGVja2VkLFxyXG4gICAgJjpmb2N1cyB7XHJcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgJGJyYW5kLXB1cnBsZTtcclxuICAgIH1cclxufVxyXG5cclxuXHJcbi4jeyRuYW1lfV9faW5wdXQtLWJldGEge1xyXG4gICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtcHVycGxlICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIENBUFRJT05cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLiN7JG5hbWV9X19pbmxpbmVjYXB0aW9uIHtcclxuICAgIG1hcmdpbjowIDJlbSAwIDAgIWltcG9ydGFudDtcclxufVxyXG5cclxuLiN7JG5hbWV9X19jYXB0aW9uIHtcclxuICAgIGZvbnQtZmFtaWx5OiBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xyXG4gICAgZm9udC1zaXplOiAxN3B4O1xyXG59XHJcblxyXG4uI3skbmFtZX1fX2NhcHRpb24tLWdyaWVmLW1lbW9yeS13YWxsLXVwbG9hZC10ZXh0IHtcclxuICAgIGZvbnQtc2l6ZTogMTZweDtcclxufVxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBTRUxFQ1RcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLnNlbGVjdCxcclxuLiN7JG5hbWV9X19zZWxlY3Qge1xyXG4gICAgLy9jb2xvcjogJGdyZXk7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltYWdlcy9iYXNlNjQvUE5HL3NlbGVjdC1hcnJvdy5wbmcnKTtcclxuICAgIGJhY2tncm91bmQtc2l6ZTogMjBweDtcclxuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAxOHB4IHRvcCAxM3B4O1xyXG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xyXG4gICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xyXG4gICAgYXBwZWFyYW5jZTogbm9uZTtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDYwcHg7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxMnB4O1xyXG4gICAgLyptYXgtd2lkdGg6IDI0MHB4OyovXHJcbiAgICAvL2NvbG9yOiByZ2JhKCRicmFuZC1ibGFjaywgMC41KTtcclxuXHJcbiAgICAmOmZvY3VzIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcclxuICAgIH1cclxufVxyXG5cclxuLiN7JG5hbWV9X19zZWxlY3QtLW5hcnJvdyB7XHJcbiAgICBtYXgtd2lkdGg6IDI0MHB4O1xyXG59XHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIFJBRElPXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfV9fcmFkaW8ge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgd2lkdGg6IDIycHg7XHJcbiAgICBoZWlnaHQ6IDIycHg7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgkYnJhbmQtcHVycGxlLCAwLjI1KTtcclxuICAgIGJveC1zaGFkb3c6IDAgLTJweCA5cHggM3B4IHJnYmEoOTQsIDk0LCA5NCwgMC4xNSk7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAtNHB4O1xyXG5cclxuICAgICZbdHlwZT0ncmFkaW8nXSB7XHJcbiAgICAgICAgd2lkdGg6IDI0cHg7XHJcbiAgICAgICAgaGVpZ2h0OiAyMXB4O1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMjZweDtcclxuICAgICAgICBtYXJnaW4tdG9wOiAtMTJweDtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgICZbdHlwZT0ncmFkaW8nXTpjaGVja2VkICsgJiB7XHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgd2lkdGg6IDEycHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTJweDtcclxuICAgICAgICAgICAgbWFyZ2luOiA1cHg7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICArIC4jeyRuYW1lfV9fbGFiZWwsXHJcbiAgICArIC4jeyRuYW1lfV9fY2FwdGlvbiB7XHJcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4uI3skbmFtZX1fX3JhZGlvLS13aGl0ZSB7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZmZmO1xyXG59XHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIENIRUNLQk9YXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfV9fY2hlY2tib3gge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgd2lkdGg6IDI2cHg7XHJcbiAgICBoZWlnaHQ6IDIycHg7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDZweDtcclxuICAgIG1hcmdpbi1yaWdodDogMTBweDtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkICNkYWMwZDggIWltcG9ydGFudDtcclxuICAgIGJveC1zaGFkb3c6IDAgLTJweCA5cHggM3B4IHJnYmEoOTQsIDk0LCA5NCwgMC4xNSk7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAtNHB4O1xyXG5cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGNvbG9yOiAkYnJhbmQtZ3JlZW47XHJcbiAgICB9XHJcblxyXG4gICAgJlt0eXBlPSdjaGVja2JveCddLFxyXG4gICAgJlt0eXBlPSdyYWRpbyddIHtcclxuICAgICAgICB3aWR0aDogNjBweDtcclxuICAgICAgICBoZWlnaHQ6IDIxcHg7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IC02MHB4O1xyXG4gICAgICAgIG1hcmdpbi10b3A6IC0xMnB4O1xyXG4gICAgICAgIHotaW5kZXg6IDI7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgJlt0eXBlPSdjaGVja2JveCddOmNoZWNrZWQgfiAmLFxyXG4gICAgJlt0eXBlPSdyYWRpbyddOmNoZWNrZWQgfiAmIHtcclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgdGljay1pY29uO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDMycHg7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNXB4O1xyXG4gICAgICAgICAgICBjb2xvcjogJGJyYW5kLXBpbms7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJltjbGFzcyo9XCItaWNvblwiXSB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiA0MHB4O1xyXG5cclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMzBweDtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XHJcbiAgICAgICAgICAgIHRvcDogLTZweDtcclxuICAgICAgICAgICAgbGVmdDogLTQwcHg7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJltjbGFzcyo9XCItLWNhdFwiXTpiZWZvcmUge1xyXG4gICAgICAgIEBpbmNsdWRlIGNhdC1pY29uO1xyXG4gICAgfVxyXG5cclxuICAgICZbY2xhc3MqPVwiLS1kb2dcIl06YmVmb3JlIHtcclxuICAgICAgICBAaW5jbHVkZSBkb2ctaWNvbjtcclxuICAgIH1cclxuXHJcbiAgICAmW2NsYXNzKj1cIi0tZmFtaWx5XCJdOmJlZm9yZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgZmFtaWx5LWljb247XHJcbiAgICB9XHJcblxyXG4gICAgJltjbGFzcyo9XCItLWNoaWxkcmVuXCJdOmJlZm9yZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgY2hpbGRyZW4taWNvbjtcclxuICAgIH1cclxuXHJcbiAgICAmW2NsYXNzKj1cIi0taW5kb29yXCJdOmJlZm9yZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgaG91c2UtaWNvbjtcclxuICAgIH1cclxuXHJcbiAgICArIC4jeyRuYW1lfV9fbGFiZWwsXHJcbiAgICArIC4jeyRuYW1lfV9fY2FwdGlvbiB7XHJcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA5cHg7XHJcbiAgICB9XHJcbn1cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gQ0hFQ0tCT1ggLSBSZXN1bHRzXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIFRoaXMgaXMgYSBsaXR0bGUgY2hlZWt5IHBsYWNpbmcgdGhpcyBoZXJlIGJ1dCBhcyBpdCByZWxhdGVzXHJcbi8vIGl0IGNhbiBsaXZlIGhlcmUgZm9yIHRoZSB0aW1lIGJlaW5nLiBUaGUgc3J5bGVzIGNvdWxkIGJlXHJcbi8vIGV4cG9ydGVkIHRvIGEgYmFzZSBsZXZlbCBhbmQgaW5jbHVkZSBpbiB0aGUgZm9ybSBlbGVtZW50XHJcbi8vIGFuZCBiZWxvdyBjb21wb25lbnQgYXQgc29tZSBwb2ludCBpZiBkZXNpcmVkLlxyXG5cclxuLmNoZWNrYm94LXJlc3VsdHMge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgZm9udC1mYW1pbHk6ICRjYXRzLW1lZDtcclxuICAgIGZvbnQtc2l6ZTogMTdweDtcclxuICAgIG1hcmdpbi1yaWdodDogMTlweDtcclxuICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuXHJcbiAgICBbY2xhc3MqPSdjaGVja2JveC1yZXN1bHRzX18nXSB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7XHJcbiAgICAgICAgaGVpZ2h0OiA0MHB4O1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xyXG5cclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHRpY2staWNvbjtcclxuICAgICAgICAgICAgY29sb3I6ICRicmFuZC1ncmVlbjtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAzMnB4O1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTVweDtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIG9yZGVyOiAwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMzJweDtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDM1cHg7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgW2NsYXNzKj0nY2F0J106YWZ0ZXIge1xyXG4gICAgICAgIEBpbmNsdWRlIGNhdC1pY29uO1xyXG4gICAgfVxyXG5cclxuICAgIFtjbGFzcyo9J2RvZyddOmFmdGVyIHtcclxuICAgICAgICBAaW5jbHVkZSBkb2ctaWNvbjtcclxuICAgIH1cclxuXHJcbiAgICBbY2xhc3MqPSdjaGlsZHJlbiddOmFmdGVyIHtcclxuICAgICAgICBAaW5jbHVkZSBjaGlsZHJlbi1pY29uO1xyXG4gICAgfVxyXG5cclxuICAgIFtjbGFzcyo9J2ZhbWlseSddOmFmdGVyIHtcclxuICAgICAgICBAaW5jbHVkZSBmYW1pbHktaWNvbjtcclxuICAgIH1cclxuXHJcbiAgICBbY2xhc3MqPSdpbmRvb3JzJ106YWZ0ZXIge1xyXG4gICAgICAgIEBpbmNsdWRlIGhvdXNlLWljb247XHJcbiAgICB9XHJcbn1cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gREFURVxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4uI3skbmFtZX1fX2RhdGUge1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWFnZXMvYmFzZTY0L1BORy9jYWxlbmRhci1ncmV5LnBuZycpO1xyXG4gICAgYmFja2dyb3VuZC1zaXplOiAzMHB4O1xyXG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IDEzcHggdG9wIDZweDtcclxuICAgIG1heC13aWR0aDogMjAwcHg7XHJcbiAgICBjb2xvcjogJGJyYW5kLWJsYWNrO1xyXG5cclxuICAgICY6bm90KDpmb2N1cykge1xyXG4gICAgICAgIGNvbG9yOiByZ2JhKCAkYnJhbmQtYmxhY2ssIDAuNzUpO1xyXG4gICAgfVxyXG5cclxuICAgICY6Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXHJcbiAgICAmOjotd2Via2l0LWNhbGVuZGFyLXBpY2tlci1pbmRpY2F0b3Ige1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcclxuICAgIH1cclxufVxyXG5cclxuLiN7JG5hbWV9X19kYXRlLS13aWR0aCB7XHJcbiAgICBtYXgtd2lkdGg6IG5vbmU7XHJcbn1cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gTEFCRUxcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLiN7JG5hbWV9X19sYWJlbCB7XHJcbiAgICBmb250LWZhbWlseTogJGNhdHMtbWVkO1xyXG4gICAgZm9udC1zaXplOiAxN3B4O1xyXG4gICAgLy8gd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxufVxyXG5cclxuLiN7JG5hbWV9X19sYWJlbC0tY2hlY2tib3gge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbn1cclxuXHJcbi4jeyRuYW1lfV9fbGFiZWwtLWlubGluZSB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbn1cclxuXHJcbi4jeyRuYW1lfV9fbGFiZWwtLWZpbmQtYS1jYXQge1xyXG4gICAgdGV4dC1pbmRlbnQ6IDEwMCU7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9iYXNlNjQvc3ZnL2ZpbmQtYS1jYXQtZ3JleS5zdmcpO1xyXG4gICAgQGluY2x1ZGUgYmFja2dyb3VuZChjb250YWluKTtcclxufVxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBCVVRUT05cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLiN7JG5hbWV9X19idG4ge1xyXG4gICAgYm9yZGVyLXdpZHRoOiAwO1xyXG59XHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIFJJQkJPTlxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4uI3skbmFtZX0tLXJpYmJvbiB7XHJcbiAgICBwYWRkaW5nOiAxZW07XHJcblxyXG4gICAgLmZvcm1fX2xhYmVsLFxyXG4gICAgLmZvcm1fX2J0bixcclxuICAgIC5mb3JtX19pbnB1dCxcclxuICAgIC5mb3JtX19kYXRlIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XHJcbiAgICAgICAgbWFyZ2luOiAwIDAgMjBweDtcclxuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgfVxyXG5cclxuICAgIC5mb3JtX19sYWJlbC0tY2hlY2tib3gge1xyXG4gICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKHdpZGUtYW5kLXVwKSB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBwYWRkaW5nOiAyNHB4IDMwcHg7XHJcblxyXG5cclxuICAgICAgICAuZm9ybV9fbGFiZWwsXHJcbiAgICAgICAgLmZvcm1fX2J0bixcclxuICAgICAgICAuZm9ybV9faW5wdXQsXHJcbiAgICAgICAgLmZvcm1fX2RhdGUge1xyXG4gICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLiN7JG5hbWV9X19sYWJlbCB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCAyMHB4O1xyXG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgICAgICAgICBjb2xvcjogaW5oZXJpdDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gSU5MTklFXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfS0taW5saW5lIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblxyXG4gICAgPiBoMyB7XHJcbiAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0xNDNweDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgfVxyXG5cclxuICAgIC4jeyRuYW1lfV9fc2VsZWN0IHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgfVxyXG5cclxuICAgIC4jeyRuYW1lfV9fY2FwdGlvbiB7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xyXG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG4uZmllbGRzZXQge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xyXG4gICAgbWFyZ2luLWxlZnQ6IC02MHB4O1xyXG5cclxuICAgID4gKiB7XHJcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDYwcHggc29saWQgd2hpdGU7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcbn1cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gTU9ESUZJRVJTXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4uI3skbmFtZX0tLWdyZXkge1xyXG4gICAgLiN7JG5hbWV9X19pbnB1dCxcclxuICAgIC4jeyRuYW1lfV9fc2VsZWN0LFxyXG4gICAgLiN7JG5hbWV9X19tZXNzYWdlLFxyXG4gICAgLiN7JG5hbWV9X19jaGVja2JveCB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xyXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNkYWMwZDggIWltcG9ydGFudDtcclxuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XHJcblxyXG4gICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcclxuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkbGlnaHQtZ3JleTtcclxuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDVweCAycHggcmdiYSg5NCwgOTQsIDk0LCAwLjE1KTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYuaW5wdXQtdmFsaWRhdGlvbi1lcnJvciB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1wdXJwbGU7XHJcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNkYWMwZDggIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLiN7JG5hbWV9X19tZXNzYWdlIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IDIwMHB4O1xyXG4gICAgICAgIHJlc2l6ZTogbm9uZTtcclxuICAgICAgICBwYWRkaW5nOiAyMHB4IDEycHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi4jeyRuYW1lfS0tbWFpbiB7XHJcbiAgICAuI3skbmFtZX1fX2lucHV0LFxyXG4gICAgLiN7JG5hbWV9X19tZXNzYWdlLFxyXG4gICAgLiN7JG5hbWV9X19sYWJlbCB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuICAgIH1cclxuXHJcbiAgICAuI3skbmFtZX1fX2NoZWNrYm94ICsgLiN7JG5hbWV9X19jYXB0aW9uIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiA0cHg7XHJcbiAgICB9XHJcblxyXG4gICAgLmZpZWxkLXZhbGlkYXRpb24tZXJyb3IgKyAuI3skbmFtZX1fX2xhYmVsLFxyXG4gICAgLiN7JG5hbWV9X19pbnB1dCArIC4jeyRuYW1lfV9fbGFiZWwsXHJcbiAgICAuI3skbmFtZX1fX21lc3NhZ2UgKyAuI3skbmFtZX1fX2xhYmVsIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC4jeyRuYW1lfV9fbGFiZWwgKyAuI3skbmFtZX1fX2xhYmVsIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC4jeyRuYW1lfV9fbGFiZWwge1xyXG4gICAgICAgIEBleHRlbmQgJXRzLTU7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAvKmZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IC0gY29tbWVudGVkIG91dCB0byBwcmV2ZW50IHJlcXVpcmVkIGFzdGVyaXNrIHdyYXBwaW5nIHRvIG5leHQgbGluZSAqL1xyXG4gICAgICAgIGNvbG9yOiRicmFuZC1wdXJwbGU7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6J2NhdHMtaGVhZGxpbmUnLCBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xyXG4gICAgICAgIC4jeyRuYW1lfV9faW5wdXQsXHJcbiAgICAgICAgLiN7JG5hbWV9X19zZWxlY3Qge1xyXG4gICAgICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLiN7JG5hbWV9X19saW5rIHtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuICAgICAgICBjb2xvcjogJGJyYW5kLWJsdWU7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBjb2xvcjogJGJyYW5kLWJsYWNrO1xyXG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuI3skbmFtZX1fX2NhcHRpb24ge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDExcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLiN7JG5hbWV9X19sYWJlbC0taW5saW5lIHtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICB9XHJcbn1cclxuXHJcbi4jeyRuYW1lfS0tbWFwIHtcclxuICAgIGhlaWdodDogMzAwcHg7XHJcbiAgICBwYWRkaW5nOiAxZW07XHJcblxyXG4gICAgLiN7JG5hbWV9X19pbnB1dCB7XHJcbiAgICAgICAgY29sb3I6ICRicmFuZC1ibGFjaztcclxuICAgIH1cclxufVxyXG5cclxuLmZpZWxkLXZhbGlkYXRpb24tZXJyb3Ige1xyXG4gICAgZm9udC1mYW1pbHk6ICRjYXRzLWhlYWRsaW5lO1xyXG4gICAgY29sb3I6ICRicmFuZC1waW5rO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6ICcqICc7XHJcbiAgICAgICAgZm9udC1zaXplOiAyNnB4O1xyXG4gICAgICAgIGhlaWdodDogMjFweDtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1cHg7XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG5cclxuLiN7JG5hbWV9LS15b3VyLWRldGFpbHMge1xyXG4gICAgLiN7JG5hbWV9X19sYWJlbCB7XHJcbiAgICAgICAgLy9tYXJnaW4tYm90dG9tOiAzcHg7XHJcbiAgICAgICAgQGV4dGVuZCAldHMtODtcclxuXHJcbiAgICAgICAgJi5yZXF1aXJlZCB7XHJcbiAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgY29udGVudDogJyonO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC4jeyRuYW1lfV9fc2VsZWN0IHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgfVxyXG5cclxuICAgIC5maWVsZC12YWxpZGF0aW9uLWVycm9yIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XHJcbiAgICB9XHJcblxyXG4gICAgcCxcclxuICAgIC4jeyRuYW1lfV9fY2FwdGlvbiB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuICAgIH1cclxuXHJcbiAgICAuI3skbmFtZX1fX2l0ZW0ge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XHJcbiAgICB9XHJcblxyXG4gICAgLiN7JG5hbWV9X19tZXNzYWdlIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IDE0MHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLmNhdC1mb3JtLS1leHBhbmRhYmxlIHtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBtYXgtaGVpZ2h0OiAxMjVweDtcclxuICAgIHRyYW5zaXRpb246IDAuM3MgbWF4LWhlaWdodDtcclxuXHJcbiAgICAmLmlzLWFjdGl2ZSB7XHJcbiAgICAgICAgbWF4LWhlaWdodDogMjAwMHB4O1xyXG5cclxuICAgICAgICAuY2F0LWZvcm1fX2NvbnRhaW5lciB7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmNhdC1mb3JtIHtcclxuICAgIHBhZGRpbmc6IDIwcHg7XHJcblxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xyXG4gICAgICAgIHBhZGRpbmc6IDIwcHggMTMwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgJjpsYXN0LW9mLXR5cGUge1xyXG4gICAgICAgIGJvcmRlcjogMDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgfVxyXG5cclxuICAgICY6bnRoLWNoaWxkKG9kZCkge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlN2U4ZTY7XHJcblxyXG4gICAgICAgIHRleHRhcmVhLFxyXG4gICAgICAgIGlucHV0IHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jYXQtZm9ybV9faGVhZGVyIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICBwYWRkaW5nOiAyMHB4IDA7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG59XHJcblxyXG4uY2F0LWZvcm1fX2NvbnRhaW5lciB7XHJcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICB0cmFuc2l0aW9uOiAwLjNzIG9wYWNpdHk7XHJcbn1cclxuLy8gaW5wdXRzIHRoYXQgdXBsb2FkIGZpbGVzXHJcblxyXG4uZm9ybV9fZmlsZS11cGxvYWQge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLmZvcm1fX2ZpbGUtdXBsb2FkLWxhYmVsIHtcclxuICAgIEBpbmNsdWRlIGJ1dHRvbjtcclxufVxyXG5cclxuLyogQ2hhbmdlIEF1dG9jb21wbGV0ZSBzdHlsZXMgaW4gQ2hyb21lKi9cclxuaW5wdXQ6LXdlYmtpdC1hdXRvZmlsbCxcclxuaW5wdXQ6LXdlYmtpdC1hdXRvZmlsbDpob3ZlcixcclxuaW5wdXQ6LXdlYmtpdC1hdXRvZmlsbDpmb2N1cyxcclxudGV4dGFyZWE6LXdlYmtpdC1hdXRvZmlsbCxcclxudGV4dGFyZWE6LXdlYmtpdC1hdXRvZmlsbDpob3ZlcixcclxudGV4dGFyZWE6LXdlYmtpdC1hdXRvZmlsbDpmb2N1cyxcclxuc2VsZWN0Oi13ZWJraXQtYXV0b2ZpbGwsXHJcbnNlbGVjdDotd2Via2l0LWF1dG9maWxsOmhvdmVyLFxyXG5zZWxlY3Q6LXdlYmtpdC1hdXRvZmlsbDpmb2N1cyB7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZGFjMGQ4ICFpbXBvcnRhbnQ7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtcHVycGxlICFpbXBvcnRhbnQ7XHJcbiAgICAtd2Via2l0LXRleHQtZmlsbC1jb2xvcjogJGJyYW5kLWJsYWNrO1xyXG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDAgMHB4IDEwMDBweCAjZmZmIGluc2V0O1xyXG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciA1MDAwcyBlYXNlLWluLW91dCAwcztcclxufVxyXG4iLCIvKipcclxuICogQ09NUE9ORU5UU1xyXG4gKiBGT1JNIC0gQ0FUIENPTU1VTklUWVxyXG4gKi9cclxuXHJcbi4jeyRuYW1lfS0tY2F0LWNvbW11bml0eXtcclxuICAgIC8qXHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHJcbiAgICAgKi9cclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRwbGFjZWhvbGQ7XHJcbiAgICAvL3dpZHRoOiAxMDAwcHg7XHJcblxyXG4gICAgLypcclxuICAgID4gZGl2e1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMTAwcHggNDBweDtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxuXHJcbiAgICAgKi9cclxuXHJcbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAgLy8gTEFCRUxcclxuICAgIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgICAuI3skbmFtZX1fX2xhYmVse1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcclxuICAgIH1cclxuXHJcbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAgLy8gQ0FQVElPTlxyXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgIC4jeyRuYW1lfV9fY2FwdGlvbntcclxuICAgICAgICBmb250LXNpemU6IDE1cHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgICAvLyBJTlBVVFxyXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgICAuI3skbmFtZX1fX2lucHV0e1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgIC8vIEhFQURFUlxyXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgIC55b3VyLW93bi1jYXQtaGVhZGVye1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvYmFzZTY0L1NWRy9jYXQtY29tbXVuaXR5LnN2Zyk7XHJcbiAgICAgICAgcGFkZGluZzogMjBweDtcclxuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogNTBweDtcclxuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBib3R0b20gLTEwcHggcmlnaHQgMzBweDtcclxuICAgICAgICBtYXJnaW46IDAgMCAxMHB4O1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTIwcHg7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGJvdHRvbSAtMjRweCByaWdodCA2MHB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nOiA1MHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAueW91ci1vd24tY2F0LWhlYWRlcl9fY29weSB7XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xyXG5cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgIC8vIEZPUk0gR0FMTEVSWVxyXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgIC5mb3JtLWdhbGxlcnl7XHJcbiAgICAgICAgLy9tYXgtd2lkdGg6IDM1MHB4O1xyXG5cclxuICAgICAgICAucGhvdG9ze1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLTEwcHg7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuXHJcbiAgICAgICAgICAgIC5tZWRpYXtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcblxyXG4gICAgICAgICAgICAgICAgLm1lZGlhX19pbWFnZXtcclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBiYWNrZ3JvdW5kKGNvdmVyKTtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtZ3JleTtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2Jhc2U2NC9TVkcvY2F0LWNvbW11bml0eS10aWxlLnBuZyk7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgJiArIC5tZWRpYXtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMzMuMzMzMzMlO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuYnRue1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5jYXQtY29tbXVuaXR5LWZvcm0tY29udGFpbmVyIHtcclxuICAgICAgICBwYWRkaW5nOiAyMHB4O1xyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpe1xyXG4gICAgICAgICAgICBwYWRkaW5nOiA1MHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICB9XHJcblxyXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgIC8vIEZPUk0gREVUQUlMU1xyXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgIC5mb3JtLWRldGFpbHN7XHJcbiAgICAgICAgLypcclxuICAgICAgICB3aWR0aDogNDkwcHg7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA1MHB4O1xyXG4gICAgICAgICovXHJcblxyXG4gICAgICAgIC5idG57XHJcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgfVxyXG5cclxuICAgIHRleHRhcmVhe1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAxNXB4O1xyXG4gICAgICAgIGhlaWdodDogMjQwcHg7XHJcbiAgICB9XHJcbiB9XHJcblxyXG5cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIFNFTEVDVFxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyAuI3skbmFtZX1fX3NlbGVjdHt9XHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBSQURJT1xyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyAuI3skbmFtZX1fX3JhZGlve31cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIENIRUNLQk9YXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIC4jeyRuYW1lfV9fY2hlY2tib3h7fVxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gTEFCRUxcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gLiN7JG5hbWV9X19sYWJlbHt9XHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBCVVRUT05cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gLiN7JG5hbWV9X19idG57fVxyXG4iLCIvKipcclxuICogQ09NUE9ORU5UU1xyXG4gKiBGT1JNIC0gQkFTRVxyXG4gKi9cclxuXHJcbiAuI3skbmFtZX0tLWNlbnRlcntcclxuICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAvL2hlaWdodDogMTAwJTtcclxuXHJcbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAgLy8gSU5QVVRcclxuICAgIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgICAuI3skbmFtZX1fX2lucHV0e1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgICAgIG1heC13aWR0aDogNDAwcHg7IC8vdGhpcyBpcyBhIGJpdCBjaGVlY2t5IHN0aWNraW5nIHRoaXMgaGVyZS5cclxuICAgIH1cclxuXHJcbiAgICAuI3skbmFtZX1fX2J0bntcclxuICAgICAgICAvLyBAZXh0ZW5kICVidG4tdHlwbztcclxuICAgICAgICAvLyBAZXh0ZW5kICVidG4tdGhlbWUtcHJpbWFyeTtcclxuICAgICAgICAvLyBAZXh0ZW5kICVidG4tY29tcDtcclxuICAgIH1cclxuIH1cclxuXHJcblxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gU0VMRUNUXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIC4jeyRuYW1lfV9fc2VsZWN0e31cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIFJBRElPXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIC4jeyRuYW1lfV9fcmFkaW97fVxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gQ0hFQ0tCT1hcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gLiN7JG5hbWV9X19jaGVja2JveHt9XHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBMQUJFTFxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyAuI3skbmFtZX1fX2xhYmVse31cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIEJVVFRPTlxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyAuI3skbmFtZX1fX2J0bnt9XHJcbiIsIi8qKlxyXG4gKiBDT01QT05FTlRTXHJcbiAqIEZPUk0gLSBDT05UQUNUXHJcbiAqL1xyXG5cclxuLiN7JG5hbWV9LS1jb250YWN0e1xyXG4gICAgLy9kaXNwbGF5OiBmbGV4O1xyXG4gICAgLy9mbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAvL21hcmdpbi1sZWZ0OiAtMzBweDtcclxuICAgIC8vcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgLy9qdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcblxyXG4gICAgLmZvcm1fX2l0ZW17XHJcbiAgICAgICAgLy9wYWRkaW5nLWxlZnQ6IDMwcHg7XHJcbiAgICAgICAgLy9tYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgICAgIC8vd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgLy9tYXJnaW46IDAgMCAyMHB4O1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bS1hbmQtdXApe1xyXG4gICAgICAgIC5mb3JtX19pdGVte1xyXG4gICAgICAgICAgICB3aWR0aDogNTAlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKGRlc2stYW5kLXVwKXtcclxuICAgICAgICAuZm9ybV9faXRlbXtcclxuICAgICAgICAgICAgd2lkdGg6IDMzLjMzMzMzJTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmZvcm1fX2l0ZW0tLWhhbGZ7XHJcbiAgICAgICAgICAgIHdpZHRoOiA1MCU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgICAvLyBMQUJFTFxyXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgIC4jeyRuYW1lfV9fbGFiZWx7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuXHJcbiAgICAgICAgJi5yZXF1aXJlZHtcclxuICAgICAgICAgICAgJjphZnRlcntcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcgKic7XHJcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJHNhbnM7XHJcblxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgICAvLyBNRVNTQUdFXHJcbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAgLiN7JG5hbWV9X19tZXNzYWdle1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IDE1MHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgICAvLyBpbmxpbmVcclxuICAgIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4gICAgLypcclxuICAgIC4jeyRuYW1lfV9faW5saW5le1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjVweDtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XHJcblxyXG4gICAgICAgIC4jeyRuYW1lfV9fY2FwdGlvbntcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgKi9cclxuXHJcblxyXG4gICAgcHtcclxuICAgICAgICAvL3BhZGRpbmctbGVmdDogMzBweDtcclxuICAgIH1cclxuXHJcbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAgLy8gQ0FQVElPTlxyXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgIC4jeyRuYW1lfV9fY2FwdGlvbnt9XHJcblxyXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgICAvLyBTRUxFQ1RcclxuICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAgLiN7JG5hbWV9X19zZWxlY3R7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgIH1cclxuXHJcbiAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgIC8vIEJVVFRPTlxyXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgICAuYnRue1xyXG4gICAgICAgIGZsb2F0OiByaWdodDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5maWVsZC12YWxpZGF0aW9uLWVycm9ye1xyXG4gICAgICAgIHBhZGRpbmc6IDEwcHggMCAwO1xyXG4gICAgfVxyXG59XHJcblxyXG5cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIFNFTEVDVFxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyAuI3skbmFtZX1fX3NlbGVjdHt9XHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBSQURJT1xyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyAuI3skbmFtZX1fX3JhZGlve31cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIENIRUNLQk9YXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIC4jeyRuYW1lfV9fY2hlY2tib3h7fVxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gTEFCRUxcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gLiN7JG5hbWV9X19sYWJlbHt9XHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBCVVRUT05cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gLiN7JG5hbWV9X19idG57fVxyXG4iLCIvKipcclxuICogQ09NUE9ORU5UU1xyXG4gKiBGT1JNIC0gTE9HSU5cclxuICovXHJcblxyXG4kbmFtZTogZm9ybTtcclxuXHJcbi4jeyRuYW1lfS0tbG9naW57XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIG1heC13aWR0aDogODIwcHg7XHJcbiAgICBtYXJnaW46IDIwcHggYXV0byAzMHB4O1xyXG5cclxuICAgIGgzLFxyXG4gICAgcHtcclxuICAgICAgICBtYXgtd2lkdGg6IDY1MHB4O1xyXG4gICAgfVxyXG5cclxuICAgIGgze1xyXG4gICAgICAgIEBleHRlbmQgJXRzLTM7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgIH1cclxuXHJcbiAgICBwe1xyXG4gICAgICAgIEBleHRlbmQgJXRzLTg7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjVweDtcclxuICAgIH1cclxuXHJcbiAgICBhe1xyXG4gICAgICAgIGNvbG9yOiAkYnJhbmQtYmx1ZTtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuICAgICAgICBmb250LXNpemU6IDgwJTtcclxuICAgIH1cclxuXHJcbiAgICAuI3skbmFtZX1fX2lucHV0e1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAzMDBweDtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB9XHJcblxyXG4gICAgLiN7JG5hbWV9X19idG57XHJcbiAgICAgICAgLy9taW4td2lkdGg6IDMwMHB4O1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLmZvcm1fX3NvY2lhbC1sb2dpbntcclxuICAgICAgICBidXR0b257XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCAxMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCIvKipcclxuICogQ09NUE9ORU5UU1xyXG4gKiBGT1JNIC0gbGVhdmUtY29tbWVudFxyXG4gKi9cclxuXHJcbi4jeyRuYW1lfS0tbGVhdmUtY29tbWVudHtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gICAgJjpub3QoOm9ubHktY2hpbGQpe1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAyNnB4O1xyXG4gICAgfVxyXG5cclxuICAgIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgICAvLyBJTlBVVFxyXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgIC4jeyRuYW1lfV9faW5wdXR7XHJcbiAgICAgICAgbWFyZ2luOiAyMHB4IDAgMDtcclxuICAgICAgICBwYWRkaW5nOiAxOHB4O1xyXG4gICAgfVxyXG5cclxuICAgIHRleHRhcmVhLiN7JG5hbWV9X19pbnB1dHtcclxuICAgICAgICBtaW4taGVpZ2h0OiAyMDBweDtcclxuICAgICAgICBtYXJnaW46IDIwcHggMCAzMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC4jeyRuYW1lfV9fYnRue1xyXG4gICAgICAgIGZsb2F0OiByaWdodDtcclxuICAgIH1cclxufSIsIi8qKlxyXG4gKiBDT01QT05FTlRTXHJcbiAqIEZPUk0gLSBORVdTTEVUVEVSXHJcbiAqL1xyXG5cclxuLiN7JG5hbWV9LS1uZXdzbGV0dGVye1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgcGFkZGluZy10b3A6IDI0cHg7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMjRweDtcclxuXHJcbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKHdpZGUtYW5kLXVwKXtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgfVxyXG5cclxuICAgIC4jeyRuYW1lfV9fbGFiZWx7XHJcbiAgICAgICAgQGV4dGVuZCAldHMtMjtcclxuICAgICAgICBjb2xvcjogJGJyYW5kLWJsdWU7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8od2lkZS1hbmQtdXApe1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuI3skbmFtZX1fX2lucHV0e1xyXG4gICAgICAgIG1heC13aWR0aDogMzEwcHg7XHJcbiAgICAgICAgbWFyZ2luOiAwIDcwcHggMTVweDtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC10byh3aWRlLWFuZC11cCl7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiAiLCIvKipcclxuICogQ09NUE9ORU5UU1xyXG4gKiBGT1JNIC0gUE9MTFxyXG4gKi9cclxuXHJcbi4jeyRuYW1lfS0tcG9sbHtcclxuXHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogNDRweDtcclxuXHJcbiAgICBsaSB7IHBvc2l0aW9uOiByZWxhdGl2ZTt9XHJcblxyXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgIC8vIENIRUNLQk9YXHJcbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAgLiN7JG5hbWV9X19jaGVja2JveHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiAzcHg7XHJcbiAgICAgICAgbGVmdDogMDtcclxuXHJcbiAgICAgICAgJjphZnRlcntcclxuICAgICAgICAgICAgY29sb3I6ICRicmFuZC1ibGFjaztcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgIC8vIExBQkVMXHJcbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAgLiN7JG5hbWV9X19sYWJlbHtcclxuICAgICAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI2cHg7XHJcbiAgICAgICAgd2hpdGUtc3BhY2U6IGluaXRpYWw7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA0MHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC4jeyRuYW1lfV9fY2hlY2tib3g6Y2hlY2tlZCB+IC4jeyRuYW1lfV9fbGFiZWx7XHJcbiAgICAgICAgZm9udC1zaXplOiAyMnB4O1xyXG4gICAgfVxyXG5cclxuICAgIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgICAvLyBCVVRUT05cclxuICAgIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgICAuI3skbmFtZX1fX2J0bntcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgfVxyXG59XHJcbiIsIi8qKlxyXG4gKiBDT01QT05FTlRTXHJcbiAqIEZPUk0gLSBQUk9GSUxFXHJcbiAqL1xyXG5cclxuLiN7JG5hbWV9LS1wcm9maWxle1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XHJcblxyXG4gICAgLy9wYWRkaW5nOiAyMHB4O1xyXG4gICAgLypcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cclxuICAgICAqL1xyXG5cclxuICAgIC8qXHJcbiAgICAmOmJlZm9yZXtcclxuICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICB3aWR0aDogNThweDtcclxuICAgICAgICBoZWlnaHQ6IDU0cHg7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9iYXNlNjQvU1ZHL2VkaXQtaWNvbi5zdmcpO1xyXG4gICAgICAgIEBpbmNsdWRlIGJhY2tncm91bmQoY29udGFpbik7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgcmlnaHQ6IDEwMHB4O1xyXG4gICAgfVxyXG4gICAgKi9cclxuXHJcblxyXG4gICAgLypcclxuICAgID4gZGl2e1xyXG4gICAgICAgIC8vcGFkZGluZzogMCAxMDBweDtcclxuXHJcbiAgICAgICAgLy8gUHJvZmlsZSBibG9jayBpbWFnZVxyXG4gICAgICAgICY6bnRoLWNoaWxkKDEpe1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG5cclxuICAgICAgICAgICAgJjphZnRlcntcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDU4cHg7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDU0cHg7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvYmFzZTY0L1NWRy9lZGl0LWljb24uc3ZnKTtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJhY2tncm91bmQoY29udGFpbik7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xyXG4gICAgICAgICAgICAgICAgcmlnaHQ6IDEwMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvL1Zpc2libGUgZm9ybSBlbGVtZW50cy5cclxuICAgICAgICAmOm50aC1jaGlsZCgyKXtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvLyBFZGl0IHBhc3N3b3JkIHJldmVhbCBmZWlsZHNcclxuICAgICAgICAvLyBUaGVzZSBoYXZlbid0IGJlZW4gYWdyZWVkIHdpdGggY2xpZW50IHlldC5cclxuICAgICAgICAvLyBTcGVhayB0byBPd2VuLy5OZXRcclxuICAgICAgICAmOm50aC1jaGlsZCgzKXtcclxuICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLy9Uc0NzICYgU2F2ZSBDaGFuZ2VzIGJ1dHRvblxyXG4gICAgICAgICY6bnRoLWNoaWxkKDQpe1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cclxuICAgICAgICAgICAgLmJ0bnsgbWFyZ2luLWxlZnQ6IDIwcHggfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAgKi9cclxuXHJcbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAgLy8gSU1BR0VcclxuICAgIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgICAudXNlci1pY29ue1xyXG4gICAgICAgIEBpbmNsdWRlIHVzZXItaWNvbigxMTBweCk7XHJcbiAgICAgICAgbWluLXdpZHRoOiAxMTBweDtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDI1cHg7XHJcbiAgICB9XHJcblxyXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgIC8vIElOUFVUXHJcbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAgLiN7JG5hbWV9X19pbnB1dHtcclxuICAgICAgLy8gIG1heC13aWR0aDogMjkwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgIC8vIFBBU1NXT1JEXHJcbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAgLiN7JG5hbWV9X19pbnB1dFt0eXBlPVwicGFzc3dvcmRcIl17XHJcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9iYXNlNjQvU1ZHL3BhZGxvY2stdW5sb2NrZWQuc3ZnKTtcclxuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCAxMHB4IHJpZ2h0IDEwcHg7XHJcblxyXG5cclxuICAgICAgICAmLmxvY2tlZHtcclxuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogd2hpdGU7XHJcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA1M3B4O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2Jhc2U2NC9TVkcvcGFkbG9jay1sb2NrZWQuc3ZnKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgIC8vIExBQkVMXHJcbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAgLiN7JG5hbWV9X19sYWJlbHtcclxuICAgICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xyXG4gICAgICAgIG1pbi13aWR0aDogMTAwcHg7XHJcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiAkY2F0cy1tZWQ7XHJcbiAgICB9XHJcblxyXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgIC8vIENBUFRJT05cclxuICAgIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgICAuI3skbmFtZX1fX2NhcHRpb257XHJcbiAgICAgICAgZm9udC1zaXplOiAxNXB4O1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiAkY2F0cztcclxuICAgICAgICBtYXJnaW4tdG9wOiA3cHg7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogN3B4O1xyXG4gICAgfVxyXG5cclxuICAgIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgICAvLyBCVVRUT05cclxuICAgIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgICAuI3skbmFtZX1fX2J0bntcclxuICAgIH1cclxuXHJcbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAgLy8gR1JJRFxyXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgIC5ncmlkX19pdGVte1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIH1cclxufVxyXG4iLCIvKipcclxuICogQ09NUE9ORU5UU1xyXG4gKiBGT1JNIC0gU0VBUkNIXHJcbiAqL1xyXG5cclxuJG5hbWU6IGZvcm07XHJcblxyXG5cclxuLmJ0bi0tc2VhcmNoOmhvdmVye1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG4uI3skbmFtZX0tLXNlYXJjaCB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBwYWRkaW5nLXRvcDogMHB4O1xyXG5cclxuICAgIC4jeyRuYW1lfV9faW5wdXQge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIG1heC13aWR0aDogMDtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIHRvcDogLTRweDtcclxuICAgICAgICBsZWZ0OiA3MHB4O1xyXG4gICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDtcclxuICAgICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LXB1cnBsZSAhaW1wb3J0YW50O1xyXG4gICAgICAgIEBpbmNsdWRlIGFuaW1hdGUoYWxsIDIwMG1zKTtcclxuICAgIH1cclxuICAgIC8vIC4jeyRuYW1lfV9fc3VibWl0LFxyXG4gICAgLiN7JG5hbWV9X19idG4ge1xyXG4gICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgJiArIC4jeyRuYW1lfV9faW5wdXQge1xyXG4gICAgICAgICAgICAgICAgbGVmdDogNzBweDtcclxuICAgICAgICAgICAgICAgIHRvcDogLTRweDtcclxuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyOiAwcHg7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuI3skbmFtZX1fX3N1Ym1pdCB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICAmLmlzLWFjdGl2ZSB7XHJcbiAgICAgICAgLiN7JG5hbWV9X19pbnB1dCB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAwcHg7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogMzAwcHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMTJweDtcclxuICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgLypib3JkZXI6IDFweCBzb2xpZCByZ2JhKDk0LCA5NCwgOTQsIDAuMjUpOyovXHJcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCA5cHggM3B4IHJnYmEoOTQsIDk0LCA5NCwgMC4xNSk7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XHJcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRmb3JtLWlucHV0LWJvcmRlciAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgICAgICAvKlxyXG4gICAgICAgIC4jeyRuYW1lfV9fc3VibWl0eyBkaXNwbGF5OiBmbGV4OyB9XHJcbiAgICAgICAgLiN7JG5hbWV9X19idG57IGRpc3BsYXk6IG5vbmU7IH1cclxuXHJcbiAgICAgICAgICovXHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG4uI3skbmFtZX0tLXNlYXJjaC1taW5pIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHBhZGRpbmctdG9wOiA0cHg7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgLiN7JG5hbWV9X19pbnB1dCB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICBib3JkZXItY29sb3I6IHdoaXRlO1xyXG4gICAgICAgIHRvcDogNHB4O1xyXG4gICAgICAgIHJpZ2h0OiA0MHB4O1xyXG4gICAgICAgIGNvbG9yOiAkYnJhbmQtYmxhY2s7XHJcbiAgICB9XHJcblxyXG4gICAgLiN7JG5hbWV9X19zdWJtaXQge1xyXG4gICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgICAgIGNvbG9yOiAkYnJhbmQtYmx1ZTtcclxuICAgICAgICBib3gtc2hhZG93OiAwIDAgOXB4IDNweCByZ2JhKDk0LCA5NCwgOTQsIDAuMTUpO1xyXG4gICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG5cclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMzZweDtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDVweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtZ3JleTtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiIsIi8qKlxyXG4gKiBDT01QT05FTlRTXHJcbiAqIFNFTEVDVElPTiBCT1hcclxuICovXHJcblxyXG4gXHJcbiAvLy0tLS0tLS0tLS0tLS0tLS1cclxuIC8vIEJMT0NLIE1PRElGSUVSXHJcbiAvLy0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi4jeyRuYW1lfS0tc2VsZWN0aW9uIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgIHBhZGRpbmc6IDIwcHggMTVweDtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIG1pbi1oZWlnaHQ6IDMwMHB4O1xyXG5cclxuICAgIEBleHRlbmQgJWhvdmVyLXNoYWRvdy1saWdodDtcclxuXHJcbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bS1hbmQtdXApIHtcclxuICAgICAgICBwYWRkaW5nOiA0MHB4IDMwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgcCB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGllLWZhbGxiYWNrKCkge1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAvLy0tLS0tLS0tLS1cclxuICAgIC8vIEVMRU1FTlRcclxuICAgIC8vLS0tLS0tLS0tLVxyXG4gICAgLiN7JG5hbWV9X19pbnB1dCB7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIG1heC13aWR0aDogMzAwcHg7XHJcbiAgICAgICAgY29sb3I6ICRicmFuZC1ibGFjaztcclxuICAgICAgICAvLyBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgfVxyXG4gICAgLy8tLS0tLS0tLS0tXHJcbiAgICAvLyBFTEVNRU5UXHJcbiAgICAvLy0tLS0tLS0tLS1cclxuICAgIC4jeyRuYW1lfV9fYnRuIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgfVxyXG5cclxuICAgICYuaXMtc2VsZWN0ZWQge1xyXG4gICAgICAgIC4jeyRuYW1lfV9fYnRuIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuICAgICAgICAgICAgY29sb3I6ICRicmFuZC1ibGFjaztcclxuXHJcbiAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgY29udGVudDogJ1NlbGVjdGVkJztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmOm5vdCguaXMtc2VsZWN0ZWQpIHtcclxuICAgICAgICAuI3skbmFtZX1fX2J0biB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1ibHVlO1xyXG4gICAgICAgICAgICBjb2xvcjogd2hpdGU7XHJcblxyXG4gICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICdQbGVhc2UgU2VsZWN0JztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAuI3skbmFtZX1fX2J0biB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICRicmFuZC1ibGFjaztcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vLy0tLS0tLS0tLS1cclxuLy8gUkVMQVRFRFxyXG4vLy0tLS0tLS0tLS1cclxuXHJcbltkYXRhLXNlbGVjdF17XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbn1cclxuIFxyXG5cclxuIiwiLyoqXHJcbiAqIENPTVBPTkVOVFNcclxuICogRk9STSAtIEZJTkQgQSBTSE9QXHJcbiAqL1xyXG5cclxuICRuYW1lOiBmb3JtO1xyXG5cclxuLiN7JG5hbWV9LS1maW5kLWEtY2F0IHtcclxuICAgIC8qXHJcbiAgICAuI3skbmFtZX1fX2lucHV0e1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIH1cclxuXHJcbiAgICAuI3skbmFtZX1fX2J0bntcclxuICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgID4gZGl2e1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0tYW5kLXVwKXtcclxuXHJcbiAgICAgICAgLiN7JG5hbWV9X19pbnB1dHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgID4gZGl2e1xyXG4gICAgICAgICAgICB3aWR0aDogMjAlO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICovXHJcblxyXG4gICAgLmZvcm1fX2lucHV0IHtcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkZm9ybS1pbnB1dC1ib3JkZXIgIWltcG9ydGFudDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGUgIWltcG9ydGFudDtcclxuICAgIH1cclxufVxyXG5cclxuXHJcbi5mb3JtX19pbnB1dC0tZmluZC1hLWNhdC1zZWFyY2h7XHJcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xyXG59XHJcblxyXG5cclxuLmZvcm1fX2J0bi0tZmluZC1hLWNhdHtcclxuICB3aWR0aDogMTAwJTtcclxuICAmOmhvdmVyIHtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjokYnJhbmQtcGluaztcclxuICAgICAgY29sb3I6JHdoaXRlO1xyXG4gIH1cclxufVxyXG4iLCIvKipcclxuICogQ09NUE9ORU5UU1xyXG4gKiBGT1JNIC0gRklORCBBIFNIT1BcclxuICovXHJcblxyXG4uI3skbmFtZX0tLWZpbmQtYS1jYXQtYmFubmVye1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xyXG4gICAgcGFkZGluZzogMjBweCAxNXB4O1xyXG4gICAgbWFyZ2luOiAwIGF1dG87XHJcblxyXG4gICAgLiN7JG5hbWV9X19sYWJlbC0tZmluZC1hLWNhdHtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDkwcHg7XHJcbiAgICAgICAgd2lkdGg6IDIxNXB4O1xyXG4gICAgICAgIGhlaWdodDogMDtcclxuICAgIH1cclxuXHJcbiAgICAuI3skbmFtZX1fX2lucHV0e1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxuICAgIH1cclxuXHJcbiAgICAuI3skbmFtZX1fX2J0bntcclxuICAgICAgICAvLyBAZXh0ZW5kICVidG4tdHlwbztcclxuICAgICAgICAvLyBAZXh0ZW5kICVidG4tdGhlbWUtcHJpbWFyeTtcclxuICAgICAgICAvLyBAZXh0ZW5kICVidG4tY29tcC1sYXJnZTtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG5cclxuICAgID4gZGl2e1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0tYW5kLXVwKXtcclxuICAgICAgICBtYXgtd2lkdGg6IDc1MHB4O1xyXG5cclxuICAgICAgICAuI3skbmFtZX1fX2xhYmVse1xyXG4gICAgICAgICAgICAvLyB3aWR0aDogMzQlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLiN7JG5hbWV9X19pbnB1dHtcclxuICAgICAgICAgICAgd2lkdGg6IDYzJTtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDtcclxuICAgICAgICAgICAgYWxpZ24tc2VsZjogZmxleC1lbmQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICA+IGRpdntcclxuICAgICAgICAgICAgd2lkdGg6IDQwJTtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuICIsIi8qKlxyXG4gKiBDT01QT05FTlRTXHJcbiAqIEZPUk0gLSBGSU5EIEEgU0hPUFxyXG4gKi9cclxuXHJcbiAkbmFtZTogZm9ybTtcclxuXHJcbi4jeyRuYW1lfS0tb3BwcyB7XHJcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gICAgcGFkZGluZy10b3A6IDQwcHg7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogNDBweDtcclxuXHJcbiAgICAuZm9ybV9fc2VsZWN0LS1uYXJyb3cge1xyXG4gICAgICAgIG1heC13aWR0aDogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICAuZm9ybV9fc2VsZWN0LFxyXG4gICAgLmZvcm1fX2lucHV0IHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRmb3JtLWlucHV0LWJvcmRlciAhaW1wb3J0YW50O1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgIC5mb3JtX19idG4ge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXBpbms7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8od2lkZS1hbmQtdXApIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuXHJcbiAgICAgICAgLmZvcm1fX3Rvd24ge1xyXG4gICAgICAgICAgICB3aWR0aDogNDUlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmZvcm1fX2Rpc3RhbmNlIHtcclxuICAgICAgICAgICAgd2lkdGg6IDI1JTtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZm9ybV9fYnRuIHtcclxuICAgICAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8qXHJcbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKHdpZGUtYW5kLXVwKXtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgICAgID4gLiN7JG5hbWV9X19pbnB1dHtcclxuICAgICAgICAgICAgd2lkdGg6IDY1JTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC4jeyRuYW1lfV9fc2VsZWN0e1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogNSU7XHJcbiAgICAgICAgICAgIG1pbi13aWR0aDogMzAlO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAxOHB4IHRvcCAyMHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLiN7JG5hbWV9X19idG57XHJcbiAgICAgICAgICAgIC8vIEBleHRlbmQgJWJ0bi10eXBvO1xyXG4gICAgICAgICAgICAvLyBAZXh0ZW5kICVidG4tdGhlbWUtcHJpbWFyeTtcclxuICAgICAgICAgICAgLy8gQGV4dGVuZCAlYnRuLWNvbXAtbGFyZ2U7XHJcbiAgICAgICAgICAgIC8vIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgYm90dG9tOiA0MHB4O1xyXG4gICAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgID4gZGl2e1xyXG4gICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMjgwcHgpO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcblxyXG4gICAgICAgICAgICA+IGRpdntcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAzMy4zMzMzMyU7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8obWVkaXVtLWFuZC11cCl7XHJcblxyXG5cclxuICAgICAgICA+IGRpdntcclxuICAgICAgICAgICAgLy8gd2lkdGg6IDI1JTtcclxuICAgICAgICAgICAgLy8gbWFyZ2luLWJvdHRvbTogMzBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgICovXHJcbn1cclxuIiwiXHJcblxyXG4uZm9ybS0tZmluZC1hLXNob3B7XHJcbiAuZm9ybV9faW5wdXQge1xyXG4gICBtYXgtd2lkdGg6IDMwMHB4O1xyXG4gICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICBib3JkZXItcmFkaXVzOjZweDtcclxuICAgQG1lZGlhIChtaW4td2lkdGg6IDM3NXB4KXtcclxuICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XHJcbiAgIH1cclxuIH1cclxuICAuZm9ybV9fYnRue1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICB9XHJcbn1cclxuIiwiXHJcbi5mb3JtLS1zdWJzY3JpcHRpb257XHJcbiAgQGluY2x1ZGUgcmVzcG9uZC10byh3aWRlLWFuZC11cCl7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gIH1cclxuXHJcbiAgLmZvcm1fX2hlYWRpbmd7XHJcbiAgICBtYXJnaW46IDAgMCAxZW07XHJcbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKHdpZGUtYW5kLXVwKXtcclxuICAgICAgbWFyZ2luOiAwO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuXHJcbi5mb3JtX19zdWJzY3JpcHRpb24tdHlwZXtcclxuICBwYWRkaW5nOiAxMzZweCAyMHB4IDIwcHg7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWdyZXk7XHJcbiAgbWF4LXdpZHRoOiAyMjZweDtcclxuICBtYXJnaW46IDAgYXV0byAyZW07XHJcblxyXG4gIC8vIGJveC1zaGFkb3c6IDAgMCAxMHB4IDNweCByZ2JhKDk0LCA5NCwgOTQsIDAuMjUpO1xyXG4gIC8vbWFyZ2luOiAwIDQwcHggMCAyMHB4O1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgQGluY2x1ZGUgcmVzcG9uZC10byh3aWRlLWFuZC11cCl7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIHdpZHRoOiAyMjZweDtcclxuICAgIG1hcmdpbjogMCA0MHB4IDAgMjBweDtcclxuICB9XHJcblxyXG4gICY6YmVmb3Jle1xyXG4gICAgY29udGVudDogJyc7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHdpZHRoOiAxMjBweDtcclxuICAgIGhlaWdodDogODBweDtcclxuICAgIGNvbG9yOiAkYnJhbmQtYmx1ZTtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMjVweDtcclxuICAgIGxlZnQ6IDUwJTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcclxuICAgIGZvbnQtc2l6ZTogOTBweDtcclxuICB9XHJcblxyXG4gICZbZGF0YS1zZWxlY3QtYm94PVwiRm9yTWVcIl06YmVmb3Jle1xyXG4gICAgQGluY2x1ZGUgbWUtaWNvbjtcclxuICAgIGZvbnQtc2l6ZTogOTVweDtcclxuICB9XHJcbiAgJltkYXRhLXNlbGVjdC1ib3g9XCJGb3JVc1wiXTpiZWZvcmV7IEBpbmNsdWRlIGZhbWlseS1pY29uOyB9XHJcbiAgJltkYXRhLXNlbGVjdC1ib3g9XCJBR2lmdFwiXTpiZWZvcmV7IEBpbmNsdWRlIGdpZnQtaWNvbjsgfVxyXG5cclxuICAuZm9ybV9fc2VsZWN0e1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgIGNvbG9yOiAkYnJhbmQtYmxhY2s7XHJcbiAgICBmb250LWZhbWlseTogJGNhdHMtYm9sZDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIGZvbnQtc2l6ZTogMjBweDtcclxuXHJcbiAgICAmOmJlZm9yZXtcclxuICAgICAgY29udGVudDogJ0dhcnJ5JztcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiJG5hbWU6IHNhYztcclxuXHJcbi4jeyRuYW1lfV9fc2VjdGlvbiB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIHBhZGRpbmc6IDFlbSAwIDA7XHJcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGxpZ2h0LWdyZXk7XHJcblxyXG4gICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0tYW5kLXVwKSB7XHJcbiAgICAgICAgcGFkZGluZzogNGVtIDA7XHJcbiAgICB9XHJcblxyXG4gICAgLiN7JG5hbWV9X190aXRsZSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAyMnB4O1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICAgIG1hcmdpbjogMWVtO1xyXG5cclxuICAgICAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bS1hbmQtdXApIHtcclxuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMmVtO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuI3skbmFtZX1fX3N1YnRpdGxlIHtcclxuICAgICAgICBmb250LXNpemU6IDE3cHg7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICB9XHJcblxyXG4gICAgLiN7JG5hbWV9X193cmFwIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0tYW5kLXVwKSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLmlzLWhpZGRlbiB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZmxleF9faXRlbSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFlbTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5idG4ge1xyXG4gICAgICAgICAgICAvKm1hcmdpbi1ib3R0b206IDFlbTsqL1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmpzLWJyYW5jaC1zZWFyY2gtcG9zdGNvZGUtYnRuIHtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDFlbTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGlucHV0WyB0eXBlPSd0ZXh0J10ge1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDU0MHB4XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGZpZWxkc2V0IHtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICB9XHJcbiAgICAvLy0tLS0tLS0tLS1cclxuICAgIC8vIEVMRU1FTlRcclxuICAgIC8vLS0tLS0tLS0tLVxyXG4gICAgLmZvcm1fX2xhYmVsIHtcclxuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiAkc2FucztcclxuICAgIH1cclxuICAgIC8vLS0tLS0tLS0tLVxyXG4gICAgLy8gRUxFTUVOVFxyXG4gICAgLy8tLS0tLS0tLS0tXHJcbiAgICAuI3skbmFtZX1fX2Ftb3VudCB7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuMTVzIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgICAgIG91dGxpbmU6IG5vbmU7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICBwYWRkaW5nOiAxMHB4IDIzcHg7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC4wM3JlbTtcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZGFjMGQ4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIHdpZHRoOiAzMiU7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czo2cHg7XHJcbiAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0tYW5kLXVwKSB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCAwLjVlbTtcclxuICAgICAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1wdXJwbGU7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkYnJhbmQtcGluaztcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLiN7JG5hbWV9X19hbW91bnQtLW90aGVyIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0tYW5kLXVwKSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICBjb250ZW50OiAnXFwwMEEzJztcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGlucHV0IHtcclxuICAgICAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDAuNWVtO1xyXG4gICAgICAgICAgICB3aWR0aDogMTg4cHg7XHJcblxyXG4gICAgICAgICAgICAmOjpwbGFjZWhvbGRlciB7IC8qIENocm9tZSwgRmlyZWZveCwgT3BlcmEsIFNhZmFyaSAxMC4xKyAqL1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxOyAvKiBGaXJlZm94ICovXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYuYWN0aXZlIHtcclxuICAgICAgICAgICAgaW5wdXQge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICRicmFuZC1ibGFjaztcclxuXHJcbiAgICAgICAgICAgICAgICAmOjpwbGFjZWhvbGRlciB7IC8qIENocm9tZSwgRmlyZWZveCwgT3BlcmEsIFNhZmFyaSAxMC4xKyAqL1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYnJhbmQtYmxhY2s7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgYTpub3QoLmJ0bikge1xyXG4gICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICB9XHJcblxyXG4gICAgYnV0dG9uW3R5cGU9XCJzdWJtaXRcIl0ge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMWVtO1xyXG5cclxuICAgICAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bS1hbmQtdXApIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMmVtO1xyXG4gICAgICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5zYWNfX3NlY3Rpb24tLWJyYW5jaCB7XHJcbiAgICAuYnRuIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWU1ZTVlO1xyXG4gICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgIGJvcmRlcjogI2ZmZiAxcHggc29saWQ7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6ICRzYW5zO1xyXG4gICAgICAgIHBhZGRpbmc6IDdweCAxOHB4O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMWVtO1xyXG4gICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxuICAgICAgICAgICAgY29sb3I6ICM1ZTVlNWU7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuYnRuLS1ibHVlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG4gICAgICAgIGNvbG9yOiAjNWU1ZTVlO1xyXG4gICAgICAgIGJvcmRlcjogI2ZmZiAxcHggc29saWQ7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6ICRzYW5zO1xyXG4gICAgICAgIHBhZGRpbmc6IDdweCAxOHB4O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMWVtO1xyXG4gICAgfVxyXG59XHJcblxyXG4uanMtc3BvbnNvci1jYXQtc2xpZGVyIC5zbGljay1kb3RzIHtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogYXV0bztcclxuXHJcbiAgICBsaSB7XHJcbiAgICAgICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgICAgIHdpZHRoOiAxMHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLmpzLXNwb25zb3ItY2F0LXNsaWRlciB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cclxuICAgIC5zbGljay1hcnJvdyB7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDBweDtcclxuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMHB4O1xyXG4gICAgICAgIHRvcDogdW5zZXQ7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLWJsYWNrO1xyXG5cclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgdG9wOiB1bnNldDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLWJsYWNrO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnNsaWNrLWRvdHMge1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMHB4ICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICAgIC5zbGljay1hY3RpdmUge1xyXG4gICAgICAgICAgICBidXR0b24ge1xyXG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtYmxhY2s7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGxpIHtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDVweDtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XHJcblxyXG4gICAgICAgICAgICBidXR0b24ge1xyXG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRTdFN0U1O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uc3BvbnNvci1iaW8ge1xyXG4gICAgaDMge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICB9XHJcblxyXG4gICAgLm1pbmktYmlvIHtcclxuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgfVxyXG5cclxuICAgIHAge1xyXG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICB9XHJcblxyXG4gICAgLmxvZ2luLWJhciB7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgIH1cclxufVxyXG5cclxuLmpzLXNjcm9sbC10by1mb3JtIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcblxyXG4gICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0tYW5kLXVwKSB7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5qcy1zcG9uc29yLWNhdC1zbGlkZXItbW9iaWxlIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IG5vcm1hbCAhaW1wb3J0YW50O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHJcbiAgICAuc2xpY2stYXJyb3cge1xyXG4gICAgICAgIGhlaWdodDogMTAwcHg7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTAwcHg7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDBweDtcclxuICAgICAgICB0b3A6IHVuc2V0O1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1ibGFjaztcclxuXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIHRvcDogdW5zZXQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1ibGFjaztcclxuICAgICAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5zbGljay1kb3RzIHtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDBweDtcclxuXHJcbiAgICAgICAgLnNsaWNrLWFjdGl2ZSB7XHJcbiAgICAgICAgICAgIGJ1dHRvbiB7XHJcbiAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1ibGFjaztcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgbGkge1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogNXB4O1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcclxuXHJcbiAgICAgICAgICAgIGJ1dHRvbiB7XHJcbiAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNFN0U3RTU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG4jc3RhcnRTcG9uc29yIHtcclxuICAgIC5yYWRpby1jb250YWluZXIge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XHJcblxyXG4gICAgICAgIC5zcG9uc29yLXJhZGlvIHtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IGZpdC1jb250ZW50O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cclxuICAgICAgICAgICAgLmZvcm1fX2xhYmVsIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5mb3JtX19yYWRpbyB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgcmdiKDEyMiAyNyAxMTQpIDU1JSwgcmdiKDk0LCA5NCwgOTQpIDYzJSwgcmdiKDk0LCA5NCwgOTQpIDU5JSwgcmdiKDI1NSwgMjU1LCAyNTUpIDcwJSk7XHJcbiAgICAgICAgYm9yZGVyOiBub25lO1xyXG5cclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiKDI1NSwyNTUsMjU1KTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogLW1vei1yYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCByZ2IoMjUwIDIzMCAyNTApIDU1JSwgcmdiKDk0LCA5NCwgOTQpIDYzJSwgcmdiKDk0LCA5NCwgOTQpIDU5JSwgcmdiKDI1NSwgMjU1LCAyNTUpIDcwJSk7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IC13ZWJraXQtcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgcmdiKDI1MCAyMzAgMjUwKSA1NSUsIHJnYig5NCwgOTQsIDk0KSA2MyUsIHJnYig5NCwgOTQsIDk0KSA1OSUsIHJnYigyNTUsIDI1NSwgMjU1KSA3MCUpO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiByYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCByZ2IoMjUwIDIzMCAyNTApIDU1JSwgcmdiKDk0LCA5NCwgOTQpIDYzJSwgcmdiKDk0LCA5NCwgOTQpIDU5JSwgcmdiKDI1NSwgMjU1LCAyNTUpIDcwJSk7XHJcbiAgICAgICAgICAgIGhlaWdodDogMjRweDtcclxuICAgICAgICAgICAgd2lkdGg6IDI1cHg7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjlweCkge1xyXG4gICAgLnNwb25zb3ItYmlvIHtcclxuICAgICAgICBoMyB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAubWluaS1iaW8ge1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBwIHtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmxvZ2luLWJhciB7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgI3N0YXJ0U3BvbnNvciB7XHJcbiAgICAgICAgLnJhZGlvLWNvbnRhaW5lciB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uanMtc3BvbnNvci1jYXQtc2xpZGVyLXRpdGxlIHtcclxuICAgIHdpZHRoOiA5NSU7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBtYXJnaW4tdG9wOiAtMTBweDtcclxuXHJcbiAgICBoMyB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogIzVlNWU1ZTtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XHJcbiAgICAgICAgcGFkZGluZzogMTBweCAyMHB4O1xyXG4gICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiBUYWhvbWEsR2VuZXZhLHNhbnMtc2VyaWY7XHJcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0tYW5kLXVwKSB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxufVxyXG5cclxuLnNwb25zb3ItYmlvIHtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bS1hbmQtdXApIHtcclxuICAgICAgICB0ZXh0LWFsaWduOiBhdXRvO1xyXG4gICAgfVxyXG5cclxuICAgIGgzIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG5cclxuICAgICAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bS1hbmQtdXApIHtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmpzLXNwb25zb3ItY2F0LXNsaWRlci1tb2JpbGUuc2xpY2staW5pdGlhbGl6ZWQge1xyXG4gICAgbWFyZ2luLWxlZnQ6IDA7XHJcblxyXG4gICAgLmdyaWRfX2l0ZW0ge1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgIH1cclxufVxyXG5cclxuLmpzLXNwb25zb3ItY2F0LXNsaWRlci1tb2JpbGUge1xyXG4gICAgLnNsaWNrLWRvdHMge1xyXG4gICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiBhdXRvO1xyXG5cclxuICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTBweDtcclxuICAgICAgICAgICAgd2lkdGg6IDEwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiIsIu+7vyNldmVudF9fcmVzdWx0c19saXN0IGZvcm0gLnZpZXctbW9yZS1yZWdpb25hbC1ldmVudHMge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuI2V2ZW50X19yZXN1bHRzX2xpc3QgZm9ybTpsYXN0LW9mLXR5cGUgLnZpZXctbW9yZS1yZWdpb25hbC1ldmVudHMge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuIiwiLyoqXHJcbiAqIENPTVBPTkVOVFNcclxuICogR2FsbGVyeVxyXG4gKi9cclxuXHJcbiRuYW1lOiBnYWxsZXJ5O1xyXG5cclxuXHJcbi8vLS0tLS0tLS1cclxuLy8gQkxPQ0tcclxuLy8tLS0tLS0tLVxyXG4uI3skbmFtZX17XHJcblxyXG59XHJcblxyXG4vLy0tLS0tLS0tLS1cclxuLy8gRUxFTUVOVFxyXG4vLy0tLS0tLS0tLS1cclxuLiN7JG5hbWV9X19tYWluLWltYWdle1xyXG4gICAgbWFyZ2luLWJvdHRvbTogN3B4O1xyXG5cclxuICAgIGZpZ3VyZTpub3QoLmlzLWFjdGl2ZSl7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxufVxyXG5cclxuLiN7JG5hbWV9X190aHVtYnN7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIG1hcmdpbi1sZWZ0OiAtN3B4O1xyXG5cclxuICAgIC5ncmlkX19pdGVte1xyXG4gICAgICAgIG1pbi13aWR0aDogMjUlO1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogN3B4O1xyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLy8tLS0tLS0tLS0tLVxyXG4vLyBNT0RJRklFUlxyXG4vLy0tLS0tLS0tLS0tXHJcbiIsIi8qKlxyXG4gKiBDT01QT05FTlRTXHJcbiAqIEhhbWJ1cmdlclxyXG4gKiBBIGJ1dHRvbiB0byB0b2dnbGUgdGhlIHNpZGViYXJcclxuICovXHJcblxyXG4kbmFtZTogaGFtYnVyZ2VyO1xyXG5cclxuXHJcbi8vLS0tLS0tLS1cclxuLy8gQkxPQ0tcclxuLy8tLS0tLS0tLVxyXG4uI3skbmFtZX0ge1xyXG4gICAgd2lkdGg6IDQwcHg7XHJcbiAgICBoZWlnaHQ6IDI2cHg7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBib3JkZXItdG9wOiA0cHggc29saWQ7XHJcbiAgICBib3JkZXItYm90dG9tOiA0cHggc29saWQ7XHJcbiAgICBib3JkZXItY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIC8vbWFyZ2luLWJvdHRvbTogN3B4O1xyXG4gICAgQGluY2x1ZGUgYW5pbWF0ZShib3JkZXItY29sb3IgMjAwbXMpO1xyXG5cclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBoZWlnaHQ6IDBweDtcclxuICAgICAgICBib3JkZXItYm90dG9tOiA0cHggc29saWQ7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiBpbmhlcml0O1xyXG4gICAgfVxyXG5cclxuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogJGhhbWJ1cmdlci1ob3Zlci1jb2xvcjtcclxuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYS13aWR0aCgkbmF2aWdhdGlvbi1icmVha3BvaW50KSB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxufVxyXG4iLCIvKipcclxuICogQ09NUE9ORU5UU1xyXG4gKiBNYWluIE5hdmlnYXRpb25cclxuICogVGhpcyBpcyB0aGUgc2l0ZXMgbWFpbiBoZWFkZXIgbmF2aWdhdGlvblxyXG4gKi9cclxuXHJcbiRuYW1lOiBtYWluLW5hdjtcclxuXHJcbi5oZWFkZXItZ3JvdXBfX25hdiB7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDBweDtcclxuICAgIG1hcmdpbi10b3A6IDEwcHg7XHJcbiAgICB0cmFuc2l0aW9uOiBtYXJnaW4gMC41cztcclxufVxyXG5cclxuLy8tLS0tLS0tLVxyXG4vLyBCTE9DS1xyXG4vLy0tLS0tLS0tXHJcbi4jeyRuYW1lfSB7XHJcbiAgICAuc2l0ZS1oZWFkZXIgJiB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblxyXG4gICAgICAgID4gbGkge1xyXG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG5cclxuICAgICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtYWluLW5hdmlnYXRpb24tc3R5bGU7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogaW5oZXJpdDtcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IHBhZGRpbmcgMC41cztcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGFuaW1hdGUoY29sb3IgMjAwbXMpO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcblxyXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGJyYW5kLXB1cnBsZTtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGxpZ2h0LXB1cnBsZTtcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiA2cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDZweDtcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgPiBhIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDIwcHggMjRweDtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgICAgICAgICAgICAmOmFmdGVyLFxyXG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgICB0b3A6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICAgICAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGJyYW5kLXB1cnBsZTtcclxuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogNnB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiA2cHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG5cclxuICAgICAgICAgICAgJjpob3ZlciA+IGEge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG5cclxuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGFuaW1hdGUoKHRvcCAyMDBtcywgb3BhY2l0eSAyMDBtcykpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiIsIi8qKlxyXG4gKiBDT01QT05FTlRTXHJcbiAqIE1haW4gTmF2aWdhdGlvbiBmb3IgTW9iaWxlXHJcbiAqIFRoaXMgaXMgdGhlIHNpdGUncyBuYXZpZ2F0aW9uIHNvbHV0aW9uIGZvciBtb2JpbGUuXHJcbiAqL1xyXG5cclxuJG5hbWU6IG1haW4tbmF2O1xyXG5cclxuXHJcbi8vLS0tLS0tLS1cclxuLy8gQkxPQ0tcclxuLy8tLS0tLS0tLVxyXG4uI3skbmFtZX0ge1xyXG4gICAgLnNpZGViYXIgJiB7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIEBpbmNsdWRlIGFuaW1hdGUoYWxsIDMwMG1zKTtcclxuXHJcbiAgICAgICAgbGkge1xyXG4gICAgICAgICAgICBjb2xvcjogJHNpZGViYXItbGluay1jb2xvcjtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cclxuICAgICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDEycHg7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiBpbmhlcml0O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuXHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHNpZGViYXItbGluay1jb2xvcjtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkc2lkZWJhci1iYWNrZ3JvdW5kLWNvbG9yO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICYuaGFzLXN1Ym5hdiB7XHJcblxyXG4gICAgICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcGx1cy1pY29uO1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiBpbmhlcml0O1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMzBweDtcclxuICAgICAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7XHJcbiAgICAgICAgICAgICAgICAgICAgbWluLXdpZHRoOiA0NHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAmLmhhcy1zdWJuYXYtLW9wZW4ge1xyXG5cclxuICAgICAgICAgICAgICAgICAgICA+IHVsIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgPiBsaSB1bCB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzaWRlYmFyLWJhY2tncm91bmQtY29sb3I7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtYXR0YWNobWVudDogZml4ZWQ7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIGxlZnQ6IDExMCU7XHJcbiAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBhbmltYXRlKGFsbCAzMDBtcyk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiIsIlxyXG5cclxuLm1vYmlsZS1uYXYtY29udGFpbmVyIHtcclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgIHRvcDogMDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcclxuICAgIHBhZGRpbmc6IDFlbTtcclxuICAgIHotaW5kZXg6IDUwMDtcclxuICAgIG92ZXJmbG93OiBhdXRvO1xyXG4gICAgYm94LXNoYWRvdzogMTVweCAwcHggMjVweCAwcHggIzAwMDAwMDtcclxuICAgIC8vIEtpY2sgaW4gYWZ0ZXIgbGFyZ2UgbW9iaWxlXHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNDI2cHgpIHtcclxuICAgICAgICB3aWR0aDogMzIwcHg7XHJcbiAgICAgICAgbGVmdDogYXV0bztcclxuICAgIH1cclxufVxyXG5cclxuLmpzLW1vYmlsZS1uYXZ7XHJcbiAgdHJhbnNpdGlvbjogMC4zcyB0cmFuc2Zvcm07XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xyXG4gICYuaXMtb3BlbntcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcclxuXHJcbiAgICAubW9iaWxlLW5hdl9fdG9wLXJvd3tcclxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLm1vYmlsZS1uYXZ7XHJcblxyXG59XHJcblxyXG4ubW9iaWxlLW5hdl9fZmlyc3QtdGllcntcclxuXHJcbn1cclxuXHJcbi5tb2JpbGUtbmF2X19maXJzdC10aWVyLWxpc3R7XHJcblxyXG59XHJcblxyXG4ubW9iaWxlLW5hdl9fbGluayB7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICBmb250LWZhbWlseTogJGNhdHMtYm9sZDtcclxuICAgIGNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDI0cHg7XHJcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICBjb2xvcjogJGxpZ2h0LXB1cnBsZTtcclxuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuICAgIH1cclxufVxyXG5cclxuXHJcbi5tb2JpbGUtbmF2X19zZWNvbmQtdGllcntcclxuXHJcbn1cclxuXHJcbi5tb2JpbGUtbmF2X19zZWNvbmQtdGllci1saXN0e1xyXG5cclxufVxyXG5cclxuXHJcbi5tb2JpbGUtbmF2X190b3Atcm93IHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkYnJhbmQtZ3JleTtcclxuICAgIHRyYW5zaXRpb246IDAuM3MgdHJhbnNmb3JtO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xyXG5cclxuICAgICYuaGFzLWNoaWxkcmVuOmFmdGVyIHtcclxuICAgICAgICBjb250ZW50OiBcIitcIjtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiAxOHB4O1xyXG4gICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjRweDtcclxuICAgICAgICBjb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuICAgIH1cclxufVxyXG5cclxuLy8gSGVscGVyIGZvciBxdWljayBoYW5kbGluZyBvZiBhbGwgdGllcnMgb2YgbmF2IHdpdGggY2hpbGRyZW5cclxuXHJcbi5zdWItbmF2e1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi5oYXMtY2hpbGRyZW4ge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiK1wiO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDE4cHg7XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcblxyXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjlweCkge1xyXG4gICAgICAgICAgICB0b3A6IDF2dztcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5pcy1hY3RpdmUge1xyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICBjb250ZW50OiBcIi1cIjtcclxuICAgICAgICAgICAgdG9wOiAxNnB4O1xyXG4gICAgICAgICAgICByaWdodDogNHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuc3ViLW5hdi0taXMtYWN0aXZlIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIH1cclxufVxyXG5cclxuXHJcblxyXG4iLCIvKipcclxuICogQ09NUE9ORU5UU1xyXG4gKiBNZWRpYSAtIEJBU0VcclxuICovXHJcblxyXG4kbmFtZTogbWVkaWE7XHJcblxyXG4vLy0tLS0tLS0tXHJcbi8vIEJMT0NLXHJcbi8vLS0tLS0tLS1cclxuLiN7JG5hbWV9e1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgTEFaWUlOe1xyXG4gICAgMCUgICB7IG9wYWNpdHk6IDA7IH1cclxuICAgIDEwMCUgeyBvcGFjaXR5OiAxOyB9XHJcbn1cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIEVMRU1FTlQgLSBJTUFHRVxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyAuI3skbmFtZX1fX2ltYWdle31cclxuXHJcbi8vaGlkZSBpbWcgdGFncyB3aGVuIGJhY2tncm91bmQtaW1hZ2UgaXMgdXNlZCBmb3IgZGlzcGxheWluZyBjb250ZW50XHJcbi4jeyRuYW1lfV9faW1hZ2Vbc3R5bGUqPVwiaW1hZ2VcIl0sXHJcbi4jeyRuYW1lfV9faW1hZ2VbZGF0YS1zcmNdLFxyXG4uI3skbmFtZX1fX3NsaWRlciBbZGF0YS1zcmNde1xyXG4gICAgQGluY2x1ZGUgYXNwZWN0LXJhdGlvKDQsMyk7XHJcbiAgICBAaW5jbHVkZSBiYWNrZ3JvdW5kKGNvdmVyKTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAwO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuXHJcbiAgICBpbWd7IGRpc3BsYXk6IG5vbmU7IH1cclxuXHJcbiAgICAmOmFmdGVye1xyXG4gICAgICAgIEBpbmNsdWRlIGFuaW1hdGUoY29sb3IgMjAwbXMpO1xyXG4gICAgfVxyXG5cclxuICAgICYuaXMtdmlzaWJsZXtcclxuICAgICAgICAvL2FuaW1hdGlvbjogTEFaWUlOIDUwMG1zIGVhc2UtaW4tb3V0O1xyXG4gICAgfVxyXG5cclxuICAgIC8vICY6YmVmb3Jle1xyXG4gICAgLy8gICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgLy8gICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgLy8gICAgIEBpbmNsdWRlIGJhY2tncm91bmQoY29udGFpbik7XHJcbiAgICAvLyAgICAgQGluY2x1ZGUgY292ZXIoYWJzb2x1dGUpO1xyXG4gICAgLy8gICAgIGJhY2tncm91bmQtY29sb3I6ICM5OTk7XHJcbiAgICAvLyAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9iYXNlNjQvc3ZnL2NhdC5zdmcpO1xyXG4gICAgLy8gICAgIHotaW5kZXg6IC0xO1xyXG4gICAgLy8gICAgIG9wYWNpdHk6IDAuMTtcclxuICAgIC8vIH1cclxufVxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBFTEVNRU5UIC0gQ0FQVElPTlxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfV9fY2FwdGlvbntcclxuICAgIGNvbG9yOiBpbmhlcml0O1xyXG4gICAgcGFkZGluZzogMTVweCAxNXB4IDI1cHg7XHJcblxyXG4gICAgaDR7XHJcbiAgICAgICAgbWFyZ2luOiAxMHB4IDAgMTVweDtcclxuICAgIH1cclxuXHJcbiAgICBoNXtcclxuICAgICAgICBAZXh0ZW5kICV0cy0zO1xyXG4gICAgICAgIG1hcmdpbjogMTBweCAwIDE1cHg7XHJcbiAgICB9XHJcblxyXG4gICAgaDZ7XHJcbiAgICAgICAgbWFyZ2luOiAxMHB4IDAgMTVweDtcclxuICAgIH1cclxuXHJcbiAgICBwOm5vdCguYnRuKXtcclxuICAgICAgICBAZXh0ZW5kICV0cy04O1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIE1PRElGSUVSUyAtIE5FVyBTUE9OU1IgTEFZT1VUXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfV9fY2FwdGlvbi0tZmxvYXQtdGl0bGUge1xyXG4gICAgcGFkZGluZzogNDBweCAxNXB4IDI1cHg7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgLmhlYWRpbmctd3JhcCB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogLTE1cHg7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuXHJcbiAgICAgICAgaDUge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkbGlnaHQtcHVycGxlO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMjBweDtcclxuICAgICAgICAgICAgY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBUYWhvbWEsR2VuZXZhLHNhbnMtc2VyaWY7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6Ym9sZDtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czo2cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHA6bm90KC5idG4pIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiBUYWhvbWEsR2VuZXZhLHNhbnMtc2VyaWY7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6MTAwcHg7XHJcbiAgICB9XHJcbiAgICAuYnRuIHtmb250LXNpemU6MWVtO31cclxufVxyXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgIC8vIE1PRElGSUVSUyAtIEFTUEVDVCBSQVRJT1NcclxuICAgIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgICAuI3skbmFtZX0tLTEtMSB7XHJcbiAgICAgICAgLiN7JG5hbWV9X19pbWFnZSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGFzcGVjdC1yYXRpbygxLDEpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuI3skbmFtZX0tLTItMSB7XHJcbiAgICAgICAgLiN7JG5hbWV9X19pbWFnZSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGFzcGVjdC1yYXRpbygyLDEpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuI3skbmFtZX0tLTMtMiB7XHJcbiAgICAgICAgLiN7JG5hbWV9X19pbWFnZSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGFzcGVjdC1yYXRpbygzLDIpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuI3skbmFtZX0tLTQtMyB7XHJcbiAgICAgICAgLiN7JG5hbWV9X19pbWFnZSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGFzcGVjdC1yYXRpbyg0LDMpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuI3skbmFtZX0tLTUtMyB7XHJcbiAgICAgICAgLiN7JG5hbWV9X19pbWFnZSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGFzcGVjdC1yYXRpbyg1LDMpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuI3skbmFtZX0tLTUtNCB7XHJcbiAgICAgICAgLiN7JG5hbWV9X19pbWFnZSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGFzcGVjdC1yYXRpbyg1LDQpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuI3skbmFtZX0tLTEwLTkge1xyXG4gICAgICAgIC4jeyRuYW1lfV9faW1hZ2Uge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBhc3BlY3QtcmF0aW8oMTAsOSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC4jeyRuYW1lfS0tMTAtNyB7XHJcbiAgICAgICAgLiN7JG5hbWV9X19pbWFnZSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGFzcGVjdC1yYXRpbygxMCw3KTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAgLy8gTU9ESUZJRVJTIC0gQUNUSU9OU1xyXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgIC4jeyRuYW1lfS0tYWN0aW9ucy1sZWZ0LFxyXG4gICAgLiN7JG5hbWV9LS1hY3Rpb25zLXJpZ2h0IHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblxyXG4gICAgICAgIC4jeyRuYW1lfV9fYWN0aW9ucyB7XHJcbiAgICAgICAgICAgID4gZGl2IHtcclxuICAgICAgICAgICAgICAgIG1heC13aWR0aDogNjAwcHg7XHJcblxyXG4gICAgICAgICAgICAgICAgcCB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogJGxpbmUtaGVpZ2h0IC8gMjtcclxuICAgICAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJGNhdHMtbWVkO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIC5mb3JtIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDQwMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodCAvIDI7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG5cclxuICAgIC4jeyRuYW1lfS0tYWN0aW9ucy1yaWdodCB7XHJcbiAgICAgICAgLiN7JG5hbWV9X19hY3Rpb25zIHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgIC8vIEVMRU1FTlQgLSBFRElUXHJcbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLVxyXG4uI3skbmFtZX1fX2VkaXQge1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiA0cHg7XHJcbiAgICByaWdodDogNHB4O1xyXG4gICAgd2lkdGg6IDMycHg7XHJcbiAgICBoZWlnaHQ6IDQ2cHg7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvYmFzZTY0L1NWRy9lZGl0LWljb24uc3ZnKTtcclxuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgdG9wIDVweDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDNweDtcclxuICAgIGJhY2tncm91bmQtc2l6ZTogMjVweDtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDIwMG1zIGVhc2UtaW4tb3V0O1xyXG4gICAgY29sb3I6ICRicmFuZC1ibHVlO1xyXG5cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGNvbnRlbnQ6ICdFRElUJztcclxuICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB9XHJcblxyXG4gICAgLiN7JG5hbWV9LS1jYW4tZWRpdCAmIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBwb2ludGVyLWV2ZW50czogYWxsO1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtYmx1ZTtcclxuICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuICAgIC8vLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgICAvLyBFTEVNRU5UIC0gREVMRVRFXHJcbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLVxyXG4uI3skbmFtZX1fX2RlbGV0ZSB7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDRweDtcclxuICAgIHJpZ2h0OiA0cHg7XHJcbiAgICB3aWR0aDogMzJweDtcclxuICAgIGhlaWdodDogMzJweDtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvYmFzZTY0L1NWRy90cmFzaC1jYW4uc3ZnKTtcclxuICAgIGJhY2tncm91bmQtc2l6ZTogODAlO1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xyXG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDIwMG1zIGVhc2UtaW4tb3V0O1xyXG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcblxyXG4gICAgLiN7JG5hbWV9LS1oYXMtaW1hZ2U6aG92ZXIgJiB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IGFsbDtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG4gICAgfVxyXG59XHJcbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAgLy8gTU9ESUZJRVJTIC0gU0VMRUNUXHJcbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4uI3skbmFtZX0tLXNlbGVjdCB7XHJcbiAgICAvLyBVc2VkIHdpdGggbGlua3MgaW4gdGhlIGRvbmF0aW9ucyBzZWN0aW9uXHJcbiAgICAmLmlzLWFjdGl2ZSB7XHJcbiAgICAgICAgQGV4dGVuZCAlaG92ZXItc2hhZG93LWxpZ2h0O1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1ibHVlO1xyXG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcclxuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkYnJhbmQtYmxhY2s7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuXHJcbiAgICAuI3skbmFtZX1fX2ltYWdlLS1jYXQge1xyXG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XHJcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2U3ZThlNjtcclxuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2Jhc2U2NC9TVkcvY2F0LWNvbW11bml0eS10aWxlLnBuZyk7XHJcbiAgICB9XHJcbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAgLy8gUkVMQVRFRFxyXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgIC5leGlzdGluZy1pbWFnZSB7XHJcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG5cclxuICAgICAgICAmLmlzLWRpc2FibGVkIHtcclxuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICAgICAgICAgIGZpbHRlcjogZ3JheXNjYWxlKDEpO1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAwLjU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuXHJcblxyXG4gICAgLm1lZGlhX19tYWdhemluZS1mb3JtLWNvbnRhaW5lciB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAzMDBweDtcclxuICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgIH1cclxuIiwiLyoqXHJcbiAqIENPTVBPTkVOVFNcclxuICogTWVkaWEgLSBCQVNFXHJcbiAqL1xyXG5cclxuLy8tLS0tLS0tLS0tLVxyXG4vLyBNT0RJRklFUlxyXG4vLy0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfS0taW5saW5lIHtcclxuICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgZGlzcGxheTogaW5saW5lO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogJGxpbmUtaGVpZ2h0O1xyXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgIC8vIEVMRU1FTlQgLSBJTUFHRVxyXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgIC4jeyRuYW1lfV9faW1hZ2UsXHJcbiAgICBpbWcge1xyXG4gICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgIH1cclxuICAgIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgIC8vIEVMRU1FTlQgLSBDQVBUSU9OXHJcbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAgLiN7JG5hbWV9X19jYXB0aW9uIHtcclxuICAgICAgICBwYWRkaW5nOiAxNXB4IDIwcHg7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBsYWNlaG9sZDtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcblxyXG4gICAgICAgIHAge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDk1JTtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYuI3skbmFtZX0tLWxlZnQsXHJcbiAgICAmLiN7JG5hbWV9LS1yaWdodCB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiA1MCU7XHJcbiAgICAgICAgLy8gQWxpZ24gd2l0aCBjb3B5IHdpdGggcmVzcGVjdCB0byB0aGUgZ2xvYmFsIGxpbmUgaGVpZ2h0XHJcbiAgICAgICAgbWFyZ2luLXRvcDogJGxpbmUtaGVpZ2h0IC8gNDtcclxuICAgICAgICAvL0F2ZXJhZ2UgdGhlIG1hcmdpbiBib3R0b20gd2l0aCBsaW5laGVpZ2h0IGxpbmUgcmV0dXJucyB0byBhdm9pZCBleGNlc3NpdmUgd2hpdGVzcGFjZSBhdCBhbnkgdmlldyB3aWR0aCB2cyBpbWFnZSBzaXplIHZzIGxpbmUgcmV0dXJuc1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodCAvIDI7XHJcbiAgICB9XHJcblxyXG4gICAgJi4jeyRuYW1lfS0tbGVmdCB7XHJcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAkbGluZS1oZWlnaHQ7XHJcbiAgICB9XHJcblxyXG4gICAgJi4jeyRuYW1lfS0tcmlnaHQge1xyXG4gICAgICAgIGZsb2F0OiByaWdodDtcclxuICAgICAgICBtYXJnaW4tbGVmdDogJGxpbmUtaGVpZ2h0O1xyXG4gICAgfVxyXG59XHJcbiIsIi8qKlxyXG4gKiBDT01QT05FTlRTXHJcbiAqIE1lZGlhIC0gTElOS1xyXG4gKi9cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIE1PRElGSUVSIC0gTElOS1xyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLVxyXG4uI3skbmFtZX0tLWxpbmssXHJcbi4jeyRuYW1lfS0tbGluay1ib2xkIHtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIC8vIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMjAwbXMgZWFzZS1pbi1vdXQ7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgbWF4LXdpZHRoOiA0NjBweDtcclxuICAgIG1hcmdpbjogMCBhdXRvO1xyXG5cclxuICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8od2lkZS1hbmQtdXApIHtcclxuICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgPiBhIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxuXHJcbiAgICAuZGF0ZSB7XHJcbiAgICAgICAgY29sb3I6ICRicmFuZC1saWdodC1ibHVlO1xyXG4gICAgfVxyXG5cclxuICAgIC4jeyRuYW1lfV9faW1hZ2Uge1xyXG4gICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDQwMG1zO1xyXG4gICAgfVxyXG4gICAgLypcclxuICAgIC4jeyRuYW1lfV9fY2FwdGlvbntcclxuICAgICAgICBoZWlnaHQ6IDUwJTtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogODBweDtcclxuXHJcbiAgICAgICAgLmJ0bntcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICBib3R0b206IDIwcHg7XHJcbiAgICAgICAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xyXG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTpub3dyYXA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICAqL1xyXG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgLypiYWNrZ3JvdW5kLWNvbG9yOiAkcGxhY2Vob2xkO1xyXG4gICAgICAgIGNvbG9yOiR3aGl0ZTsqL1xyXG4gICAgICAgIC8qQGV4dGVuZCAlaG92ZXItc2hhZG93LWxpZ2h0OyovXHJcbiAgICAgICAgLyp0cmFuc2l0aW9uLWR1cmF0aW9uOiAwczsqL1xyXG5cclxuICAgICAgICAuI3skbmFtZX1fX2ltYWdlIHtcclxuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi4jeyRuYW1lfS0tbGluayB7XHJcbiAgICAuI3skbmFtZX1fX2ltYWdlIHtcclxuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA0MDBtcztcclxuICAgICAgICAvKmJvcmRlcjogMXB4IHNvbGlkICRwbGFjZWhvbGQ7Ki9cclxuICAgIH1cclxuXHJcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICAuI3skbmFtZX1fX2ltYWdlIHtcclxuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBSRUxBVEVEXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfV9fZmxhZyxcclxuLiN7JG5hbWV9X19yZWdpb257XHJcbiAgICB3aWR0aDogYXV0bztcclxuICAgIHBhZGRpbmc6IDVweCAxMnB4O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXJlZDtcclxuICAgIGNvbG9yOiB3aGl0ZTtcclxuICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XHJcbiAgICBmb250LXNpemU6IDg1JTtcclxuICAgIGxpbmUtaGVpZ2h0OiAxMjAlO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxufVxyXG5cclxuLiN7JG5hbWV9X19mbGFne1xyXG4gICAgdG9wOiAwO1xyXG4gICAgcmlnaHQ6IDA7XHJcbn1cclxuXHJcbi4jeyRuYW1lfV9fcmVnaW9ue1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgbGVmdDogNTAlO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDUwJSkgdHJhbnNsYXRlWCgtNTAlKTtcclxufVxyXG4iLCIvKipcclxuICogQ09NUE9ORU5UU1xyXG4gKiBNZWRpYSAtIExJTksgQk9MRFxyXG4gKi9cclxuXHJcbiRuYW1lOiBtZWRpYTtcclxuXHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIE1PRElGSUVSIC0gTElOSyBCT0xEXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLiN7JG5hbWV9LS1saW5rLWJvbGQge1xyXG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcblxyXG4gICAgLyomOm5vdCg6aG92ZXIpIHsqL1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1wdXJwbGU7XHJcbiAgICAgICAgY29sb3I6ICRicmFuZC1ibGFjaztcclxuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuICAgIC8qfSovXHJcblxyXG4gICAgLiN7JG5hbWV9X19pbWFnZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgYXNwZWN0LXJhdGlvKDUsMyk7XHJcbiAgICB9XHJcblxyXG4gICAgLiN7JG5hbWV9X19jYXB0aW9uIHtcclxuICAgICAgICAvL2hlaWdodDogNTAlO1xyXG4gICAgICAgIC8vcGFkZGluZy1ib3R0b206IDgwcHg7XHJcbiAgICAgICAgLy8uYnRue1xyXG4gICAgICAgIC8vICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAvLyAgICBib3R0b206IDIwcHg7XHJcbiAgICAgICAgLy8gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xyXG4gICAgICAgIC8vfVxyXG5cclxuICAgICAgICBoNSB7XHJcbiAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgIHdpZHRoOiA1MCU7XHJcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDE3NXB4O1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHJnYmEoJGJyYW5kLWJsYWNrLCAwLjUpO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAyMHB4IGF1dG8gMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuYnRuOmhvdmVye1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiR3aGl0ZTtcclxuICAgICAgICAgICAgY29sb3I6JGJyYW5kLXBpbms7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG5cclxuICAgIC8qJjpob3ZlciB7XHJcbiAgICAgICAgLiN7JG5hbWV9X19jYXB0aW9uIGg1OmFmdGVyIHtcclxuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKCRicmFuZC1ibGFjaywgMC41KTtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcbiAgICAgICAgfVxyXG4gICAgfSovXHJcbn1cclxuIiwiLyoqXHJcbiAqIENPTVBPTkVOVFNcclxuICogTWVkaWEgLSBHQUxMRVJZXHJcbiAqL1xyXG5cclxuXHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIE1PRElGSUVSIC0gTElOSyBCT0xEXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLiN7JG5hbWV9LS1nYWxsZXJ5IHtcclxuICAgIC4jeyRuYW1lfV9faW1hZ2Uge1xyXG4gICAgICAgIEBpbmNsdWRlIGFzcGVjdC1yYXRpbyg0LDMpO1xyXG5cclxuICAgICAgICBAaW5jbHVkZSByZXNwb25kLXRvKHdpZGUtYW5kLXVwKSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGFzcGVjdC1yYXRpbygxMCwgOSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICA+IHNwYW4ge1xyXG4gICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgd2lkdGg6IDEwMHB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDEwMHB4O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2Jhc2U2NC9zdmcvZ2FsbGVyeS1pY29uLnN2Zyk7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJhY2tncm91bmQoY292ZXIpO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XHJcbiAgICAgICAgICAgIGJvdHRvbTogMTBweDtcclxuICAgICAgICAgICAgcmlnaHQ6IDEwcHg7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICA+IHNwYW4ge1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0zJSk7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA0MDBtcztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCIvKipcclxuICogQ09NUE9ORU5UU1xyXG4gKiBNZWRpYSAtIExJTksgV0lERVxyXG4gKi9cclxuXHJcbiRuYW1lOiBtZWRpYTtcclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gTU9ESUZJRVIgLSBMSU5LIFdJREVcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4uI3skbmFtZX0tLWxpbmstd2lkZSB7XHJcbiAgICBwYWRkaW5nOiAxNXB4O1xyXG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcbiAgICAvKiY6aG92ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJHBsYWNlaG9sZCwgMC40KTtcclxuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuICAgIH0qL1xyXG5cclxuICAgIC4jeyRuYW1lfV9faW1hZ2Uge1xyXG4gICAgICAgIEBpbmNsdWRlIGFzcGVjdC1yYXRpbyg1LDMpO1xyXG4gICAgfVxyXG5cclxuICAgIC4jeyRuYW1lfV9fY2FwdGlvbiB7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDVweDtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1cHg7XHJcblxyXG4gICAgICAgIHA6bm90KC5idG4pIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJjpudGgtb2YtdHlwZShldmVuKSB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG5cclxuICAgICAgICBoNSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuYnRuIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogJGJyYW5kLXBpbms7XHJcblxyXG4gICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRsaWdodC1wdXJwbGU7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAvKiY6aG92ZXIge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRwbGFjZWhvbGQsIDAuNCk7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG4gICAgICAgIH0qL1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8obWVkaXVtLWFuZC11cCkge1xyXG4gICAgICAgIHBhZGRpbmc6IDM1cHg7XHJcbiAgICAgICAgLy9HUklEXHJcbiAgICAgICAgPiBhIHtcclxuICAgICAgICAgICAgZGlzcGxheTogZ3JpZDtcclxuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiA1MCUgNTAlO1xyXG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG87XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuI3skbmFtZX1fX2ltYWdlIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYXItaGFjaygyNywgMTI4MHB4LCAzOTNweCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuI3skbmFtZX1fX2NhcHRpb24ge1xyXG4gICAgICAgICAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMzBweDtcclxuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLy8gRmFsbGJhY2sgZm9yIGllIC0gVXNpbmcgRmxleCB0byBtYWludGFpbiBpbWFnZSBhc3BlY3QgcmF0aW8gb24gc2NhbGluZ1xyXG5AbWVkaWEgYWxsIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSl7XHJcblxyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtZWRpdW0pe1xyXG4gICAgICAgIC4jeyRuYW1lfS0tbGluay13aWRlID4gYXtcclxuXHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcbiAgICBcclxuICAgICAgICAgICAgPiAqe1xyXG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiA1MCU7XHJcbiAgICAgICAgICAgIH1cclxuICAgIFxyXG4gICAgICAgICAgICAuI3skbmFtZX1fX2ltYWdle1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDMwJTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufSIsIi8qKlxyXG4gKiBDT01QT05FTlRTXHJcbiAqIE1lZGlhIC0gV0lERSBPVkVSTEFQXHJcbiAqL1xyXG5cclxuJG5hbWU6IG1lZGlhO1xyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBNT0RJRklFUiAtIExJTksgV0lERVxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfS0td2lkZS1vdmVybGFwe1xyXG4gICAgLy8gcGFkZGluZzogMjBweCAxNXB4O1xyXG4gICAgbWF4LXdpZHRoOiA1MDBweDtcclxuXHJcbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bS1hbmQtZG93bil7XHJcblxyXG4gICAgICAgIC4jeyRuYW1lfV9fY2FwdGlvbntcclxuICAgICAgICAgICAgcGFkZGluZy10b3A6IDBweDtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKGRlc2stYW5kLXVwKXtcclxuICAgICAgICBkaXNwbGF5OiBncmlkO1xyXG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogNTAlIDMwcHggNTAlO1xyXG4gICAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogYXV0bztcclxuICAgICAgICBncmlkLWF1dG8tZmxvdzogZGVuc2U7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IDMwMHB4O1xyXG5cclxuICAgICAgICAuI3skbmFtZX1fX2ltYWdle1xyXG4gICAgICAgICAgICBncmlkLWNvbHVtbi1zdGFydDogMztcclxuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgICB0b3A6IC02MHB4O1xyXG4gICAgICAgICAgICBib3R0b206IC02MHB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgNDBweCAwIHJnYmEoJGJsYWNrLCAwLjIpO1xyXG4gICAgXHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuI3skbmFtZX1fX2NhcHRpb257XHJcbiAgICAgICAgICAgIGdyaWQtY29sdW1uLXN0YXJ0OiAxO1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgICAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi8vIEZhbGxiYWNrIGZvciBpZSAtIFVzaW5nIEZsZXggdG8gbWFpbnRhaW4gaW1hZ2UgYXNwZWN0IHJhdGlvIG9uIHNjYWxpbmdcclxuQG1lZGlhIGFsbCBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpe1xyXG5cclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkZGVzayl7XHJcbiAgICAgICAgLiN7JG5hbWV9LS13aWRlLW92ZXJsYXB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IC1tcy1ncmlkO1xyXG4gICAgICAgICAgICAtbXMtZ3JpZC1jb2x1bW5zOiA1MCUgMzBweCA1MCU7XHJcblxyXG4gICAgICAgICAgICAuI3skbmFtZX1fX2ltYWdle1xyXG4gICAgICAgICAgICAgICAgLW1zLWdyaWQtY29sdW1uOiAzO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDUwJTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLiN7JG5hbWV9X19jYXB0aW9ue1xyXG4gICAgICAgICAgICAgICAgLW1zLWdyaWQtY29sdW1uOiAxO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59IiwiLyoqXHJcbiAqIENPTVBPTkVOVFNcclxuICogTWVkaWEgLSBMSU5LIFJFU0VSVkVEIC0gTElOSyBQUklWQVRFXHJcbiAqL1xyXG5cclxuJG5hbWU6IG1lZGlhO1xyXG5cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gTU9ESUZJRVIgLSBMSU5LIFJFU0VSVkVEL1BSSVZBVEVcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4uI3skbmFtZX0tLWxpbmstcmVzZXJ2ZWQsXHJcbi4jeyRuYW1lfS0tbGluay1wcml2YXRlIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRwbGFjZWhvbGQ7XHJcbiAgICAvKnBvaW50ZXItZXZlbnRzOiBub25lOyovXHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICAgPiBhIHtcclxuICAgICAgICBjdXJzb3I6IGF1dG87XHJcbiAgICB9XHJcblxyXG4gICAgLiN7JG5hbWV9X19pbWFnZSB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxNTBweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxNTBweDtcclxuICAgICAgICAgICAgbGVmdDogNTAlO1xyXG4gICAgICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSBzY2FsZSgwLjcpO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBiYWNrZ3JvdW5kKGNvdmVyKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG4uI3skbmFtZX0tLWxpbmstcmVzZXJ2ZWR7XHJcbiAgICAuI3skbmFtZX1fX2ltYWdlOmFmdGVye1xyXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1hZ2VzL2Jhc2U2NC9TVkcvcmVzZXJ2ZWQtaWNvbi5zdmcnKTtcclxuICAgIH1cclxufVxyXG5cclxuLiN7JG5hbWV9LS1saW5rLXByaXZhdGV7XHJcbiAgICAuI3skbmFtZX1fX2ltYWdlOmFmdGVye1xyXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1hZ2VzL2Jhc2U2NC9TVkcvcHJpdmF0ZS1pY29uLnN2ZycpO1xyXG4gICAgfVxyXG59XHJcbiIsIi8qKlxyXG4gKiBDT01QT05FTlRTXHJcbiAqIE1lZGlhIC0gTElOSyBFVkVOVFxyXG4gKi9cclxuXHJcbiRuYW1lOiBtZWRpYTtcclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIE1PRElGSUVSIC0gTElOSyBFVkVOVFxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4uI3skbmFtZX0tLWV2ZW50e1xyXG4gICAgLiN7JG5hbWV9X19pbWFnZXtcclxuXHJcbiAgICAgICAgPiBwe1xyXG4gICAgICAgICAgICB3aWR0aDogODVweDtcclxuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRoZWFkaW5nLW1lZC1mb250O1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDIycHg7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyN3B4O1xyXG4gICAgICAgICAgICBjb2xvcjogJGJyYW5kLWJsYWNrO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiA1cHggMTVweDtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgIHJpZ2h0OiA0MHB4O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKHdoaXRlLCAwLjUpO1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICAgICAgICAgICBzcGFue1xyXG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCIvKipcclxuICogQ09NUE9ORU5UU1xyXG4gKiBNZWRpYSAtIExJTksgVklERU9cclxuICovXHJcblxyXG4kbmFtZTogbWVkaWE7XHJcblxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gTU9ESUZJRVIgLSBWSURFT1xyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLVxyXG4uI3skbmFtZX0tLXZpZGVvIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgbWF4LXdpZHRoOiA0NjBweDtcclxuICAgIG1hcmdpbjogMCBhdXRvO1xyXG5cclxuICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8od2lkZS1hbmQtdXApIHtcclxuICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgLiN7JG5hbWV9X19pbWFnZVtzdHlsZSo9XCJpbWFnZVwiXSB7XHJcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgIEBpbmNsdWRlIGFzcGVjdC1yYXRpbygxNiw5KTtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcblxyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBwbGF5LWljb247XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAwO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDEwMHB4O1xyXG4gICAgICAgICAgICBjb2xvcjogd2hpdGU7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC01MHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuODtcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5ob21lcGFnZSAmIHtcclxuICAgICAgICAuI3skbmFtZX1fX2ltYWdlW3N0eWxlKj1cImltYWdlXCJdIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYXNwZWN0LXJhdGlvKDEwLDcpO1xyXG4gICAgICAgICAgICAvKkBleHRlbmQgJXNldC1zaGFkb3ctbGlnaHQ7Ki9cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gRUxFTUVOVCAtIFZJREVPXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfV9fdmlkZW97XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1ibGFjaztcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvYmFzZTY0L1NWRy90YWlsLXNwaW4uc3ZnKTtcclxuICAgIGJhY2tncm91bmQtc2l6ZTogNTBweDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcclxuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcblxyXG4gICAgaWZyYW1le1xyXG4gICAgICAgIEBpbmNsdWRlIGNvdmVyKGFic29sdXRlKTtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxuXHJcbiAgICAvL2lmIHBvc3RlclxyXG4gICAgJltzdHlsZSo9XCJpbWFnZVwiXXtcclxuICAgICAgICBAaW5jbHVkZSBiYWNrZ3JvdW5kKGNvdmVyKTtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBhc3BlY3QtcmF0aW8oMTYsOSk7XHJcbiAgICAvKlxyXG4gICAgLnBvcHVwICYge1xyXG4gICAgICAgIC8vIFNUQU5EQVJEIFlUIFZJREVPXHJcbiAgICAgICAgQGluY2x1ZGUgYXNwZWN0LXJhdGlvKDE2LDkpO1xyXG4gICAgfVxyXG5cclxuICAgICAqL1xyXG59XHJcblxyXG4iLCIvKipcclxuICogQ09NUE9ORU5UU1xyXG4gKiBNRURJQSAtIExJTksgU09DSUFMXHJcbiAqL1xyXG5cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gRUxFTUVOVCAtIFNPQ0lBTFxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfV9fc29jaWFse1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgcGFkZGluZy10b3A6IDEwcHg7XHJcblxyXG4gICAgaDN7XHJcbiAgICAgICAgd2lkdGg6IDYwJTtcclxuICAgICAgICBmb250LWZhbWlseTogJGNhdHMtbWVkO1xyXG4gICAgfVxyXG5cclxuICAgIC5jb3VudGVyeyBwYWRkaW5nLWxlZnQ6IDEwcHg7IH1cclxufVxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBNT0RJRklFUiAtIElOU1RBR1JBTVxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfS0taW5zdGFncmFtIHtcclxuXHJcbiAgICAuI3skbmFtZX1fX2ltYWdlIHtcclxuXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGluc3QtaWNvbjtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogNzJweDtcclxuICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRvcDogMzBweDtcclxuICAgICAgICAgICAgcmlnaHQ6IDMwcHg7XHJcbiAgICAgICAgICAgIHdpZHRoOiA3MnB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDcycHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCIvKipcclxuICogQ09NUE9ORU5UU1xyXG4gKiBNZWRpYSAtIExJTksgQ09WRVJcclxuICovXHJcblxyXG4kbmFtZTogbWVkaWE7XHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBNT0RJRklFUiAtIENPVkVSXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfS0tY292ZXIge1xyXG4gICAgQGluY2x1ZGUgY292ZXIoYWJzb2x1dGUpO1xyXG5cclxuICAgIC4jeyRuYW1lfV9faW1hZ2Uge1xyXG4gICAgICAgIEBpbmNsdWRlIGNvdmVyKGFic29sdXRlKTtcclxuICAgICAgICBwYWRkaW5nLXRvcDogMDtcclxuICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICB9XHJcblxyXG4gICAgLiN7JG5hbWV9X19jYXB0aW9uIHtcclxuICAgICAgICBjb2xvcjogd2hpdGU7XHJcbiAgICAgICAgQGluY2x1ZGUgY292ZXIoYWJzb2x1dGUpO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblxyXG4gICAgICAgIGgxLFxyXG4gICAgICAgIGgyIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICB6LWluZGV4OiAxO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgIC8vbWluLWhlaWdodDogMjAwcHg7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogMTAwMHB4O1xyXG4gICAgICAgICAgICAvKnRleHQtc2hhZG93OiAwIDAgMjBweCAkYmxhY2s7Ki9cclxuXHJcbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpub3QoOm9ubHktY2hpbGQpIHtcclxuICAgICAgICAgICAgaDI6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMTEwJTtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGNvdmVyKGFic29sdXRlKTtcclxuICAgICAgICAgICAgICAgIHRvcDogLTUlO1xyXG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMC4yO1xyXG4gICAgICAgICAgICAgICAgei1pbmRleDogLTE7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogcmFkaWFsLWdyYWRpZW50KGVsbGlwc2UgYXQgY2VudGVyLCAjMzIzMjMyIDQwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSA3MCUpO1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogLW1zLXJhZGlhbC1ncmFkaWVudChlbGxpcHNlIGF0IGNlbnRlciwgIzMyMzIzMiA0MCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgNzAlKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuI3skbmFtZX1fX2NhcHRpb24tLXRvcCB7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcbiAgICB9XHJcblxyXG4gICAgLiN7JG5hbWV9X19jYXB0aW9uLS1ib3R0b20ge1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcclxuICAgIH1cclxufVxyXG4iLCIvKipcclxuICogQ09NUE9ORU5UU1xyXG4gKiBNZWRpYSAtIExJTksgQ0FQVElPTiBDT1ZFUlxyXG4gKi9cclxuXHJcbiRuYW1lOiBtZWRpYTtcclxuXHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBNT0RJRklFUiAtIENBUFRJT04gQ09WRVJcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLiN7JG5hbWV9LS1jYXB0aW9uLWNvdmVyIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXBpbms7XHJcbiAgICAgICAgLm1lZGlhX19pbWFnZSB7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6MC43NTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICMwMDAwMDA7XHJcbiAgICAgICAgb3BhY2l0eTogMC4yNTtcclxuICAgIH1cclxuXHJcbiAgICAuI3skbmFtZX1fX2NhcHRpb24ge1xyXG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcclxuICAgICAgICAvKmJhY2tncm91bmQtY29sb3I6IHJnYmEoJGJyYW5kLWJsYWNrLCAwLjYpOyovXHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDE1cHg7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIHotaW5kZXg6IDE7XHJcblxyXG5cclxuICAgICAgICBwIHtcclxuICAgICAgICAgICAgQGV4dGVuZCAldHMtNztcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLiN7JG5hbWV9X19jYXB0aW9uLS1jZW50cmUge1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICBib3R0b206IDA7XHJcbiAgICB9XHJcblxyXG4gICAgLiN7JG5hbWV9X19jYXB0aW9uLS10b3Age1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICBib3R0b206IGF1dG87XHJcbiAgICB9XHJcblxyXG4gICAgLiN7JG5hbWV9X19jYXB0aW9uLS1ib3R0b20ge1xyXG4gICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICB0b3A6IGF1dG87XHJcbiAgICB9XHJcbn1cclxuIiwiLyoqXHJcbiAqIENPTVBPTkVOVFNcclxuICogTWVkaWEgLSBMSU5LIENBUFRJT04gSE9WRVJcclxuICovXHJcblxyXG4kbmFtZTogbWVkaWE7XHJcblxyXG5Aa2V5ZnJhbWVzIEJPVU5DRUlOe1xyXG4gICAgMCV7XHJcbiAgICAgICAgYm90dG9tOiAyMDAlO1xyXG4gICAgfVxyXG5cclxuICAgIDUwJXtcclxuICAgICAgICBib3R0b206IDIwMCU7XHJcbiAgICB9XHJcblxyXG4gICAgMTAwJXtcclxuICAgICAgICBib3R0b206IDEwMCU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi4jeyRuYW1lfV9fY2FwdGlvbi0tZmxvYXQtdGl0bGUge1xyXG4gICAgaDUge1xyXG4gICAgICAgIG1hcmdpbjogMCBhdXRvIGluaGVyaXQ7XHJcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZDgwMDtcclxuICAgIH1cclxufVxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gTU9ESUZJRVIgLSBDQVBUSU9OIEhPVkVSXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfS0tY2FwdGlvbi1ob3ZlciB7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG5cclxuICAgIC4jeyRuYW1lfV9fY2FwdGlvbiB7XHJcbiAgICAgICAgY29sb3I6IHdoaXRlO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGJyYW5kLWJsYWNrLCAwLjcpO1xyXG4gICAgICAgIEBpbmNsdWRlIGNvdmVyKGFic29sdXRlKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7XHJcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMjUwbXM7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDVweDtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTVweDtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgY29udGVudDogJ2knO1xyXG4gICAgICAgICAgICB3aWR0aDogNDBweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiA0MHB4O1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkYnJhbmQtYmxhY2s7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgYm90dG9tOiAxMDAlO1xyXG4gICAgICAgICAgICByaWdodDogNXB4O1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XHJcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBzZXJpZjtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDQwcHg7XHJcbiAgICAgICAgICAgIC8vIGFuaW1hdGlvbjogQk9VTkNFSU4gMzAwbXMgZWFzZS1pbjtcclxuICAgICAgICAgICAgLy8gYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMTtcclxuICAgICAgICAgICAgLy8gYW5pbWF0aW9uLXBsYXktc3RhdGU6IHBsYXk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBwIHtcclxuICAgICAgICAgICAgQGV4dGVuZCAldHMtODtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5idG4ge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICAuI3skbmFtZX1fX2NhcHRpb24ge1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuXHJcbiAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgICAgICAgICAvLyBhbmltYXRpb24tZGVsYXk6IC0zMDBtcztcclxuICAgICAgICAgICAgICAgIC8vIGFuaW1hdGlvbjogQk9VTkNFSU4gMzAwbXMgZWFzZS1pbjtcclxuICAgICAgICAgICAgICAgIC8vIGFuaW1hdGlvbi1wbGF5LXN0YXRlOiBwYXVzZWQ7XHJcbiAgICAgICAgICAgICAgICAvLyBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCIvKipcclxuICogQ09NUE9ORU5UU1xyXG4gKiBNZWRpYSAtIExJTksgSE9WRVIgQkFDS0dST1VORFxyXG4gKi9cclxuXHJcbiRuYW1lOiBtZWRpYTtcclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIE1PRElGSUVSIC0gSE9WRVIgQkdcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLiN7JG5hbWV9LS1ob3Zlci1iZyB7XHJcblxyXG4gICAgLiN7JG5hbWV9X19pbWFnZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgY292ZXIoYWJzb2x1dGUpO1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xyXG4gICAgICAgIGhlaWdodDogYXV0bztcclxuICAgIH1cclxuXHJcbiAgICAuI3skbmFtZX1fX2NhcHRpb24ge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuICAgICAgICBtaW4taGVpZ2h0OiAzMDBweDtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgei1pbmRleDogMTtcclxuICAgICAgICBAaW5jbHVkZSBhbmltYXRlKChiYWNrZ3JvdW5kLWNvbG9yIDIwMG1zIDEwbXMsIGNvbG9yIDIwMG1zKSk7XHJcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LXB1cnBsZTtcclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1wdXJwbGU7XHJcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bS1hbmQtdXApIHtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA0MHB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA0MHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmOm50aC1jaGlsZChldmVuKSB7XHJcbiAgICAgICAgLiN7JG5hbWV9X19jYXB0aW9uIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcblxyXG4gICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5idG4ge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGJyYW5kLXBpbms7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG5cclxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRsaWdodC1wdXJwbGU7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIiwiLyoqXHJcbiAqIENPTVBPTkVOVFNcclxuICogTWVkaWEgLSBMSU5LXHJcbiAqL1xyXG5cclxuJG5hbWU6IG1lZGlhO1xyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gTU9ESUZJRVIgLSBMSU5LXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tXHJcbltjbGFzcyo9Jy0tdGlsZSddIHtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgICAuI3skbmFtZX1fX2ltYWdlIHtcclxuICAgICAgICB3aWR0aDogNTQlO1xyXG4gICAgICAgIC8vIEBpbmNsdWRlIGFzcGVjdC1yYXRpbyg1LDMuMDQpO1xyXG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICAgIC8qQGluY2x1ZGUgYW5pbWF0ZTsqL1xyXG4gICAgfVxyXG5cclxuICAgIC4jeyRuYW1lfV9fY2FwdGlvbiB7XHJcbiAgICAgICAgQGV4dGVuZCAldHMtNDtcclxuICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XHJcblxyXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkd2lkZSkge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDI0cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGEge1xyXG4gICAgICAgIC8qQGluY2x1ZGUgYW5pbWF0ZTsqL1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1wdXJwbGU7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czoxMnB4O1xyXG4gICAgICAgIHBhZGRpbmc6IDQwcHggMCAxMHB4O1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIGNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiAkaGVhZGluZy1ib2xkLWZvbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcblxyXG4gICAgICAgIGEge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgICAgICAgICBjb2xvcjogd2hpdGU7XHJcbiAgICAgICAgICAgIC8qYm94LXNoYWRvdzogMCAwIDIwcHggcmdiYSgkYmxhY2ssIDAuMyk7Ki9cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIiwiLyoqXHJcbiAqIENPTVBPTkVOVFNcclxuICogTWVkaWEgLSBPUFAgLSBPUFBPVFVOSVRZIFBPU1RcclxuICovXHJcblxyXG4kbmFtZTogbWVkaWE7XHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIE1PRElGSUVSIC0gTElOSyBXSURFXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLiN7JG5hbWV9LS1vcHAge1xyXG4gICAgLiN7JG5hbWV9X19jYXB0aW9uIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cclxuICAgICAgICA+ICoge1xyXG4gICAgICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGg1IHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgaGVhZGluZy11bmVybGluZTtcclxuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHA6bm90KFtjbGFzc10pIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDtcclxuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5kYXRlIHtcclxuICAgICAgICAgICAgQGV4dGVuZCAldHMtODtcclxuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8oZGVzay1hbmQtdXApIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMzVweCA3MHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8vIEBpbmNsdWRlIHJlc3BvbmQtdG8obWVkaXVtLWFuZC11cCl7XHJcbiAgICAvLyB9XHJcbn1cclxuXHJcbi50aGVtZS1ibHVlIHtcclxuICAgIC5tZWRpYV9fY2FwdGlvbiB7XHJcbiAgICAgICAgaDUge1xyXG4gICAgICAgICAgICBjb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuXHJcbiAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcDpub3QoW2NsYXNzXSkge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xyXG4gICAgICAgICAgICBjb2xvcjogJGJyYW5kLWJsYWNrO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmRhdGUge1xyXG4gICAgICAgICAgICBAZXh0ZW5kICV0cy04O1xyXG4gICAgICAgICAgICBjb2xvcjogJGJyYW5kLWJsYWNrO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmJ0biB7XHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICRicmFuZC1waW5rO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi8vIEZhbGxiYWNrIGZvciBpZSAtIFVzaW5nIEZsZXggdG8gbWFpbnRhaW4gaW1hZ2UgYXNwZWN0IHJhdGlvIG9uIHNjYWxpbmdcclxuQG1lZGlhIGFsbCBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpIHtcclxufVxyXG4iLCIvKipcclxuICogQ09NUE9ORU5UU1xyXG4gKiBNZWRpYSAtIExJTksgV0lERVxyXG4gKi9cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gTU9ESUZJRVIgLSBMSU5LIFdJREVcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4uI3skbmFtZX0tLXNwbGl0e1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHBsYWNlaG9sZDtcclxuXHJcbiAgICAuI3skbmFtZX1fX2ltYWdle1xyXG4gICAgICAgIEBpbmNsdWRlIGFzcGVjdC1yYXRpbygxLDEpO1xyXG4gICAgfVxyXG5cclxuICAgIC4jeyRuYW1lfV9fY2FwdGlvbntcclxuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgICAgICAgLmZvcm17IG1hcmdpbi10b3A6IDMwcHg7fVxyXG4gICAgfVxyXG5cclxuXHJcbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bS1hbmQtdXApe1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcblxyXG4gICAgICAgIC4jeyRuYW1lfV9faW1hZ2V7XHJcbiAgICAgICAgICAgIHdpZHRoOiA1MCU7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGFzcGVjdC1yYXRpbygyLDEpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLiN7JG5hbWV9X19jYXB0aW9ue1xyXG4gICAgICAgICAgICB3aWR0aDogNTAlO1xyXG4gICAgICAgICAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDMwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8od2lkZS1hbmQtdXApe1xyXG4gICAgICAgIC4jeyRuYW1lfV9fY2FwdGlvbntcclxuICAgICAgICAgICAgcGFkZGluZzogNjBweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgfVxyXG59XHJcbi8vIEZhbGxiYWNrIGZvciBpZSAtIFVzaW5nIEZsZXggdG8gbWFpbnRhaW4gaW1hZ2UgYXNwZWN0IHJhdGlvIG9uIHNjYWxpbmdcclxuQG1lZGlhIGFsbCBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpe1xyXG5cclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWVkaXVtKXtcclxuICAgICAgICAuI3skbmFtZX0tLWxpbmstd2lkZSA+IGF7XHJcblxyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG4gICAgXHJcbiAgICAgICAgICAgID4gKntcclxuICAgICAgICAgICAgICAgIG1pbi13aWR0aDogNTAlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICBcclxuICAgICAgICAgICAgLiN7JG5hbWV9X19pbWFnZXtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAzMCU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0iLCIvKipcclxuICogQ09NUE9ORU5UU1xyXG4gKiBNZWRpYSAtIFNJREVCQVJcclxuICovXHJcblxyXG5cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gTU9ESUZJRVIgLSBTSURFQkFSXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLiN7JG5hbWV9LS1zaWRlYmFye1xyXG4gICAgLypcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMTAwMHB4O1xyXG4gICAgbWF4LWhlaWdodDogNjYwcHg7XHJcbiAgICBtYXgtd2lkdGg6IDEwMDBweDtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gICAgLiN7JG5hbWV9X19zaWRlYmFye1xyXG4gICAgICAgIHdpZHRoOiAzNDVweDtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcclxuICAgICAgICBwYWRkaW5nOiAyMHB4O1xyXG5cclxuICAgICAgICBwOm5vdChbY2xhc3NdKXtAZXh0ZW5kICV0cy05O31cclxuICAgIH1cclxuXHJcblxyXG4gICAgICovXHJcbiAgICAvKlxyXG4gICAgJi4jeyRuYW1lfS0tMTAtOXtcclxuICAgICAgICAuI3skbmFtZX1fX2ltYWdle1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBhc3BlY3QtcmF0aW8oMywyKTtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiA2NTVweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgICovXHJcbi8qXHJcbiAgICAuI3skbmFtZX1fX3NsaWRlcntcclxuICAgICAgICB3aWR0aDogMTAwMHB4O1xyXG4gICAgICAgIG1heC13aWR0aDogNjU1cHg7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGJsYWNrLCAwLjYpO1xyXG4gICAgICAgIC8vIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvYmFzZTY0L1NWRy90YWlsLXNwaW4uc3ZnKTtcclxuICAgICAgICAvLyBiYWNrZ3JvdW5kLXNpemU6IDEwMHB4O1xyXG4gICAgICAgIC8vIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcclxuICAgICAgICAvLyBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG5cclxuICAgICAgICBbc3R5bGUqPVwiYmFja2dyb3VuZC1pbWFnZVwiXXtcclxuICAgICAgICAgICAgQGluY2x1ZGUgY292ZXIoYWJzb2x1dGUpO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBiYWNrZ3JvdW5kKGNvdmVyKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gKi9cclxufVxyXG4iLCIvKipcclxuICogQ09NUE9ORU5UUyAtIFNWR1xyXG4gKiBFRFVDQVRJT05cclxuICovXHJcblxyXG4uI3skbmFtZX0tLXN2Zy1lZHVjYXRpb24ge1xyXG4gICAgLnN0MCB7XHJcbiAgICAgICAgZmlsbDogbm9uZTtcclxuICAgICAgICBzdHJva2U6ICM3QTFCNzI7XHJcbiAgICAgICAgc3Ryb2tlLXdpZHRoOiA1O1xyXG4gICAgICAgIHN0cm9rZS1saW5lam9pbjogcm91bmQ7XHJcbiAgICAgICAgc3Ryb2tlLW1pdGVybGltaXQ6IDEwO1xyXG4gICAgfVxyXG5cclxuICAgIC5zdDEge1xyXG4gICAgICAgIGZpbGw6IG5vbmU7XHJcbiAgICAgICAgc3Ryb2tlOiAjN0ExQjcyO1xyXG4gICAgICAgIHN0cm9rZS13aWR0aDogNTtcclxuICAgICAgICBzdHJva2UtbGluZWNhcDogcm91bmQ7XHJcbiAgICAgICAgc3Ryb2tlLW1pdGVybGltaXQ6IDEwO1xyXG4gICAgfVxyXG5cclxuICAgIC5zdDIge1xyXG4gICAgICAgIGZpbGw6IG5vbmU7XHJcbiAgICAgICAgc3Ryb2tlOiAjN0ExQjcyO1xyXG4gICAgICAgIHN0cm9rZS13aWR0aDogNTtcclxuICAgICAgICBzdHJva2UtbWl0ZXJsaW1pdDogMTA7XHJcbiAgICB9XHJcblxyXG4gICAgLnN0MyB7XHJcbiAgICAgICAgZmlsbDogbm9uZTtcclxuICAgICAgICBzdHJva2U6ICM3QTFCNzI7XHJcbiAgICAgICAgc3Ryb2tlLXdpZHRoOiA1O1xyXG4gICAgICAgIHN0cm9rZS1saW5lY2FwOiByb3VuZDtcclxuICAgICAgICBzdHJva2UtbGluZWpvaW46IHJvdW5kO1xyXG4gICAgICAgIHN0cm9rZS1taXRlcmxpbWl0OiAxMDtcclxuICAgIH1cclxuXHJcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICAuc3QwIHtcclxuICAgICAgICAgICAgZmlsbDogbm9uZTtcclxuICAgICAgICAgICAgc3Ryb2tlOiAjRkZGRkZGO1xyXG4gICAgICAgICAgICBzdHJva2Utd2lkdGg6IDU7XHJcbiAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbjogcm91bmQ7XHJcbiAgICAgICAgICAgIHN0cm9rZS1taXRlcmxpbWl0OiAxMDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5zdDEge1xyXG4gICAgICAgICAgICBmaWxsOiBub25lO1xyXG4gICAgICAgICAgICBzdHJva2U6ICNGRkZGRkY7XHJcbiAgICAgICAgICAgIHN0cm9rZS13aWR0aDogNTtcclxuICAgICAgICAgICAgc3Ryb2tlLWxpbmVjYXA6IHJvdW5kO1xyXG4gICAgICAgICAgICBzdHJva2UtbWl0ZXJsaW1pdDogMTA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuc3QyIHtcclxuICAgICAgICAgICAgZmlsbDogbm9uZTtcclxuICAgICAgICAgICAgc3Ryb2tlOiAjRkZGRkZGO1xyXG4gICAgICAgICAgICBzdHJva2Utd2lkdGg6IDU7XHJcbiAgICAgICAgICAgIHN0cm9rZS1taXRlcmxpbWl0OiAxMDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5zdDMge1xyXG4gICAgICAgICAgICBmaWxsOiBub25lO1xyXG4gICAgICAgICAgICBzdHJva2U6ICNGRkZGRkY7XHJcbiAgICAgICAgICAgIHN0cm9rZS13aWR0aDogNTtcclxuICAgICAgICAgICAgc3Ryb2tlLWxpbmVjYXA6IHJvdW5kO1xyXG4gICAgICAgICAgICBzdHJva2UtbGluZWpvaW46IHJvdW5kO1xyXG4gICAgICAgICAgICBzdHJva2UtbWl0ZXJsaW1pdDogMTA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuICAgIH1cclxufVxyXG4iLCIvKipcclxuICogQ09NUE9ORU5UUyAtIFNWR1xyXG4gKiBDT05UQUNUXHJcbiAqL1xyXG5cclxuLiN7JG5hbWV9LS1zdmctY29udGFjdCB7XHJcbiAgICAuc3QwIHtcclxuICAgICAgICBmaWxsOiBub25lO1xyXG4gICAgICAgIHN0cm9rZTogIzdBMUI3MjtcclxuICAgICAgICBzdHJva2Utd2lkdGg6IDU7XHJcbiAgICAgICAgc3Ryb2tlLWxpbmVjYXA6IHJvdW5kO1xyXG4gICAgICAgIHN0cm9rZS1saW5lam9pbjogcm91bmQ7XHJcbiAgICAgICAgc3Ryb2tlLW1pdGVybGltaXQ6IDEwO1xyXG4gICAgfVxyXG5cclxuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIC5zdDAge1xyXG4gICAgICAgICAgICBmaWxsOiBub25lO1xyXG4gICAgICAgICAgICBzdHJva2U6ICNGRkZGRkY7XHJcbiAgICAgICAgICAgIHN0cm9rZS13aWR0aDogNTtcclxuICAgICAgICAgICAgc3Ryb2tlLWxpbmVjYXA6IHJvdW5kO1xyXG4gICAgICAgICAgICBzdHJva2UtbGluZWpvaW46IHJvdW5kO1xyXG4gICAgICAgICAgICBzdHJva2UtbWl0ZXJsaW1pdDogMTA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuICAgIH1cclxufVxyXG4iLCIvKipcclxuICogQ09NUE9ORU5UUyAtIFNWR1xyXG4gKiBORVVURVJJTkdcclxuICovXHJcblxyXG4uI3skbmFtZX0tLXN2Zy1uZXV0ZXJpbmcge1xyXG4gICAgLnN0MCB7XHJcbiAgICAgICAgZmlsbDogbm9uZTtcclxuICAgICAgICBzdHJva2U6ICM3QTFCNzI7XHJcbiAgICAgICAgc3Ryb2tlLXdpZHRoOiA1O1xyXG4gICAgICAgIHN0cm9rZS1saW5lY2FwOiByb3VuZDtcclxuICAgICAgICBzdHJva2UtbGluZWpvaW46IHJvdW5kO1xyXG4gICAgICAgIHN0cm9rZS1taXRlcmxpbWl0OiAxMDtcclxuICAgIH1cclxuXHJcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICAuc3QwIHtcclxuICAgICAgICAgICAgZmlsbDogbm9uZTtcclxuICAgICAgICAgICAgc3Ryb2tlOiAjRkZGRkZGO1xyXG4gICAgICAgICAgICBzdHJva2Utd2lkdGg6IDU7XHJcbiAgICAgICAgICAgIHN0cm9rZS1saW5lY2FwOiByb3VuZDtcclxuICAgICAgICAgICAgc3Ryb2tlLWxpbmVqb2luOiByb3VuZDtcclxuICAgICAgICAgICAgc3Ryb2tlLW1pdGVybGltaXQ6IDEwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcbiAgICB9XHJcbn1cclxuIiwiLyoqXHJcbiAqIENPTVBPTkVOVFMgLSBTVkdcclxuICogVk9MVU5URUVSXHJcbiAqL1xyXG5cclxuXHJcblxyXG4uI3skbmFtZX0tLXN2Zy12b2x1bnRlZXIge1xyXG4gICAgLnN0MCB7XHJcbiAgICAgICAgZmlsbDogI0ZGRkZGRjtcclxuICAgICAgICBzdHJva2U6ICM3QTFCNzI7XHJcbiAgICAgICAgc3Ryb2tlLXdpZHRoOiA1O1xyXG4gICAgICAgIHN0cm9rZS1saW5lY2FwOiByb3VuZDtcclxuICAgICAgICBzdHJva2UtbGluZWpvaW46IHJvdW5kO1xyXG4gICAgICAgIHN0cm9rZS1taXRlcmxpbWl0OiAxMDtcclxuICAgIH1cclxuXHJcbiAgICAuc3QxIHtcclxuICAgICAgICBmaWxsOiBub25lO1xyXG4gICAgICAgIHN0cm9rZTogIzdBMUI3MjtcclxuICAgICAgICBzdHJva2Utd2lkdGg6IDU7XHJcbiAgICAgICAgc3Ryb2tlLWxpbmVjYXA6IHJvdW5kO1xyXG4gICAgICAgIHN0cm9rZS1saW5lam9pbjogcm91bmQ7XHJcbiAgICAgICAgc3Ryb2tlLW1pdGVybGltaXQ6IDEwO1xyXG4gICAgfVxyXG5cclxuICAgIC5zdDIge1xyXG4gICAgICAgIGZpbGw6IG5vbmU7XHJcbiAgICAgICAgc3Ryb2tlOiAjN0ExQjcyO1xyXG4gICAgICAgIHN0cm9rZS13aWR0aDogNTtcclxuICAgICAgICBzdHJva2UtbGluZWNhcDogcm91bmQ7XHJcbiAgICAgICAgc3Ryb2tlLW1pdGVybGltaXQ6IDEwO1xyXG4gICAgfVxyXG5cclxuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIC5zdDAge1xyXG4gICAgICAgICAgICBmaWxsOiAjRkZGRkZGO1xyXG4gICAgICAgICAgICBzdHJva2U6ICNGRkZGRkY7XHJcbiAgICAgICAgICAgIHN0cm9rZS13aWR0aDogNTtcclxuICAgICAgICAgICAgc3Ryb2tlLWxpbmVjYXA6IHJvdW5kO1xyXG4gICAgICAgICAgICBzdHJva2UtbGluZWpvaW46IHJvdW5kO1xyXG4gICAgICAgICAgICBzdHJva2UtbWl0ZXJsaW1pdDogMTA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuc3QxIHtcclxuICAgICAgICAgICAgZmlsbDogbm9uZTtcclxuICAgICAgICAgICAgc3Ryb2tlOiAjRkZGRkZGO1xyXG4gICAgICAgICAgICBzdHJva2Utd2lkdGg6IDU7XHJcbiAgICAgICAgICAgIHN0cm9rZS1saW5lY2FwOiByb3VuZDtcclxuICAgICAgICAgICAgc3Ryb2tlLWxpbmVqb2luOiByb3VuZDtcclxuICAgICAgICAgICAgc3Ryb2tlLW1pdGVybGltaXQ6IDEwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnN0MiB7XHJcbiAgICAgICAgICAgIGZpbGw6IG5vbmU7XHJcbiAgICAgICAgICAgIHN0cm9rZTogI0ZGRkZGRjtcclxuICAgICAgICAgICAgc3Ryb2tlLXdpZHRoOiA1O1xyXG4gICAgICAgICAgICBzdHJva2UtbGluZWNhcDogcm91bmQ7XHJcbiAgICAgICAgICAgIHN0cm9rZS1taXRlcmxpbWl0OiAxMDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG4gICAgfVxyXG59XHJcbiIsIi8qXHJcbipcclxuKiBUaGlzIHBhcnRpYWwgaXMgZm9yIHNldHRpbmcgZWFjaCB0aGVtZSBzcGVjaWZpYyB0byB0aGUgbWVkaWEgaXRlbXMuXHJcbiogVGhpcyB3b3JrcyBpbmRlcGVuZGVudGx5IGZyb20gYWxsIG90aGVyIGNsYXNzZXNcclxuKlxyXG4gKi9cclxuXHJcblxyXG4vLyBMaWdodCBncmV5IHRoZW1lXHJcbi5tZWRpYS0tdGhlbWUtYWxwaGEge1xyXG4gICAgY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtcHVycGxlO1xyXG4gICAgdHJhbnNpdGlvbjogc2NhbGUgMC41cztcclxuXHJcbiAgICAubWVkaWFfX2ltYWdlIHtcclxuICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIERhcmsgZ3JleSB0aGVtZVxyXG4ubWVkaWEtLXRoZW1lLWJldGEge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXBpbms7XHJcbiAgICBjb2xvcjogI2ZmZjtcclxuICAgIHRyYW5zaXRpb246IHNjYWxlIDAuNXM7XHJcblxyXG4gICAgLm1lZGlhX19pbWFnZSB7XHJcbiAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgfVxyXG4gICAgaDUubWVkaWFfX2hlYWRpbmcge1xyXG4gICAgICAgIGNvbG9yOiR3aGl0ZSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG59XHJcblxyXG4vLyBCbHVlIHRoZW1lXHJcbi5tZWRpYS0tdGhlbWUtZ2FtbWEge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLWJsdWU7XHJcbiAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgdHJhbnNpdGlvbjogc2NhbGUgMC41cztcclxuXHJcbiAgICAubWVkaWFfX2ltYWdlIHtcclxuICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgaDUubWVkaWFfX2hlYWRpbmcge1xyXG4gICAgICAgIGNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcclxuICAgIH1cclxufVxyXG4ubWVkaWEtLXRoZW1lLWRlbHRhIHtcclxuICAgIGNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LXB1cnBsZTtcclxuICAgIHRyYW5zaXRpb246IHNjYWxlIDAuNXM7XHJcblxyXG4gICAgLm1lZGlhX19pbWFnZSB7XHJcbiAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgfVxyXG59XHJcbiIsIi8qKlxyXG4gKiBDT01QT05FTlRTXHJcbiAqIFpPT00gSU1BR0UgT04gSE9WRVJcclxuICovXHJcblxyXG4ubWVkaWEtLWhvdmVyLXNjYWxlIHtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gICAgLm1lZGlhX19pbWFnZSB7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogMzAwbXMgdHJhbnNmb3JtO1xyXG4gICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIiwiLyoqXHJcbiAqIENPTVBPTkVOVFNcclxuICogTUlOSSBCSU9cclxuICogXHJcbiAqL1xyXG5cclxuJG5hbWU6IG1pbmktYmlvO1xyXG5cclxuLy8tLS0tLS0tLS1cclxuLy8gQkxPQ0tcclxuLy8tLS0tLS0tLS1cclxuLiN7JG5hbWV9IHtcclxuICAgIFxyXG59XHJcblxyXG4vLy0tLS0tLS0tLS1cclxuLy8gRUxFTUVOVFxyXG4vLy0tLS0tLS0tLS1cclxuLiN7JG5hbWV9X190aXRsZXtcclxuICAgIEBleHRlbmQgJXRzLTU7XHJcbn1cclxuXHJcbi8vLS0tLS0tLS0tLVxyXG4vLyBFTEVNRU5UXHJcbi8vLS0tLS0tLS0tLVxyXG4uI3skbmFtZX1fX2RldGFpbHMge1xyXG4gICAgbWFyZ2luOiAxNXB4IDAgMDtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHJcbiAgICBsaSB7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcclxuICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcblxyXG4gICAgICAgIGEge1xyXG4gICAgICAgICAgICBjb2xvcjogaW5oZXJpdDtcclxuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XHJcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLmZlbWFsZS1pY29uOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGZlbWFsZS1pY29uO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5tYWxlLWljb246YmVmb3JlIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbWFsZS1pY29uO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5hZ2UtaWNvbjpiZWZvcmUge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBnaWZ0LWljb247XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLmxvY2F0aW9uLWljb246YmVmb3JlIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbWFwLXBpbi0yLWljb247XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vLy0tLS0tLS0tLS0tXHJcbi8vIE1PRElGSUVSXHJcbi8vLS0tLS0tLS0tLS1cclxuLiN7JG5hbWV9e31cclxuXHJcbi5sb2dpbi1iYXIge1xyXG4gICAgYm9yZGVyLWxlZnQ6IDJweCBzb2xpZCAkbGlnaHQtZ3JleTtcclxuICAgIHBhZGRpbmctbGVmdDogNXB4O1xyXG4gICAgZm9udC1zaXplOiAxNXB4O1xyXG59XHJcbiIsIi8qKlxyXG4gKiBDT01QT05FTlRTXHJcbiAqIFBBR0lOR1xyXG4gKi9cclxuXHJcbiAkbmFtZTogcGFnaW5nO1xyXG4gXHJcbi8vLS0tLS0tLS1cclxuLy8gQkxPQ0tcclxuLy8tLS0tLS0tLVxyXG4uI3skbmFtZX17XHJcbiAgICBAZXh0ZW5kICVjb250YWluZXI7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogNTBweDtcclxuICAgIHBhZGRpbmctdG9wOiAyMHB4O1xyXG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRsaWdodC1ncmV5O1xyXG59XHJcblxyXG4vLy0tLS0tLS0tXHJcbi8vIEVMRU1FTlRcclxuLy8tLS0tLS0tLVxyXG4uI3skbmFtZX1fX2l0ZW0ge1xyXG4gICAgbWFyZ2luOiA1cHg7XHJcblxyXG4gICAgYSB7XHJcbiAgICAgICAgcGFkZGluZzogNXB4IDExcHg7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIH1cclxuXHJcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtZ3JleTtcclxuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuICAgIH1cclxuXHJcbiAgICAmLmlzLWFjdGl2ZSB7XHJcbiAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xyXG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ncmV5O1xyXG4gICAgfVxyXG59XHJcblxyXG4vLy0tLS0tLS0tXHJcbi8vIEVMRU1FTlRcclxuLy8tLS0tLS0tLVxyXG4uI3skbmFtZX1fX25leHQsXHJcbi4jeyRuYW1lfV9fcHJldiB7XHJcbiAgICBtYXJnaW46IDVweDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ncmV5O1xyXG4gICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG4gICAgfVxyXG5cclxuICAgIGEge1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgcGFkZGluZzogNnB4IDExcHg7XHJcbiAgICAgICAgY29sb3I6ICRicmFuZC1ibGFjaztcclxuICAgIH1cclxufVxyXG5cclxuLy8tLS0tLS0tLVxyXG4vLyBFTEVNRU5UXHJcbi8vLS0tLS0tLS1cclxuLiN7JG5hbWV9X19wcmV2eyBhOmFmdGVyeyBAaW5jbHVkZSBhcnJvdy1sZWZ0LWljb247fX1cclxuLiN7JG5hbWV9X19uZXh0eyBhOmFmdGVyeyBAaW5jbHVkZSBhcnJvdy1yaWdodC1pY29uO319IiwiLyoqXHJcbiAqIENPTVBPTkVOVFNcclxuICogUEVOIENBUkRcclxuICovXHJcblxyXG4kbmFtZTogcGVuLWNhcmQ7XHJcblxyXG5cclxuLy8tLS0tLS0tLVxyXG4vLyBCTE9DS1xyXG4vLy0tLS0tLS0tXHJcbi4jeyRuYW1lfXtcclxuICAgIC8vZGlzcGxheTogZmxleDtcclxuICAgIHotaW5kZXg6IDE7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZyl7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgfVxyXG5cclxuICAgICY6YWZ0ZXJ7XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZyl7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgICAgIGxlZnQ6IDEwMCU7XHJcbiAgICAgICAgICAgIHdpZHRoOiA1MDAlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcblxyXG4gICAgJjpub3QoW2NsYXNzKj1cIi0tc21hbGxcIl0pe1xyXG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAvLyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjBweCk7XHJcblxyXG4gICAgICAgICYuaXMtYWN0aXZle1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcclxuICAgICAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xyXG4gICAgICAgICAgICAvLyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XHJcbiAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBhbGw7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIEVMRU1FTlQgLSBJTUFHRVxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfV9faW1hZ2V7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIC8vbWF4LXdpZHRoOiAzNzBweDtcclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKXtcclxuICAgICAgICB3aWR0aDogMzIwcHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gRUxFTUVOVCAtIFNUQVRTXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS1cclxuLiN7JG5hbWV9X19zdGF0c3tcclxuICAgIHBhZGRpbmc6IDFlbTtcclxuXHJcblxyXG4gICAgLy9kaXNwbGF5OiBmbGV4O1xyXG4gICAgLy9mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgLy9AZXh0ZW5kICVtZy12dC1sZztcclxuICAgIC8vcGFkZGluZzogMCAzdncgMCAzMHB4O1xyXG4gICAgLy9ib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAkZ3JleTtcclxuICAgIC8vbWFyZ2luLXJpZ2h0OiAzdnc7XHJcbiAgICAvL3dpZHRoOiAxMDAlO1xyXG4gICAgLy9tYXgtd2lkdGg6IDM1MHB4O1xyXG4gICAgZm9udC1mYW1pbHk6ICRjYXRzLW1lZDtcclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKXtcclxuICAgICAgICBmbGV4OjE7XHJcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgJGdyZXk7XHJcbiAgICAgICAgbWFyZ2luOiAwIDFlbSAwIDA7XHJcbiAgICB9XHJcblxyXG4gICAgaDN7XHJcbiAgICAgICAgQGV4dGVuZCAldHMtMjtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIHVse1xyXG4gICAgICAgIGxpe1xyXG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogN3B4O1xyXG4gICAgICAgICAgICBzdHJvbmd7IGZvbnQtZmFtaWx5OiAkY2F0cy1ib2xkOyB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIEVMRU1FTlQgLSBTVU1NQVJZXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLiN7JG5hbWV9X19zdW1tYXJ5e1xyXG4gICAgLy9AZXh0ZW5kICVtZy12dC1sZztcclxuICAgIC8vZGlzcGxheTogZmxleDtcclxuICAgIC8vZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIC8vanVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgLy9tYXgtd2lkdGg6IDYwMHB4O1xyXG4gICAgZm9udC1mYW1pbHk6ICRjYXRzLW1lZDtcclxuICAgIC8vd2lkdGg6IDEwMCU7XHJcbiAgICBwYWRkaW5nOiAxZW07XHJcblxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZyl7XHJcbiAgICAgICAgZmxleDoxO1xyXG4gICAgfVxyXG59XHJcblxyXG5cclxuXHJcblxyXG4uI3skbmFtZX1fX2NhcmQtb3B0aW9uc3tcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNDI1cHgpe1xyXG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblxyXG4gICAgfVxyXG59XHJcblxyXG4ucGVuLWNhcmRfX2NhcmQtb3B0aW9ucy1idG57XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG59XHJcblxyXG4ucGVuLWNhcmRfX2NhcmQtb3B0aW9ucy1zb2NpYWwtY29udGFpbmVye1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgcGFkZGluZzogMCAwIDFlbTtcclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA0MjVweCl7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuICAgIH1cclxufVxyXG4ucGVuLWNhcmRfX3N1bW1hcnktY29weXtcclxuICAgIHBhZGRpbmc6IDAgMCAxZW07XHJcbn1cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIE1PRElGSUVSIC0gTUVESVVNXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfS0tbWVkaXVte1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIC8vIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cclxuICAgICY6bnRoLWNoaWxkKG9kZCl7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XHJcbiAgICB9XHJcblxyXG4gICAgLiN7JG5hbWV9X19pbWFnZXtcclxuICAgICAgICB3aWR0aDogMjYwcHg7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAyNjBweDtcclxuICAgICAgICBtaW4td2lkdGg6IDI2MHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC4jeyRuYW1lfV9fc3VtbWFyeXtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICBwYWRkaW5nOiAwIDAgMCAzMHB4O1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgICAgIGgzeyBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XHJcblxyXG4gICAgICAgIHB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XHJcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDU1cHg7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodDtcclxuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIE1PRElGSUVSIC0gU01BTExcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLiN7JG5hbWV9LS1zbWFsbHtcclxuICAgIHBhZGRpbmc6IDIzcHggNnZ3O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgbWluLWhlaWdodDogMTYwcHg7XHJcblxyXG4gICAgJjpudGgtb2YtdHlwZShvZGQpe1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ncmV5O1xyXG4gICAgfVxyXG5cclxuICAgIC4jeyRuYW1lfV9faW1hZ2V7XHJcbiAgICAgICAgd2lkdGg6IDE2MHB4O1xyXG4gICAgICAgIG1heC13aWR0aDogMTYwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLiN7JG5hbWV9X19zdW1tYXJ5e1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMzBweDtcclxuICAgICAgICBtYXJnaW46IDA7XHJcblxyXG4gICAgICAgIHB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XHJcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDU1cHg7XHJcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gTU9ESUZJRVIgLSBGTEFHXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfS0tZmxhZ3tcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAmOmJlZm9yZXtcclxuICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgIHdpZHRoOiA0MHB4O1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcblxyXG4gICAgfVxyXG5cclxuICAgICY6YWZ0ZXJ7XHJcbiAgICAgICAgY29udGVudDogJ1JlaG9tZWQhJztcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICBmb250LWZhbWlseTogJGNhdHMtbWVkO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjhweDtcclxuICAgICAgICBjb2xvcjogd2hpdGU7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZykgdHJhbnNsYXRlWSg0OHB4KTtcclxuICAgIH1cclxufVxyXG4iLCIvKipcclxuICogQ09NUE9ORU5UU1xyXG4gKiBQSU5cclxuICovXHJcblxyXG4gJG5hbWU6IHBpbjtcclxuIFxyXG4vLy0tLS0tLS0tXHJcbi8vIEJMT0NLXHJcbi8vLS0tLS0tLS1cclxuLiN7JG5hbWV9e1xyXG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgd2lkdGg6IGF1dG87XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgXHJcbiAgICBpbWd7IHdpZHRoOiAxMHB4O31cclxuXHJcbiAgICBzcGFuIHsgbWFyZ2luOiAwIDEwcHggfVxyXG5cclxufVxyXG4gIiwiLyoqXHJcbiAqIENPTVBPTkVOVFNcclxuICogUE9MTFxyXG4gKi9cclxuXHJcbiAkbmFtZTogcG9sbDtcclxuXHJcbi8vLS0tLS0tLS1cclxuLy8gQkxPQ0tcclxuLy8tLS0tLS0tLVxyXG4uI3skbmFtZX17XHJcbiAgICAvL2hlaWdodDogMTAwJTtcclxuICAgIC8vZGlzcGxheTogZmxleDtcclxuICAgIC8vZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHJcbiAgICBtYXJnaW46IDAgYXV0bztcclxuICAgIG1heC13aWR0aDogNDYwcHg7XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKXtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgbWF4LXdpZHRoOiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgICY6bm90KFtjbGFzcyo9XCItLXJlc3VsdHNcIl0pe1xyXG4gICAgICAgIEBleHRlbmQgJXBkLW1kO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1ncmVlbjtcclxuICAgICAgICBjb2xvcjogd2hpdGU7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDYwJTtcclxuICAgIH1cclxuXHJcbiAgICBoNXtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG59XHJcblxyXG4vLy0tLS0tLS0tXHJcbi8vIEVMRU1FTlRcclxuLy8tLS0tLS0tLVxyXG4uI3skbmFtZX1fX3F1ZXN0aW9ue1xyXG4gICAgQGV4dGVuZCAldHMtNTtcclxuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4vLy0tLS0tLS0tXHJcbi8vIEVMRU1FTlRcclxuLy8tLS0tLS0tLVxyXG4uI3skbmFtZX1fX2Fuc3dlcnN7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogNDRweDtcclxufVxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIE1PRElGSUVSIC0gUkVTVUxUU1xyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gRnVydGhlciBzdHlsZXMgZm91bmQgaW4gdGhpcyBjb21wb25lbnQgYXJlXHJcbi8vIGJvdW5kIHRvIHRoZSBmb3JtIHBhcnRpYWwuXHJcbi4jeyRuYW1lfS0tcmVzdWx0c3tcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ncmV5O1xyXG5cclxuICAgIC5wb2xsX19hbnN3ZXJze1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICB9XHJcblxyXG4gICAgbGl7XHJcbiAgICAgICAgbWFyZ2luOiAxMHB4IDA7XHJcbiAgICB9XHJcblxyXG4gICAgLmZvcm1fX2J0bnsgZGlzcGxheTogbm9uZTsgfVxyXG5cclxuICAgIC5mb3JtX19jaGVja2JveHsgZGlzcGxheTogbm9uZTsgfVxyXG5cclxuICAgIC5mb3JtX19yZXN1bHR7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIC8vd2lkdGg6IDU2cHg7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6ICRjYXRzLWJvbGQ7XHJcbiAgICAgICAgZm9udC1zaXplOiAyMXB4O1xyXG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XHJcblxyXG4gICAgICAgICY6YWZ0ZXJ7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6ICclJztcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmZvcm1fX2xhYmVse1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMjRweDtcclxuICAgIH1cclxuXHJcbiAgICBoNXtcclxuICAgICAgICBjb2xvcjogd2hpdGU7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuICAgICAgICBwYWRkaW5nOiAyMHB4O1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgQGV4dGVuZCAldHMtNTtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIH1cclxuXHJcbiAgICAucG9sbF9fcXVlc3Rpb257XHJcbiAgICAgICAgJjpiZWZvcmV7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6ICdSRVNVTFRTISc7XHJcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMzBweDtcclxuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMTBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIiwiLyoqXHJcbiAqIENPTVBPTkVOVFNcclxuICogUE9QVVBcclxuICovXHJcblxyXG4kbmFtZTogcG9wdXA7XHJcbiRjb250YWluZXI6IDEyMDBweDtcclxuXHJcbi8vLS0tLS0tLS1cclxuLy8gQkxPQ0tcclxuLy8tLS0tLS0tLVxyXG4uI3skbmFtZX17XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRibGFjaywgMC44KTtcclxuICAgIEBpbmNsdWRlIGNvdmVyKGZpeGVkKTtcclxuICAgIHotaW5kZXg6IDk5OTk7XHJcbiAgICBwYWRkaW5nOiAyNXB4O1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XHJcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAyNTBtcztcclxuICAgIG92ZXJmbG93LXk6IGF1dG87XHJcbiAgICAmLmlzLWFjdGl2ZXtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcclxuICAgIH1cclxufVxyXG5cclxuLy8tLS0tLS0tLVxyXG4vLyBFTEVNRU5UXHJcbi8vLS0tLS0tLS1cclxuLiN7JG5hbWV9X19pbm5lcntcclxuICAgIGhlaWdodDogYXV0bztcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDMwMG1zIDE1MG1zIGVhc2UtaW4tb3V0O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgIC5pcy1hY3RpdmUgJntcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLy8gVG9kbyBjbGVhbiB1cCBkeW5hbWljIHBvcHVwc1xyXG4jZHluYW1pYy1wb3B1cCAucG9wdXBfX2lubmVye1xyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCl7XHJcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICB9XHJcbn1cclxuXHJcbiAvLy0tLS0tLS0tXHJcbiAvLyBFTEVNRU5UXHJcbiAvLy0tLS0tLS0tXHJcbi5jbG9zZSB7XHJcbiAgICAuI3skbmFtZX1fX2lubmVyICYge1xyXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICB3aWR0aDogNDRweDtcclxuICAgICAgICBtYXgtd2lkdGg6IDQ0cHg7XHJcbiAgICAgICAgaGVpZ2h0OiA0NHB4O1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogLTIwcHg7XHJcbiAgICAgICAgcmlnaHQ6IC0yMHB4O1xyXG4gICAgICAgIHotaW5kZXg6IDEwMDAwO1xyXG4gICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXBpbms7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpiZWZvcmUsXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxcHg7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XHJcbiAgICAgICAgICAgIHdpZHRoOiAyMnB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDNweDtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMXB4O1xyXG4gICAgICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICAgICAgbGVmdDogMTJweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bS1hbmQtdXApIHtcclxuICAgICAgICAgICAgd2lkdGg6ICRjb250YWluZXI7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuIC8vLS0tLS0tLS1cclxuIC8vIENVU1RPTVxyXG4gLy8tLS0tLS0tLVxyXG5cclxuW2RhdGEtcG9wdXBde1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG5bZGF0YS1wb3B1cC1jb250ZW50XXtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICAucG9wdXAgJnsgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxyXG59XHJcblxyXG5bZGF0YS1wb3B1cC1jb250ZW50PVwibG9naW5cIl17XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtZ3JleTtcclxuICAgIHBhZGRpbmc6IDIwcHg7XHJcbn1cclxuXHJcblxyXG5bZGF0YS1wb3B1cC1jb250ZW50PVwidmlkZW9cIl17XHJcbiAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICAvL3dpZHRoOiAxMDAwcHg7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtYmxhY2s7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2Jhc2U2NC9TVkcvdGFpbC1zcGluLnN2Zyk7XHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMHB4O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xyXG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxufVxyXG5cclxuLy8gdXNlIC5wb3B1cF9fd3JhcHBlciB0byBjb250cm9sIG1vZGVsIHdpZHRoXHJcblxyXG4ucG9wdXAtLWxvZ2lue1xyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZyl7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgfVxyXG4gICAgLnBvcHVwX193cmFwcGVye1xyXG4gICAgICAgIG1heC13aWR0aDogODUwcHg7XHJcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZyl7XHJcbiAgICAgICAgICAgIHdpZHRoOiA4NTBweDtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiBub25lO1xyXG4gICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4ucG9wdXAtLXNsaWRlcntcclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpe1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIH1cclxuXHJcbiAgICAucG9wdXBfX3dyYXBwZXIge1xyXG4gICAgICAgIG1heC13aWR0aDogNzAwcHg7XHJcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZyl7XHJcbiAgICAgICAgICAgIHdpZHRoOiA3MDBweDtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiBub25lO1xyXG4gICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4ucG9wdXAtLWR5bmFtaWN7XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogbWFwX2dldCgkZ3JpZC1icmVha3BvaW50cywgbGcpKSBhbmQgKG1pbi1oZWlnaHQ6IDkwMHB4KXtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICB9XHJcbiAgICAucG9wdXBfX3dyYXBwZXIge1xyXG4gICAgICAgIG1heC13aWR0aDogMTAwMHB4O1xyXG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiBtYXBfZ2V0KCRncmlkLWJyZWFrcG9pbnRzLCBsZykpIGFuZCAobWluLWhlaWdodDogOTAwcHgpIHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMDBweDtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiBub25lO1xyXG4gICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4ucG9wdXAtLXByb2ZpbGV7XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogbWFwX2dldCgkZ3JpZC1icmVha3BvaW50cywgbGcpKSBhbmQgKG1pbi1oZWlnaHQ6IDkwMHB4KXtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICB9XHJcbiAgICAucG9wdXBfX3dyYXBwZXJ7XHJcbiAgICAgICAgbWF4LXdpZHRoOiA1NTBweDtcclxuICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuXHJcblxyXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiBtYXBfZ2V0KCRncmlkLWJyZWFrcG9pbnRzLCBsZykpIGFuZCAobWluLWhlaWdodDogOTAwcHgpIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiA1NTBweDtcclxuICAgICAgICAgICAgICAgIG1heC13aWR0aDogbm9uZTtcclxuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG4ucG9wdXAtLWNhdC1jb21tdW5pdHktaXRlbXtcclxuICAgIC5wb3B1cF9fd3JhcHBlcntcclxuICAgICAgICBtYXgtd2lkdGg6IDEwMDBweDtcclxuICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgIH1cclxufVxyXG5cclxuXHJcbi5wb3B1cC0tdmlkZW97XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKXtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICB9XHJcblxyXG4gICAgLnBvcHVwX193cmFwcGVyIHtcclxuICAgICAgICBtYXgtd2lkdGg6IDcwMHB4O1xyXG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpe1xyXG4gICAgICAgICAgICB3aWR0aDogNzAwcHg7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogbm9uZTtcclxuICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCIvKipcclxuICogQ09NUE9ORU5UU1xyXG4gKiBTb2NpYWwgSWNvblxyXG4gKiBUaGlzIGlzIGFuIGV4YW1wbGUgb2YgYSBjb21wb25lbnQgcGFydGlhbFxyXG4gKi9cclxuXHJcbiRuYW1lOiBzb2NpYWw7XHJcblxyXG5cclxuLy8tLS0tLS0tLVxyXG4vLyBCTE9DS1xyXG4vLy0tLS0tLS0tXHJcbi4jeyRuYW1lfXtcclxufVxyXG5cclxuLy8tLS0tLS0tLS0tXHJcbi8vIEVMRU1FTlRcclxuLy8tLS0tLS0tLS0tXHJcblxyXG4uI3skbmFtZX1fX2ljb24ge1xyXG4gICAgd2lkdGg6IDQwcHg7XHJcbiAgICBoZWlnaHQ6IDQwcHg7XHJcbiAgICBtYXJnaW46IDAgMCAwIDVweDtcclxuICAgIGZvbnQtc2l6ZTogNDdweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAwO1xyXG4gICAgY29sb3I6ICRicmFuZC1ibGFjaztcclxuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNXM7XHJcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2ltYWdlcy9zb2NpYWxfaWNvbnMucG5nJyk7XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcbiAgICAgICAgLyp0cmFuc2Zvcm06IHNjYWxlKDEyNSUpOyovXHJcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbi15OiA0MHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4uI3skbmFtZX1fX2ljb24tLWZiayB7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXg6IDEyMHB4O1xyXG59XHJcbi4jeyRuYW1lfV9faWNvbi0tdHd0IHtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb24teDogMHB4O1xyXG59XHJcbi4jeyRuYW1lfV9faWNvbi0tcGlueyBcclxuXHJcbn1cclxuLiN7JG5hbWV9X19pY29uLS1pbnN0IHtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb24teDogODBweDtcclxufVxyXG4uI3skbmFtZX1fX2ljb24tLXlvdXQge1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbi14OiA0MHB4O1xyXG59XHJcblxyXG5cclxuLy8tLS0tLS0tLS0tLVxyXG4vLyBNT0RJRklFUlxyXG4vLy0tLS0tLS0tLS0tXHJcbi8vIC4jeyRuYW1lfS0tbW9kaWZpZXJ7fVxyXG5cclxuLy8gLiN7JG5hbWV9X19lbGVtZW50LS1tb2RpZmllcnt9XHJcblxyXG5cclxuLnNvY2lhbF9faWNvbi0tbW9iaWxle1xyXG4gICAgd2lkdGg6IDIzcHg7XHJcbiAgICBoZWlnaHQ6IDI1cHg7XHJcbiAgICBtYXJnaW46IDAgMnB4O1xyXG4gICAgZm9udC1zaXplOiAyN3B4O1xyXG59XHJcbiIsIi8qKlxyXG4gKiBDT01QT05FTlRTXHJcbiAqIFNsaWRlcnNcclxuICogSGVyZSBhcmUgdGhlIHNsaWRlcnMgZm9yIHRoZSBzaXRlXHJcbiAqL1xyXG5cclxuJG5hbWU6IHNsaWRlcjtcclxuXHJcblxyXG4vLy0tLS0tLS0tXHJcbi8vIFNMSUNLXHJcbi8vLS0tLS0tLS1cclxuLnNsaWNrLWxpc3QsXHJcbi5zbGljay10cmFjayxcclxuLnNsaWNrLXNsaWRlIHtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIG91dGxpbmU6IG5vbmU7XHJcbn1cclxuXHJcbi5zbGljay1zbGlkZXIge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi5zbGljay10cmFjay5zbGljay10cmFjayB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxufVxyXG5cclxuLy8tLS0tLS0tLVxyXG4vLyBCTE9DS1xyXG4vLy0tLS0tLS0tXHJcbi5oZXJvLSN7JG5hbWV9IHtcclxuICAgIC8vQGluY2x1ZGUgY292ZXIoYWJzb2x1dGUpO1xyXG4gICAgLy9oZWlnaHQ6IDEwMCU7XHJcbiAgICAvL292ZXJmbG93OiBoaWRkZW47XHJcbiAgICAvL3otaW5kZXg6IDA7XHJcbn1cclxuXHJcbi5oZXJvLXNsaWRlcl9fY2FwdGlvbiB7XHJcbiAgICBncmlkLWFyZWE6IGNvbnRlbnQ7XHJcbiAgICB6LWluZGV4OiAyMDtcclxuICAgIHBhZGRpbmc6IDMwcHg7XHJcbiAgICBtYXgtd2lkdGg6IDExMDBweDtcclxuICAgIC1tcy1ncmlkLWNvbHVtbi1hbGlnbjogY2VudGVyO1xyXG4gICAgLW1zLWdyaWQtcm93LWFsaWduOiBjZW50ZXI7XHJcbiAgICBib3R0b206IDA7XHJcbiAgICBwYWRkaW5nOiAzNnB4IDIwcHggMDtcclxuICAgIG1hcmdpbi1ib3R0b206IC0xcHg7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuXHJcblxyXG4gICAgQG1lZGlhKG1pbi13aWR0aDo2MDBweCkge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcbiAgICAgICAgY29sb3I6ICNmZmZmZmY7XHJcbiAgICAgICAgaGVpZ2h0OiBmaXQtY29udGVudDtcclxuICAgICAgICB0ZXh0LXNoYWRvdzogMCAwIDIwcHggYmxhY2s7XHJcbiAgICB9XHJcbn1cclxuLmhlcm8tc2xpZGVyX19pbWFnZSB7XHJcbiAgICBncmlkLWFyZWE6IGNvbnRlbnQ7XHJcbiAgICB6LWluZGV4OiAxMDtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xyXG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuICAgIG1heC1oZWlnaHQ6IDMyMHB4O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgIEBtZWRpYShtaW4td2lkdGg6NjAwcHgpIHtcclxuICAgICAgICBtYXgtaGVpZ2h0OiA0MTVweDtcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEobWluLXdpZHRoOjEyMDBweCkge1xyXG4gICAgICAgIG1heC1oZWlnaHQ6IDY2NXB4O1xyXG4gICAgfVxyXG5cclxuICAgIGltZyB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICMwMDAwMDA7XHJcbiAgICAgICAgb3BhY2l0eTogMC4yNTtcclxuICAgICAgICB6LWluZGV4OiAxO1xyXG4gICAgfVxyXG59XHJcblxyXG4uaGVyby1zbGlkZXJfX2NvbnRhaW5lciB7XHJcbiAgICAvKmRpc3BsYXk6IGdyaWQ7XHJcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcclxuICAgIGdyaWQtdGVtcGxhdGUtcm93czogMWZyO1xyXG4gICAgZ3JpZC10ZW1wbGF0ZS1hcmVhczogXCJjb250ZW50XCI7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB6LWluZGV4OiAxMDsqL1xyXG4gICAgY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAganVzdGlmeS1pdGVtczogY2VudGVyO1xyXG4gICAgaGVpZ2h0OiAxMDB2dztcclxuICAgIG1heC1oZWlnaHQ6IDMyMHB4O1xyXG5cclxuICAgIEBtZWRpYShtaW4td2lkdGg6NjAwcHgpIHtcclxuICAgICAgICBtYXgtaGVpZ2h0OiA0MTVweDtcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEobWluLXdpZHRoOjEyMDBweCkge1xyXG4gICAgICAgIG1heC1oZWlnaHQ6IDY2NXB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4vKi5oZXJvLXNsaWRlci0tdmV0LWJhZGdlIHtcclxuICAgIC5oZXJvLXNsaWRlcl9fY2FwdGlvbiB7XHJcbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59Ki9cclxuLy8tLS0tLS0tLS0tXHJcbi8vIEVMRU1FTlRcclxuLy8tLS0tLS0tLS0tXHJcbi5zbGljay1hcnJvdyB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiA1MCU7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgICB3aWR0aDogNDBweDtcclxuICAgIGhlaWdodDogNDBweDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgei1pbmRleDogMTA7XHJcbiAgICB0ZXh0LWluZGVudDogNTBweDtcclxuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgIG9wYWNpdHk6IDAuOTtcclxuICAgIG91dGxpbmU6IG5vbmU7XHJcblxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgICAgY29sb3I6IHdoaXRlO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0ZXh0LWluZGVudDogMDtcclxuICAgICAgICBmb250LXNpemU6IDI1cHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDA7XHJcbiAgICB9XHJcblxyXG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG5cclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLnNsaWNrLW5leHQge1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTUwJSk7XHJcblxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgICAgQGluY2x1ZGUgYXJyb3ctcmlnaHQtaWNvbjtcclxuICAgICAgICBsZWZ0OiA5cHg7XHJcbiAgICAgICAgdG9wOiAyMXB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4uc2xpY2stcHJldiB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTE1MCUpO1xyXG5cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIEBpbmNsdWRlIGFycm93LWxlZnQtaWNvbjtcclxuICAgICAgICBsZWZ0OiA2cHg7XHJcbiAgICAgICAgdG9wOiAyMXB4O1xyXG4gICAgfVxyXG59XHJcbi8vIEltcG9ydGFudCBuZWVkZWQgdG8gb3ZlcnJpZGUgc2xpY2sgc3R5bGVzXHJcbi8vIFRoZSBhcnJvd3MgYXJlIGNvbnRyb2xsZWQgaGVyZSB0byBzYXZlIGhhcmRjb2RpbmcgYSBicmVha3BvaW50IGluIGpzXHJcbi5wb3B1cCAuc2xpY2stYXJyb3cge1xyXG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG5cclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA5MDBweCkge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcclxuICAgIH1cclxufVxyXG4vLy0tLS0tLS0tLS0tXHJcbi8vIE1PRElGSUVSXHJcbi8vLS0tLS0tLS0tLS1cclxuLmNhbXBhaWduLSN7JG5hbWV9IHtcclxuICAgIEBleHRlbmQgJXBkLWJtLWxnO1xyXG4gICAgd2lkdGg6IGF1dG87XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIElOU1RBR1JBTSAtIFNMSURFUlxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4uaW5zdGFncmFtLSN7JG5hbWV9IHtcclxuICAgIEBleHRlbmQgJXNldC1zaGFkb3ctbGlnaHQ7XHJcblxyXG4gICAgLnNsaWNrLWRvdHMge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IGF1dG87XHJcbiAgICAgICAgYm90dG9tOiAzMHB4O1xyXG4gICAgfVxyXG59XHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIFRXSVRURVIgLSBGQUNFQk9PSyAtIFNMSURFUlNcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4udHdpdHRlci0jeyRuYW1lfSxcclxuLmZhY2Vib29rLSN7JG5hbWV9IHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgcGFkZGluZzogMzBweDtcclxuXHJcbiAgICBoMyB7XHJcbiAgICAgICAgQGV4dGVuZCAldHMtNztcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5zbGljay1kb3RzIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgICBmb250LXNpemU6IDUycHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICAgICAgaGVpZ2h0OiA1MnB4O1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLnNsaWNrLXNsaWRlLFxyXG4gICAgLnNsaWNrLWxpc3QsXHJcbiAgICAuc2xpY2stdHJhY2sge1xyXG4gICAgICAgIGhlaWdodDogYXV0bztcclxuICAgIH1cclxufVxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIFRXSVRURVIgLSBTTElERVJTXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLnR3aXR0ZXItI3skbmFtZX0ge1xyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICAgIEBpbmNsdWRlIHR3dC1pY29uO1xyXG4gICAgICAgIGNvbG9yOiAkdHdpdHRlci1ibHVlO1xyXG4gICAgfVxyXG59XHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIEZBQ0VCT09LIC0gU0xJREVSU1xyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4uZmFjZWJvb2stI3skbmFtZX0ge1xyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICAgIEBpbmNsdWRlIGZiay1pY29uO1xyXG4gICAgICAgIGNvbG9yOiAkZmFjZWJvb2stYmx1ZTtcclxuICAgIH1cclxuXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGhlaWdodDogMXB4O1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1wdXJwbGU7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICBsZWZ0OiAzMHB4O1xyXG4gICAgICAgIHJpZ2h0OiAzMHB4O1xyXG4gICAgfVxyXG59XHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIElOU1RBR1JBTSAtIFNMSURFUlxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4ubWVkaWEtI3skbmFtZX0ge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgIC5zbGljay1saXN0LFxyXG4gICAgLnNsaWNrLXNsaWRlIHtcclxuICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgIC5zbGljay1uZXh0IHtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XHJcbiAgICAgICAgcmlnaHQ6IDIwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLnNsaWNrLXByZXYge1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcclxuICAgICAgICBsZWZ0OiAyMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5zbGljay1kb3RzIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiBhdXRvO1xyXG4gICAgICAgIGJvdHRvbTogMzBweDtcclxuICAgIH1cclxufVxyXG5cclxuLm1lZGlhLXNsaWRlcl9faW1hZ2Uge1xyXG59XHJcbi8vIH1cclxuLy8tLS0tLS0tLS0tLS0tXHJcbi8vIFNMSURFUiBHUklEXHJcbi8vLS0tLS0tLS0tLS0tLVxyXG4vLyBTbGlkZXJzIHJlcXVpcmUgdGhlaXIgb3duIGdyaWQgc3lzdGVtLiBUaGV5IGluaGVyZW50bHkgaGFuZGxlXHJcbi8vIHRoZSBncmlkIGNvbHVtbnMgdmlhIHRoZSBzbGlkZXIgc2V0dGluZ3MuIEFzIGdyaWQtZ2FwIGlzIGFsc28gbm90XHJcbi8vIGFwcGxpY2FibGUgdG8gdGhlIHNwYWNpbmcgd2UgYXBwbHkgdGhlIGxlZnQtc3BhY2luZyB0ZWNobmlxdWUuXHJcbi8vIFRoaXMgYmxvY2sgc2VsZWN0b3IgaXMgY3VycmVudGx5IHJlZHVkbmRhbnQgYnV0IGxlZnQgaW4gZm9yIGZ1dHVyZVxyXG4vLyBzb2x1dGlvbnMuIEl0IGFsd2F5cyBtYWludGFpbnMgQkVNIG1ldGhvZG9sb2d5LlxyXG4vLyAuI3skbmFtZX17fVxyXG4vLyAuI3skbmFtZX0tLWdhcC0yMHtcclxuLy8gICAgIG1hcmdpbi1sZWZ0OiAtMjBweDtcclxuLy8gICAgIC4jeyRuYW1lfV9faXRlbXtcclxuLy8gICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XHJcbi8vICAgICB9XHJcbi8vIH1cclxuLy8gLiN7JG5hbWV9LS1nYXAtMzB7XHJcbi8vICAgICBtYXJnaW4tbGVmdDogLTIwcHg7XHJcbi8vICAgICAuI3skbmFtZX1fX2l0ZW0sXHJcbi8vICAgICAuc2xpY2stZG90c3tcclxuLy8gICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XHJcbi8vICAgICB9XHJcbi8vICAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bS1hbmQtdXApe1xyXG4vLyAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMzBweDtcclxuLy8gICAgICAgICAuI3skbmFtZX1fX2l0ZW0sXHJcbi8vICAgICAgICAgLnNsaWNrLWRvdHN7XHJcbi8vICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMzBweDtcclxuLy8gICAgICAgICB9XHJcbi8vICAgICB9XHJcbi8vIH1cclxuLy8gLiN7JG5hbWV9LS1nYXAtMzV7XHJcbi8vICAgICBtYXJnaW4tbGVmdDogLTIwcHg7XHJcbi8vICAgICAuI3skbmFtZX1fX2l0ZW0sXHJcbi8vICAgICAuc2xpY2stZG90c3tcclxuLy8gICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XHJcbi8vICAgICB9XHJcbi8vICAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bS1hbmQtdXApe1xyXG4vLyAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMzVweDtcclxuLy8gICAgICAgICAuI3skbmFtZX1fX2l0ZW0sXHJcbi8vICAgICAgICAgLnNsaWNrLWRvdHN7XHJcbi8vICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMzVweDtcclxuLy8gICAgICAgICB9XHJcbi8vICAgICB9XHJcbi8vIH1cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gQ0FUIEdBTExFUlkgLSBTTElERVJTXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gTEFZT1VUIFdIRU4gVEhFUkVJUyBBIFNJREVCQVIgTEFZT1VUO1xyXG4uY29tbXVuaXR5LWNhdC1nYWxsZXJ5LSN7JG5hbWV9IHtcclxuICAgIG1heC13aWR0aDogMTAwMHB4O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGRhcmstZ2xhc3M7XHJcblxyXG4gICAgQGluY2x1ZGUgbWVkaWEtd2lkdGgoMTIwMHB4KSB7XHJcbiAgICAgICAgd2lkdGg6IDEwMDBweDtcclxuICAgIH1cclxuXHJcbiAgICAuc2xpY2stZG90cyB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICAgIGhlaWdodDogNDBweDtcclxuICAgICAgICBtYXJnaW4tdG9wOiAxMnB4O1xyXG4gICAgICAgIHRvcDogMTAwJTtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIC8vIHJpZ2h0OiAzNDBweDtcclxuICAgICAgICAvLyBib3R0b206IDA7XHJcbiAgICAgICAgbGkge1xyXG4gICAgICAgICAgICAmOm9ubHktY2hpbGQge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIENBVCBHQUxMRVJZIC0gU0xJREVSUyAtIFBPUlRBTFxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIExBWU9VVCBXSEVOIFRIRVJFSVMgQSBTSURFQkFSIExBWU9VVDtcclxuLmNhdC1jb21tdW5pdHlfX3NsaWRlciB7XHJcbiAgICAvLyBtYXgtd2lkdGg6IDEwMDBweDtcclxuICAgIC8vIGJhY2tncm91bmQtY29sb3I6ICRkYXJrLWdsYXNzO1xyXG4gICAgLy8gLnNsaWNrLXNsaWRlLFxyXG4gICAgLy8gLnNsaWNrLXRyYWNrLFxyXG4gICAgLy8gLnNsaWNrLWxpc3R7XHJcbiAgICAvLyAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcclxuICAgIC8vIH1cclxuICAgIC8vIEBpbmNsdWRlIG1lZGlhLXdpZHRoKDEyMDBweCl7IHdpZHRoOiAxMDAwcHg7IH1cclxuICAgIC8vIC5zbGljay1kb3Rze1xyXG4gICAgLy8gICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIC8vICAgICB3aWR0aDogYXV0bztcclxuICAgIC8vICAgICBoZWlnaHQ6IDQwcHg7XHJcbiAgICAvLyAgICAgdG9wOiAxMDAlO1xyXG4gICAgLy8gICAgIGxlZnQ6IDA7XHJcbiAgICAvLyAgICAgYm90dG9tOiAwO1xyXG4gICAgLy8gICAgIGxpe1xyXG4gICAgLy8gICAgICAgICAmOm9ubHktY2hpbGR7XHJcbiAgICAvLyAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgLy8gICAgICAgICB9XHJcbiAgICAvLyAgICAgfVxyXG4gICAgLy8gfVxyXG59XHJcbi8vIExBWU9VVCBXSEVOIFRIRVJFIEFSRSBOTyBDT01NTUVOVFMgSU4gVEhFIFNJREVCQVI7XHJcbi5jYXQtZ2FsbGVyeS0jeyRuYW1lfSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyay1nbGFzcztcclxuXHJcbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bS1hbmQtdXApIHtcclxuICAgICAgICB3aWR0aDogNzAwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLnNsaWNrLWRvdHMge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICBoZWlnaHQ6IDQwcHg7XHJcbiAgICAgICAgdG9wOiBhdXRvO1xyXG4gICAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xyXG4gICAgICAgIHotaW5kZXg6IDEwMDA7XHJcblxyXG4gICAgICAgIGxpIHtcclxuICAgICAgICAgICAgJjpvbmx5LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICBidXR0b246YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtYmx1ZTtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAmLnNsaWNrLWFjdGl2ZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgYnV0dG9uOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiIsIi8qKlxyXG4gKiBDT01QT05FTlRTXHJcbiAqIFNwb25zb3IgUG9zdGVyXHJcbiAqXHJcbiAqL1xyXG5cclxuJG5hbWU6IHNwb25zb3ItcG9zdGVyO1xyXG5cclxuXHJcbi8vLS0tLS0tLS1cclxuLy8gQkxPQ0tcclxuLy8tLS0tLS0tLVxyXG4uI3skbmFtZX17XHJcbiAgICBtYXgtd2lkdGg6IDcwMHB4O1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDA7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBAaW5jbHVkZSBhc3BlY3QtcmF0aW8oMTAsOSk7XHJcbn1cclxuXHJcbi8vIGhpZGUgY29weSBvbiBtb2JpbGVcclxuLnNwb25zb3ItcG9zdGVyLS1pbi1zbGlkZXJ7XHJcbiAgICBtYXgtd2lkdGg6IG5vbmU7XHJcbiAgICBwe1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDQyNXB4KXtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vLy0tLS0tLS0tLS1cclxuLy8gRUxFTUVOVFxyXG4vLy0tLS0tLS0tLS1cclxuXHJcbi4jeyRuYW1lfV9faW5uZXJ7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgcGFkZGluZzogMzBweDtcclxuICAgIHRvcDogMDtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHJcbiAgICBoMntcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIHB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgICAgICBtYXgtd2lkdGg6IDUwMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5nYWxsZXJ5LWljb257XHJcbiAgICAgICAgd2lkdGg6IDIwdnc7XHJcbiAgICAgICAgaGVpZ2h0OiAyMHZ3O1xyXG4gICAgICAgIG1heC13aWR0aDogMTYwcHg7XHJcbiAgICAgICAgbWF4LWhlaWdodDogMTYwcHg7XHJcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9iYXNlNjQvc3ZnL2dhbGxlcnktaWNvbi13aGl0ZS5zdmcpO1xyXG4gICAgICAgIEBpbmNsdWRlIGJhY2tncm91bmQoY292ZXIpO1xyXG4gICAgfVxyXG59XHJcbiIsIi8qKlxyXG4gKiBDT01QT05FTlRTXHJcbiAqIFN0ZXBwZXJcclxuICovXHJcblxyXG4kbmFtZTogc3RlcHBlcjtcclxuXHJcbi8vLS0tLS0tLS0tLVxyXG4vLyBCTE9DS1xyXG4vLy0tLS0tLS0tLS1cclxuXHJcbi5zdGVwcGVyLWNvbnRhaW5lcntcclxuICAgIG1heC13aWR0aDogMTIwMHB4O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgcGFkZGluZzogMCAyMHB4O1xyXG4gICAgbWFyZ2luOiAwIGF1dG87XHJcbn1cclxuXHJcbi5zdGVwcGVye1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxufVxyXG5cclxuLnN0ZXBwZXJfX3N0b3B7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgd2lkdGg6IDE1MHB4O1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgfVxyXG59XHJcblxyXG4uc3RlcHBlcl9fc3RvcC5pcy1hY3RpdmV7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHNwYW57XHJcbiAgICAgICAgICAgIGhlaWdodDogMzZweDtcclxuICAgICAgICAgICAgd2lkdGg6IDM2cHg7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMnB4IDA7XHJcblxyXG4gICAgICAgICY6YmVmb3Jle1xyXG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMjBweDtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvLyBTaG93cyBjdXJyZW50IGFjdGl2ZSBzdGVwIGFuZCB0aGUgbmV4dCBzdGVwIGNvbWluZyB1cFxyXG4gICAgKyAuc3RlcHBlcl9fc3RvcHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIH1cclxufVxyXG5cclxuLnN0ZXBwZXJfX3N0b3B7XHJcbiAgICBzcGFuIHtcclxuICAgICAgICBoZWlnaHQ6IDIwcHg7XHJcbiAgICAgICAgd2lkdGg6IDIwcHg7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgbWFyZ2luOiAxMHB4IDA7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgIH1cclxuXHJcbiAgICAvLyBDZW50ZXJzIGxhc3QgaXRlbVxyXG4gICAgJjpsYXN0LW9mLXR5cGUuaXMtYWN0aXZle1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpe1xyXG4gICAgICAgICAgICB3aWR0aDogMTUwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLnN0ZXBwZXItcHJvZ3Jlc3MtYmFye1xyXG4gICAgJjpiZWZvcmV7XHJcbiAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICBoZWlnaHQ6IDhweDtcclxuICAgICAgICBsZWZ0OiA5MHB4O1xyXG4gICAgICAgIHJpZ2h0OiA5MHB4O1xyXG4gICAgICAgIHRvcDogNDJweDtcclxuICAgIH1cclxufVxyXG4uc3RlcHBlcl9fc3RlcHtcclxuICAgIC8vbWFyZ2luOiAwIDEwcHggMCAwO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgQGluY2x1ZGUgcmVzcG9uZC10byh3aWRlLWFuZC11cCl7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgfVxyXG4gICAgY29sb3I6JGJyYW5kLXB1cnBsZTtcclxufVxyXG5cclxuLnN0ZXBwZXJfX2hlYWRpbmcge1xyXG4gICAgY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcbiAgICAvL29wYWNpdHk6IDAuNjtcclxuICAgIC8vd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxufVxyXG5cclxuXHJcbi8vLS0tLS0tLS0tLVxyXG4vLyBSRUxBVEVEXHJcbi8vLS0tLS0tLS0tLVxyXG5cclxuLy9NQU5BR0UgQVNTT0NJQVRFRCBTVEVQIERJU1BMQVkgLSBUSElTIFdJTEwgQkUgSEFORExFRCBJTiBSRUFDVCBMQVRFUlxyXG5bY2xhc3MqPVwic3RlcC1jb250ZW50XCJde1xyXG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSA0MDBtcyBlYXNlLWluLW91dCwgbWF4LWhlaWdodCA1MDBtcyBlYXNlLWluLW91dDtcclxuXHJcbiAgICAmOm5vdCguaXMtYWN0aXZlKXtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIG1heC1oZWlnaHQ6IDBweDtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgfVxyXG5cclxuICAgICYuaXMtYWN0aXZle1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgbWF4LWhlaWdodDogOTk5OXB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4vL1NvbWUgYWRkaXRpb25hbCBsYXlvdXQgZm9yIHRoZSBOZXh0IGFuZCBCYWNrIGJ0bnMgY29udHJvbGxpbmcgdGhlIHN0ZXAgcGFnaW5nLlxyXG4uc3RlcC1idG5zIHtcclxuICAgIG1heC13aWR0aDogNDUwcHg7XHJcbiAgICBtYXJnaW46IDAgYXV0bztcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcblxyXG4gICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0tYW5kLXVwKSB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgICAvLyBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG4gICAgICAgIG1heC13aWR0aDogbm9uZTtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICB9XHJcblxyXG4gICAgcCB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgICAgICBAZXh0ZW5kICV0cy04O1xyXG4gICAgICAgIHRleHQtYWxpZ246IGp1c3RpZnk7XHJcbiAgICB9XHJcblxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkbGlnaHQtZ3JleTtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5idG46b25seS1jaGlsZCB7XHJcbiAgICAgICAgLy9tYXJnaW4tbGVmdDogYXV0bztcclxuICAgIH1cclxufVxyXG5cclxuLnN0ZXAtYnRucy0tbGF5b3V0LW9mLXR3b3tcclxuICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8obWVkaXVtLWFuZC11cCkge1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgIH1cclxufVxyXG5cclxuXHJcbi5zdGVwLWJ0bnMtLWNlbnRlcntcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgLmJ0bjpvbmx5LWNoaWxke1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgfVxyXG59XHJcblxyXG4uc3RlcC1idG5zLS10aGVtYS1hbHBoYXtcclxuICAgICY6YmVmb3Jle1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRsaWdodC1ncmV5LCAxMCUpO1xyXG4gICAgfVxyXG59XHJcblxyXG4uc3RlcC1idG5zLS1uby1ib3JkZXIge1xyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICBib3JkZXI6IDA7XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG4uc3RlcC1idG5zX19idG4ge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIG1hcmdpbjogMCAwIDFlbTtcclxuXHJcbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bS1hbmQtdXApIHtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgICAgICBtYXJnaW46IDAgMCAwIDMwcHg7XHJcbiAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICB9XHJcbn1cclxuXHJcbi5zdGVwLWJ0bnNfX2JhY2t7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgbWFyZ2luOiAwIDAgMWVtO1xyXG4gICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0tYW5kLXVwKSB7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICAgICAgLy9tYXJnaW46IDAgYXV0byAwIDA7XHJcbiAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICB9XHJcbn1cclxuIiwiLyoqXHJcbiAqIENPTVBPTkVOVFNcclxuICogU3RvcnlcclxuICogVGhpcyBjb21wb25lbnQgaXMgZm91bmQgb24gdGhlIEJlcmVhdmVtZW50IFN0b3JpZXMgdGVtcGxhdGVcclxuICovXHJcblxyXG4kbmFtZTogc3Rvcnk7XHJcblxyXG4vLy0tLS0tLS0tXHJcbi8vIEJMT0NLXHJcbi8vLS0tLS0tLS1cclxuLiN7JG5hbWV9e1xyXG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHJcbiAgICBwOm5vdChbY2xhc3NdKXtcclxuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIGgzLFxyXG4gICAgcHtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIGgzeyBtYXJnaW4tdG9wOiAzMHB4O31cclxuICAgIHA6bGFzdC1vZi10eXBleyBtYXJnaW4tYm90dG9tOiA0MHB4O31cclxufVxyXG5cclxuLy8tLS0tLS0tLS0tXHJcbi8vIEVMRU1FTlRcclxuLy8tLS0tLS0tLS0tXHJcblxyXG4vLy0tLS0tLS0tLS1cclxuLy8gTU9ESUZJRVJcclxuLy8tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfS4jeyRuYW1lfS0tY292ZXJ7XHJcbiAgICBAaW5jbHVkZSBjb3ZlcihhYnNvbHV0ZSk7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICB3aWR0aDogMTAwJTtcclxufVxyXG5cclxuXHJcbi4jeyRuYW1lfTpub3QoW2NsYXNzKj1cIi0tbm8tZmFkZVwiXSl7XHJcbiAgICAmOmFmdGVyLFxyXG4gICAgJjpiZWZvcmV7XHJcbiAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgaGVpZ2h0OiA0MHB4O1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgcmlnaHQ6IDEwcHg7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHotaW5kZXg6IDE7XHJcbiAgICB9XHJcblxyXG4gICAgJjpiZWZvcmV7XHJcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRsaWdodC1ncmV5LCB0cmFuc3BhcmVudCk7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgfVxyXG5cclxuICAgICY6YWZ0ZXJ7XHJcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRyYW5zcGFyZW50LCAkbGlnaHQtZ3JleSk7XHJcbiAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgfVxyXG59XHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gUkVMQVRFRCAtIFRIRU1JTkdcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiRjb2xvci1tYXA6KFxyXG4gICAgYmx1ZTogKCRicmFuZC1ibHVlLCB3aGl0ZSksXHJcbiAgICBncmVlbjogKCRicmFuZC1ncmVlbiwgd2hpdGUpLFxyXG4gICAgZ3JleTogKCRncmV5LCB3aGl0ZSksXHJcbiAgICBwdXJwbGU6ICgkYnJhbmQtcHVycGxlLCB3aGl0ZSksXHJcbiAgICByZWQ6ICgkYnJhbmQtcmVkLCB3aGl0ZSksXHJcbiAgICBvcmFuZ2U6ICgkYnJhbmQtcHVycGxlLCAkYnJhbmQtYmxhY2spLFxyXG4gICAgbGlnaHQtYmx1ZTogKCRicmFuZC1saWdodC1ibHVlLCB3aGl0ZSksXHJcbiAgICBsaWdodC1ncmV5OiAoJGxpZ2h0LWdyZXksICRicmFuZC1ibGFjaylcclxuKTtcclxuXHJcbi8vLS0tLS0tLS1cclxuLy8gQkxPQ0tcclxuLy8tLS0tLS0tLVxyXG5AZWFjaCAkY29sb3ItbmFtZSwgJGNvbG9yLXZhbHVlIGluICRjb2xvci1tYXB7XHJcbiAgICAuI3tcIlwiICsgJG5hbWV9LmJnLSN7XCJcIiArICRjb2xvci1uYW1lfXtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAje250aCgkY29sb3ItdmFsdWUsIDEpfTtcclxuICAgICAgICBjb2xvcjogI3tudGgoJGNvbG9yLXZhbHVlLCAyKX07XHJcbiAgICB9XHJcblxyXG4gICAgLiN7XCJcIiArICRuYW1lfS5iZy0je1wiXCIgKyAkY29sb3ItbmFtZX06bm90KFtjbGFzcyo9XCItLW5vLWZhZGVcIl0pe1xyXG4gICAgICAgICY6YmVmb3JleyBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoI3tudGgoJGNvbG9yLXZhbHVlLCAxKX0sIHRyYW5zcGFyZW50KTsgfVxyXG4gICAgICAgICY6YWZ0ZXJ7IGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0cmFuc3BhcmVudCwgI3tudGgoJGNvbG9yLXZhbHVlLCAxKX0pOyB9XHJcbiAgICB9XHJcbn1cclxuXHJcbiIsIi8qKlxyXG4gKiBDT01QT05FTlRTXHJcbiAqIFRhYlxyXG4gKi9cclxuXHJcbiRuYW1lOiB0YWI7XHJcblxyXG4vLyBUSElTIFNIT1VMRCBCRSBSRURVQ0VEIFRPIEEgQlROIFRIRU1FXHJcbi8vIERPTkUgLSBidG4tLXRhYlxyXG5cclxuLy8tLS0tLS0tLS0tXHJcbi8vIEJMT0NLXHJcbi8vLS0tLS0tLS0tLVxyXG4vLyAuI3skbmFtZX17XHJcbiAgICAvLyBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgLy8gY29sb3I6ICRicmFuZC1ibGFjaztcclxuXHJcbiAgICAvLyAmLmlzLWFjdGl2ZXtcclxuICAgIC8vICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcclxuICAgIC8vIH1cclxuLy8gfVxyXG5cclxuXHJcbi8vLS0tLS0tLS0tLS1cclxuLy8gTU9ESUZJRVJTXHJcbi8vLS0tLS0tLS0tLS1cclxuIiwiLy8gU2VhcmNoIGdyb3VwcyBjb25zaXN0IG9mIGEgYnV0dG9uIGFuZCBhbiBpbnB1dCBhbmQgdHlwaWNhbGx5IGhhdmUgc2VhcmNoIGFzIHRoZSBwbGFjZWhvbGRlciBmb3IgdGhlIGlucHV0XHJcblxyXG4uc2VhcmNoLWdyb3Vwe1xyXG5cclxuICBAbWVkaWEgKG1pbi13aWR0aDogNDI1cHgpe1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICB9XHJcbn1cclxuXHJcbi5zZWFyY2gtZ3JvdXBfX2lucHV0e1xyXG4gIG1hcmdpbjogMCAwIDIwcHg7XHJcblxyXG4gIEBtZWRpYSAobWluLXdpZHRoOiA0MjVweCl7XHJcbiAgICBtYXJnaW46MCAxMHB4IDAgMDtcclxuICAgIGZsZXg6IDE7XHJcbiAgICAvLyBtYXRjaCBoZWlnaHQgd2l0aCBidXR0b25cclxuICAgIGhlaWdodDogNDZweDtcclxuICB9XHJcbn1cclxuXHJcblxyXG4uc2VhcmNoLWdyb3VwX19idG57XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgQG1lZGlhIChtaW4td2lkdGg6IDQyNXB4KXtcclxuICAgIHdpZHRoOiBhdXRvO1xyXG4gIH1cclxufVxyXG4iLCIvKipcclxuICogQ09NUE9ORU5UU1xyXG4gKiA0MDQvNTAwIFdhcm5pbmcgTWVzc2FnZVxyXG4gKi9cclxuXHJcbiRuYW1lOiB3YXJuaW5nLW1lc3NhZ2U7XHJcblxyXG5cclxuLy8tLS0tLS0tLVxyXG4vLyBCTE9DS1xyXG4vLy0tLS0tLS0tXHJcbi4jeyRuYW1lfSB7XHJcbiAgICBtYXJnaW46IDUwcHggYXV0bztcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgICBwIHtcclxuICAgICAgICBtYXgtd2lkdGg6IDY1MHB4O1xyXG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gRUxFTUVOVCAtIEhFQURMSU5FXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfV9faGVhZGxpbmV7XHJcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxufVxyXG5cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gRUxFTUVOVCAtIElDT05cclxuLy8tLS0tLS0tLS0tLS0tLS0tLVxyXG4uI3skbmFtZX1fX2ljb24ge1xyXG4gICAgbWF4LXdpZHRoOiAxMjBweDtcclxuICAgIGhlaWdodDogMTIwcHg7XHJcbiAgICBtYXJnaW46IDAgYXV0bztcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvYmFzZTY0L1BORy93YXJuaW5nLnBuZyk7XHJcbiAgICBAaW5jbHVkZSBiYWNrZ3JvdW5kKGNvdmVyKTtcclxufVxyXG5cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIEVMRU1FTlQgLSBMSU5LU1xyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLVxyXG4uI3skbmFtZX1fX2xpbmtze1xyXG4gICAgbWFyZ2luLXRvcDogMzBweDtcclxuXHJcbiAgICB1bCB7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIHBhZGRpbmc6IDIwcHg7XHJcblxyXG4gICAgICAgIGxpIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcclxuXHJcbiAgICAgICAgICAgICY6YmVmb3JlIHsgZGlzcGxheTogbm9uZTsgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bS1hbmQtdXApe1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcblxyXG4gICAgICAgIHVsIHtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiA1MCU7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG5cclxuICAgICAgICAgICAgJiArIHVsIHsgdGV4dC1hbGlnbjogbGVmdDsgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gRUxFTUVOVCAtIFNURVBTXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfV9fc3RlcHN7XHJcbiAgICBtYXgtd2lkdGg6IDcwMHB4O1xyXG4gICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgIG1hcmdpbjogNTBweCBhdXRvO1xyXG4gICAgY29sb3I6ICRibGFjaztcclxuICAgIGZvbnQtc2l6ZTogMTZweDtcclxufVxyXG5cclxuLy8tLS0tLS0tLS0tLVxyXG4vLyBNT0RJRklFUlxyXG4vLy0tLS0tLS0tLS0tXHJcbiIsIi5tb2JpbGUtc3RpY2t5LWJhciB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgcGFkZGluZzogNXB4IDFlbTtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICBib3R0b206IDA7XHJcbiAgICB6LWluZGV4OiA1MDtcclxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMjUpO1xyXG5cclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA0MjZweCkge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5tb2JpbGUtc3RpY2t5LWJhci0tb3BlbntcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIEBtZWRpYSAobWluLXdpZHRoOiA0MjZweCl7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxufVxyXG5cclxuLm1vYmlsZS1zdGlja3ktYmFyX19jb250YWluZXIge1xyXG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjI1KTtcclxuICAgIHdpZHRoOiAzMy4zMyU7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBmb250LWZhbWlseTogJGNhdHMtYm9sZDtcclxuICAgIG1pbi1oZWlnaHQ6IDU0cHg7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgJjpsYXN0LW9mLXR5cGUge1xyXG4gICAgICAgIGJvcmRlcjogMDtcclxuICAgIH1cclxufVxyXG5cclxuXHJcbi5tb2JpbGUtc3RpY2t5LWJhcl9fbGlua3tcclxuICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgdG9wOjBweDtcclxuICAgIGxlZnQ6MHB4O1xyXG4gICAgcmlnaHQ6MHB4O1xyXG4gICAgYm90dG9tOjBweDtcclxuICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICBsaW5lLWhlaWdodDo1NHB4O1xyXG4gICAgY29sb3I6JHdoaXRlO1xyXG59IiwiLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIENPTU1VTklUWSBTVEFUU1xyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLmNvbW11bml0eS1zdGF0c3tcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGZsZXgtd3JhcDogd3JhcDtcclxufVxyXG5cclxuXHJcbi5jb21tdW5pdHktc3RhdHNfX2J0biB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIEBleHRlbmQgJXRzLTg7XHJcbiAgICBjb2xvcjogJGJyYW5kLWJsYWNrO1xyXG4gICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xyXG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICBtYXJnaW46IDAgMCAxZW07XHJcbiAgICB3aWR0aDogMTAwJTtcclxuXHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNDI1cHgpIHtcclxuICAgICAgICB3aWR0aDogNTAlO1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuICAgICAgICB3aWR0aDogMzMuMzMlO1xyXG4gICAgfVxyXG5cclxuICAgIHNwYW4ge1xyXG4gICAgICAgIHdpZHRoOiA0MHB4O1xyXG4gICAgICAgIG1pbi13aWR0aDogNDBweDtcclxuICAgICAgICBoZWlnaHQ6IDQwcHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDQwcHg7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcmVkO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XHJcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIiwiLmRvbmF0ZS1vcHRpb24ge1xyXG4gICAgcGFkZGluZzogMjBweCAxNXB4O1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuICAgIGZvbnQtZmFtaWx5OiAkY2F0cy1tZWQ7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblxyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OXB4KSB7XHJcbiAgICAgICAgaGVpZ2h0OiAzNDVweDtcclxuICAgICAgICBwYWRkaW5nOiA0MHB4IDMwcHg7XHJcbiAgICB9XHJcblxyXG5cclxuICAgICYuaXMtc2VsZWN0ZWQge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1ibHVlO1xyXG4gICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgfVxyXG59XHJcblxyXG4uZG9uYXRlLW9wdGlvbl9fYW1vdW50e1xyXG4gIGZvbnQtZmFtaWx5OiAkY2F0cy1ib2xkO1xyXG4gIGZvbnQtc2l6ZTogNDBweDtcclxuICAvLyBJRSBGaXhcclxuICB3aWR0aDogMTAwJTtcclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCl7XHJcbiAgICBmb250LXNpemU6IDQ2cHg7XHJcbiAgfVxyXG59XHJcblxyXG4uZG9uYXRlLW9wdGlvbl9fY29weXtcclxuICBwYWRkaW5nOiAyMHB4IDA7XHJcbiAgZm9udC1zaXplOiAxOHB4O1xyXG4gIC8vIElFIEZpeFxyXG4gIHdpZHRoOiAxMDAlO1xyXG5cclxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKXtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgfVxyXG59XHJcblxyXG4uZG9uYXRpb24tb3B0aW9uX19pbnB1dHtcclxuICBtYXJnaW46MjBweCAwO1xyXG4gIHdpZHRoOiAyMDBweDtcclxufVxyXG5cclxuLmRvbmF0ZS1vcHRpb25fX2hlYWRpbmd7XHJcbiAgZm9udC1zaXplOiAzMnB4O1xyXG4gIGZvbnQtZmFtaWx5OiAkY2F0cy1ib2xkO1xyXG4gIC8vIElFIEZpeFxyXG4gIHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4vLyBUZXh0IHN0YXRlcyBmb3IgZWFjaCBidXR0b25cclxuXHJcbi5kb25hdGUtb3B0aW9uX19idG4ge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXBpbmsgIWltcG9ydGFudDtcclxuICAgIGNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcclxuICAgICAgICBjb2xvcjogJGJyYW5kLXBpbmsgIWltcG9ydGFudDtcclxuICAgIH1cclxuXHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJQbGVhc2UgU2VsZWN0XCI7XHJcbiAgICB9XHJcblxyXG4gICAgLmRvbmF0ZS1vcHRpb24uaXMtc2VsZWN0ZWQgJiB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXBpbmsgIWltcG9ydGFudDtcclxuICAgICAgICBjb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgY29udGVudDogXCJTZWxlY3RlZFwiO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuXHJcbi5kb25hdGUtb3B0aW9uLS1ob3Jpem9udGFsLWxheW91dHtcclxuICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpe1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICB9XHJcblxyXG4gIC5kb25hdGUtb3B0aW9uX19jb3B5e1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpe1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5kb25hdGUtb3B0aW9uLS1vdGhlci1hbW91bnQtaG9yaXpvbnRhbC1sYXlvdXR7XHJcbiAgLmRvbmF0aW9uLW9wdGlvbl9faW5wdXR7XHJcbiAgICBtYXJnaW46IDAgMCAyMHB4O1xyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCl7XHJcbiAgICAgIG1hcmdpbjogMjBweCAwO1xyXG4gICAgfVxyXG4gIH1cclxuICAuZG9uYXRlLW9wdGlvbl9faGVhZGluZ3tcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKXtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLmRvbmF0ZS1vcHRpb24tLW90aGVye1xyXG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbn1cclxuXHJcbi5kb25hdGUtb3B0aW9uLS1tb2JpbGUtdGhlbWUge1xyXG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcclxuICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgIHBhZGRpbmc6IDEycHg7XHJcblxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgcGFkZGluZzogNDBweCAzMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5kb25hdGUtb3B0aW9uX19idG4ge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcGluayAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICRicmFuZC1waW5rICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmRvbmF0ZS1vcHRpb25fX2NvcHkge1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogOHB4O1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmRvbmF0ZS1vcHRpb25fX2Ftb3VudCB7XHJcbiAgICAgICAgZm9udC1zaXplOiAzMHB4O1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogNDBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5kb25hdGUtb3B0aW9uLS1vdGhlci1tb2JpbGUtdGhlbWV7XHJcbiAgLmRvbmF0ZS1vcHRpb25fX2hlYWRpbmd7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCl7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgfVxyXG4gIH1cclxuICAuZG9uYXRpb24tb3B0aW9uX19pbnB1dHtcclxuICAgIG1hcmdpbjogMCAwIDIwcHg7XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKXtcclxuICAgICAgbWFyZ2luOiAyMHB4IDA7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8vIEJyZWFrIGVtYWlscyB0aGF0IGFyZSB0b28gbG9uZ1xyXG5cclxuYVtocmVmXj1cIm1haWx0b1wiXXtcclxuICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xyXG4gIGNvbG9yOiRicmFuZC1waW5rO1xyXG4gICY6aG92ZXIge1xyXG4gICAgICBjb2xvcjokYnJhbmQtcHVycGxlO1xyXG4gIH1cclxufVxyXG4iLCIvLyBVc2VkIGZvciBwYWdpbmF0aW9uIHRoYXQgaGFzIHBhZ2UgY291bnRcclxuXHJcbi5wYWdpbmF0aW9ue1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAgZmxleC13cmFwOiB3cmFwO1xyXG5cclxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKXtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgfVxyXG59XHJcblxyXG4ucGFnaW5hdGlvbl9fcHJldntcclxuICB3aWR0aDogMTAwJTtcclxuXHJcbiAgQG1lZGlhIChtaW4td2lkdGg6IDQyNXB4KSB7XHJcbiAgICB3aWR0aDogNTAlO1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCl7XHJcbiAgICBvcmRlcjogMTtcclxuICAgIHdpZHRoOiBhdXRvO1xyXG4gIH1cclxufVxyXG5cclxuLnBhZ2luYXRpb25fX3ByZXYtLWxhc3Qtb25lLFxyXG4ucGFnaW5hdGlvbl9fbmV4dHtcclxuICB3aWR0aDogMTAwJTtcclxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKXtcclxuICAgIG9yZGVyOjM7XHJcbiAgICB3aWR0aDogYXV0bztcclxuICB9XHJcbn1cclxuXHJcbi5wYWdpbmF0aW9uX19wcmV2ICsgLnBhZ2luYXRpb25fX25leHR7XHJcblxyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIHBhZGRpbmc6IDEwcHggMCAwO1xyXG4gIEBtZWRpYSAobWluLXdpZHRoOiA0MjVweCkge1xyXG4gICAgd2lkdGg6IDUwJTtcclxuICAgIHBhZGRpbmc6IDAgMCAwIDEwcHg7XHJcbiAgfVxyXG5cclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCl7XHJcbiAgICB3aWR0aDogMTQwcHg7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gIH1cclxufVxyXG5cclxuLnBhZ2luYXRpb25fX25leHQsXHJcbi5wYWdpbmF0aW9uX19wcmV2e1xyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpe1xyXG4gICAgd2lkdGg6IDE0MHB4O1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi5wYWdpbmF0aW9uX19jb3VudHtcclxuICB3aWR0aDogMTAwJTtcclxuICBtYXJnaW46IDAgMCAxMHB4O1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKXtcclxuICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgb3JkZXI6IDI7XHJcbiAgICBtYXJnaW46IDA7XHJcblxyXG4gIH1cclxufVxyXG4iLCIuc29ydC1ieXtcclxuICBtYXJnaW46IDAgMCAyMHB4O1xyXG4gIEBtZWRpYSAobWluLXdpZHRoOiA0NTBweCkge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gIH1cclxufVxyXG5cclxuLnNvcnQtYnlfX2xhYmVse1xyXG4gIG1hcmdpbjogMCAwIDIwcHg7XHJcbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ1MHB4KSB7XHJcbiAgICBtYXJnaW46IDAgMjBweCAwIDA7XHJcbiAgfVxyXG59XHJcblxyXG4uc29ydC1ieV9fYm94e1xyXG4gIG1hcmdpbjogMDtcclxuICBAbWVkaWEgKG1pbi13aWR0aDogNDUwcHgpIHtcclxuICAgIHdpZHRoOiBhdXRvO1xyXG4gIH1cclxufVxyXG4iLCIubWVtYmVyc2hpcC10eXBlIHtcclxuICAgIHBhZGRpbmc6IDEzNnB4IDIwcHggMjBweDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1wdXJwbGU7XHJcbiAgICB3aWR0aDogMjI2cHg7XHJcbiAgICAvLyBib3gtc2hhZG93OiAwIDAgMTBweCAzcHggcmdiYSg5NCwgOTQsIDk0LCAwLjI1KTtcclxuICAgIC8vbWFyZ2luOiAwIDQwcHggMCAyMHB4O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZGFjMGQ4ICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHdpZHRoOiAxMjBweDtcclxuICAgICAgICBoZWlnaHQ6IDgwcHg7XHJcbiAgICAgICAgY29sb3I6ICRicmFuZC1ibHVlO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDI1cHg7XHJcbiAgICAgICAgbGVmdDogNTAlO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcclxuICAgICAgICBmb250LXNpemU6IDkwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgJltkYXRhLXNlbGVjdC1ib3g9XCJGb3JNZVwiXTpiZWZvcmUge1xyXG4gICAgICAgIEBpbmNsdWRlIG1lLWljb247XHJcbiAgICAgICAgZm9udC1zaXplOiA5NXB4O1xyXG4gICAgfVxyXG5cclxuICAgICZbZGF0YS1zZWxlY3QtYm94PVwiRm9yVXNcIl06YmVmb3JlIHtcclxuICAgICAgICBAaW5jbHVkZSBmYW1pbHktaWNvbjtcclxuICAgIH1cclxuXHJcbiAgICAmW2RhdGEtc2VsZWN0LWJveD1cIkFHaWZ0XCJdOmJlZm9yZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgZ2lmdC1pY29uO1xyXG4gICAgfVxyXG5cclxuICAgIC5mb3JtX19zZWxlY3Qge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6ICRjYXRzLWhlYWRsaW5lO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBmb250LXNpemU6IDIwcHg7XHJcblxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgY29udGVudDogJ0dhcnJ5JztcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIiwiLypcclxuICBUaGlzIGNhbiBiZSB1c2VkIHRvIGNyZWF0ZSBnZW5lcmFsIGNvbXBvbmVudHMgdGhhdCBuZWVkIGZpeGVkIHJhdGlvIHJlc3RyaWN0aW9uc1xyXG4gKi9cclxuXHJcbkBtaXhpbiBiYWNrZ3JvdW5kLWNvdmVye1xyXG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xyXG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XHJcbn1cclxuXHJcblxyXG5cclxuLmZpeGVkLXJhdGlve1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAmOmJlZm9yZXtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgY29udGVudDogXCJcIjtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gIH1cclxuXHJcbiAgPiAuZml4ZWQtcmF0aW9fX2lubmVye1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICBib3R0b206IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgQGluY2x1ZGUgYmFja2dyb3VuZC1jb3ZlcjtcclxuICB9XHJcbn1cclxuXHJcblxyXG4uZml4ZWQtcmF0aW8tLTEtMTpiZWZvcmV7XHJcbiAgcGFkZGluZy10b3A6ICgxIC8gMSkqIDEwMCU7XHJcbn1cclxuIiwiLy8gR2VuZXJhbFxyXG5cclxuLypcclxuW2NvbnRlbnRlZGl0YWJsZV06ZW1wdHk6YmVmb3JlIHtcclxuICBjb250ZW50OiBhdHRyKGRhdGEtcGxhY2Vob2xkZXIpO1xyXG4gIGNvbG9yOiBncmV5O1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxufVxyXG4qL1xyXG5cclxuXHJcbi5zdWJtaXQtY29tbWVudHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcblxyXG4uc3VibWl0LWNvbW1lbnRfX2lucHV0e1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkICM5OTk7XHJcbiAgcGFkZGluZzogMC44ZW07XHJcbiAgYm9yZGVyLXJhZGl1czogMmVtO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIGZvbnQtc2l6ZTogMC43ZW07XHJcbiAgbGluZS1oZWlnaHQ6IDEuN2VtO1xyXG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcclxuICB3b3JkLWJyZWFrOiBicmVhay1hbGw7XHJcblxyXG4gICY6ZW1wdHk6YmVmb3Jle1xyXG4gICAgY29udGVudDogYXR0cihwbGFjZWhvbGRlcik7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICB9XHJcblxyXG4gICY6Zm9jdXN7XHJcbiAgICBvdXRsaW5lOiBub25lO1xyXG4gIH1cclxuXHJcbiAgJjpmb2N1cyArIC5zdWJtaXQtY29tbWVudF9fYnV0dG9ue1xyXG4gICAgb3BhY2l0eTogMTtcclxuICB9XHJcbn1cclxuXHJcbi5zdWJtaXQtY29tbWVudF9faW5wdXQtLWV4cGFuZGVke1xyXG4gIHBhZGRpbmc6IDAuOGVtIDAuOGVtIDNlbTtcclxufVxyXG5cclxuLnN1Ym1pdC1jb21tZW50X19idXR0b257XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHJpZ2h0OiAxZW07XHJcbiAgYm90dG9tOiAxZW07XHJcbiAgZm9udC1zaXplOiAxMnB4O1xyXG4gIG9wYWNpdHk6IDA7XHJcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzO1xyXG59XHJcblxyXG5cclxuXHJcbiIsIi8vIENyZWF0ZXMgYSBzcGlubmluZyBsb2FkZXJcclxuXHJcbi5pcy1zdWJtaXR0aW5nIHtcclxuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXBpbms7XHJcblxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgaGVpZ2h0OiAxLjRlbTtcclxuICAgICAgICB3aWR0aDogMS40ZW07XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGxlZnQsICNmZmYsIHRyYW5zcGFyZW50IDYwJSk7XHJcbiAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgbGVmdDogNTAlO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xyXG4gICAgICAgIHotaW5kZXg6IDEwO1xyXG4gICAgICAgIGFuaW1hdGlvbjogcm90YXRpbmcgMnMgbGluZWFyIGluZmluaXRlO1xyXG4gICAgfVxyXG5cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgaGVpZ2h0OiAxLjJlbTtcclxuICAgICAgICB3aWR0aDogMS4yZW07XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXBpbms7XHJcbiAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgbGVmdDogNTAlO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xyXG4gICAgICAgIHotaW5kZXg6IDIwO1xyXG4gICAgfVxyXG5cclxuICAgICYuanMtZm9ybS1zdWJtaXNzaW9uLWFqYXgtaGlkZGVuIHtcclxuICAgICAgICBkaXNwbGF5Om5vbmU7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgcm90YXRpbmcge1xyXG4gIGZyb20ge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKDBkZWcpO1xyXG4gIH1cclxuICB0byB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGUoMzYwZGVnKTtcclxuICB9XHJcbn1cclxuIiwiXHJcbi5jb29raWUtYmFyIHtcclxuICBmb250LWZhbWlseTogYXJpYWw7XHJcbiAgZm9udC1zaXplOiAxM3B4O1xyXG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XHJcbiAgcG9zaXRpb246IGZpeGVkO1xyXG4gIHRvcDogYXV0bztcclxuICBsZWZ0OiAwO1xyXG4gIHJpZ2h0OiAwO1xyXG4gIGJvdHRvbTogMDtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIHBhZGRpbmc6IDIwcHggMTVweCA1cHg7XHJcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgZmxleC13cmFwOiB3cmFwO1xyXG4gIHotaW5kZXg6IDk5OTk5OTk7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjkpO1xyXG4gIGNvbG9yOiB3aGl0ZTtcclxufVxyXG5cclxuLmNvb2tpZS1iYXJfX2NvcHkge1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxufVxyXG5cclxuLmNvZyB7XHJcbiAgd2lkdGg6IDIwcHg7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRvcDogNTAlO1xyXG4gIGxlZnQ6IDEwcHg7XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG59XHJcblxyXG4uY29va2llLWJhcl9fYWNjZXB0IHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHBhZGRpbmc6IDE2cHggMTBweDtcclxuICAgIGNvbG9yOiB3aGl0ZTtcclxuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG59XHJcblxyXG4vKiAuY29va2llLWJhcl9fYWNjZXB0OmFmdGVye1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxufSAqL1xyXG5cclxuLmNvb2tpZS1iYXJfX3NldHRpbmdzIHtcclxuICBjb2xvcjogaW5oZXJpdDtcclxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgcGFkZGluZzogMThweCAxOHB4O1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBjb2xvcjogd2hpdGU7XHJcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxufVxyXG5cclxuLmNvb2tpZS1iYXJfX3NldHRpbmdzIHtcclxuICAgIHBhZGRpbmctbGVmdDogMzdweDtcclxuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG59XHJcblxyXG5cclxuLmNvb2tpZS1iYXJfX2FjY2VwdDpob3ZlciB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45KTtcclxuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG59XHJcblxyXG4uY29va2llLWJhcl9fc2V0dGluZ3M6aG92ZXIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyMjUsMjI1LDIyNSwgMC40KTtcclxuICAgIGNvbG9yOiB3aGl0ZTtcclxuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG59XHJcblxyXG5AbWVkaWEobWluLXdpZHRoOiA2MDBweCkge1xyXG4gIC5jb29raWUtYmFyIHtcclxuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcclxuICAgIGZsZXgtd3JhcDogbm93cmFwO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xyXG4gIH1cclxuXHJcbiAgLmNvb2tpZS1iYXJfX2NvcHkge1xyXG4gICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDE2cHg7XHJcbiAgICB3aWR0aDogYXV0bztcclxuICAgIGZsZXg6IDE7XHJcbiAgICBmb250LXNpemU6IDEuMWVtO1xyXG4gIH1cclxuXHJcbiAgLmNvb2tpZS1iYXJfX3NldHRpbmdzLFxyXG4gIC5jb29raWUtYmFyX19hY2NlcHQge1xyXG4gICAgLyogcGFkZGluZzogMTZweCAzMnB4OyAqL1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgbWFyZ2luLWxlZnQ6IDEwcHg7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gIH1cclxuXHJcbiAgLmNvb2tpZS1iYXJfX2FjY2VwdCB7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZmZmO1xyXG4gIH1cclxufVxyXG5cclxuLmNvb2tpZS1tb2RlbCB7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgdG9wOiAwO1xyXG4gIHJpZ2h0OiAwO1xyXG4gIGJvdHRvbTogMDtcclxuICBsZWZ0OiAwO1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KTtcclxuICBvcGFjaXR5OiAwO1xyXG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3M7XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcclxuICBmb250LWZhbWlseTogQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcclxuICAvKiBwYWRkaW5nOiAwIDEwcHg7ICovXHJcbiAgZm9udC1zaXplOiAxNHB4O1xyXG4gIHotaW5kZXg6IDk5OTk5OTk5O1xyXG4gIG92ZXJmbG93OiBzY3JvbGw7XHJcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoOyAvKiBMZXRzIGl0IHNjcm9sbCBsYXp5ICovXHJcblxyXG59XHJcblxyXG5AbWVkaWEobWluLXdpZHRoOiA2MDBweCkge1xyXG4gIC5jb29raWUtbW9kZWwge1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICB9XHJcbn1cclxuXHJcbi5jb29raWUtbW9kZWw6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcclxuICBkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG4uY29va2llLW1vZGVsLnZpc2libGUge1xyXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcclxuICBvcGFjaXR5OiAxO1xyXG4gIHZpc2liaWxpdHk6IHZpc2libGU7XHJcbn1cclxuXHJcbi5jb29raWUtbW9kZWxfX3dpbmRvdyB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxuICBwYWRkaW5nOiAxNnB4O1xyXG4gIG1hcmdpbjogMCBhdXRvO1xyXG4gIG1heC13aWR0aDogNjAwcHg7XHJcbiAgb3BhY2l0eTogMDtcclxuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgMC4ycywgdHJhbnNmb3JtIDAuM3MgMC4ycztcclxufVxyXG5cclxuQG1lZGlhKG1pbi13aWR0aDogNjAwcHgpIHtcclxuICAuY29va2llLW1vZGVsX193aW5kb3cge1xyXG4gICAgcGFkZGluZzogMzBweCAzNXB4IDI1cHg7XHJcbiAgfVxyXG59XHJcblxyXG4uY29va2llLW1vZGVsX193aW5kb3cgaDF7XHJcbiAgZm9udC1zaXplOiAyOHB4O1xyXG4gIGxpbmUtaGVpZ2h0OiAxO1xyXG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG59XHJcblxyXG4uY29va2llLW1vZGVsX193aW5kb3cgcHtcclxuICBmb250LXNpemU6IDE0cHg7XHJcbiAgbGluZS1oZWlnaHQ6IDIycHg7XHJcbn1cclxuXHJcbi5jb29raWUtbW9kZWwudmlzaWJsZSAuY29va2llLW1vZGVsX193aW5kb3cge1xyXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcclxuICBvcGFjaXR5OiAxO1xyXG59XHJcblxyXG4uY29va2llLW1vZGVsX19jbG9zZSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBncmVlbjtcclxuICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDI1cHg7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBwYWRkaW5nOiAyMHB4O1xyXG4gICAgZm9udC1zaXplOiAxLjI1ZW07XHJcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuICAgIC8qIGJvcmRlcjogMXB4IHNvbGlkICM3ZDdkN2Q7ICovXHJcbn1cclxuXHJcbi5jb29raWUtbW9kZWxfX2Nsb3NlOmhvdmVyIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNjY2M7XHJcbiAgICBjb2xvcjogIzYzNjM2MztcclxuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG59XHJcblxyXG4uY29va2llLW1vZGVsX19jbG9zZSBpbWcge1xyXG4gIHdpZHRoOiAxMHB4O1xyXG59XHJcblxyXG4uY29va2llLW1vZGVsIGgxIHtcclxuICBtYXJnaW46IDAgMCAxNnB4O1xyXG59XHJcblxyXG4uY29va2llLW1vZGVsX193aW5kb3cgPiBwIHtcclxuICBjb2xvcjogIzg0ODQ4NDtcclxuICBtYXJnaW46IDAgMCAxNnB4O1xyXG59XHJcblxyXG4vKmNvb2tpZSBvcHRpb24gc3R5bGVzKi9cclxuXHJcbi8qIC5jb29raWUtb3B0aW9uIHtcclxufSAqL1xyXG5cclxuLmNvb2tpZS1vcHRpb25fX2hlYWRpbmcge1xyXG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjYmZiZmJmO1xyXG4gIHBhZGRpbmctdG9wOiAxOHB4O1xyXG4gIG1hcmdpbjogMCAwIDA7XHJcbiAgZm9udC1zaXplOiAyMHB4O1xyXG4gIGxpbmUtaGVpZ2h0OiAxO1xyXG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG59XHJcblxyXG4uY29va2llLW9wdGlvbl9fY29weSB7XHJcbiAgY29sb3I6ICM4NDg0ODQ7XHJcbiAgbWFyZ2luOiAwIDAgMTZweDtcclxufVxyXG5cclxuLmNvb2tpZS1vcHRpb24gc3BhbiB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHdpZHRoOiA1MHB4O1xyXG4gIGhlaWdodDogMjVweDtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogIzI1MjUyNTtcclxuICBib3JkZXItcmFkaXVzOiAyNXB4O1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxufVxyXG5cclxuLmNvb2tpZS1vcHRpb24gc3BhbjphZnRlciB7XHJcbiAgY29udGVudDogXCJcIjtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdG9wOiAycHg7XHJcbiAgbGVmdDogMnB4O1xyXG4gIHdpZHRoOiAyMXB4O1xyXG4gIGhlaWdodDogMjFweDtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcztcclxuICBib3JkZXItcmFkaXVzOiAxMDAlO1xyXG59XHJcblxyXG4uY29va2llLW9wdGlvbiBzcGFuOmJlZm9yZSB7XHJcbiAgY29udGVudDogXCJvZmZcIjtcclxuICBjb2xvcjogI2ZmZjtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdG9wOiA0cHg7XHJcbiAgZm9udC1mYW1pbHk6IEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XHJcbiAgcmlnaHQ6IDdweDtcclxufVxyXG5cclxuLmNvb2tpZS1vcHRpb24gaW5wdXQge1xyXG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxufVxyXG5cclxuLmNvb2tpZS1vcHRpb24gaW5wdXQ6ZGlzYWJsZWQgKyBzcGFuIHtcclxuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xyXG4gIG9wYWNpdHk6IDAuNTtcclxufVxyXG5cclxuLmNvb2tpZS1vcHRpb24gaW5wdXQ6Y2hlY2tlZCArIHNwYW4ge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IGdyZWVuO1xyXG59XHJcblxyXG4uY29va2llLW9wdGlvbiBpbnB1dDpjaGVja2VkICsgc3BhbjphZnRlciB7XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDI1cHgpO1xyXG59XHJcblxyXG4uY29va2llLW9wdGlvbiBpbnB1dDpjaGVja2VkICsgc3BhbjpiZWZvcmUge1xyXG4gIGNvbnRlbnQ6IFwib25cIjtcclxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTIycHgpO1xyXG59XHJcblxyXG4vKiAuY29va2llLW9wdGlvbl9fbGFiZWwge1xyXG59ICovXHJcblxyXG5AbWVkaWEgKG1pbi13aWR0aDogNDAwcHgpIHtcclxuICAuY29va2llLW9wdGlvbl9fbGFiZWwge1xyXG4gICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgbWFyZ2luLWxlZnQ6IDVweDtcclxuICB9XHJcbn1cclxuXHJcbiNjb2dCYXIge1xyXG4gIHBvc2l0aW9uOiBmaXhlZDtcclxuICBib3R0b206IDA7XHJcbiAgbGVmdDogMDtcclxuICBoZWlnaHQ6IDYwcHg7XHJcbiAgd2lkdGg6IDYwcHg7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG4gIHotaW5kZXg6IDEwMDtcclxufVxyXG4uY29nQmFyX19pbm5lciB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcbi5jb2dCYXJfX2lubmVyOmJlZm9yZSB7XHJcbiAgY29udGVudDogXCJcIjtcclxuICBoZWlnaHQ6IDEyMHB4O1xyXG4gIHdpZHRoOiAxcHg7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIGJvcmRlci1sZWZ0OiA2MHB4IHNvbGlkIGdyZXk7XHJcbiAgYm9yZGVyLXRvcDogNjBweCBzb2xpZCB0cmFuc3BhcmVudDtcclxufVxyXG4jY29nQmFyOmhvdmVyIC5jb2dCYXJfX2lubmVyOmJlZm9yZSB7XHJcbiAgYm9yZGVyLWxlZnQtY29sb3I6IGdyZWVuO1xyXG59XHJcblxyXG4uY29nQmFyX19pbWcge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB6LWluZGV4OiAxO1xyXG4gIHRvcDogMzBweDtcclxuICBsZWZ0OiA2cHg7XHJcbn1cclxuIiwi77u/LnNpbW9ucy1jYXQtYmFubmVyLWxvZ28ge1xyXG4gICAgbWF4LXdpZHRoOiAzMCU7XHJcbiAgICBtYXJnaW46IDAgYXV0bztcclxuXHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTA0MHB4KSB7XHJcbiAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgfVxyXG5cclxufVxyXG4iLCLvu78uc2ltb25zLWNhdC1pbmZvLWJveCB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjAyRDI5O1xyXG4gICAgY29sb3I6ICNmZmY7XHJcbn1cclxuXHJcbi5zaW1vbnMtY2F0LWluZm8tYm94X19jb250ZW50IHtcclxuICAgIHBhZGRpbmc6IDJlbSAxNXB4IDEyMHB4O1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWFnZXMvc2ltb25zLWNhdC9iaWdjYXQucG5nJyk7XHJcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogYm90dG9tIC00MHB4IHJpZ2h0IDIwcHg7XHJcbiAgICBtYXgtd2lkdGg6IDEyMDBweDtcclxuICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgYmFja2dyb3VuZC1zaXplOiAxMjBweDtcclxuXHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNjgwcHgpIHtcclxuICAgICAgICBwYWRkaW5nOiAyZW0gMzAwcHggMmVtIDE1cHg7XHJcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxOTBweDtcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTI4MHB4KSB7XHJcbiAgICAgICAgcGFkZGluZzogMmVtIDMwMHB4IDJlbSAwO1xyXG4gICAgfVxyXG59XHJcbiIsIu+7vy5zaW1vbnMtY2F0LW1lZGlhIHtcclxuICAgICY6bnRoLW9mLXR5cGUoNm4gKyAxKSB7XHJcbiAgICAgICAgLnNpbW9ucy1jYXQtbWVkaWFfX2ltYWdlIHtcclxuICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltYWdlcy9zaW1vbnMtY2F0L3RvcGxlZnQucG5nJyk7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTQzcHg7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDkwcHg7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDE2MHB4O1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoNnB4LCAyN3B4KSByb3RhdGUoLThkZWcpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICY6bnRoLW9mLXR5cGUoNm4gKyAyKSB7XHJcbiAgICAgICAgLnNpbW9ucy1jYXQtbWVkaWFfX2ltYWdlIHtcclxuICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltYWdlcy9zaW1vbnMtY2F0L1RvcGNlbnRyZS5wbmcnKTtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiA3MHB4O1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA4MnB4O1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLThweCwgMXB4KSByb3RhdGUoNWRlZyk7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDcycHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJjpudGgtb2YtdHlwZSg2biArIDMpIHtcclxuICAgICAgICAuc2ltb25zLWNhdC1tZWRpYV9faW1hZ2Uge1xyXG4gICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1hZ2VzL3NpbW9ucy1jYXQvdG9wcmlnaHQucG5nJyk7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwcHg7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMHB4O1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMjRweCwgMjdweCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJjpudGgtb2YtdHlwZSg2biArIDQpIHtcclxuICAgICAgICAuc2ltb25zLWNhdC1tZWRpYV9faW1hZ2Uge1xyXG4gICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1hZ2VzL3NpbW9ucy1jYXQvYm90dG9tbGVmdC5wbmcnKTtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDBweDtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwcHg7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDc5cHg7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWCgtMSkgdHJhbnNsYXRlKDFweCwgMzZweCkgcm90YXRlKDdkZWcpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICY6bnRoLW9mLXR5cGUoNm4gKyA1KSB7XHJcbiAgICAgICAgLnNpbW9ucy1jYXQtbWVkaWFfX2ltYWdlIHtcclxuICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltYWdlcy9zaW1vbnMtY2F0L2JvdHRvbW1pZGRsZS5wbmcnKTtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDBweDtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwcHg7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDkzcHg7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg5cHgsIDM3cHgpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICY6bnRoLW9mLXR5cGUoNm4pIHtcclxuICAgICAgICAuc2ltb25zLWNhdC1tZWRpYV9faW1hZ2Uge1xyXG4gICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1hZ2VzL3NpbW9ucy1jYXQvYm90dG9tcmlnaHQucG5nJyk7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwcHg7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMHB4O1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMThweDtcclxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC04cHgsIDMxcHgpIHJvdGF0ZSgxNGRlZyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnNpbW9ucy1jYXQtbWVkaWFfX2ltYWdlIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IDIwO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjAyRDI5O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDEyMHB4O1xyXG4gICAgICAgICAgICB3aWR0aDogMTIwcHg7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IDEwO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgzMHB4LCA3MHB4KTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIiwi77u/QGZvbnQtZmFjZSB7XHJcbiAgICBmb250LWZhbWlseTogJ2xlb3NsZXJyb3VnaF9yZWd1bGFyJztcclxuICAgIHNyYzogdXJsKCdmb250cy9sZW9zbGVyLXJvdWdocmVndWxhcl91cGRhdGVfZmViLXdlYmZvbnQud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksIHVybCgnZm9udHMvbGVvc2xlci1yb3VnaHJlZ3VsYXJfdXBkYXRlX2ZlYi13ZWJmb250LndvZmYnKSBmb3JtYXQoJ3dvZmYnKTtcclxuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbn1cclxuXHJcbi5mb250LXNpbW9ucy1jYXQge1xyXG4gICAgZm9udC1mYW1pbHk6ICdsZW9zbGVycm91Z2hfcmVndWxhcic7XHJcbn1cclxuIiwiW2RhdGEtYW5pbWF0ZS11cF0sXHJcbltkYXRhLWFuaW1hdGUtcmlnaHRdLFxyXG5bZGF0YS1hbmltYXRlLWxlZnRdIHtcclxuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHksIHRyYW5zZm9ybTtcclxuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDcwMG1zO1xyXG4gICAgb3BhY2l0eTogMDtcclxuXHJcbi8qICAgIEBpbmNsdWRlIGllLWZhbGxiYWNrKCRsYXJnZSkge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcbiAgICB9Ki9cclxuXHJcbiAgICAuaXMtYWN0aXZlICYsXHJcbiAgICAmLmlzLWFjdGl2ZSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxufVxyXG5cclxuQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAxMCB7XHJcbiAgICBbZGF0YS1hbmltYXRlLWRlbGF5PVwiI3skaX0wMFwiXXtcclxuICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAkaSAqIDEwMG1zO1xyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLy8gdXBcclxuW2RhdGEtYW5pbWF0ZS11cF17XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNTBweCk7XHJcbiAgICAuaXMtYWN0aXZlICYsXHJcbiAgICAmLmlzLWFjdGl2ZXtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIHJpZ2h0XHJcbltkYXRhLWFuaW1hdGUtcmlnaHRde1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MHB4KTtcclxuICAgIC5pcy1hY3RpdmUgJixcclxuICAgICYuaXMtYWN0aXZle1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcclxuICAgIH1cclxufVxyXG5cclxuLy8gbGVmdFxyXG5bZGF0YS1hbmltYXRlLWxlZnRde1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDUwcHgpO1xyXG4gICAgLmlzLWFjdGl2ZSAmLFxyXG4gICAgJi5pcy1hY3RpdmV7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xyXG4gICAgfVxyXG59XHJcblxyXG4iLCIuZml4LWlmcmFtZSB7XHJcbiAgICBoZWlnaHQ6IDExMDBweDtcclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcbiAgICAgICAgaGVpZ2h0OiA4NTBweDtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XHJcbiAgICAgICAgaGVpZ2h0OiA3NTBweDtcclxuICAgIH1cclxufVxyXG4iLCIuZXZlbnRzLXBhZ2luYXRpb24ge1xyXG4gICAgdWwge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG5cclxuICAgICAgICAucGFnZS1pdGVtIHtcclxuICAgICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IDVweDtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDVweDtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcblxyXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGxpZ2h0LXB1cnBsZTtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJyYW5kLWJsYWNrO1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAucGFnZS1pdGVtLmFjdGl2ZSBhIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogJGJyYW5kLXB1cnBsZTtcclxuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czo2cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi8qIGV2ZW50IGNhdGVnb3J5IHBhZ2UgY2Fyb3VzZWwgKi9cclxuLmV2ZW50LWNhdGVnb3J5LWNhcm91c2VsIHtcclxuICAgIC5zbGljay10cmFjay5zbGljay10cmFjayB7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5lY2MtaXRlbSB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBtYXJnaW46IGF1dG87XHJcbiAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIGJhY2tncm91bmQ6ICNlN2U4ZTY7XHJcbiAgICAvKiBAbWVkaWEgKG1pbi13aWR0aDogNDI2cHgpIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xyXG4gICAgICAgIHdpZHRoOiA2Ni42NiU7XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OXB4KSB7XHJcbiAgICAgICAgd2lkdGg6IDUwJTtcclxuICAgIH0qL1xyXG5cclxuICAgIC5lY2MtaW1nLXdyYXBwZXIge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XHJcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG5cclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICBtYXJnaW46IGF1dG87XHJcbiAgICAgICAgICAgIG1pbi13aWR0aDogMTAwJTtcclxuXHJcbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjlweCkge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OXB4KSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiA1MCU7XHJcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDQwMHB4XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5lY2MtdHh0LXdyYXBwZXIge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAvKmp1c3RpZnktY29udGVudDogY2VudGVyOyovXHJcblxyXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjlweCkge1xyXG4gICAgICAgICAgICB3aWR0aDogNTAlO1xyXG4gICAgICAgIH1cclxuICAgICAgICAvKiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDQyNnB4KSBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcclxuICAgICAgICAgICAgd2lkdGg6IDUwJTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjlweCkge1xyXG4gICAgICAgICAgICB3aWR0aDogMzMuMzMlO1xyXG4gICAgICAgIH0qL1xyXG4gICAgICAgIC5lY2MtdHh0IHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgICAgLyphbGlnbi1pdGVtczogY2VudGVyOyovXHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlN2U4ZTY7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDMwcHggMzBweDtcclxuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuXHJcbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA0MjZweCkgYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi8qIGV2ZW50IGRldGFpbCBwYWdlICovXHJcbi5ldmVudHMtbWFzb25yeSAuZ3JpZF9faXRlbSAubWVkaWEtLWNhcHRpb24tY292ZXIge1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIHRyYW5zaXRpb246IGFsbCAycztcclxufVxyXG5cclxuLmV2ZW50cy1tYXNvbnJ5ID4gLmdyaWRfX2l0ZW0ge1xyXG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcclxuXHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNDI2cHgpIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xyXG4gICAgICAgIHdpZHRoOiA1MCUgIWltcG9ydGFudDtcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY5cHgpIHtcclxuICAgICAgICB3aWR0aDogMzMuMzMlICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5ldmVudHMtbWFzb25yeSAuZ3JpZF9faXRlbSBhIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICByaWdodDogMDtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIHotaW5kZXg6IDEwO1xyXG4gICAgdHJhbnNpdGlvbjogYWxsIDFzO1xyXG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcbn1cclxuXHJcbi5ldmVudHMtbWFzb25yeSAuZ3JpZF9faXRlbSBhOmhvdmVyIHtcclxuICAgIC8qdHJhbnNmb3JtOiBzY2FsZSgxMjAlKTsqL1xyXG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcbn1cclxuXHJcbi5ldmVudHMtbWFzb25yeSAuZ3JpZF9faXRlbSAubWVkaWFfX2NhcHRpb24ge1xyXG4gICAgdHJhbnNpdGlvbjogYWxsIDFzO1xyXG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcbn1cclxuXHJcbi5ldmVudHMtbWFzb25yeSAuZ3JpZF9faXRlbSAubWVkaWFfX2NhcHRpb246aG92ZXIge1xyXG4gICAgYmFja2dyb3VuZDogcmdiYSg5NCw5NCw5NCwuMjUpO1xyXG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcbn1cclxuXHJcbi5ldmVudHMtbWFzb25yeSA+IC5ncmlkX19pdGVtOm50aC1jaGlsZCg1biAtIDQpLCAuZXZlbnRzLW1hc29ucnkgPiAuZ3JpZF9faXRlbTpudGgtY2hpbGQoNW4gLSAzKSB7XHJcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG5cclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA0MjZweCkgYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcbiAgICAgICAgd2lkdGg6IDUwJSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjlweCkge1xyXG4gICAgICAgIHdpZHRoOiAzMy4zMyUgIWltcG9ydGFudDtcclxuICAgIH1cclxufVxyXG5cclxuI2pzLWNvdW50ZG93biB7XHJcbiAgICBiYWNrZ3JvdW5kOiAkYnJhbmQtcGluaztcclxuICAgIGNvbG9yOiAjZmZmZmZmO1xyXG4gICAgZm9udC1mYW1pbHk6IGJhcm1lbm8tbWVkaXVtLFRhaG9tYSxHZW5ldmEsc2Fucy1zZXJpZjtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIGxpbmUtaGVpZ2h0OiAyLjI7XHJcbiAgICBwYWRkaW5nOiAxNXB4IDE1cHggMjVweCAxNXB4O1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgIGZvbnQtc2l6ZTogMThweDtcclxuXHJcbiAgICAuYW5nbGUtdHh0IHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtcHVycGxlO1xyXG4gICAgICAgIGNvbG9yOiAkYnJhbmQtYmxhY2s7XHJcbiAgICAgICAgcGFkZGluZzogNHB4O1xyXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDNkZWcpO1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICBsaW5lLWhlaWdodDogMTJweDtcclxuICAgICAgICBtYXJnaW46IDBweCAycHg7XHJcbiAgICB9XHJcbn1cclxuLmV2ZW50LWNhdGVnb3J5LWNhcm91c2VsIC5zbGljay10cmFjayB7XHJcbiAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5ldmVudC1jYXRlZ29yeS1jYXJvdXNlbCAuc2xpY2stc2xpZGUge1xyXG4gICAgaGVpZ2h0OiBhdXRvO1xyXG59XHJcbi5icmFuY2gtc2VhcmNoLWNoZWNrYm94OmFmdGVyIHtcclxuICAgIG1hcmdpbi1sZWZ0Oi0xMHB4O1xyXG59XHJcbi5jYXJ0X2Rpc2NvdW50X2NvZGUge1xyXG4gICAgbWF4LXdpZHRoOiAzMDBweDtcclxuICAgIHBhZGRpbmc6IDAgMTJweDtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICBib3JkZXItcmFkaXVzOiA2cHg7XHJcbiAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFlNmZhICFpbXBvcnRhbnQ7XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgMjAwbXM7XHJcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZGFjMGQ4ICFpbXBvcnRhbnQ7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbn0iLCIuc3BlY2lhbC1hcHBlYWwge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XHJcblxyXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjlweCkge1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBzdGFydDtcclxuICAgIH1cclxuXHJcbiAgICAuc3BlY2lhbC1hcHBlYWwtdG90YWxpc2VyIHtcclxuICAgICAgICBtYXgtd2lkdGg6IDYwJTtcclxuXHJcbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjlweCkge1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDMzLjMzJTtcclxuICAgICAgICAgICAgYWxpZ24tc2VsZjogY2VudGVyO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmFwcGVhbHMtdG90YWxpc2VyIHtcclxuXHJcbiAgICAgICAgICAgIC5qcy1hcHBlYWxzLXRvdGFsLXBjbnQge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGxpZ2h0LXB1cnBsZTtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMDtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA5NiU7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogOTYlO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgMiUgMTZweDtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJGNhdHMtaGVhZGxpbmU7XHJcblxyXG4gICAgICAgICAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLC01MCUpO1xyXG4gICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDk5O1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogM2VtO1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAuNWVtIDAuMzVlbTtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkbGlnaHQtcHVycGxlO1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCUgIWltcG9ydGFudDtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjlweCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDRlbTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnJSc7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIC5qcy1hcHBlYWxzLXRvdGFsLXBjbnQtYmcge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRicmFuZC1waW5rO1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgICAgIHRvcDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICByaWdodDogMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIC5qcy1hcHBlYWxzLXRvdGFsLXBjbnQtYmctZG9uIHtcclxuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgICAgIHRvcDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICByaWdodDogMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuanMtYXBwZWFscy10b3RhbC1yYWlzZWQge1xyXG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG5cclxuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnXFwwMEEzJztcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDNlbTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjlweCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDRlbTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogM2VtO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OXB4KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogNGVtO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuZG9uYXRpb24tc3BsaXQge1xyXG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuXHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgICAgICAgIHdpZHRoOiAyNXB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDI1cHg7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRicmFuZC1waW5rO1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5kb25hdGlvbi1zcGxpdC1kb24ge1xyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogJGJyYW5kLXB1cnBsZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmxnLWFwcGVhbHMtdG90YWwge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcblxyXG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY5cHgpIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMHB4IDE1cHg7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XHJcblxyXG4gICAgICAgICAgICAuc3BlY2lhbC1hcHBlYWwtdG90YWxpc2VyIHtcclxuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuc3BlY2lhbC1hcHBlYWwtZm9ybSB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG5cclxuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OXB4KSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAzMy4zMyU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuYnV0dG9uIHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgICAgICAgICAgIC5idG4ge1xyXG5cclxuXHJcbiAgICAgICAgICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OXB4KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG5cclxuICAgICAgICAuYXBwZWFsLWZvcm0ge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkbGlnaHQtcHVycGxlO1xyXG4gICAgICAgICAgICBjb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuICAgICAgICAgICAgcGFkZGluZzogMTVweDtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogNDI1cHg7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvIDI0cHg7XHJcblxyXG4gICAgICAgICAgICAuYmFnLWNvbnRyb2wge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblxyXG4gICAgICAgICAgICAgICAgLmJ0bjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXBpbms7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmpzLW1pbnVucy1iYWcsIC5qcy1hZGQtYmFnIHtcclxuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyLjVyZW07XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDNyZW07XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5qcy1iYWdzIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogM3JlbTtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDBweCAxMHB4O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuY29kZS1jb250cm9sIHtcclxuICAgICAgICAgICAgICAgIGlucHV0IHtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDhweDtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDFyZW07XHJcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIGlucHV0OnZhbGlkIHtcclxuICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuY29kZS1zdWJtaXQge1xyXG4gICAgICAgICAgICAgICAgLmpzLXN1Ym1pdC1idG4tZmFrZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgJi5kaXNhYmxlZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuNTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5hcHBlYWwtZm9ybS10aGFua3Mge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAycmVtO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuYXBwZWFsLWZvcm0tLWdyZXkge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkbGlnaHQtcHVycGxlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuaGlkZS1mb3ItbGFyZ2Uge1xyXG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY5cHgpIHtcclxuICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBwIHtcclxuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxcHg7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDFweDtcclxuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiIsIiNkb25hdGVSZWd1bGFyLCAjZG9uYXRlT25lT2ZmIHtcclxuICAgIC8qYm9yZGVyOiAxcHggc29saWQgI2RhYzBkOCAhaW1wb3J0YW50OyovXHJcbiAgICBiYWNrZ3JvdW5kOiAkbGlnaHQtcHVycGxlO1xyXG5cclxuICAgIC5vdGhlckFtb3VudFZhbHVlOmZvY3VzIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XHJcbiAgICB9XHJcblxyXG4gICAgLm1lZGlhX19jYXB0aW9uIHtcclxuICAgICAgICBjb2xvcjogJGJyYW5kLWJsYWNrO1xyXG4gICAgfVxyXG5cclxuICAgIC5idG4ge1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICRicmFuZC1wdXJwbGU7XHJcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRicmFuZC1waW5rO1xyXG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4jZG9uYXRlT25lT2ZmQnV0dG9ucyB7XHJcbiAgICAuY2F0LW1hZ2F6aW5lIHtcclxuICAgICAgICAuZm9ybV9fY2hlY2tib3g6YWZ0ZXIge1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDotMTJweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0iLCIvKipcclxuICogTEFZT1VUXHJcbiAqIEJhc2VcclxuICogQmVnaW4gYWxsIGxheW91dCBzdHlsZXMgaGVyZSBpbml0aWFsbHkuXHJcbiAqL1xyXG5cclxuJGNvbnRhaW5lci1tYXA6IChcclxuICAgIHhzOiA2MzBweCxcclxuICAgIHNtOiAxMDAwcHgsXHJcbiAgICBtZDogMTEwMHB4LFxyXG4gICAgbGc6IDEyMDBweCxcclxuICAgIHhsOiAxNTAwcHhcclxuKTtcclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIEEgQkFTRSBDT05UQUlORVIgTUlYSU5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiVjb250YWluZXJ7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgIG1hcmdpbi1yaWdodDogYXV0bztcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xyXG4gICAgcGFkZGluZy1yaWdodDogMTVweDtcclxuXHJcbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKHNtYWxsLWFuZC11cCl7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAzdnc7XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogM3Z3O1xyXG4gICAgfVxyXG5cclxuICAgIC8vIFNldCB0aGUgZGVmYXVsdCBtYXggd2lkdGguXHJcbiAgICAmOm5vdChbY2xhc3MqPVwiY29udGFpbmVyLS1cIl0pe1xyXG4gICAgICAgICR3aWR0aC1tZWRpdW06IG1hcC1nZXQoJGNvbnRhaW5lci1tYXAsIGxnKTtcclxuICAgICAgICBtYXgtd2lkdGg6ICR3aWR0aC1tZWRpdW07XHJcbiAgICAgICAgLy93aWR0aDogOTAlO1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBtZWRpYS13aWR0aCgkd2lkdGgtbWVkaXVtICsgODBweCl7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLy8gQ3JlYXRlIGFsbCBvdGhlciB3aWR0aCBtb2RpZmllcnMuXHJcbiAgICBAZWFjaCAkbmFtZSwgJHZhbHVlIGluICRjb250YWluZXItbWFwe1xyXG4gICAgICAgICZbY2xhc3MqPVwiLS0jeyRuYW1lfVwiXXtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiAgJHZhbHVlO1xyXG5cclxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtd2lkdGgoJHZhbHVlICsgODBweCl7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBDT05UQUlORVJcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi5jb250YWluZXJ7IEBleHRlbmQgJWNvbnRhaW5lcjsgfVxyXG5cclxuLy8gQWRkZWQgdG8gYWNjb3VudCBmb3IgdHdpdHRlciBwb3N0cyBiZWluZyBhZGRlZCBpbiB0aGUgZ3JpZCBlZGl0b3JcclxuLmJvZHktY29weSAuY29udGFpbmVyOmFmdGVye1xyXG4gICAgY29udGVudDogXCJcIjtcclxuICAgIGRpc3BsYXk6IHRhYmxlO1xyXG4gICAgY2xlYXI6IGJvdGg7XHJcbn1cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIFdSQVBQRVJcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi53cmFwcGVye1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHotaW5kZXg6IDE7XHJcbiAgICBib3gtc2hhZG93OiAwIDAgMjBweCA1cHggcmdiYSgkYmxhY2ssIDAuMjUpO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XHJcbn1cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBISURFIENPTlRFTlRcclxuLy8tLS0tLS0tLS0tLS0tLS0tXHJcbi5pcy1oaWRkZW57XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG59XHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBDTEVBUkZJWFxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLmNsZWFyZml4e1xyXG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XHJcbn1cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIENPTExBUFNFIENPTlRFTlRcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS1cclxuLmlzLWNvbGxhcHNlZFtzdHlsZSo9XCJtYXgtaGVpZ2h0XCJde1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICB0cmFuc2l0aW9uOiBtYXgtaGVpZ2h0LCBvcGFjaXR5LCBwYWRkaW5nO1xyXG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XHJcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XHJcblxyXG4gICAgLy8gdXNlZCBpbiBjb25qdW5jdGlvbiB3aXRoIGFuIGlubGluZSBtYXgtaGVpZ2h0IHNldFxyXG4gICAgLy8gaW1wb3J0YW50IGlzIHVzZWQgZm9yIGl0J3Mgc3BlY2lmaWNpdHkgYWNjdXJhdGx5LlxyXG4gICAgJjpub3QoW2NsYXNzKj1cImlzLWFjdGl2ZVwiXSl7XHJcbiAgICAgICAgbWF4LWhlaWdodDogMCFpbXBvcnRhbnQ7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgfVxyXG5cclxuICAgICYuaXMtYWN0aXZle1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBESVNBQkxFIFNDUk9MTFxyXG4vLy0tLS0tLS0tLS0tLS0tLS1cclxuLy8gVXNlZCB0byBkaXNhYmxlIHBhZ2Ugc2Nyb2xsIHdpdGggYWN0aXZlIG1vZGFsc1xyXG4uZGlzYWJsZS1zY3JvbGx7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIFNQQUNJTkcgTUlYSU5cclxuLy8tLS0tLS0tLS0tLS0tLS0tXHJcbiRwcm9wZXJ0eS1tYXA6IChcclxuICAgIG1nOiBtYXJnaW4sXHJcbiAgICBwZDogcGFkZGluZ1xyXG4pO1xyXG5cclxuJGRpcmVjdGlvbi1tYXA6IChcclxuICAgIHRwOiAodG9wLCBudWxsKSxcclxuICAgIGJtOiAoYm90dG9tLCBudWxsKSxcclxuICAgIGxmOiAobGVmdCwgbnVsbCksXHJcbiAgICBydDogKHJpZ2h0LCBudWxsKSxcclxuICAgIHZ0OiAodG9wLCBib3R0b20pLFxyXG4gICAgaHo6IChsZWZ0LCByaWdodClcclxuKTtcclxuXHJcbiRzaXplLW1hcDogKFxyXG4gICAgeHM6IC41dncsXHJcbiAgICBzbTogMXZ3LFxyXG4gICAgbWQ6IDJ2dyxcclxuICAgIGxnOiAzdncsXHJcbiAgICB4bDogNC43OTE2OHZ3LFxyXG4gICAgeHhsOiAxMHZ3XHJcbik7XHJcblxyXG4kZGVmYXVsdDogMjBweDtcclxuJGNhcC13aWR0aDogMTQwMHB4O1xyXG4kc2l6ZS1jYXA6IDQ0cHg7XHJcblxyXG5AZWFjaCAkcHJvcGVydHktbmFtZSwgJHByb3BlcnR5LXZhbHVlIGluICRwcm9wZXJ0eS1tYXAge1xyXG4gICAgQGVhY2ggJHNpemUtbmFtZSwgJHNpemUtdmFsdWUgaW4gJHNpemUtbWFwIHtcclxuICAgICAgICAuI3skcHJvcGVydHktbmFtZX0tI3skc2l6ZS1uYW1lfSxcclxuICAgICAgICAlI3skcHJvcGVydHktbmFtZX0tI3skc2l6ZS1uYW1lfXtcclxuICAgICAgICAgICAgI3skcHJvcGVydHktdmFsdWV9OiAkZGVmYXVsdDtcclxuICAgICAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0tYW5kLXVwKXtcclxuICAgICAgICAgICAgICAgICN7JHByb3BlcnR5LXZhbHVlfTogJHNpemUtdmFsdWU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgQGVhY2ggJGRpcmVjdGlvbi1uYW1lLCAkZGlyZWN0aW9uLXZhbHVlIGluICRkaXJlY3Rpb24tbWFwIHtcclxuICAgICAgICAgICAgLiN7JHByb3BlcnR5LW5hbWV9LSN7JGRpcmVjdGlvbi1uYW1lfS0jeyRzaXplLW5hbWV9LFxyXG4gICAgICAgICAgICAlI3skcHJvcGVydHktbmFtZX0tI3skZGlyZWN0aW9uLW5hbWV9LSN7JHNpemUtbmFtZX17XHJcbiAgICAgICAgICAgICAgICAjeyRwcm9wZXJ0eS12YWx1ZX0tI3tudGgoJGRpcmVjdGlvbi12YWx1ZSwxKX06ICRkZWZhdWx0O1xyXG4gICAgICAgICAgICAgICAgQGlmIG50aCgkZGlyZWN0aW9uLXZhbHVlLDIpICE9IG51bGx7XHJcbiAgICAgICAgICAgICAgICAgICAgI3skcHJvcGVydHktdmFsdWV9LSN7bnRoKCRkaXJlY3Rpb24tdmFsdWUsMil9OiAkZGVmYXVsdDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8obWVkaXVtLWFuZC11cCl7XHJcbiAgICAgICAgICAgICAgICAgICAgI3skcHJvcGVydHktdmFsdWV9LSN7bnRoKCRkaXJlY3Rpb24tdmFsdWUsMSl9OiAkc2l6ZS12YWx1ZTtcclxuICAgICAgICAgICAgICAgICAgICBAaWYgbnRoKCRkaXJlY3Rpb24tdmFsdWUsMikgIT0gbnVsbHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgI3skcHJvcGVydHktdmFsdWV9LSN7bnRoKCRkaXJlY3Rpb24tdmFsdWUsMil9OiAkc2l6ZS12YWx1ZTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBAaWYgJHNpemUtbmFtZSA9PSAnbGcne1xyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLXdpZHRoKCRjYXAtd2lkdGgpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAjeyRwcm9wZXJ0eS12YWx1ZX0tI3tudGgoJGRpcmVjdGlvbi12YWx1ZSwxKX06ICRzaXplLWNhcDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgQGlmIG50aCgkZGlyZWN0aW9uLXZhbHVlLDIpICE9IG51bGx7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAjeyRwcm9wZXJ0eS12YWx1ZX0tI3tudGgoJGRpcmVjdGlvbi12YWx1ZSwyKX06ICRzaXplLWNhcDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLm5vLW1hcmdpbi1ib3R0b20sIC5uby1tZy1ibXsgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50OyB9XHJcbi5uby1tYXJnaW4tdG9wLCAubm8tbWctdHB7IG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDsgfVxyXG4ubm8tcGFkZGluZy1ib3R0b20sIC5uby1wZC1ibXsgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDsgfVxyXG4ubm8tcGFkZGluZy10b3AsIC5uby1wZC10cHsgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDsgfVxyXG5cclxuLy8gLy8tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIC8vIE1BUkdJTiBBTExcclxuLy8gLy8tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIC5tYXJnaW4sXHJcbi8vICVtYXJnaW57XHJcbi8vICAgICBAaW5jbHVkZSBzcGFjaW5nKGFsbCwgbWFyZ2luKTtcclxuLy8gfVxyXG4vLyAvLy0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyAvLyBNQVJHSU4gQUxMIFNNQUxMXHJcbi8vIC8vLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIC5tYXJnaW4tc21hbGwsXHJcbi8vICVtYXJnaW4tc21hbGx7XHJcbi8vICAgICAgQGluY2x1ZGUgc3BhY2luZyhhbGwsIG1hcmdpbiwgc21hbGwpO1xyXG4vLyB9XHJcbi8vIC8vLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyAvLyBNQVJHSU4gQk9UVE9NXHJcbi8vIC8vLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyAubWFyZ2luLWJvdHRvbSxcclxuLy8gJW1hcmdpbi1ib3R0b217XHJcbi8vICAgICBAaW5jbHVkZSBzcGFjaW5nKGJvdHRvbSwgbWFyZ2luKTtcclxuLy8gfVxyXG4vLyAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyAvLyBNQVJHSU4gQk9UVE9NIFNNQUxMXHJcbi8vIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIC5tYXJnaW4tYm90dG9tLXNtYWxsLFxyXG4vLyAlbWFyZ2luLWJvdHRvbS1zbWFsbHtcclxuLy8gICAgIEBpbmNsdWRlIHNwYWNpbmcoYm90dG9tLCBtYXJnaW4sIHNtYWxsKTtcclxuLy8gfVxyXG4vLyAvLy0tLS0tLS0tLS0tLS1cclxuLy8gLy8gTUFSR0lOIFRPUFxyXG4vLyAvLy0tLS0tLS0tLS0tLS1cclxuLy8gLm1hcmdpbi10b3AsXHJcbi8vICVtYXJnaW4tdG9we1xyXG4vLyAgICAgQGluY2x1ZGUgc3BhY2luZyh0b3AsIG1hcmdpbik7XHJcbi8vIH1cclxuLy8gLy8tLS0tLS0tLS0tLS0tLVxyXG4vLyAvLyBNQVJHSU4gVklSVFxyXG4vLyAvLy0tLS0tLS0tLS0tLS0tXHJcbi8vIC5tYXJnaW4tdmVydCxcclxuLy8gJW1hcmdpbi12ZXJ0e1xyXG4vLyAgICAgQGluY2x1ZGUgc3BhY2luZyh0b3AsIG1hcmdpbik7XHJcbi8vICAgICBAaW5jbHVkZSBzcGFjaW5nKGJvdHRvbSwgbWFyZ2luKTtcclxuLy8gfVxyXG4vLyAvLy0tLS0tLS0tLS0tLS0tXHJcbi8vIC8vIE1BUkdJTiBWSVJUXHJcbi8vIC8vLS0tLS0tLS0tLS0tLS1cclxuLy8gLm1hcmdpbi12ZXJ0LXNtYWxsLFxyXG4vLyAlbWFyZ2luLXZlcnQtc21hbGx7XHJcbi8vICAgICBAaW5jbHVkZSBzcGFjaW5nKHRvcCwgbWFyZ2luLCBzbWFsbCk7XHJcbi8vICAgICBAaW5jbHVkZSBzcGFjaW5nKGJvdHRvbSwgbWFyZ2luLCBzbWFsbCk7XHJcbi8vIH1cclxuXHJcbi8vIC8vLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyAvLyBQQURESU5HIEFMTFxyXG4vLyAvLy0tLS0tLS0tLS0tLS0tLS1cclxuLy8gLnBhZGRpbmcsXHJcbi8vICVwYWRkaW5ne1xyXG4vLyAgICAgQGluY2x1ZGUgc3BhY2luZyhhbGwsIHBhZGRpbmcpO1xyXG4vLyB9XHJcbi8vIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gLy8gUEFERElORyBBTEwgU01BTExcclxuLy8gLy8tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyAucGFkZGluZy1zbWFsbCxcclxuLy8gJXBhZGRpbmctc21hbGx7XHJcbi8vICAgICBAaW5jbHVkZSBzcGFjaW5nKGFsbCwgcGFkZGluZywgc21hbGwpO1xyXG4vLyB9XHJcbi8vIC8vLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gLy8gUEFERElORyBCT1RUT01cclxuLy8gLy8tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyAucGFkZGluZyxcclxuLy8gJXBhZGRpbmd7XHJcbi8vICAgICBAaW5jbHVkZSBzcGFjaW5nKGFsbCwgcGFkZGluZyk7XHJcbi8vIH1cclxuLy8gLy8tLS0tLS0tLS0tLS0tLVxyXG4vLyAvLyBQQURESU5HIFRPUFxyXG4vLyAvLy0tLS0tLS0tLS0tLS0tXHJcbi8vIC5wYWRkaW5nLXRvcCxcclxuLy8gJXBhZGRpbmctdG9we1xyXG4vLyAgICAgQGluY2x1ZGUgc3BhY2luZyh0b3AsIHBhZGRpbmcpO1xyXG4vLyB9XHJcblxyXG4vLyAvLy0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIC8vIFBBRERJTkcgQk9UVE9NXHJcbi8vIC8vLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gLnBhZGRpbmctYm90dG9tLFxyXG4vLyAlcGFkZGluZy1ib3R0b217XHJcbi8vICAgICBAaW5jbHVkZSBzcGFjaW5nKGJvdHRvbSwgcGFkZGluZyk7XHJcbi8vIH1cclxuXHJcbi8vIC8vLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gLy8gUEFERElORyBMRUZUXHJcbi8vIC8vLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gLnBhZGRpbmctbGVmdCxcclxuLy8gJXBhZGRpbmctbGVmdHtcclxuLy8gICAgIEBpbmNsdWRlIHNwYWNpbmcobGVmdCwgcGFkZGluZyk7XHJcbi8vIH1cclxuXHJcbi8vIC8vLS0tLS0tLS0tLS0tLS0tXHJcbi8vIC8vIFBBRERJTkcgVklSVFxyXG4vLyAvLy0tLS0tLS0tLS0tLS0tLVxyXG4vLyAucGFkZGluZy12ZXJ0LFxyXG4vLyAlcGFkZGluZy12ZXJ0e1xyXG4vLyAgICAgQGluY2x1ZGUgc3BhY2luZyh0b3AsIHBhZGRpbmcpO1xyXG4vLyAgICAgQGluY2x1ZGUgc3BhY2luZyhib3R0b20sIHBhZGRpbmcpO1xyXG4vLyB9XHJcbi8vIC8vLS0tLS0tLS0tLS0tLS0tXHJcbi8vIC8vIFBBRERJTkcgVklSVFxyXG4vLyAvLy0tLS0tLS0tLS0tLS0tLVxyXG4vLyAucGFkZGluZy12ZXJ0LXNtYWxsLFxyXG4vLyAlcGFkZGluZy12ZXJ0LXNtYWxse1xyXG4vLyAgICAgQGluY2x1ZGUgc3BhY2luZyh0b3AsIHBhZGRpbmcsIHNtYWxsKTtcclxuLy8gICAgIEBpbmNsdWRlIHNwYWNpbmcoYm90dG9tLCBwYWRkaW5nLCBzbWFsbCk7XHJcbi8vIH1cclxuXHJcbi50ZXh0LWNlbnRlciB7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICAgPiBoMSwgLmgxLWxpa2UsXHJcbiAgICA+IGgyLCAuaDItbGlrZSxcclxuICAgID4gaDMsIC5oMy1saWtlLFxyXG4gICAgPiBoNCwgLmg0LWxpa2UsXHJcbiAgICA+IGg1LCAuaDUtbGlrZSxcclxuICAgID4gaDYsIC5oNi1saWtlLFxyXG4gICAgPiBwIHtcclxuICAgICAgICBtYXgtd2lkdGg6IDExMDBweDtcclxuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgICB9XHJcbn1cclxuXHJcbi50ZXh0LXJpZ2h0e1xyXG4gICAgdGV4dC1hbGlnbjpyaWdodDtcclxufVxyXG5cclxuLy8gLmFydGljbGV7XHJcblxyXG4vLyB9XHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gSEVBRElOR1NcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi5ib2R5LWNvcHkge1xyXG4gICAgaDEsIC5oMS1saWtlLFxyXG4gICAgaDIsIC5oMi1saWtlLFxyXG4gICAgaDMsIC5oMy1saWtlLFxyXG4gICAgaDQsIC5oNC1saWtlLFxyXG4gICAgaDUsIC5oNS1saWtlLFxyXG4gICAgaDYsIC5oNi1saWtlLFxyXG4gICAgW2NsYXNzKj1cInN1YmhlYWRcIl0ge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8od2lkZS1hbmQtdXApIHtcclxuICAgICAgICAgICAgLy8gbWFyZ2luLWJvdHRvbTogMjVweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcCxcclxuICAgIHVsLFxyXG4gICAgb2wsXHJcbiAgICBibG9ja3F1b3RlLFxyXG4gICAgdGFibGUge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodDtcclxuICAgIH1cclxuXHJcbiAgICAubm8tbWFyZ2luLWJvdHRvbSB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgIH1cclxuXHJcbiAgICBwIHtcclxuICAgICAgICAvLyBtYXgtd2lkdGg6IDEwNTBweDtcclxuICAgIH1cclxuXHJcbiAgICAuaGFzLWNvdW50ZXIge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgfVxyXG59XHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gUkVBQ1QgTE9BREVSXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBpZiBpdGVtcyBhcmUgd2l0aGluIGEgcmVhY3QgY29tcG9uZW50IGFuaW1hdGUgdGhlbSBpblxyXG5baWQqPVwicmVhY3RcIl17XHJcbiAgICAuZ3JpZF9faXRlbSxcclxuICAgID4gLm1lZGlhe1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDUwcHgpO1xyXG4gICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDQwMG1zO1xyXG5cclxuICAgICAgICAmLmlzLWFjdGl2ZXtcclxuICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIExBWlkgTE9BREVSXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBJTUFHRVMgVEhBVCBHRVQgTE9BREVEIEJBU0VEIE9OIERBVEEtU1JDXHJcbi8vW2RhdGEtc3JjXXtcclxuLy8gICAgb3BhY2l0eTogMDtcclxuLy8gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcclxuLy8gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMTAwbXM7XHJcbi8vXHJcbi8vICAgICYuaXMtdmlzaWJsZXsgb3BhY2l0eTogMTsgfVxyXG4vL31cclxuXHJcblxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLVxyXG4vLyBDQVBUSU9OU1xyXG4vLy0tLS0tLS0tLS0tLS0tXHJcbltjbGFzcyo9XCJjYXB0aW9uXCJdICsgW2NsYXNzKj1cImNhcHRpb25cIl0sXHJcbltjbGFzcyo9XCJjYXB0aW9uXCJdICsgW2NsYXNzKj1cInN1YmhlYWRcIl0sXHJcbltjbGFzcyo9XCJzdWJoZWFkXCJdICsgW2NsYXNzKj1cImNhcHRpb25cIl0sXHJcbltjbGFzcyo9XCJzdWJoZWFkXCJdICsgW2NsYXNzKj1cInN1YmhlYWRcIl17XHJcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG59XHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tXHJcbi8vIExPQURFUlxyXG4vLy0tLS0tLS0tLS0tLS0tXHJcbi5jYy1sb2FkaW5ne1xyXG4gICAgd2lkdGg6IDEwMDBweDtcclxuICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgIHBhZGRpbmctdG9wOiA2NiU7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAtNjYlO1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9iYXNlNjQvU1ZHL3RhaWwtc3Bpbi5zdmcpO1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xyXG4gICAgYmFja2dyb3VuZC1zaXplOiAxMDBweDtcclxuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRibGFjaywgMC40KTtcclxufVxyXG5cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS1cclxuLy8gSEVJR0hUXHJcbi8vLS0tLS0tLS0tLS0tLS1cclxuLmhlaWdodHtcclxuICAgIGhlaWdodDogMTAwJTtcclxufVxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLVxyXG4vLyBDT0xVTU5cclxuLy8tLS0tLS0tLS0tLS0tLVxyXG4vLyBVc2VkIG9uIGhvbWVwYWdlIHNvY2lhbCBzbGlkZXJzXHJcbi5jb2x1bW57XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG59XHJcblxyXG5cclxuLmZsLXJ0e1xyXG4gICAgZmxvYXQ6cmlnaHQ7XHJcbn1cclxuXHJcbi5mbC1sdHtcclxuICAgIGZsb2F0OmxlZnQ7XHJcbn1cclxuXHJcbi5kLWlubGluZS1ibG9ja3tcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxufVxyXG5cclxuLmQtYmxvY2t7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxufVxyXG5cclxuLnctYXV0b3tcclxuICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcblxyXG5cclxuLmltYWdlcy1pbmxpbmV7XHJcbiAgICBpbWd7XHJcbiAgICAgICAgZGlzcGxheTppbmxpbmU7XHJcbiAgICB9XHJcbn1cclxuIiwiLyoqXHJcbiAqIExBWU9VVFxyXG4gKiBGb290ZXJcclxuICpcclxuICovXHJcbiRuYW1lOiBmb290ZXI7XHJcblxyXG4vLy0tLS0tLS1cclxuLy8gQkFTRVxyXG4vLy0tLS0tLS0tXHJcbi4jeyRuYW1lfSB7XHJcbiAgICBAZXh0ZW5kICVwZC10cC1sZztcclxuICAgIGNvbG9yOiB3aGl0ZTtcclxuICAgIGZvbnQtZmFtaWx5OiAkaGVhZGluZy1tZWQtZm9udDtcclxuXHJcbiAgICBoNiB7XHJcbiAgICAgICAgQGV4dGVuZCAldHMtNztcclxuICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgY29sb3I6ICRicmFuZC1waW5rO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkbGlnaHQtcHVycGxlO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcCB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgIH1cclxuXHJcbiAgICBhIHtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcclxuICAgICAgICBjb2xvcjogaW5oZXJpdDtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICB9XHJcbiAgICAvL2ZpeGVkIGZvb3RlciBzdHlsZXMuXHJcbiAgICAuc2l0ZS1mb290ZXJbc3R5bGUqPVwiaGVpZ2h0XCJdICYge1xyXG5cclxuICAgICAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bS1hbmQtdXApIHtcclxuICAgICAgICAgICAgLy9wb3NpdGlvbjogZml4ZWQ7XHJcbiAgICAgICAgICAgIC8vd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIC8vbGVmdDogMDtcclxuICAgICAgICAgICAgLy9yaWdodDogMDtcclxuICAgICAgICAgICAgLy9ib3R0b206IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLypAaW5jbHVkZSByZXNwb25kLXRvKGRlc2stYW5kLXVwKSB7Ki9cclxuICAgIGg2IHtcclxuICAgICAgICAvKm1hcmdpbi1ib3R0b206IDI1cHg7Ki9cclxuICAgICAgICBmb250LXNpemU6IDE3cHg7XHJcbiAgICB9XHJcbiAgICAvKn0qL1xyXG59XHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIEVMRU1FTlQgLSBERVRBSUxTXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLiN7JG5hbWV9X19kZXRhaWxzIHtcclxuICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8oZGVzay1hbmQtdXApIHtcclxuICAgICAgICBoNiB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5pY29uLWxpc3Qge1xyXG4gICAgICAgIGxpIHtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcblxyXG4gICAgICAgICAgICBhOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkYnJhbmQtcGluaztcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIEVMRU1FTlQgLSBGT1JNXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLiN7JG5hbWV9X19mb3JtIHtcclxuICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8od2lkZS1hbmQtdXApIHtcclxuICAgICAgICBwYWRkaW5nLXRvcDogMjBweDtcclxuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSh3aGl0ZSwgMC4zKTtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKGRlc2stYW5kLXVwKSB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XHJcbiAgICAgICAgYm9yZGVyLXRvcDogbm9uZTtcclxuICAgIH1cclxufVxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBFTEVNRU5UIC0gTElOS1NcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4uI3skbmFtZX1fX2xpbmtzIHtcclxuICAgIHVsIHtcclxuICAgICAgICB3aWR0aDogYXV0bztcclxuICAgIH1cclxuXHJcbiAgICBsaSB7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgYSB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcbiAgICAgICAgbWFyZ2luOiAwcHggMTBweDtcclxuICAgICAgICBwYWRkaW5nOiAwcHggNXB4O1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDtcclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkYnJhbmQtcGluaztcclxuICAgICAgICAgICAgYmFja2dyb3VuZDokbGlnaHQtcHVycGxlO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0tYW5kLWRvd24pIHtcclxuICAgICAgICBwYWRkaW5nLXRvcDogMjBweDtcclxuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSh3aGl0ZSwgMC4zKTtcclxuXHJcbiAgICAgICAgdWwge1xyXG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcclxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEod2hpdGUsIDAuMjUpO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bS1hbmQtdXApIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHJcbiAgICAgICAgdWwge1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gRUxFTUVOVCAtIENSRURJVFNcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4uI3skbmFtZX1fX2NyZWRpdHMge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSh3aGl0ZSwgMC4yNSk7XHJcbiAgICBwYWRkaW5nLXRvcDogMjBweDtcclxuXHJcbiAgICBwIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0tYW5kLXVwKSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgcGFkZGluZzogNXB4O1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMHB4IDEwcHg7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHJcbiAgICAgICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzc1cHgpIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiA1MCU7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8obWVkaXVtLWFuZC11cCkge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICRicmFuZC1waW5rO1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGxpZ2h0LXB1cnBsZTtcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC8qYSArIGE6YmVmb3JlIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0tYW5kLXVwKSB7XHJcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnICc7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMTNweCAwIDExcHg7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuXHJcbiAgICAgICAgYTpob3ZlcjpiZWZvcmUge1xyXG4gICAgICAgICAgICBjb2xvcjogd2hpdGU7XHJcbiAgICAgICAgfSovXHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0tYW5kLXVwKSB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcclxuXHJcbiAgICAgICAgcCB7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiAgICAvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgIC8vIEVMRU1FTlQgLSBDSEFSSVRZIEJBUlxyXG4gICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4gICAgLmZvb3Rlci1jaGFyaXR5LWJhciB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG4gICAgfVxyXG5cclxuICAgIC5mb290ZXItY2hhcml0eS1iYXJfX2NwLWxvZ28ge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgLmZvb3Rlci1jaGFyaXR5LWJhciBwIHtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICBmb250LXNpemU6IDE1cHg7XHJcblxyXG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyM3B4KSB7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogNzU1cHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5mb290ZXItY2hhcml0eS1iYXJfX2ZyLWxvZ28ge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAxZW07XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MjZweCkge1xyXG4gICAgICAgIC5mb290ZXItY2hhcml0eS1iYXJfX2ZyLWxvZ28ge1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMWVtO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmZvb3Rlci1jaGFyaXR5LWJhcl9fZnItbG9nbyBhIHtcclxuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMWVtO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjNweCkge1xyXG4gICAgICAgIC5mb290ZXItY2hhcml0eS1iYXIge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZm9vdGVyLWNoYXJpdHktYmFyX19jcC1sb2dvIHtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZm9vdGVyLWNoYXJpdHktYmFyIGRpdiB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDFlbSAwZW07XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZm9vdGVyLWNoYXJpdHktYmFyX19oaWRlLWZvci1sYXJnZSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZm9vdGVyLWNoYXJpdHktYmFyX19mci1sb2dvIHtcclxuICAgICAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4uaWNvbi1saXN0X19waW4gYSwgLmljb24tbGlzdF9fcGhvbmUgYSB7XHJcbiAgICBwYWRkaW5nOiAwcHggNXB4O1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBib3JkZXItcmFkaXVzOiA2cHg7XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgY29sb3I6ICRicmFuZC1waW5rO1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICRsaWdodC1wdXJwbGU7XHJcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcbiAgICB9XHJcbn1cclxuLmZvb3Rlcl9fZm9ybSBoNiB7XHJcbiAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICBjb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgICAgIGNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcclxuICAgIH1cclxufSIsIi8qKlxyXG4gKiBMQVlPVVRcclxuICogR3JpZHNcclxuICogU29tZSBsaWdodCBHcmlkc1xyXG4gKi9cclxuXHJcbi8vIEBpbXBvcnQgJ2dyaWRzL2Jhc2UnO1xyXG4vLy8vIEBpbXBvcnQgJ2dyaWRzLzEtMSc7XHJcbi8vLy8gQGltcG9ydCAnZ3JpZHMvMi0xJztcclxuLy8vLyBAaW1wb3J0ICdncmlkcy8xLTEtMSc7XHJcbi8vLy8gQGltcG9ydCAnZ3JpZHMvMS0xLTEtMSc7XHJcbi8vLy8gQGltcG9ydCAnZ3JpZHMvMS0xLTEtMS0xJztcclxuLy8vLyBAaW1wb3J0ICdncmlkcy80LTEtMS0xLTEnO1xyXG4vLy8vIEBpbXBvcnQgJ2dyaWRzL3NvY2lhbCc7XHJcbi8vLy8gQGltcG9ydCAnZ3JpZHMvbWFzb25yeSc7XHJcbi8vLy8gQGltcG9ydCAnZ3JpZHMvZ2Fwcyc7XHJcblxyXG4vKipcclxuICogTEFZT1VUXHJcbiAqIEdSSURTIC0gRkxFWFxyXG4gKiBBIHNlbGVjdGlvbiBvZiBHcmlkIHNldHRpbmdzLiBUaGVzZSBjYW4gYmUgYXBwbGllZCBhcyBzZWxlY3RvcnMgaW4gdGhlIG1hcmt1cCBvclxyXG4gKiBvciBhcyBoaWRkZW4gY2xhc3NlcyBleHRlbmRlZCBpbnRvIGEgY29tcG9uZW50LlxyXG4gKi9cclxuXHJcbiRuYW1lOiBncmlkO1xyXG5cclxuLy8tLS0tLS0tLS0tLVxyXG4vLyBCTE9DS1xyXG4vLy0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfSB7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBtaW4td2lkdGg6IDEwMCU7XHJcbiAgZmxleC13cmFwOiB3cmFwO1xyXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG59XHJcblxyXG4vLy0tLS0tLS0tLS0tXHJcbi8vIEVMRU1FTlRcclxuLy8tLS0tLS0tLS0tLVxyXG4uI3skbmFtZX1fX2l0ZW0ge1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbn1cclxuXHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tXHJcbi8vIENFTlRFUlxyXG4vLy0tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfS0tY2VudGVyIHtcclxuICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG59XHJcblxyXG4uZ3JpZC0tY29udGVudC1jZW50ZXIge1xyXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG59XHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tXHJcbi8vIFJJR0hUXHJcbi8vLS0tLS0tLS0tLS0tLS1cclxuLiN7JG5hbWV9LS1yaWdodCB7XHJcbiAganVzdGlmeS1jb250ZW50OiBlbmQ7XHJcbn1cclxuXHJcbi4jeyRuYW1lfS0tbGVmdCB7XHJcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG59XHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tXHJcbi8vIFJFVkVSU0VcclxuLy8gVGhpcyByZXZlcnNlcyB0aGUgb3JkZXIgYWZ0ZXIgbW9iaWxlLlxyXG4vLy0tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfS0tcmV2IHtcclxuICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bS1hbmQtdXApIHtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcclxuICB9XHJcbn1cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS1cclxuLy8gU1BBQ0UgQkVUV0VFTlxyXG4vLy0tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfS0tc3BhY2UtYmV0d2VlbiB7XHJcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gIGZsZXgtd3JhcDogbm93cmFwO1xyXG59XHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLVxyXG4vLyBHQVBTIC0gU0VUVElOR1NcclxuLy8tLS0tLS0tLS0tLS0tLS1cclxuJGdyaWQtZ2FwLWludGVydmFsczogMSwgMiwgMywgNCwgNSwgNiwgNywgOCwgOSwgMTA7XHJcbiRncmlkLWdhcC11bml0OiAwLjU7XHJcblxyXG4vLy0tLS0tLS0tLS0tXHJcbi8vIEdBUFNcclxuLy8tLS0tLS0tLS0tLVxyXG5AbWl4aW4gZ3JpZC1nYXBzKCRzaXplKSB7XHJcbiAgLiN7JG5hbWV9LS1nYXAtI3skc2l6ZX0ge1xyXG4gICAgbWFyZ2luLWxlZnQ6IC0gMTVweDtcclxuICAgIC8vbWFyZ2luLWJvdHRvbTogLSAxNXB4O1xyXG5cclxuICAgIC4jeyRuYW1lfV9faXRlbSB7XHJcbiAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcclxuICAgIH1cclxuXHJcbiAgICAvL0hlbHBlciBEb3RzXHJcbiAgICAuc2xpY2stZG90cyB7XHJcbiAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bS1hbmQtdXApIHtcclxuICAgICAgbWFyZ2luLWxlZnQ6IC0gJHNpemUgKiAkZ3JpZC1nYXAtdW5pdCArIHZ3O1xyXG4gICAgICAvLyBtYXJnaW4tYm90dG9tOiAtICRzaXplICogJGdyaWQtZ2FwLXVuaXQgKyB2dztcclxuXHJcbiAgICAgIC4jeyRuYW1lfV9faXRlbSB7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAkc2l6ZSAqICRncmlkLWdhcC11bml0ICsgdnc7XHJcbiAgICAgICAgLy9tYXJnaW4tYm90dG9tOiAkc2l6ZSAqICRncmlkLWdhcC11bml0ICsgdnc7XHJcbiAgICAgIH1cclxuICAgICAgLy9IZWxwZXIgRG90c1xyXG4gICAgICAuc2xpY2stZG90cyB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDo3cHg7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAkc2l6ZSAqICRncmlkLWdhcC11bml0ICsgdnc7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tXHJcbi8vIEdBUFMgLSBCVUlMRFxyXG4vLy0tLS0tLS0tLS0tLS0tLVxyXG5AZWFjaCAkZ2FwIGluICRncmlkLWdhcC1pbnRlcnZhbHMge1xyXG4gIEBpbmNsdWRlIGdyaWQtZ2FwcygkZ2FwKTtcclxufVxyXG5cclxuJHNpemUtbWFwOiAoXHJcbiAgICAgICAgc21hbGw6IHNtLFxyXG4gICAgICAgIG1lZGl1bTogbWQsXHJcbiAgICAgICAgd2lkZTogbGcsXHJcbiAgICAgICAgZGVzazogeGxcclxuKTtcclxuXHJcbiRjb2x1bW4tbWFwOiAoXHJcbiAgICAgICAgMjogMixcclxuICAgICAgICAzOiAzLFxyXG4gICAgICAgIDQ6IDQsXHJcbiAgICAgICAgNTogNVxyXG4pO1xyXG5cclxuJGNvbHVtbi1vZmZzZXQtbWFwOiAoXHJcbiAgICAgICAgMSBfMjogKDEsIDIpLFxyXG4gICAgICAgIDEgXzM6ICgxLCAzKSxcclxuICAgICAgICAyIF8zOiAoMiwgMyksXHJcbiAgICAgICAgMiBfNTogKDIsIDUpLFxyXG4gICAgICAgIDIgXzE6ICgyLCAxKSxcclxuICAgICAgICAzIF8xOiAoMywgMSksXHJcbiAgICAgICAgMyBfMjogKDMsIDIpLFxyXG4gICAgICAgIDQgXzI6ICg0LCAyKSxcclxuICAgICAgICA1IF80OiAoNSwgNClcclxuKTtcclxuXHJcbiRjb2x1bW4tb2Zmc2V0LW1hcC0zOiAoXHJcbiAgICAgICAgMSBfNF8yOiAoMSwgNCwgMiksXHJcbiAgICAgICAgMiBfNF8yOiAoMiwgNCwgMilcclxuKTtcclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIFJFU1BPTlNJVkUgQ09MVU1OU1xyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5AZWFjaCAkY29sdW1uLW5hbWUsICRjb2x1bW4tdmFsdWUgaW4gJGNvbHVtbi1tYXAge1xyXG4gIC4jeyRuYW1lfS0tI3skY29sdW1uLXZhbHVlfSB7XHJcbiAgICA+IC4jeyRuYW1lfV9faXRlbSB7XHJcbiAgICAgIHdpZHRoOiAxMDAlIC8gJGNvbHVtbi12YWx1ZTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBlYWNoICRzaXplLW5hbWUsICRzaXplLXZhbHVlIGluICRzaXplLW1hcCB7XHJcbiAgQGluY2x1ZGUgcmVzcG9uZC10bygjeyRzaXplLW5hbWV9LWFuZC11cCkge1xyXG4gICAgQGVhY2ggJGNvbHVtbi1uYW1lLCAkY29sdW1uLXZhbHVlIGluICRjb2x1bW4tbWFwIHtcclxuICAgICAgLiN7JG5hbWV9LS0jeyRjb2x1bW4tdmFsdWV9LSN7JHNpemUtdmFsdWV9IHtcclxuICAgICAgICA+IC4jeyRuYW1lfV9faXRlbSB7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJSAvICRjb2x1bW4tdmFsdWU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AZWFjaCAkY29sdW1uLW5hbWUsICRjb2x1bW4tdmFsdWUgaW4gJGNvbHVtbi1vZmZzZXQtbWFwIHtcclxuICAkdG90YWw6IG50aCgkY29sdW1uLXZhbHVlLDEpICsgbnRoKCRjb2x1bW4tdmFsdWUsMik7XHJcbiAgLiN7JG5hbWV9LS0je250aCgkY29sdW1uLXZhbHVlLDEpfV8je250aCgkY29sdW1uLXZhbHVlLDIpfSB7XHJcbiAgICA+IC4jeyRuYW1lfV9faXRlbTpudGgtY2hpbGQoMSkge1xyXG4gICAgICB3aWR0aDogKCgxMDAlIC8gJHRvdGFsKSAqIG50aCgkY29sdW1uLXZhbHVlLDEpKTtcclxuICAgIH1cclxuXHJcbiAgICA+IC4jeyRuYW1lfV9faXRlbTpudGgtY2hpbGQoMikge1xyXG4gICAgICB3aWR0aDogKCgxMDAlIC8gJHRvdGFsKSAqIG50aCgkY29sdW1uLXZhbHVlLDIpKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBlYWNoICRzaXplLW5hbWUsICRzaXplLXZhbHVlIGluICRzaXplLW1hcCB7XHJcbiAgQGluY2x1ZGUgcmVzcG9uZC10bygjeyRzaXplLW5hbWV9LWFuZC11cCkge1xyXG4gICAgQGVhY2ggJGNvbHVtbi1uYW1lLCAkY29sdW1uLXZhbHVlIGluICRjb2x1bW4tb2Zmc2V0LW1hcCB7XHJcbiAgICAgICR0b3RhbDogbnRoKCRjb2x1bW4tdmFsdWUsMSkgKyBudGgoJGNvbHVtbi12YWx1ZSwyKTtcclxuICAgICAgLiN7JG5hbWV9LS0je250aCgkY29sdW1uLXZhbHVlLDEpfV8je250aCgkY29sdW1uLXZhbHVlLDIpfS0jeyRzaXplLXZhbHVlfSB7XHJcbiAgICAgICAgPiAuI3skbmFtZX1fX2l0ZW06bnRoLWNoaWxkKDEpIHtcclxuICAgICAgICAgIHdpZHRoOiAoKDEwMCUgLyAkdG90YWwpICogbnRoKCRjb2x1bW4tdmFsdWUsMSkpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgPiAuI3skbmFtZX1fX2l0ZW06bnRoLWNoaWxkKDIpIHtcclxuICAgICAgICAgIHdpZHRoOiAoKDEwMCUgLyAkdG90YWwpICogbnRoKCRjb2x1bW4tdmFsdWUsMikpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQGVhY2ggJGNvbHVtbi1uYW1lLCAkY29sdW1uLXZhbHVlIGluICRjb2x1bW4tb2Zmc2V0LW1hcC0zIHtcclxuICAkdG90YWw6IG50aCgkY29sdW1uLXZhbHVlLDEpICsgbnRoKCRjb2x1bW4tdmFsdWUsMikgKyBudGgoJGNvbHVtbi12YWx1ZSwzKTtcclxuICAuI3skbmFtZX0tLSN7bnRoKCRjb2x1bW4tdmFsdWUsMSl9XyN7bnRoKCRjb2x1bW4tdmFsdWUsMil9XyN7bnRoKCRjb2x1bW4tdmFsdWUsMyl9IHtcclxuICAgID4gLiN7JG5hbWV9X19pdGVtOm50aC1jaGlsZCgxKSB7XHJcbiAgICAgIHdpZHRoOiAoKDEwMCUgLyAkdG90YWwpICogbnRoKCRjb2x1bW4tdmFsdWUsMSkpO1xyXG4gICAgfVxyXG5cclxuICAgID4gLiN7JG5hbWV9X19pdGVtOm50aC1jaGlsZCgyKSB7XHJcbiAgICAgIHdpZHRoOiAoKDEwMCUgLyAkdG90YWwpICogbnRoKCRjb2x1bW4tdmFsdWUsMikpO1xyXG4gICAgfVxyXG5cclxuICAgID4gLiN7JG5hbWV9X19pdGVtOm50aC1jaGlsZCgzKSB7XHJcbiAgICAgIHdpZHRoOiAoKDEwMCUgLyAkdG90YWwpICogbnRoKCRjb2x1bW4tdmFsdWUsMykpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQGVhY2ggJHNpemUtbmFtZSwgJHNpemUtdmFsdWUgaW4gJHNpemUtbWFwIHtcclxuICBAaW5jbHVkZSByZXNwb25kLXRvKCN7JHNpemUtbmFtZX0tYW5kLXVwKSB7XHJcbiAgICBAZWFjaCAkY29sdW1uLW5hbWUsICRjb2x1bW4tdmFsdWUgaW4gJGNvbHVtbi1vZmZzZXQtbWFwLTMge1xyXG4gICAgICAkdG90YWw6IG50aCgkY29sdW1uLXZhbHVlLDEpICsgbnRoKCRjb2x1bW4tdmFsdWUsMikgKyBudGgoJGNvbHVtbi12YWx1ZSwzKTtcclxuICAgICAgLiN7JG5hbWV9LS0je250aCgkY29sdW1uLXZhbHVlLDEpfV8je250aCgkY29sdW1uLXZhbHVlLDIpfV8je250aCgkY29sdW1uLXZhbHVlLDMpfS0jeyRzaXplLXZhbHVlfSB7XHJcbiAgICAgICAgPiAuI3skbmFtZX1fX2l0ZW06bnRoLWNoaWxkKDEpIHtcclxuICAgICAgICAgIHdpZHRoOiAoKDEwMCUgLyAkdG90YWwpICogbnRoKCRjb2x1bW4tdmFsdWUsMSkpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgPiAuI3skbmFtZX1fX2l0ZW06bnRoLWNoaWxkKDIpIHtcclxuICAgICAgICAgIHdpZHRoOiAoKDEwMCUgLyAkdG90YWwpICogbnRoKCRjb2x1bW4tdmFsdWUsMikpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgPiAuI3skbmFtZX1fX2l0ZW06bnRoLWNoaWxkKDMpIHtcclxuICAgICAgICAgIHdpZHRoOiAoKDEwMCUgLyAkdG90YWwpICogbnRoKCRjb2x1bW4tdmFsdWUsMykpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuXHJcbi4jeyRuYW1lfV9faXRlbS0tcHVsbC1oZWlnaHQge1xyXG4gIEBpbmNsdWRlIHJlc3BvbmQtdG8od2lkZS1hbmQtdXApIHtcclxuICAgIG1hcmdpbi10b3A6IC01MCU7XHJcbiAgICAvLyBCZWxvdyBtYXRjaGVzIHRoZSBwYWRkaW5nIHRvcCBvZiB0aGUgbWVkaWEgdmlkZW8gY29udGVudC5cclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg3MSUpO1xyXG4gIH1cclxufVxyXG5cclxuLm1pbi1oZWlnaHQtMzgwIHtcclxuICBtaW4taGVpZ2h0OiAzODBweDtcclxufVxyXG5cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gR1JJRCBNQVNPTlJZXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4vLyBUaGlzIGVjY2VudHJpYyBncmlkIGxheW91dCB3b3JrcyBkaXJlY3RseSBvbiB0aGUgbWVkaWFcclxuLy8gY29tcG9uZW50cyB3aXRoaW4gdGhlbSwgYWRqdXN0aW5nIHRoZSBhc3BlY3QgcmF0aW9zIG9mXHJcbi8vIHRoZSBpbWFnZXMuIFRoaXMgZW5hYmxlcyBjbGVhbiBtYXJrdXAuIEl0IGluc2lzdHMgb25cclxuLy8gY3JvcHBpbmcgY29udHJvbCB3aGljaCBzaG91bGQgYmUgcmFpc2VkIHdpdGggdGhlIGNsaWVudC5cclxuLy8gVGhlIGRlZmF1bHQgY3JvcCBpcyA0OjQsIHRoaXMgd2lsbCBiZSBwcmVzZW50ZWQgaW4gdGhlXHJcbi8vIGZyb250IGVuZCBhcyBlaXRoZXIgNDozLiA1OjMgb3IgMToxXHJcblxyXG4kZWNjZW50cmljLWd1dHRlcnM6IDE3cHg7XHJcblxyXG5cclxuLmdyaWQtLW1hc29ucnkge1xyXG4gIG1hcmdpbi1sZWZ0OiAtJGVjY2VudHJpYy1ndXR0ZXJzO1xyXG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcclxuICB9XHJcblxyXG4gID4gLmdyaWRfX2l0ZW0ge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgYm9yZGVyLWxlZnQ6ICRlY2NlbnRyaWMtZ3V0dGVycyBzb2xpZCB3aGl0ZTtcclxuICAgIGJvcmRlci1ib3R0b206ICRlY2NlbnRyaWMtZ3V0dGVycyBzb2xpZCB3aGl0ZTtcclxuXHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgQGluY2x1ZGUgYXNwZWN0LXJhdGlvKDQsIDMpO1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xyXG4gICAgICB3aWR0aDogNTAlO1xyXG4gICAgICAmOm50aC1jaGlsZCgxKSB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIEBpbmNsdWRlIGFzcGVjdC1yYXRpbygyLCAxKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcclxuICAgICAgd2lkdGg6IDMzLjMzJTtcclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIEBpbmNsdWRlIGFzcGVjdC1yYXRpbygxLCAxKTtcclxuICAgICAgfVxyXG4gICAgICAmOm50aC1jaGlsZCg1biAtIDQpIHtcclxuICAgICAgICB3aWR0aDogNjYuNjYlO1xyXG5cclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICBAaW5jbHVkZSBhc3BlY3QtcmF0aW8oMiwgMSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDE1MDBweCkge1xyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgYXNwZWN0LXJhdGlvKDQsIDMpO1xyXG4gICAgICB9XHJcbiAgICAgICY6bnRoLWNoaWxkKDVuIC0gNCkge1xyXG4gICAgICAgIHdpZHRoOiA1MCU7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6bnRoLWNoaWxkKDVuIC0gMykge1xyXG4gICAgICAgIHdpZHRoOiA1MCU7XHJcblxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIEBpbmNsdWRlIGFzcGVjdC1yYXRpbygyLCAxKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8vIE9MRCBLZXB0IGZvciByZWZlcmVuY2VcclxuLiN7JG5hbWV9LS1tYXNvbnJ5MjIyIHtcclxuICBkaXNwbGF5OiBncmlkO1xyXG4gIGp1c3RpZnktY29udGVudDogaW5oZXJpdDtcclxuICBtYXJnaW4tbGVmdDogLSRlY2NlbnRyaWMtZ3V0dGVycztcclxuICBhbGlnbi1pdGVtczogc3RhcnQ7XHJcblxyXG4gID4gLiN7JG5hbWV9X19pdGVtIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGJvcmRlci1sZWZ0OiAkZWNjZW50cmljLWd1dHRlcnMgc29saWQgd2hpdGU7XHJcbiAgICBib3JkZXItYm90dG9tOiAkZWNjZW50cmljLWd1dHRlcnMgc29saWQgd2hpdGU7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtZ3JleTtcclxuXHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgQGluY2x1ZGUgYXNwZWN0LXJhdGlvKDQsIDMpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEtd2lkdGgoNTAwcHgpIHtcclxuICAgID4gLiN7JG5hbWV9X19pdGVtOmJlZm9yZSB7XHJcbiAgICAgIEBpbmNsdWRlIGFzcGVjdC1yYXRpbygyLCAxKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIHJlc3BvbmQtdG8obWVkaXVtLWFuZC11cCkge1xyXG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBhdXRvIGF1dG87XHJcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG8gYXV0bztcclxuXHJcbiAgICA+IC4jeyRuYW1lfV9faXRlbSB7XHJcblxyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgYXNwZWN0LXJhdGlvKDUsIDYpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmOm50aC1jaGlsZCgxKSB7XHJcbiAgICAgICAgZ3JpZC1jb2x1bW4tc3RhcnQ6IDE7XHJcbiAgICAgICAgZ3JpZC1jb2x1bW4tZW5kOiAzO1xyXG5cclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICBAaW5jbHVkZSBhc3BlY3QtcmF0aW8oMiwgMSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIHJlc3BvbmQtdG8od2lkZS1hbmQtdXApIHtcclxuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogYXV0byBhdXRvIGF1dG87XHJcblxyXG4gICAgPiAuI3skbmFtZX1fX2l0ZW0ge1xyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgYXNwZWN0LXJhdGlvKDEsIDEpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmOm50aC1jaGlsZCg1biAtIDQpIHtcclxuICAgICAgICBncmlkLWNvbHVtbi1zdGFydDogMTtcclxuICAgICAgICBncmlkLWNvbHVtbi1lbmQ6IHNwYW4gMjtcclxuXHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgQGluY2x1ZGUgYXNwZWN0LXJhdGlvKDIsIDEpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgcmVzcG9uZC10byhkZXNrLWFuZC11cCkge1xyXG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAzMy4zMyUgMTYuNjY1JSAxNi42NjUlIDMzLjMzJTtcclxuICAgIC8vZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAzMy4zMzMzMyUgNS4xNTU1NTUlIGF1dG8gNS4xNTU1NTUlIDMzLjMzMzMzJTtcclxuICAgIGdyaWQtdGVtcGxhdGUtcm93czogYXV0byBhdXRvO1xyXG5cclxuICAgID4gLiN7JG5hbWV9X19pdGVtIHtcclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIEBpbmNsdWRlIGFzcGVjdC1yYXRpbyg0LCAzKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgJjpudGgtY2hpbGQoNW4gLSAzKSB7XHJcbiAgICAgICAgZ3JpZC1jb2x1bW4tc3RhcnQ6IDM7XHJcbiAgICAgICAgZ3JpZC1jb2x1bW4tZW5kOiBzcGFuIDI7XHJcblxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIEBpbmNsdWRlIGFzcGVjdC1yYXRpbygyLCAxKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6bnRoLWNoaWxkKDVuIC0gMikge1xyXG4gICAgICAgIGdyaWQtY29sdW1uLXN0YXJ0OiAxO1xyXG4gICAgICAgIGdyaWQtY29sdW1uLWVuZDogc3BhbiAxO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmOm50aC1jaGlsZCg1biAtIDEpIHtcclxuICAgICAgICBncmlkLWNvbHVtbi1zdGFydDogMjtcclxuICAgICAgICBncmlkLWNvbHVtbi1lbmQ6IHNwYW4gMjtcclxuICAgICAgfVxyXG5cclxuICAgICAgLypcclxuICAgICAgICAgICY6bnRoLWNoaWxkKDEybiAtIDExKXtcclxuICAgICAgICAgICAgICBncmlkLWNvbHVtbi1zdGFydDogMTtcclxuICAgICAgICAgICAgICBncmlkLWNvbHVtbi1lbmQ6IDQ7XHJcbiAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogLTEwMCU7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgJjpudGgtY2hpbGQoMTJuIC0xMCksXHJcbiAgICAgICAgICAmOm50aC1jaGlsZCgxMm4gLTkpe1xyXG4gICAgICAgICAgICAgIGdyaWQtY29sdW1uLXN0YXJ0OiA0O1xyXG4gICAgICAgICAgICAgIGdyaWQtY29sdW1uLWVuZDogNjtcclxuICAgICAgICAgICAgICBAaW5jbHVkZSBhc3BlY3QtcmF0aW8oNSwzKTtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAmOm50aC1jaGlsZCgxMm4gLTgpLFxyXG4gICAgICAgICAgJjpudGgtY2hpbGQoMTJuIC0yKXtcclxuICAgICAgICAgICAgICBncmlkLWNvbHVtbi1zdGFydDogMTtcclxuICAgICAgICAgICAgICBncmlkLWNvbHVtbi1lbmQ6IDI7XHJcbiAgICAgICAgICAgICAgQGluY2x1ZGUgYXNwZWN0LXJhdGlvKDEsMSk7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgJjpudGgtY2hpbGQoMTJuIC03KSxcclxuICAgICAgICAgICY6bnRoLWNoaWxkKDEybiAtMSl7XHJcbiAgICAgICAgICAgICAgZ3JpZC1jb2x1bW4tc3RhcnQ6IDI7XHJcbiAgICAgICAgICAgICAgZ3JpZC1jb2x1bW4tZW5kOiA1O1xyXG4gICAgICAgICAgICAgIEBpbmNsdWRlIGFzcGVjdC1yYXRpbygxLDEpO1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICY6bnRoLWNoaWxkKDEybiAtNiksXHJcbiAgICAgICAgICAmOm50aC1jaGlsZCgxMm4pe1xyXG4gICAgICAgICAgICAgIGdyaWQtY29sdW1uLXN0YXJ0OiA1O1xyXG4gICAgICAgICAgICAgIGdyaWQtY29sdW1uLWVuZDogNjtcclxuICAgICAgICAgICAgICBAaW5jbHVkZSBhc3BlY3QtcmF0aW8oMSwxKTtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAmOm50aC1jaGlsZCgxMm4gLTUpLFxyXG4gICAgICAgICAgJjpudGgtY2hpbGQoMTJuIC00KXtcclxuICAgICAgICAgICAgICBncmlkLWNvbHVtbi1zdGFydDogMTtcclxuICAgICAgICAgICAgICBncmlkLWNvbHVtbi1lbmQ6IDM7XHJcbiAgICAgICAgICAgICAgQGluY2x1ZGUgYXNwZWN0LXJhdGlvKDUsMyk7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgJjpudGgtY2hpbGQoMTJuIC0zKXtcclxuICAgICAgICAgICAgICBncmlkLWNvbHVtbi1zdGFydDogMztcclxuICAgICAgICAgICAgICBncmlkLWNvbHVtbi1lbmQ6IDY7XHJcbiAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTM5LjYlXHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgJjpudGgtY2hpbGQoMTJuIC0gMTEpLFxyXG4gICAgICAgICAgJjpudGgtY2hpbGQoMTJuIC0gMyl7XHJcbiAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDc3LjIlO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAqL1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuXHJcbi5ncmlkLS1maW5kLWEtY2F0LWZvcm0ge1xyXG5cclxufVxyXG5cclxuXHJcbi5ncmlkLS1jaGVja2VycyB7XHJcbiAgICAuZ3JpZF9faXRlbTpudGgtY2hpbGQob2RkKSB7XHJcbiAgICAgICAgLmNhcmQge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtcHVycGxlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuZ3JpZF9faXRlbSB7XHJcbiAgICAgICAgLmNhcmQtZml4IHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LXB1cnBsZTtcclxuICAgICAgICAgICAgYm9yZGVyOiAwcHg7XHJcblxyXG4gICAgICAgICAgICAuYnRuOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1waW5rO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuXHJcbi5ncmlkLS1hZGQteW91ci1jYXQge1xyXG4gID4gLmdyaWRfX2l0ZW0ge1xyXG4gICAgJjpmaXJzdC1vZi10eXBlIHtcclxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgICAgIHdpZHRoOiAzNTBweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICY6bGFzdC1vZi10eXBlIHtcclxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xyXG4gICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICAgIGZsZXg6IDE7XHJcbiAgICAgICAgcGFkZGluZzogMCAwIDAgNTBweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIE1lbW9yeSB3YWxsXHJcblxyXG4uZ3JpZC0tbWVtb3J5LXdhbGwge1xyXG4gIG1pbi13aWR0aDogMDtcclxuICBtYXgtd2lkdGg6IDQwMHB4O1xyXG4gIG1hcmdpbjogMCBhdXRvO1xyXG5cclxuICBAaW5jbHVkZSByZXNwb25kLXRvKHdpZGUtYW5kLXVwKSB7XHJcbiAgICBtYXgtd2lkdGg6IG5vbmU7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgfVxyXG5cclxuICAuZ3JpZF9faXRlbSB7XHJcblxyXG4gICAgQGluY2x1ZGUgcmVzcG9uZC10byh3aWRlLWFuZC11cCkge1xyXG4gICAgICB3aWR0aDogMjUwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgJjpmaXJzdC1vZi10eXBlIHtcclxuICAgICAgbWFyZ2luOiAwIDAgMWVtO1xyXG4gICAgfVxyXG5cclxuICAgICY6bGFzdC1vZi10eXBlIHtcclxuXHJcbiAgICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8od2lkZS1hbmQtdXApIHtcclxuICAgICAgICB3aWR0aDogMzQwcHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcblxyXG4uZ3JpZC0tc3BvbnNvci1wb3J0YWwtYnRuLWdyb3VwIHtcclxuICBtYXgtd2lkdGg6IDQ2MHB4O1xyXG4gIG1pbi13aWR0aDogMDtcclxuICBtYXJnaW46IDAgYXV0bztcclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xyXG4gICAgbWFyZ2luOiAwIDAgMCAtMWVtO1xyXG4gICAgbWF4LXdpZHRoOiBub25lO1xyXG4gIH1cclxuXHJcbiAgLmdyaWRfX2l0ZW0ge1xyXG4gICAgbWFyZ2luOiAwIDAgMWVtO1xyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xyXG4gICAgICB3aWR0aDogMzMuMzMlO1xyXG4gICAgICBwYWRkaW5nOiAwIDAgMCAxZW07XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLmdyaWQtLWJlcmVhdmVtZW50LXN0b3JpZXMge1xyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICB9XHJcblxyXG4gIC5ncmlkX19pdGVtIHtcclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuICAgICAgd2lkdGg6IDUwJTtcclxuICAgIH1cclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcclxuICAgICAgd2lkdGg6IDM1MHB4O1xyXG4gICAgfVxyXG5cclxuICAgICY6Zmlyc3Qtb2YtdHlwZSB7XHJcbiAgICAgIG1hcmdpbjogMCAwIDIwcHg7XHJcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgd2lkdGg6IDMwJTtcclxuICAgICAgfVxyXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XHJcbiAgICAgICAgd2lkdGg6IDIwMHB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLmdyaWQtLW1lbWJlcnNoaXAge1xyXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgfVxyXG5cclxuICAuZ3JpZF9faXRlbSB7XHJcbiAgICAmOm50aC1vZi10eXBlKDEpIHtcclxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xyXG4gICAgICAgIHdpZHRoOiAzNTBweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICY6bnRoLW9mLXR5cGUoMikge1xyXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XHJcbiAgICAgICAgd2lkdGg6IDIyNnB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJjpudGgtb2YtdHlwZSgzKSB7XHJcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcclxuICAgICAgICB3aWR0aDogMTUwcHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLyoqXHJcbiAqIExBWU9VVFxyXG4gKiBGbGV4XHJcbiAqIFNvbWUgbGlnaHQgR3JpZHNcclxuICovXHJcblxyXG4gJG5hbWU6IGZsZXg7XHJcblxyXG4vLy0tLS0tLS0tXHJcbi8vIEJBU0VcclxuLy8tLS0tLS0tLVxyXG4uI3skbmFtZX17XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgLy8gbWluLXdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4vLy0tLS0tLS0tXHJcbi8vIFdSQVBcclxuLy8tLS0tLS0tLVxyXG4uI3skbmFtZX0tLXdyYXB7XHJcbiAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAvLyB3aWR0aDogMTAwJTtcclxufVxyXG5cclxuXHJcbi8vLS0tLS0tLS1cclxuLy8gQ09MVU1OXHJcbi8vLS0tLS0tLS1cclxuLiN7JG5hbWV9LS1jb2x1bW57XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uXHJcbn1cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIENPTFVNTiAtIFJFVkVSU0VcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS1cclxuLiN7JG5hbWV9LS1jb2x1bW4tcmV2ZXJzZXtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZVxyXG59XHJcblxyXG4vLy0tLS0tLS0tXHJcbi8vIFJPV1xyXG4vLy0tLS0tLS0tXHJcbi4jeyRuYW1lfS0tcm93e1xyXG4gICAgZmxleC1kaXJlY3Rpb246IHJvd1xyXG59XHJcblxyXG4vLy0tLS0tLS0tLS0tLS1cclxuLy8gUk9XIFJFVkVSU0VcclxuLy8tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfS0tcm93LXJldmVyc2V7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2VcclxufVxyXG5cclxuLy8tLS0tLS0tLS0tLS0tXHJcbi8vIENFTlRFUlxyXG4vLy0tLS0tLS0tLS0tLS1cclxuLiN7JG5hbWV9LS1jZW50ZXJ7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyXHJcbn1cclxuXHJcbi8vLS0tLS0tLS0tLS0tLVxyXG4vLyBKVVNUSUZZIENFTlRFUlxyXG4vLy0tLS0tLS0tLS0tLS1cclxuLiN7JG5hbWV9LS1zcGFjZS1iZXR3ZWVue1xyXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG59XHJcblxyXG4vLy0tLS0tLS0tLS0tLS1cclxuLy8gQ0VOVEVSXHJcbi8vLS0tLS0tLS0tLS0tLVxyXG4uI3skbmFtZX0tLWp1c3RpZnktY2VudGVye1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbn1cclxuXHJcblxyXG4vLy0tLS0tLS0tLS0tLS1cclxuLy8gVE9QXHJcbi8vLS0tLS0tLS0tLS0tLVxyXG4uI3skbmFtZX0tLXRvcHtcclxuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0XHJcbn1cclxuXHJcbi8vLS0tLS0tLS0tLS0tLVxyXG4vLyBCT1RUT01cclxuLy8tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfS0tYm90dG9te1xyXG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kXHJcbn1cclxuXHJcbi8vLS0tLS0tLS1cclxuLy8gR1JJRFxyXG4vLy0tLS0tLS0tXHJcbi4jeyRuYW1lfS0tZ3JpZHtcclxuXHJcbiAgICA+IC4jeyRuYW1lfV9faXRlbXtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxufVxyXG5cclxuLy8tLS0tLS0tLVxyXG4vLyBHUklEXHJcbi8vLS0tLS0tLS1cclxuLiN7JG5hbWV9LS1ncmlkLWF1dG97XHJcblxyXG4gICAgPiAuI3skbmFtZX1fX2l0ZW17XHJcbiAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vLS0tLS0tLS1cclxuLy8gR0FQXHJcbi8vLS0tLS0tLS1cclxuXHJcbi4jeyRuYW1lfS0tZ2FwLTd7XHJcblxyXG4gICAgbWFyZ2luLWxlZnQ6IC03cHg7XHJcblxyXG4gICAgPiAuI3skbmFtZX1fX2l0ZW17XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA3cHg7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogN3B4O1xyXG4gICAgfVxyXG5cclxuICAgIC4jeyRuYW1lfV9fcnVsZXtcclxuICAgICAgICBtYXJnaW4tbGVmdDogN3B4O1xyXG4gICAgfVxyXG59XHJcblxyXG4uI3skbmFtZX0tLWdhcC0zMHtcclxuXHJcbiAgICBtYXJnaW4tbGVmdDogLTMwcHg7XHJcblxyXG4gICAgPiAuI3skbmFtZX1fX2l0ZW17XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLiN7JG5hbWV9X19ydWxle1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAzMHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4uI3skbmFtZX0tLWdhcC02MHtcclxuXHJcbiAgICBtYXJnaW4tbGVmdDogLTYwcHg7XHJcblxyXG4gICAgPiAuI3skbmFtZX1fX2l0ZW17XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA2MHB4O1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLiN7JG5hbWV9X19ydWxle1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiA2MHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4kZ2FwczogNCwgNiwgODtcclxuJGludGVydmFsOiAwLjU7IC8vQ3JlYXRlcyBpbnRlcnZhbHMgYmFzZWQgb24gOHB4LiBUaGlzIGlzIHRha2VuIGFzIDElIG9mIDE2MDBweCB3aWR0aCBkZXNpZ25zLlxyXG5cclxuQG1peGluIGNyZWF0ZS1nYXBze1xyXG4gICAgQGVhY2ggJGdhcCBpbiAkZ2Fwc3tcclxuXHJcbiAgICAgICAgLiN7JG5hbWV9LS1nYXAtI3skZ2FwfXtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0kZ2FwICogJGludGVydmFsICsgdnc7XHJcblxyXG4gICAgICAgICAgICAuI3skbmFtZX1fX2l0ZW17XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6ICRnYXAgKiAkaW50ZXJ2YWwgKyB2dztcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRnYXAgKiAkaW50ZXJ2YWwgKyB2dztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuQGluY2x1ZGUgY3JlYXRlLWdhcHM7XHJcblxyXG4vLy0tLS0tLS0tLS1cclxuLy8gQ09MVU1OU1xyXG4vLy0tLS0tLS0tLS1cclxuLiN7JG5hbWV9LS0xLTF7XHJcbiAgICA+IC4jeyRuYW1lfV9faXRlbXtcclxuICAgICAgICB3aWR0aDogNTAlO1xyXG4gICAgfVxyXG59XHJcblxyXG4uI3skbmFtZX0tLTEtMS0xe1xyXG4gICAgPiAuI3skbmFtZX1fX2l0ZW17XHJcbiAgICAgICAgd2lkdGg6IDMzLjMzMzMzJTtcclxuICAgIH1cclxufVxyXG5cclxuLiN7JG5hbWV9LS0xLTEtMS0xe1xyXG4gICAgPiAuI3skbmFtZX1fX2l0ZW17XHJcbiAgICAgICAgd2lkdGg6IDI1JTtcclxuICAgIH1cclxufVxyXG5cclxuLiN7JG5hbWV9LS0xLTEtMS0xLTF7XHJcbiAgICA+IC4jeyRuYW1lfV9faXRlbXtcclxuICAgICAgICB3aWR0aDogMjAlO1xyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLy8tLS0tLS0tLVxyXG4vLyBSVUxFXHJcbi8vLS0tLS0tLS1cclxuLiN7JG5hbWV9X19ydWxle1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGxpZ2h0LWdyZXk7XHJcbiAgICBtYXJnaW46IDQwcHggMFxyXG59XHJcblxyXG4vLy0tLS0tLS0tXHJcbi8vIFJFTEFURURcclxuLy8tLS0tLS0tLVxyXG4uI3skbmFtZX0tLWNoZWNrZXJze1xyXG4gICAgLiN7JG5hbWV9X19pdGVtOm50aC1jaGlsZChvZGQpe1xyXG4gICAgICAgIC5jYXJke1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtZ3JleTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIiwiLyoqXHJcbiAqIExBWU9VVFxyXG4gKiBIZWFkZXIgR3JvdXBcclxuICogQSBncm91cCBvZiBlbGVtZW50cyBsb2NhdGVkIHdpdGhpbiB0aGUgc2l0ZSBoZWFkZXIuXHJcbiAqL1xyXG5cclxuJG5hbWU6IGhlYWRlci1ncm91cDtcclxuXHJcblxyXG4vLy0tLS0tLS0tXHJcbi8vIEJMT0NLXHJcbi8vLS0tLS0tLS1cclxuLiN7JG5hbWV9IHtcclxuICAgIC8vIEVORCBHUklEIC8vXHJcbiAgICBAZXh0ZW5kICVjb250YWluZXI7XHJcbiAgICBkaXNwbGF5OiBncmlkO1xyXG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiA2MHB4IDFmciBhdXRvO1xyXG4gICAgZ3JpZC10ZW1wbGF0ZS1hcmVhczogXCJsb2dvIHNvY2lhbCBoYW1idXJnZXJcIjtcclxuICAgIHBhZGRpbmctdG9wOiAxMHB4O1xyXG4gICAgcGFkZGluZy1ib3R0b206IDEwcHg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbmF2aWdhdGlvbi1icmVha3BvaW50KSB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgICAgICAgLy9HUklELy9cclxuICAgICAgICBkaXNwbGF5OiBncmlkO1xyXG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMTMycHggMWZyO1xyXG4gICAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogMWZyIDFmcjtcclxuICAgICAgICBncmlkLXRlbXBsYXRlLWFyZWFzOlxyXG4gICAgICAgICAgICBcImxvZ28gc29jaWFsXCIgXCJsb2dvIG5hdmlnYXRpb25cIjtcclxuICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcclxuICAgIH1cclxufVxyXG5cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gRUxFTUVOVCAtIExPR09cclxuLy8tLS0tLS0tLS0tLS0tLS0tLVxyXG4uI3skbmFtZX1fX2xvZ28ge1xyXG4gICAgdHJhbnNpdGlvbjogYWxsIDFzO1xyXG5cclxuICAgIGltZyB7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogd2lkdGggMC41cztcclxuICAgICAgICB3aWR0aDogNzUlO1xyXG4gICAgICAgIG1hcmdpbjogYXV0bztcclxuXHJcbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRuYXZpZ2F0aW9uLWJyZWFrcG9pbnQpIHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuICAgIH1cclxufVxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIEVMRU1FTlQgLSBUaVRMRVxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfV9fdGl0bGUge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICAgIEBleHRlbmQgJXRzLTM7XHJcblxyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRuYXZpZ2F0aW9uLWJyZWFrcG9pbnQpIHtcclxuICAgICAgICBjb2xvcjogd2hpdGU7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA2MHB4O1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICBncmlkLWFyZWE6IHRpdGxlO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIC1tcy1ncmlkLXJvdy1hbGlnbjogY2VudGVyO1xyXG4gICAgfVxyXG59XHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIEVMRU1FTlQgLSBUQVNLIEJBUlxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4uI3skbmFtZX1fX3Rhc2stYmFyIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcblxyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRuYXZpZ2F0aW9uLWJyZWFrcG9pbnQpIHtcclxuICAgICAgICBncmlkLWFyZWE6IHNvY2lhbDtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIC1tcy1ncmlkLWNvbHVtbi1hbGlnbjogZW5kO1xyXG4gICAgICAgIC1tcy1ncmlkLXJvdy1hbGlnbjogc3RhcnQ7XHJcbiAgICAgICAganVzdGlmeS1zZWxmOiBlbmQ7XHJcbiAgICAgICAgYWxpZ24tc2VsZjogYmFzZWxpbmU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5oZWFkZXItZ3JvdXBfX3NvY2lhbC1pY29ucy1tb2JpbGUge1xyXG4gICAgZ3JpZC1hcmVhOiBzb2NpYWw7XHJcbiAgICAtbXMtZ3JpZC1yb3ctYWxpZ246IGNlbnRlcjtcclxuICAgIC1tcy1ncmlkLWNvbHVtbi1hbGlnbjogZW5kO1xyXG4gICAganVzdGlmeS1zZWxmOiBmbGV4LWVuZDtcclxuXHJcbiAgICAuc29jaWFsIHtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6JG5hdmlnYXRpb24tYnJlYWtwb2ludCkge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5oZWFkZXItZ3JvdXBfX3NvY2lhbC1pY29ucy1tb2JpbGUtLXNwb25zb3Ige1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuXHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDokbmF2aWdhdGlvbi1icmVha3BvaW50KSB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxufVxyXG4vLy0tLS0tLS0tLS0tLS0tLS1cclxuLy8gRUxFTUVOVCAtIE5BVlxyXG4vLy0tLS0tLS0tLS0tLS0tLS1cclxuLiN7JG5hbWV9X19uYXYge1xyXG4gICAgZ3JpZC1hcmVhOiBuYXZpZ2F0aW9uO1xyXG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG5cclxuICAgIEBpbmNsdWRlIG1lZGlhLXdpZHRoKCRuYXZpZ2F0aW9uLWJyZWFrcG9pbnQpIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0yMHB4O1xyXG4gICAgICAgIC8qIGF1dG9wcmVmaXhlcjogb2ZmICovXHJcbiAgICAgICAgLW1zLWdyaWQtcm93OiAyO1xyXG4gICAgICAgIC1tcy1ncmlkLWNvbHVtbjogMjtcclxuICAgICAgICAtbXMtZ3JpZC1yb3ctYWxpZ246IGVuZDtcclxuICAgICAgICBhbGlnbi1zZWxmOiBlbmQ7XHJcbiAgICAgICAgLyogYXV0b3ByZWZpeGVyOiBvbiAqL1xyXG4gICAgfVxyXG59XHJcbi8vLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gRUxFTUVOVCAtIEhBTUJVUkdFUlxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfV9faGFtYnVyZ2VyIHtcclxuICAgIGdyaWQtYXJlYTogaGFtYnVyZ2VyO1xyXG4gICAgLW1zLWdyaWQtcm93LWFsaWduOiBjZW50ZXI7XHJcbn1cclxuXHJcblxyXG4uaGVhZGVyLWdyb3VwX19oYW1idXJnZXItLXNwb25zb3Ige1xyXG4gICAgbWFyZ2luOiAwO1xyXG59XHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBNT0RJRklFUiAtIFNUSUNLWVxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLiN7JG5hbWV9LS1zdGlja3ktbmF2IHtcclxufVxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gTkVTVEVSIC0gU1BPTlNPUlNcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfSB7XHJcblxyXG4gICAgW2NsYXNzKj1cIi0tc3BvbnNvclwiXSAmIHtcclxuICAgICAgICBncmlkLXRlbXBsYXRlLWFyZWFzOiBcImxvZ28gc29jaWFsIGhhbWJ1cmdlclwiO1xyXG5cclxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJG5hdmlnYXRpb24tYnJlYWtwb2ludCkge1xyXG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDEzMnB4IDFmciA1MDBweDtcclxuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiAxZnI7XHJcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtYXJlYXM6IFwibG9nbyB0aXRsZSBzb2NpYWxcIjtcclxuXHJcbiAgICAgICAgICAgIC4jeyRuYW1lfV9fdGFzay1iYXIge1xyXG4gICAgICAgICAgICAgICAgZ3JpZC1hcmVhOiBzb2NpYWw7XHJcbiAgICAgICAgICAgICAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICAtbXMtZ3JpZC1yb3ctYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuXHJcbi5zaXRlLWhlYWRlci0tc3BvbnNvciAuaGVhZGVyLWdyb3VwX190YXNrLWJhciB7XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG5hdmlnYXRpb24tYnJlYWtwb2ludCkge1xyXG4gICAgICAgIC1tcy1ncmlkLXJvdy1hbGlnbjogY2VudGVyO1xyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLmhlYWRlci1ncm91cF9fdXNlci1iYXIge1xyXG4gICAgZ3JpZC1hcmVhOiBsb2dvdXQ7XHJcbiAgICBqdXN0aWZ5LXNlbGY6IGVuZDtcclxuICAgIC1tcy1ncmlkLWNvbHVtbi1hbGlnbjogZW5kO1xyXG4gICAgLW1zLWdyaWQtcm93LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICAgLnVzZXItaWNvbiB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiA0NHB4O1xyXG4gICAgICAgIG1heC1oZWlnaHQ6IDQ0cHg7XHJcbiAgICAgICAgbWFyZ2luOiAzcHggMTVweDtcclxuICAgICAgICBAaW5jbHVkZSB1c2VyLWljb24oNDRweCk7XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRuYXZpZ2F0aW9uLWJyZWFrcG9pbnQpIHtcclxuICAgICAgICAtbXMtZ3JpZC1yb3ctYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAvKlxyXG4gICAgICAgICY6YmVmb3JlLFxyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtYmx1ZTtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICBsZWZ0OiAtMTAwJTtcclxuICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGxlZnQ6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICovXHJcbiAgICB9XHJcbn1cclxuIiwiLyoqXHJcbiAqIExBWU9VVFxyXG4gKiBIZWFkZXIgTWVzc2FnZVxyXG4gKiBBIGdyb3VwIG9mIGVsZW1lbnRzIGxvY2F0ZWQgd2l0aGluIHRoZSBzaXRlIGhlYWRlci5cclxuICovXHJcblxyXG4gJG5hbWU6IGhlYWRlci1tZXNzYWdlO1xyXG5cclxuXHJcbi8vLS0tLS0tLS1cclxuLy8gQkxPQ0tcclxuLy8tLS0tLS0tLVxyXG4uI3skbmFtZX0ge1xyXG4gICAgYmFja2dyb3VuZDogJGJyYW5kLXBpbms7XHJcbiAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgcGFkZGluZzogMWVtO1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjJzIGxpbmVhcjtcclxuXHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG5hdmlnYXRpb24tYnJlYWtwb2ludCkge1xyXG4gICAgfVxyXG5cclxuICAgICYuaXMtYWN0aXZlIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAuMnMgbGluZWFyO1xyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBQQVJBR1JBUEhcclxuLy8tLS0tLS0tLS0tLS0tLS0tLVxyXG4uI3skbmFtZX1fX3B7XHJcbiAgICBtYXgtd2lkdGg6MTIwMHB4O1xyXG4gICAgbWFyZ2luOmF1dG87XHJcbiAgICBhe1xyXG4gICAgICAgIGNvbG9yOiR3aGl0ZTtcclxuICAgICAgICBmb250LXdlaWdodDpub3JtYWw7XHJcbiAgICB9XHJcbn1cclxuXHJcbi4jeyRuYW1lfS1jbG9zZSB7XHJcbiAgICBmbG9hdDogcmlnaHQ7XHJcbiAgICBmb250LXNpemU6IDEuNGVtO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgJjphZnRlciB7XHJcbiAgICAgICAgQGluY2x1ZGUgY2xvc2UtaWNvbjtcclxuICAgIH1cclxufVxyXG4iLCIvKipcclxuICogTEFZT1VUXHJcbiAqIEhlcm8gQWQgQm96ZXNcclxuICpcclxuICovXHJcbiAkbmFtZTogaGVyby1hZC1ib3hlcztcclxuXHJcbi8vLS0tLS0tLVxyXG4vLyBCQVNFXHJcbi8vLS0tLS0tLS1cclxuLiN7JG5hbWV9e1xyXG4gICAgcGFkZGluZzogMjBweDtcclxuICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8obWVkaXVtLWFuZC11cCl7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMjBweDtcclxuICAgICAgICB6LWluZGV4OiAxMDA7XHJcbiAgICAgICAgYm90dG9tOiA2NXB4O1xyXG4gICAgICAgIC8vZGlzcGxheTogZmxleDtcclxuICAgICAgICAvL2ZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgLy9hbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIC8vanVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAvL3RyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcclxuICAgIH1cclxufVxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gRUxFTUVOVCAtIElURU1cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS1cclxuLiN7JG5hbWV9X19pdGVte1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBtYXgtd2lkdGg6IDEwMDBweDtcclxuICAgIHdpZHRoOiA1MDAlO1xyXG4gICAgLy8gSUUgZml4XHJcbiAgICAvL21pbi1oZWlnaHQ6IDQ1MHB4O1xyXG4gICAgLy9oZWlnaHQ6IDQ1MHB4O1xyXG4gICAgcGFkZGluZzogMjBweCAwO1xyXG4gICAgQGV4dGVuZCAlbWctYm0tbGc7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKHdoaXRlLCAwLjk3NSk7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICBib3R0b206IDEwMHB4O1xyXG4gICAgei1pbmRleDogLTEwMDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDE4cHg7XHJcbiAgICBAaW5jbHVkZSBhbmltYXRlKG9wYWNpdHkgMjAwbXMpO1xyXG4gICAgbGVmdDogNTAlO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xyXG5cclxuICAgICYuaXMtYWN0aXZle1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgei1pbmRleDogMTtcclxuICAgICAgICBwb2ludGVyLWV2ZW50czogYWxsO1xyXG4gICAgfVxyXG59XHJcblxyXG5cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gRUxFTUVOVCAtIEJVVFRPTlNcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4uI3skbmFtZX1fX2J0bnN7XHJcbiAgICBAZXh0ZW5kICVtZy1ibS1sZztcclxufVxyXG5cclxuLmhlcm8tYWQtYm94ZXMtYnRuc3tcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxufVxyXG5cclxuXHJcbi5oZXJvLWFkLWJveGVzLWJ0bnNfX2J0biB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgbWFyZ2luOiAwIDAgMTBweDtcclxuICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8obWVkaXVtLWFuZC11cCkge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gICAgICAgIG1hcmdpbjogMCA1cHggMTBweCA1cHg7XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG4uaGVyby1hZC1ib3hlcy1idG5zX19idG4tLWZpbmQtYS1jYXQge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIG1hcmdpbjogMCAwIDEwcHg7XHJcblxyXG4gICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0tYW5kLXVwKSB7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICAgICAgbWFyZ2luOiAwIDVweCAxMHB4IDVweDtcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OXB4KSB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCVcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYwMHB4KSB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCVcclxuICAgIH1cclxufVxyXG4iLCIvKipcclxuICogTEFZT1VUXHJcbiAqIExJTkUgQ0xBTVBcclxuICovXHJcblxyXG4kbmFtZTogbGluZS1jbGFtcDtcclxuXHJcbkBtaXhpbiBsaW5lLWNsYW1wKCRsaW5lLWNvdW50LCAkbGluZS1oZWlnaHQpe1xyXG5cclxuICAgIFtkYXRhLWxpbmUtY2xhbXA9XCIjeyRsaW5lLWNvdW50fVwiXXtcclxuICAgICAgICBkaXNwbGF5ICAgICAgICAgICAgOiBibG9jaztcclxuICAgICAgICBkaXNwbGF5ICAgICAgICAgICAgOiAtd2Via2l0LWJveDtcclxuICAgICAgICAtd2Via2l0LWJveC1vcmllbnQgOiB2ZXJ0aWNhbDtcclxuICAgICAgICBwb3NpdGlvbiAgICAgICAgICAgOiByZWxhdGl2ZTtcclxuICAgICAgICBvdmVyZmxvdyAgICAgICAgICAgOiBoaWRkZW47XHJcbiAgICAgICAgdGV4dC1vdmVyZmxvdyAgICAgIDogZWxsaXBzaXM7XHJcbiAgICAgICAgcGFkZGluZyAgICAgICAgICAgIDogMCAhaW1wb3J0YW50O1xyXG4gICAgXHJcbiAgICAgICAgLXdlYmtpdC1saW5lLWNsYW1wIDogJGxpbmUtY291bnQ7XHJcbiAgICAgICAgbWF4LWhlaWdodDogJGxpbmUtaGVpZ2h0ICogJGxpbmUtY291bnQ7XHJcbiAgICBcclxuICAgICAgICAmOmJlZm9yZXtcclxuICAgICAgICAgICAgY29udGVudDogJy4uLic7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICAgICAgd2lkdGg6IDQycHg7XHJcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogNHB4O1xyXG4gICAgICAgICAgICAvKmJhY2tncm91bmQtY29sb3I6IHdoaXRlOyovXHJcbiAgICAgICAgfVxyXG4gICAgXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICB6LWluZGV4OiAxO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgfVxyXG4gICAgXHJcbiAgICAgICAgQHN1cHBvcnRzICgtd2Via2l0LWxpbmUtY2xhbXA6IDEpe1xyXG4gICAgICAgICAgICAmOmJlZm9yZSxcclxuICAgICAgICAgICAgJjphZnRlcntcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbkBpbmNsdWRlIGxpbmUtY2xhbXAoMywgMjVweCk7XHJcbkBpbmNsdWRlIGxpbmUtY2xhbXAoNCwgMjVweCk7XHJcbkBpbmNsdWRlIGxpbmUtY2xhbXAoNiwgMjVweCk7XHJcbkBpbmNsdWRlIGxpbmUtY2xhbXAoMiwgMjVweCk7XHJcbkBpbmNsdWRlIGxpbmUtY2xhbXAoOCwgMjVweCk7XHJcbkBpbmNsdWRlIGxpbmUtY2xhbXAoNywgMjVweCk7XHJcblxyXG4vLy0tLS0tLS0tXHJcbi8vIEJMT0NLXHJcbi8vLS0tLS0tLS1cclxuICAgIC8vICY6YmVmb3JlIHtcclxuICAgICAgICAvLyAgICAgICBiYWNrZ3JvdW5kOiAkZXhjZXJwdC1iZztcclxuICAgICAgICAvLyAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgLy8gICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIC8vICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgIC8vICAgICAgIGZsb2F0OiByaWdodDtcclxuICAgICAgICAvLyAgICAgICBjb250ZW50OiAnXFwyMDI2JztcclxuICAgICAgICAvLyAgICAgICBtYXJnaW4tbGVmdDogLTNyZW07XHJcbiAgICAgICAgLy8gICAgICAgd2lkdGg6IDNyZW07XHJcbiAgICAgICAgLy8gICAgIH1cclxuICAgICAgICAvLyAgICAgJjphZnRlciB7XHJcbiAgICAgICAgLy8gICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgLy8gICAgICAgYmFja2dyb3VuZDogJGV4Y2VycHQtYmc7XHJcbiAgICAgICAgLy8gICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIC8vICAgICAgIGhlaWdodDogNTBweDtcclxuICAgICAgICAvLyAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAvLyAgICAgICB6LWluZGV4OiAxO1xyXG4gICAgICAgIC8vICAgICB9XHJcblxyXG4gICAgLy8gQHN1cHBvcnRzICgtd2Via2l0LWxpbmUtY2xhbXA6IDEpe1xyXG4gICAgLy8gICAgICY6YWZ0ZXJ7XHJcbiAgICAvLyAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAvLyAgICAgfVxyXG4gICAgLy8gfVxyXG5cclxuXHJcblxyXG5cclxuLy8gJHdoaXRlOiAjRkZGRkZGO1xyXG5cclxuLy8gQG1peGluIGV4Y2VycHQoJGZvbnQtc2l6ZTogJHBhcmFncmFwaC1mb250LXNpemUsICRsaW5lLWhlaWdodDogMS40LCAkbGluZXMtdG8tc2hvdzogMywgJGV4Y2VycHQtYmc6IHRyYW5zcGFyZW50KSB7XHJcbi8vICAgYmFja2dyb3VuZDogJGV4Y2VycHQtYmc7XHJcbi8vICAgZGlzcGxheTogYmxvY2s7IC8qIEZhbGxiYWNrIGZvciBub24td2Via2l0ICovXHJcbi8vICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XHJcbi8vICAgbWF4LWhlaWdodDogJGZvbnQtc2l6ZSokbGluZS1oZWlnaHQqJGxpbmVzLXRvLXNob3c7IC8qIEZhbGxiYWNrIGZvciBub24td2Via2l0ICovXHJcbi8vICAgZm9udC1zaXplOiAkZm9udC1zaXplO1xyXG4vLyAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XHJcbi8vICAgLXdlYmtpdC1saW5lLWNsYW1wOiAkbGluZXMtdG8tc2hvdztcclxuLy8gICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xyXG4vLyAgIG92ZXJmbG93OiBoaWRkZW47XHJcbi8vICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbi8vICAgQC1tb3otZG9jdW1lbnQgdXJsLXByZWZpeCgpIHtcclxuLy8gICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbi8vICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4vLyAgICAgJjpiZWZvcmUge1xyXG4vLyAgICAgICBiYWNrZ3JvdW5kOiAkZXhjZXJwdC1iZztcclxuLy8gICAgICAgYm90dG9tOiAwO1xyXG4vLyAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbi8vICAgICAgIHJpZ2h0OiAwO1xyXG4vLyAgICAgICBmbG9hdDogcmlnaHQ7XHJcbi8vICAgICAgIGNvbnRlbnQ6ICdcXDIwMjYnO1xyXG4vLyAgICAgICBtYXJnaW4tbGVmdDogLTNyZW07XHJcbi8vICAgICAgIHdpZHRoOiAzcmVtO1xyXG4vLyAgICAgfVxyXG4vLyAgICAgJjphZnRlciB7XHJcbi8vICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4vLyAgICAgICBiYWNrZ3JvdW5kOiAkZXhjZXJwdC1iZztcclxuLy8gICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4vLyAgICAgICBoZWlnaHQ6IDUwcHg7XHJcbi8vICAgICAgIHdpZHRoOiAxMDAlO1xyXG4vLyAgICAgICB6LWluZGV4OiAxO1xyXG4vLyAgICAgfVxyXG4vLyAgIH1cclxuLy8gfVxyXG5cclxuLy8gcCB7XHJcbi8vICAgZm9udC1mYW1pbHk6IEFyaWFsO1xyXG4vLyAgIGNvbG9yOiAjMjM0RjVDO1xyXG4vLyB9XHJcbi8vIC5EZXNjcmlwdGlvbkV4Y2VycHQge1xyXG4vLyAgIEBpbmNsdWRlIGV4Y2VycHQoJGZvbnQtc2l6ZTogMS4zcmVtLCAkbGluZS1oZWlnaHQ6IDEuMywgJGxpbmVzLXRvLXNob3c6IDMsICRleGNlcnB0LWJnOiAkd2hpdGUpO1xyXG5cclxuXHJcbi8vLS0tLS0tLS0tLVxyXG4vLyBFTEVNRU5UXHJcbi8vLS0tLS0tLS0tLVxyXG5cclxuLy8tLS0tLS0tLS0tLVxyXG4vLyBNT0RJRklFUlxyXG4vLy0tLS0tLS0tLS0tXHJcbiIsIi8qKlxyXG4gKiBMQVlPVVRcclxuICogUEVOU1xyXG4gKlxyXG4gKi9cclxuXHJcbiAkbmFtZTogbWFwO1xyXG5cclxuXHJcbiNtYXB7XHJcbiAgICBoZWlnaHQ6IDQ4MHB4O1xyXG59XHJcblxyXG4vLy0tLS0tLS1cclxuLy8gQkFTRVxyXG4vLy0tLS0tLS0tXHJcbi4jeyRuYW1lfXtcclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKXtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG5cclxufVxyXG5cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gRUxFTUVOVCAtIFZJRVdcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4uI3skbmFtZX1fX3ZpZXd7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIC8vbWluLWhlaWdodDogNTAwcHg7XHJcbiAgICBmbGV4OiAxO1xyXG59XHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIEVMRU1FTlQgLSBUQUJTXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLiN7JG5hbWV9X19yZXN1bHQge1xyXG4gICAgcGFkZGluZzogMzBweCAyMHB4O1xyXG4gICAgY29sb3I6IHdoaXRlO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgLy9tYXgtd2lkdGg6IDI3JTtcclxuICAgIC8vbWluLWhlaWdodDogNTAwcHg7XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XHJcbiAgICAgICAgd2lkdGg6IDMzMHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIFJFTEFURURcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4jbWFwe1xyXG4gICAgbWluLWhlaWdodDogMTAwJTtcclxufVxyXG4iLCIvKipcclxuICogTEFZT1VUXHJcbiAqIFNpZGViYXJcclxuICogVGhpcyBpcyB0aGUgbW9iaWxlIG92ZXJmbG93IHNvbHV0aW9uLCB3ZSBzdGljayB0aGUgbWFpbiBuYXZpZ2F0aW9uIGluIGhlcmVcclxuICovXHJcbiAkbmFtZTogc2lkZWJhcjtcclxuXHJcbi8vLS0tLS0tLS1cclxuLy8gQkxPQ0tcclxuLy8tLS0tLS0tLVxyXG4uI3skbmFtZX0ge1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICBwYWRkaW5nOiAwIDEwcHg7XHJcbiAgICB0b3A6MDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xyXG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMzAwbXM7XHJcbiAgICBsZWZ0OiBhdXRvO1xyXG4gICAgei1pbmRleDogOTk5OTk5O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHNpZGViYXItYmFja2dyb3VuZC1jb2xvcjtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQ7XHJcblxyXG4gICAgJi5pcy1hY3RpdmUge1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSk7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0tYW5kLXVwKSB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiA0MDBweDtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYS13aWR0aCgkbmF2aWdhdGlvbi1icmVha3BvaW50KSB7XHJcbiAgICAgICAgJi5pcy1hY3RpdmV7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS1cclxuLy8gRUxFTUVOVCAtIE5BVlxyXG4vLy0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi4jeyRuYW1lfV9fbmF2IHtcclxuICAgIGhlaWdodDogMTAwJTtcclxufVxyXG5cclxuLiN7JG5hbWV9X19jbG9zZSB7XHJcbiAgICBtYXJnaW46IDIwcHggMjBweCAxMHB4O1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG5cclxuICAgICY6YWZ0ZXJ7XHJcbiAgICAgICAgQGluY2x1ZGUgY2xvc2UtaWNvbjtcclxuICAgICAgICBjb2xvcjogJHNpZGViYXItbGluay1jb2xvcjtcclxuICAgIH1cclxufVxyXG5cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gRUxFTUVOVCAtIEJBQ0tcclxuLy8tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLiN7JG5hbWV9X19iYWNrIHtcclxuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xyXG5cclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgICBAaW5jbHVkZSBhcnJvdy1sZWZ0LWljb247XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIGJvdHRvbTogMTAwJTtcclxuICAgICAgICBsZWZ0OiAyNXB4O1xyXG4gICAgICAgIHRvcDogLTYwcHg7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICB3aWR0aDogNDBweDtcclxuICAgICAgICBoZWlnaHQ6IDQwcHg7XHJcbiAgICAgICAgY29sb3I6ICRzaWRlYmFyLWxpbmstY29sb3I7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHNpZGViYXItYmFja2dyb3VuZC1jb2xvcjtcclxuICAgICAgICBmb250LXNpemU6IDQ0cHg7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgICAgICAgQGluY2x1ZGUgYW5pbWF0ZShhbGwgMzAwbXMpO1xyXG4gICAgfVxyXG59XHJcblxyXG4vLy0tLS0tLS0tLS0tXHJcbi8vIE1PRElGSUVSXHJcbi8vLS0tLS0tLS0tLS1cclxuIiwiLyoqXHJcbiAqIExBWU9VVFxyXG4gKiBTSVRFXHJcbiAqIFRoZSBoaWdoZXN0IGxldmVyIGJsb2NrIGNvbXBvbmVudCAtIEludGVuZGVkIHRvIGJlIGZ1bGwgd2lkdGggcGFnZSBzZWN0aW9ucyB0aGF0IGNhbiB3b3JrIHdpdGggdGhlIFVtYnJhY28gR3JpZHMuXHJcbiAqL1xyXG5cclxuJG5hbWU6IHNpdGU7XHJcblxyXG4vLy0tLS0tLS0tXHJcbi8vIEhFQURFUlxyXG4vLy0tLS0tLS0tXHJcbi4jeyRuYW1lfS1oZWFkZXIge1xyXG4gICAgbWluLXdpZHRoOiAxMDAlO1xyXG4gICAgcG9zaXRpb246IHN0aWNreTtcclxuICAgIHRvcDogMDtcclxuICAgIHotaW5kZXg6IDIwMDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcclxuXHJcbiAgICAuaGVhZGVyLWdyb3VwX3dyYXBwZXIge1xyXG4gICAgICAgIGJveC1zaGFkb3c6IDBweCAtMTVweCAyNXB4IDBweCAkYmxhY2s7XHJcbiAgICAgICAgb3ZlcmZsb3c6aGlkZGVuO1xyXG4gICAgICAgIC5oZWFkZXItZ3JvdXBfYnV0dG9ucy1sb2dvLXNvY2lhbCB7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IHBhZGRpbmcgMC41cztcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cclxuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRuYXZpZ2F0aW9uLWJyZWFrcG9pbnQpIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDM1cHggMzVweCAxMHB4O1xyXG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcblxyXG4gICAgICAgICAgICAgICAgLm1vYmlsZS1zZWFyY2gge1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5oZWFkZXItZ3JvdXBfYnV0dG9ucyB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG5cclxuICAgICAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbmF2aWdhdGlvbi1icmVha3BvaW50KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuaGVhZGVyLWdyb3VwX19zb2NpYWwtc2VhcmNoIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcblxyXG4gICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRuYXZpZ2F0aW9uLWJyZWFrcG9pbnQpIHtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLnNocmluay1oZWFkZXIge1xyXG4gICAgICAgICAgICAuaGVhZGVyLWdyb3VwX2J1dHRvbnMtbG9nby1zb2NpYWwge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTIuNXB4O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuaGVhZGVyLWdyb3VwX19sb2dvIGltZyB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogNTAlO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuaGVhZGVyLWdyb3VwX19uYXYgLm1haW4tbmF2ID4gbGkgYSB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDI0cHg7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5oZWFkZXItZ3JvdXBfX25hdiB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJltjbGFzcyo9XCItLXNwb25zb3JcIl0ge1xyXG4gICAgICAgIC8qXHJcbiAgICAgICAgJjphZnRlcntcclxuICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogJGJyYW5kLWJsdWUgNTBweCBzb2xpZDtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICB6LWluZGV4OiAtMztcclxuICAgICAgICB9XHJcbiAgICAgICAgKi9cclxuICAgICAgICAmICsgaGVhZGVyLFxyXG4gICAgICAgIC8vJiArIGRpdjpub3QoLnNpdGUtYmFubmVyKSxcclxuICAgICAgICAmICsgc2VjdGlvbiB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDE3N3B4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy8tLS0tLS0tLS1cclxuLy8gQkFOTkVSXHJcbi8vLS0tLS0tLS0tXHJcbi4jeyRuYW1lfS1iYW5uZXIge1xyXG4gICAgLy9kaXNwbGF5OiBmbGV4O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIG1pbi1oZWlnaHQ6IDcwcHg7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAzNnB4O1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuXHJcbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKG1lZGl1bS1hbmQtdXApIHtcclxuICAgICAgICBtaW4taGVpZ2h0OiAxNTBweDtcclxuICAgIH1cclxuXHJcblxyXG4gICAgLnNpdGUtYmFubmVyX19pbWFnZSB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IDE1MHB4O1xyXG4gICAgICAgIGhlaWdodDogMTUwcHg7XHJcblxyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogIzAwMDAwMDtcclxuICAgICAgICAgICAgb3BhY2l0eTogMC4yNTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8obWVkaXVtLWFuZC11cCkge1xyXG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAxNTBweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxNTBweDtcclxuXHJcbiAgICAgICAgICAgICYuc2l0ZS1iYW5uZXJfX2ltYWdlLS1oYXMtaW1hZ2Uge1xyXG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogMzk2cHg7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDM5NnB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuY29udGFpbmVyIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICAgICAgbGVmdDogNTAlO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLC01MCUpO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IGZpdC1jb250ZW50O1xyXG4gICAgICAgICAgICB6LWluZGV4OiAxO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvKiY6bm90KFtjbGFzcyo9XCJiZy1cIl0pIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtYmxhY2s7XHJcbiAgICB9Ki9cclxuICAgIC8qXHJcbiAgICAmOm5vdChbY2xhc3MqPVwiLS10YWxsXCJdKXtcclxuICAgICAgICBoMSxcclxuICAgICAgICBoMntcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDoxMDBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAqL1xyXG4gICAgJjplbXB0eSB7XHJcbiAgICAgICAgaGVpZ2h0OiAyMjJweDtcclxuICAgIH1cclxuICAgIC8vU3BvbnNvciBMb2dpbiBUYWIgQnV0dG9uXHJcbiAgICA+IC5idG4ge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IGF1dG87XHJcbiAgICAgICAgYm90dG9tOiAtNjBweDtcclxuICAgICAgICByaWdodDogNSU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNC41ZGVnKTtcclxuICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAxNXB4O1xyXG4gICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAxNXB4O1xyXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAxMDAwbXM7XHJcblxyXG4gICAgICAgICYuaXMtaGVscGluZyB7XHJcbiAgICAgICAgICAgIGJvdHRvbTogMjBweDtcclxuXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHJlc3BvbmQtdG8obWVkaXVtLWFuZC11cCkge1xyXG4gICAgICAgICAgICAgICAgYm90dG9tOiAyMnB4O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSByZXNwb25kLXRvKGRlc2stYW5kLXVwKSB7XHJcbiAgICAgICAgICAgICAgICBib3R0b206IDI2cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5zaXRlLWJhbm5lci5zaXRlLWJhbm5lci0tbm8taW1hZ2Uge1xyXG4gICAgLnNpdGUtYmFubmVyX19pbWFnZTphZnRlciB7XHJcbiAgICAgICAgb3BhY2l0eTowICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbi4jeyRuYW1lfS1iYW5uZXItLXNtYWxsIHtcclxuICAgIGhlaWdodDogMjAwcHg7XHJcbn1cclxuXHJcbi4jeyRuYW1lfS1iYW5uZXItLWhlaWdodC1hbHBoYSB7XHJcbiAgICAuc2l0ZS1iYW5uZXJfX2hlYWRpbmcge1xyXG4gICAgICAgIHBhZGRpbmc6IDEuNWVtIDA7XHJcbiAgICB9XHJcblxyXG4gICAgLm1lZGlhX19jYXB0aW9uLS10b3Age1xyXG4gICAgICAgIC5zaXRlLWJhbm5lcl9faGVhZGluZyB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDFlbSAwIDJlbTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLm1lZGlhX19jYXB0aW9uLS1ib3R0b20ge1xyXG4gICAgICAgIC5zaXRlLWJhbm5lcl9faGVhZGluZyB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDJlbSAwIDFlbTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5zaXRlLWJhbm5lci0taGVpZ2h0LWJldGF7XHJcbiAgICBoZWlnaHQ6IDEwMHZ3O1xyXG4gICAgbWF4LWhlaWdodDogMjIwcHg7XHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKXtcclxuICAgICAgICBtYXgtaGVpZ2h0OiAzODBweDtcclxuICAgIH1cclxufVxyXG5cclxuLiN7JG5hbWV9LWJhbm5lci0tbWVkaXVtIHtcclxuICAgIC8vaGVpZ2h0OiAxMDB2dztcclxuICAgIC8vbWF4LWhlaWdodDogNTcwcHg7XHJcbiAgICAuc2l0ZS1iYW5uZXJfX2hlYWRpbmcge1xyXG4gICAgICAgIHBhZGRpbmc6IDIuNWVtIDA7XHJcbiAgICB9XHJcblxyXG4gICAgLm1lZGlhX19jYXB0aW9uLS10b3Age1xyXG4gICAgICAgIC5zaXRlLWJhbm5lcl9faGVhZGluZyB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDEuNWVtIDAgMy41ZW07XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5tZWRpYV9fY2FwdGlvbi0tYm90dG9tIHtcclxuICAgICAgICAuc2l0ZS1iYW5uZXJfX2hlYWRpbmcge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiA0ZW0gMCAxZW07XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uI3skbmFtZX0tYmFubmVyLS10YWxsIHtcclxuICAgIC8vaGVpZ2h0OiAxMDB2dztcclxuICAgIC8vbWF4LWhlaWdodDogOTAwcHg7XHJcbiAgICAuc2l0ZS1iYW5uZXJfX2hlYWRpbmcge1xyXG4gICAgICAgIHBhZGRpbmc6IDRlbSAwO1xyXG4gICAgfVxyXG5cclxuICAgIC5tZWRpYV9fY2FwdGlvbi0tdG9wIHtcclxuICAgICAgICAuc2l0ZS1iYW5uZXJfX2hlYWRpbmcge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAyZW0gMCA2ZW07XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5tZWRpYV9fY2FwdGlvbi0tYm90dG9tIHtcclxuICAgICAgICAuc2l0ZS1iYW5uZXJfX2hlYWRpbmcge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiA3ZW0gMCAxZW07XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uc2l0ZS1iYW5uZXJfX2hlYWRpbmcge1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgY29sb3I6ICR3aGl0ZTtcclxuXHJcbiAgICAmLnRleHQtYnJhbmQtYmxhY2sge1xyXG4gICAgICAgIGNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgfVxyXG5cclxuICAgICYudGV4dC1ncmV5IHtcclxuICAgICAgICBjb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuICAgIH1cclxufVxyXG5cclxuLyouc2l0ZS1iYW5uZXJfX2hlYWRpbmctLXZldC1iYWRnZSB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG5cclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgeyovXHJcbiAgICAgICAgLypkaXNwbGF5OiBmbGV4OyovXHJcbiAgICAgICAgLypkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICB9XHJcbn0qL1xyXG5cclxuLnNpdGUtYmFubmVyX19oZWFkaW5nLS1zaW1vbnMtY2F0IHtcclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDQwcHgpIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qLiN7JG5hbWV9LWJhbm5lci0tYXJjIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAzJTtcclxuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2FyYy5wbmcpO1xyXG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XHJcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgY2VudGVyO1xyXG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTEwJTtcclxuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgIH1cclxufVxyXG4uI3skbmFtZX0tYmFubmVyLS1hcmMtLXllbGxvdyB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwcHg7XHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL3llbGxvd2FyYy5wbmcpO1xyXG4gICAgfVxyXG59Ki9cclxuLy8tLS0tLS0tLS0tLS0tXHJcbi8vIEJSRUFEQ1JVTUJTXHJcbi8vLS0tLS0tLS0tLS0tLVxyXG4vLyAuI3skbmFtZX0tYnJlYWRjcnVtYnN7fVxyXG4vLy0tLS0tLS0tXHJcbi8vIEJPRFlcclxuLy8tLS0tLS0tLVxyXG4uI3skbmFtZX0tYm9keSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcclxufVxyXG4vLy0tLS0tLS0tXHJcbi8vIFNUUklQXHJcbi8vLS0tLS0tLS1cclxuLiN7JG5hbWV9LXN0cmlwIHtcclxuICAgID4gaDEsXHJcbiAgICA+IGgyLFxyXG4gICAgPiBoMyxcclxuICAgID4gaDQsXHJcbiAgICA+IGg1LFxyXG4gICAgPiBoNiB7XHJcbiAgICAgICAgQGV4dGVuZCAlbWctYm0tbGc7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgfVxyXG5cclxuICAgIC4jeyRuYW1lfS1zdHJpcF9fdGl0bGUge1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBAZXh0ZW5kICV0cy00O1xyXG4gICAgfVxyXG5cclxuICAgIC4jeyRuYW1lfS1zdHJpcF9faGVhZGVyIHtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6ICRjYXRzLW1lZDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xyXG4gICAgICAgIG1heC13aWR0aDogOTUwcHg7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG5cclxuICAgICAgICBoMiB7XHJcbiAgICAgICAgICAgIEBleHRlbmQgJXRzLTU7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XHJcblxyXG4gICAgICAgICAgICBzcGFuIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC4jeyRuYW1lfS1zdHJpcF9fYm9keSB7XHJcbiAgICAgICAgQGV4dGVuZCAlbWctYm0tbGc7XHJcbiAgICB9XHJcblxyXG4gICAgLiN7JG5hbWV9LXN0cmlwX19yaWJib24ge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHJcbiAgICAgICAgaDMge1xyXG4gICAgICAgICAgICBAZXh0ZW5kICV0cy0zO1xyXG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4vLy0tLS0tLS0tXHJcbi8vIFJJQkJPTlxyXG4vLy0tLS0tLS0tXHJcbi5yaWJib24ge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblxyXG4gICAgW2NsYXNzKj1cImJnLVwiXSAmIHtcclxuICAgICAgICBwYWRkaW5nLXRvcDogMjRweDtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMjRweDtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0tYW5kLXVwKSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAzNXB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMzVweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgPiBoMyB7XHJcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgIH1cclxuXHJcbiAgICA+ICoge1xyXG4gICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgfVxyXG59XHJcbi8vLS0tLS0tLS1cclxuLy8gRk9PVEVSXHJcbi8vLS0tLS0tLS1cclxuLiN7JG5hbWV9LWZvb3RlciB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG4uZm9vdGVye1xyXG4gICAgLmdyaWRfX2l0ZW17XHJcbiAgICAgICAgbWF4LXdpZHRoOiA1NTBweDtcclxuICAgIH1cclxufVxyXG5cclxuXHJcbi5zaXRlLWJhbm5lcl9faW1hZ2UtLWhhcy1pbWFnZXtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246Y2VudGVyO1xyXG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxufVxyXG4iLCIvKipcclxuICogTEFZT1VUXHJcbiAqIFNpZGViYXJcclxuICogVGhpcyBpcyB0aGUgbW9iaWxlIG92ZXJmbG93IHNvbHV0aW9uLCB3ZSBzdGljayB0aGUgbWFpbiBuYXZpZ2F0aW9uIGluIGhlcmVcclxuICovXHJcbiAkbmFtZTogc3VibmF2O1xyXG5cclxuLy8tLS0tLS0tLVxyXG4vLyBCTE9DS1xyXG4vLy0tLS0tLS0tXHJcbi4jeyRuYW1lfSB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgQGV4dGVuZCAlY29udGFpbmVyO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgei1pbmRleDogLTE7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIG1pbi13aWR0aDogMTAwJTtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgei1pbmRleDogMTtcclxuICAgIHRvcDogMTAwJTtcclxuICAgIHBhZGRpbmc6IDE3LjVweCAyNXB4O1xyXG4gICAgbGVmdDogMDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRzdWJuYXYtYmFja2dyb3VuZC1jb2xvcjtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgIEBleHRlbmQgJWRyb3Atc2hhZG93O1xyXG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAyMDBtcyBlYXNlLWluLW91dDtcclxuICAgIGJveC1zaGFkb3c6IDBweCA0cHggMTBweCAwcHggcmdiYSgwLDAsMCwwLjMzKTtcclxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkYnJhbmQtZ3JleTtcclxuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IGFsbDtcclxuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuXHJcbiAgICAgICAgdWwge1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuXHJcbiAgICBsaTpob3ZlciAmIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBhbGw7XHJcblxyXG4gICAgICAgIHVsIHtcclxuICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAvKiY6YmVmb3JlLFxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHN1Ym5hdi1iYWNrZ3JvdW5kLWNvbG9yO1xyXG4gICAgICAgIGJveC1zaGFkb3c6IDAgNnB4IDAgMCByZ2JhKCRkYXJrLWdsYXNzLCAwLjEpO1xyXG4gICAgfVxyXG5cclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgICBsZWZ0OiAxMDAlO1xyXG4gICAgfVxyXG5cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIHJpZ2h0OiAxMDAlO1xyXG4gICAgfSovXHJcblxyXG4gICAgdWwge1xyXG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICBAaW5jbHVkZSBhbmltYXRlKG9wYWNpdHkgMzAwbXMpO1xyXG4gICAgICAgIC8vIFRvIGhlbHAgZmlyc3QgdWwgaGF2ZSBlbm91Z2ggc3BhY2UgZm9yIHdvcmRzIHRvIHdyYXBcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzNXB4O1xyXG4gICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICAgIG92ZXJmbG93LXk6IGF1dG87XHJcblxyXG4gICAgICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcclxuICAgICAgICAgICAgd2lkdGg6IDRweDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLWJsYWNrO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJiArIHVsIHtcclxuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMzVweDtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAzNXB4O1xyXG4gICAgICAgICAgICBib3JkZXItbGVmdDogMnB4IHNvbGlkICRicmFuZC1ncmV5O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgbGkuc3ViLW5hdi1saSB7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG5cclxuICAgICAgICAgICAgYTpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJyYW5kLXB1cnBsZSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGxpZ2h0LXB1cnBsZSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgbGkge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG5cclxuICAgICAgICBoNCwgc3BhbiB7XHJcbiAgICAgICAgICAgIEBleHRlbmQgJXRzLTU7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgICAgICAgICAgbWFyZ2luOiAwcHg7XHJcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkY2F0cy1ib2xkO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGEge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMHB4O1xyXG4gICAgICAgICAgICBmb250LWZhbWlseTogJGNhdHMtYm9sZDtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMjRweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCIvKipcclxuICogTEFZT1VUXHJcbiAqIFRBQkxFU1xyXG4gKiBUaGVzZSBzdHlsZXMgYXJlIHVzZWQgdG8gbWFuYWdlIHRoZSBSVEUgZ2VuZXJhdGVkIHRhYmxlc1xyXG4gKi9cclxuXHJcbi8vLS0tLS0tLVxyXG4vLyBSRVNFVFxyXG4vLy0tLS0tLS1cclxudGFibGVbc3R5bGVdLFxyXG50cltzdHlsZV0sXHJcbnRkW3N0eWxlXXtcclxuICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xyXG4vKiAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDsqL1xyXG4gICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcclxufVxyXG5cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tXHJcbi8vIEJVSUxEIERFU0lHTlxyXG4vLy0tLS0tLS0tLS0tLS0tLVxyXG50YWJsZVtzdHlsZV0ge1xyXG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcclxuICAgIHRhYmxlLWxheW91dDogYXV0byAhaW1wb3J0YW50O1xyXG4gICAgcGFkZGluZy1ib3R0b206IDEwcHg7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgLy9ORVNUSU5HIEZPUiBBRERFRCBTUEVDSUZJQ0lUWVxyXG4gICAgLy8gSEVBREVSIENMQVNTIEFEREVEIFdJVEggSlNcclxuICAgIC50YWJsZS1oZWFkZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1wdXJwbGUgIWltcG9ydGFudDtcclxuICAgICAgICBib3JkZXItY29sb3I6ICRicmFuZC1wdXJwbGUgIWltcG9ydGFudDtcclxuICAgICAgICBmb250LWZhbWlseTogJGNhdHMtbWVkO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICBjb2xvcjogI2ZmZmZmZjtcclxuXHJcbiAgICAgICAgdGRbc3R5bGVdIHtcclxuICAgICAgICAgICAgcGFkZGluZy10b3A6IDE1cHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxNXB4O1xyXG5cclxuICAgICAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0tYW5kLXVwKSB7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICRicmFuZC1wdXJwbGUgIWltcG9ydGFudDtcclxuXHJcbiAgICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXItbGVmdC1jb2xvcjogJGJyYW5kLXB1cnBsZSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHRyW3N0eWxlXSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNXB4O1xyXG4gICAgICAgIHdpZHRoOiA1MCUgIWltcG9ydGFudDtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICAgICAgYm9yZGVyLXdpZHRoOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAycHggIWltcG9ydGFudDtcclxuICAgICAgICBib3JkZXItc3R5bGU6IHNvbGlkICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkYnJhbmQtcHVycGxlICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0tYW5kLWRvd24pIHtcclxuICAgICAgICAgICAgYm9yZGVyLXRvcC13aWR0aDogMnB4ICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICAgICAgICB0ZFtzdHlsZV0ge1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGJyYW5kLXB1cnBsZTtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxNXB4O1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDE1cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6bnRoLWNoaWxkKG9kZCkge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGxhY2Vob2xkO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICB0ZFtzdHlsZV0ge1xyXG4gICAgICAgIHBhZGRpbmc6IDEwcHg7XHJcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGJyYW5kLXB1cnBsZTtcclxuICAgIH1cclxufVxyXG5cclxuQGluY2x1ZGUgcmVzcG9uZC10byhtZWRpdW0tYW5kLXVwKXtcclxuICAgIC50YWJsZS1oZWFkZXI6bm90KDpudGgtb2YtdHlwZSgxKSl7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG59XHJcbiIsIi8qKlxyXG4gKiBMQVlPVVRcclxuICogRmxvd1xyXG4gKiBUaGUgZmxvdyBzZWxlY3RvciBhcHBsaWVzIGNzcyBjb2x1bW5zIHRvIGlubGluZSBjb250ZW50LlxyXG4gKi9cclxuXHJcbi8vIFRoZSBmbG93IGNvbHVtbnMgZGVmYXVsdCBhcyBhIHR3byBjb2x1bW4gXHJcblxyXG4uZmxvdy1jb2x7XHJcbiAgICBAaW5jbHVkZSByZXNwb25kLXRvKCBtZWRpdW0tYW5kLXVwKXtcclxuICAgICAgICBjb2x1bW4tY291bnQ6IDI7XHJcblxyXG4gICAgICAgICYtLWdhcC02MHsgY29sdW1uLWdhcDogNjBweDsgfVxyXG4gICAgICAgIFxyXG4gICAgICAgICYtLWdhcC01NXsgY29sdW1uLWdhcDogNTVweDsgfVxyXG4gICAgICAgIFxyXG4gICAgICAgICYtLWdhcC0zMHsgY29sdW1uLWdhcDogMzBweDsgfVxyXG4gICAgfVxyXG59XHJcblxyXG4iLCIvKipcclxuICogTEFZT1VUXHJcbiAqIFBFTlNcclxuICogTGF5b3V0IGZvciB0aGUgUGVucyBTZWN0aW9uIGZvdW5kIG9uIHRoZSBTcG9uc29yc2hpcCBwb3J0YWwgYW5kIHRoZSBpbmRpdmlkdWFsIGNhdCBzcG9uc29ycyBwYWdlLlxyXG4gKi9cclxuXHJcbiAkbmFtZTogcGVucztcclxuXHJcbi8vLS0tLS0tLVxyXG4vLyBCQVNFXHJcbi8vLS0tLS0tLS1cclxuLiN7JG5hbWV9e1xyXG5cclxufVxyXG5cclxuLnBlbnNfX3RhYi1idG57XHJcbiAgZGlzcGxheTogbm9uZTtcclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKXtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgIH1cclxufVxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBFTEVNRU5UIC0gVElUTEVcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4uI3skbmFtZX1fX3RpdGxle1xyXG4gICAgLy9kaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAvL3dpZHRoOiBhdXRvO1xyXG4gICAgbWFyZ2luOiAwIDAgMWVtO1xyXG5cclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpe1xyXG4gICAgICAgIG1hcmdpbjogMCBhdXRvIDAgMDtcclxuICAgIH1cclxufVxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBFTEVNRU5UIC0gVEFCU1xyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfV9fdGFic3tcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpe1xyXG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAvL2p1c3RpZnktY29udGVudDogZmxleC1lbmQ7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIH1cclxufVxyXG5cclxuLnBlbnNfX3RhYnMtc2VsZWN0e1xyXG4gICAgbWF4LXdpZHRoOiA0NjBweDtcclxuICAgIG1hcmdpbjogMCAwIDJlbTtcclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpe1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gRUxFTUVOVCAtIElURU1cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4uI3skbmFtZX1fX2l0ZW17XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBtYXgtd2lkdGg6IDQ2MHB4O1xyXG4gICAgbWFyZ2luOiAwIGF1dG87XHJcblxyXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZyl7XHJcbiAgICAgICAgbWF4LXdpZHRoOiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgIC8qXHJcbiAgICAmOmJlZm9yZXtcclxuICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgd2lkdGg6IDIwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICBsZWZ0OiAxMDAlO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcbiAgICB9XHJcbiAgICAqL1xyXG59XHJcblxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIEVMRU1FTlQgLSBQUkVWSU9VUyBHVUVTVFNcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfV9fcHJldmlvdXMtZ3Vlc3RzLnByZXZpb3VzLWd1ZXN0c3tcclxuXHJcbiAgICBbZGF0YS10YWJde1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcblxyXG4gICAgICAgICYuaXMtYWN0aXZle1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi4jeyRuYW1lfV9fcHJldmlvdXMtZ3Vlc3RzLmlzLWFjdGl2ZSArIC4jeyRuYW1lfV9fYnRuc3tcclxuICAgIC8vIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xyXG4gICAgLy8gcGFkZGluZy1ib3R0b206IDA7XHJcbiAgICBAZXh0ZW5kICVwZC10cC1sZztcclxufVxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBFTEVNRU5UIC0gQlVUVE9OU1xyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfV9fYnRuc3tcclxuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMjAwbXMgMjAwbXMgZWFzZS1pbi1vdXQ7XHJcbn1cclxuXHJcblxyXG4ucGVuc19fYnRucy1idG57XHJcbiAgICAvL21hcmdpbjogMCAwIDFlbTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG59XHJcbiIsIi8qKlxyXG4gKiBMQVlPVVRcclxuICogVVNFUiBCTE9DS1xyXG4gKiBMYXlvdXQgZm9yIHRoZSBVc2VyIHByb2ZpbGUgc2VjdGlvbiBmb3VuZCBpbiB0aGUgc3BvbnNvcnNoaXAgYXJlYVxyXG4gKi9cclxuICRuYW1lOiB1c2VyLWJsb2NrO1xyXG5cclxuLy8tLS0tLS0tXHJcbi8vIEJBU0VcclxuLy8tLS0tLS0tLVxyXG4uI3skbmFtZX17XHJcbiAgICBtYXJnaW46NzJweCAwIDAgMDtcclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKXtcclxuICAgICAgICBtYXJnaW46IDExNXB4IDAgMCAwO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIEVMRU1FTlQgLSBQUk9GSUxFXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLiN7JG5hbWV9X19wcm9maWxle1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgcGFkZGluZzogMjBweDtcclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKXtcclxuICAgICAgICB3aWR0aDogNDIwcHg7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgfVxyXG5cclxuXHJcblxyXG4gICAgLy9kaXNwbGF5OiBmbGV4O1xyXG4gICAgLy9hbGlnbi1pdGVtczogY2VudGVyO1xyXG5cclxuXHJcbi8qXHJcbiAgICA+IGRpdjpub3QoW2NsYXNzXSl7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xyXG5cclxuICAgICAgICAvLyBTb21lIG1hcmdpbiByZXNldHMgdG8gb3ZlcnJpZGUgdGhlIEggdGFnIHdpdGhpbiBhXHJcbiAgICAgICAgLy8gSEVBREVSIHRhZyBzcGFjaW5nZ2xvYmFsIHJ1bGUuXHJcbiAgICAgICAgaDJ7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodCAvIDQ7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGgze1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLy8gU3BhbiB0aGUgYnV0dG9uLlxyXG4gICAgICAgIC5idG57IHdpZHRoOiAxMDAlOyB9XHJcbiAgICB9XHJcbiovXHJcblxyXG5cclxuICAgIC8vIFBhaW50IHRoZSBiYWNrZ3JvdW5kIGNvbG91ciBhbGwgdGhlIHdheVxyXG4gICAgLy8gb3V0IHRvIHRoZSBsZWZ0IGVkZ2Ugb2YgdGhlIHBhZ2UsXHJcbiAgICAvLyBieXBhc3NpbmcgdGhlIGNvbnRhaW5lci5cclxuXHJcbiAgICAmOmJlZm9yZSxcclxuICAgICY6YWZ0ZXJ7XHJcbiAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgd2lkdGg6IDUwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICByaWdodDogMTAwJTtcclxuICAgIH1cclxuXHJcbiAgICAmOmJlZm9yZXtcclxuICAgICAgICByaWdodDogYXV0bztcclxuICAgICAgICBsZWZ0OiAxMDAlO1xyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpe1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAudXNlci1pY29ue1xyXG4gICAgICAgIEBpbmNsdWRlIHVzZXItaWNvbigxNTBweCk7XHJcbiAgICAgICAgbWFyZ2luOiAwIGF1dG8gMjBweDtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZyl7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gRUxFTUVOVCAtIFNVTU1BUllcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfV9fc3VtbWFyeXtcclxuICAgIHBhZGRpbmc6IDIwcHggMDtcclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpe1xyXG4gICAgICAgIGZsZXg6MTtcclxuICAgICAgICBwYWRkaW5nOiAyMHB4IDAgMjBweCAyMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIHB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweFxyXG4gICAgfVxyXG59XHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gRUxFTUVOVCAtIEZPUk1cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi4jeyRuYW1lfV9fZm9ybXtcclxuXHJcbn1cclxuXHJcbiIsIu+7vy5ibG9nLXBvc3R7XHJcbiAgICBtYXJnaW46IDAgYXV0bztcclxuICAgIG1heC13aWR0aDogNDAwcHg7XHJcbiAgICBkaXNwbGF5OmJsb2NrO1xyXG59XHJcblxyXG4uYmxvZy1wb3N0LS1ob3Jpem9udGFsIHtcclxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcclxuICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgfVxyXG5cclxuICAgIC5ibG9nLXBvc3RfX2ltYWdlLWNvbnRhaW5lcixcclxuICAgIC5ibG9nLXBvc3RfX2NvbnRlbnQtY29udGFpbmVyIHtcclxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiA1MCU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5ibG9nLXBvc3RfX2ltYWdlLWNvbnRhaW5lciB7XHJcbiAgICAgICAgcGFkZGluZzogMCAwIDFlbSAwO1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMWVtIDAgMDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMCAzZW0gMCAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmJsb2ctcG9zdF9faW1hZ2Uge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi5ibG9nLXBvc3RfX3RhZy1jb250YWluZXIge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgIG1hcmdpbjogMCAwIDIwcHg7XHJcbiAgICBjb2xvcjogI0FDQUNBQztcclxuICAgIGZvbnQtc2l6ZTogMTRweDtcclxufVxyXG5cclxuLmJsb2ctcG9zdF9fdGFnIHtcclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwifFwiO1xyXG4gICAgICAgIG1hcmdpbjogMCA1cHg7XHJcbiAgICB9XHJcblxyXG4gICAgJjpsYXN0LW9mLXR5cGUge1xyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAudGFnLWxpbmsge1xyXG4gICAgICAgIGNvbG9yOiRicmFuZC1waW5rO1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7XHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGNvbG9yOiRicmFuZC1wdXJwbGU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uYmxvZy1wb3N0X19kYXRlIHtcclxuICAgIG1hcmdpbjogMCAwIDZweDtcclxuICAgIGNvbG9yOiAkYnJhbmQtcGluayAhaW1wb3J0YW50O1xyXG4gICAgZm9udC1mYW1pbHk6ICRjYXRzLWhlYWRsaW5lO1xyXG59XHJcblxyXG5cclxuLmJsb2ctcG9zdF9fY29udGVudC1jb250YWluZXItLWRhcmstdGhlbWUge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzVFNUU1RTtcclxuICAgIGNvbG9yOiAjZmZmO1xyXG59XHJcblxyXG4uYmxvZy1wb3N0LS1yZWxhdGVke1xyXG59XHJcbiIsIi5yZWFkLW1vcmVfX2NvbnRhaW5lcntcclxuICBtYXgtaGVpZ2h0OiAyMDBweDtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBtYXJnaW46IDAgMCAxZW07XHJcbn1cclxuXHJcbi5yZWFkLW1vcmUtLWZhZGUtdXAgLnJlYWQtbW9yZV9fY29udGFpbmVye1xyXG4gICY6YmVmb3Jle1xyXG4gICAgY29udGVudDogXCJcIjtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICByaWdodDogMDtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0cmFuc3BhcmVudCwgI2ZmZik7XHJcbiAgfVxyXG59XHJcblxyXG4ucmVhZC1tb3JlLS1vcGVue1xyXG4gIC5yZWFkLW1vcmVfX2NvbnRhaW5lciB7XHJcbiAgICBtYXgtaGVpZ2h0OiBub25lO1xyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxuICAucmVhZC1tb3JlX19idXR0b257XHJcbiAgICAmOmJlZm9yZXtcclxuICAgICAgY29udGVudDogXCJSZWFkIExlc3NcIjtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5yZWFkLW1vcmVfX2J1dHRvbntcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICY6YmVmb3Jle1xyXG4gICAgY29udGVudDogXCJSZWFkIE1vcmVcIjtcclxuICB9XHJcbn1cclxuXHJcblxyXG4iLCIudmV0LWJhZGdlIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcblxyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgbWFyZ2luOiBhdXRvO1xyXG4gICAgICAgIG1heC13aWR0aDogNzBweDtcclxuICAgICAgICBtYXJnaW4tdG9wOiAxNnB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4udmV0LWJhZGdlLS1tb2JpbGUge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAyMThweDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgbWFyZ2luOiAxZW07XHJcbiAgICBtYXgtd2lkdGg6IDcwcHg7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHotaW5kZXg6IDEwO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMHB4O1xyXG5cclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA2MDBweCkge1xyXG4gICAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XHJcbiAgICAgICAgZGlzcGxheTpub25lO1xyXG4gICAgfVxyXG59XHJcblxyXG5cclxuICAgIC52ZXQtYmFkZ2UtLWRlc2t0b3Age1xyXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiIsIu+7v1xyXG4uZG9uYXRpb24tcmVhZC1tb3JlLWNvbnRhaW5lciB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIG1heC1oZWlnaHQ6IDE1MHB4O1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgbWFyZ2luOiAwIDAgMmVtO1xyXG5cclxuICBAbWVkaWEgKG1pbi13aWR0aDogMTA4MHB4KXtcclxuICAgIG1heC1oZWlnaHQ6IG5vbmU7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgfVxyXG5cclxuICAmOmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHJnYmEoIzAwMCwgMCksICNmZmYpO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEwODBweCl7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLmlzLWFjdGl2ZSB7XHJcbiAgICBtYXgtaGVpZ2h0OiBub25lO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmRvbmF0aW9uLXJlYWQtbW9yZS1idXR0b257XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMDgwcHgpe1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcbiAgJjpiZWZvcmV7XHJcbiAgICBjb250ZW50OiBcIlJlYWQgTW9yZVwiO1xyXG4gIH1cclxuICAmLmlzLWFjdGl2ZXtcclxuICAgICY6YmVmb3Jle1xyXG4gICAgICBjb250ZW50OiBcIlJlYWQgTGVzc1wiO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCJcclxuLy8gUXVpY2sgZml4IGZvciByZW1vdmluZyBiYW5uZXIgaGVhZGluZyBhbmQgYWRqdXN0aW5nIGhlaWdodCBwdXJlbHkgb24gdGhlIGRvbmF0aW9uIHBhZ2VcclxuLy8gVG9kbyBvbmNlIGRldiBhcHByb3ZlZCBjcmVhdGUgYSBkb25hdGlvbiBiYW5uZXIgcGFydGlhbFxyXG4uZG9uYXRpb24tYmFubmVyLXRoZW1le1xyXG4gIC5zaXRlLWJhbm5lcl9faGVhZGluZ3tcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG4gIC5zaXRlLWJhbm5lci0taGVpZ2h0LWFscGhhe1xyXG4gICAgbWF4LWhlaWdodDogMTIwcHg7XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTA4MHB4KXtcclxuICAgICAgbWF4LWhlaWdodDogMjQwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8qKlxyXG4gKiBDT01QT05FTlRTXHJcbiAqIEdvb2dsZSBDdXN0b21lciBTZWFyY2hcclxuICovXHJcblxyXG4vLy0tLS0tLS0tLS1cclxuLy8gQkxPQ0tcclxuLy8tLS0tLS0tLS0tXHJcbi5nc2MtaW5wdXQgdGFibGUge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcclxuXHJcbiAgICAmW3N0eWxlXSAudGFibGUtaGVhZGVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5nc2Mtc2VhcmNoLWJ1dHRvbiB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjN0ExQjcyICFpbXBvcnRhbnQ7XHJcbiAgICBib3JkZXItY29sb3I6ICM3QTFCNzIgIWltcG9ydGFudDtcclxufVxyXG4uZ3NjLXJlc3VsdHN7XHJcbiAgICB3aWR0aDoxMDAlICFpbXBvcnRhbnQ7XHJcbn1cclxuLmdzYy1yZXN1bHQge1xyXG4gICAgcGFkZGluZzogMS41dncgIWltcG9ydGFudDtcclxuXHJcbiAgICAmOm50aC1jaGlsZChvZGQpIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFlNmZhICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgLmdzLXRpdGxlIHtcclxuICAgICAgICBjb2xvcjogIzdBMUI3MiAhaW1wb3J0YW50O1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwLjVlbSAhaW1wb3J0YW50O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG5cclxuICAgICAgICBiIHtcclxuICAgICAgICAgICAgY29sb3I6ICM3QTFCNzIgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuZ3NjLXVybC10b3Age1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwLjVlbTtcclxuICAgIH1cclxufVxyXG4uZ3Mtd2ViUmVzdWx0IGRpdi5ncy12aXNpYmxlVXJsIHtcclxuICAgIGNvbG9yOiAjYzkyOGIyICFpbXBvcnRhbnQ7XHJcbiAgICBmb250LXNpemU6IDE4cHggIWltcG9ydGFudDtcclxufVxyXG4uZ3NjLXJlc3VsdHMgLmdzYy1jdXJzb3ItYm94IC5nc2MtY3Vyc29yLXBhZ2Uge1xyXG4gICAgYm9yZGVyLWNvbG9yOiAjMUUwMDI4ICFpbXBvcnRhbnQ7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGICFpbXBvcnRhbnQ7XHJcbiAgICBjb2xvcjogIzFFMDAyOCAhaW1wb3J0YW50O1xyXG59XHJcbi5nc2MtcmVzdWx0cyAuZ3NjLWN1cnNvci1ib3ggLmdzYy1jdXJzb3ItY3VycmVudC1wYWdlIHtcclxuICAgIGJvcmRlci1jb2xvcjogI2M5MjhiMiAhaW1wb3J0YW50O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xyXG4gICAgY29sb3I6ICNjOTI4YjIgIWltcG9ydGFudDtcclxufVxyXG4uZ2NzYy1maW5kLW1vcmUtb24tZ29vZ2xlIHtcclxuICAgIGNvbG9yOiAjYzkyOGIyICFpbXBvcnRhbnQ7XHJcbn1cclxuLmdjc2MtZmluZC1tb3JlLW9uLWdvb2dsZS1tYWduaWZpZXIge1xyXG4gICAgZmlsbDogI2M5MjhiMiAhaW1wb3J0YW50O1xyXG59XHJcbi5nc2MtYWRCbG9jayB7XHJcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbn1cclxuLmdzLXNuaXBwZXQge2JhY2tncm91bmQ6dHJhbnNwYXJlbnQgIWltcG9ydGFudDsgYm9yZGVyOm5vbmUgIWltcG9ydGFudDt9XHJcbiIsIu+7v0Bmb250LWZhY2Uge1xyXG4gICAgZm9udC1mYW1pbHk6ICdpY29tb29uJztcclxuICAgIHNyYzogdXJsKCdmb250cy9pY29tb29uLmVvdCcpO1xyXG4gICAgc3JjOiB1cmwoJ2ZvbnRzL2ljb21vb24uZW90I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLCB1cmwoJ2ZvbnRzL2ljb21vb24ud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksIHVybCgnZm9udHMvaWNvbW9vbi50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyksIHVybCgnZm9udHMvaWNvbW9vbi53b2ZmJykgZm9ybWF0KCd3b2ZmJyksIHVybCgnLi4vZm9udHMvaWNvbW9vbi5zdmcnKSBmb3JtYXQoJ3N2ZycpO1xyXG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxufVxyXG5cclxuLmhvbWUtaWNvbjpiZWZvcmUge1xyXG4gICAgZm9udC1mYW1pbHk6ICdpY29tb29uJyAhaW1wb3J0YW50O1xyXG4gICAgc3BlYWs6IG5vbmU7XHJcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgZm9udC12YXJpYW50OiBub3JtYWw7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgY29udGVudDogJ1xcZTkyYic7XHJcbiAgICBmb250LXNpemU6IDE4cHg7XHJcbn1cclxuXHJcbi5icmVhZGNydW1iLWxpc3Qge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcclxufVxyXG5cclxuLmJyZWFkY3J1bWItbGlzdCBsaSB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24tY29udGVudDogY2VudGVyO1xyXG4gICAgbGluZS1oZWlnaHQ6IDE4cHg7XHJcbn1cclxuXHJcbi5icmVhZGNydW1iLWxpc3QgYSB7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICBmb250LXdlaWdodDogNDAwO1xyXG4gICAgbGluZS1oZWlnaHQ6IDE4cHg7XHJcbn1cclxuXHJcbi5kaXZpZGVyIHtcclxuICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICBjb2xvcjogJGJyYW5kLXBpbms7XHJcbiAgICBwYWRkaW5nOiAwcHggNXB4IDVweCA1cHg7XHJcbiAgICBsaW5lLWhlaWdodDogMThweDtcclxufVxyXG4iLCIuZXhpdC1zaXRlLWJ1dHRvbiB7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgYm90dG9tOiAxMCU7XHJcbiAgICB3aWR0aDogMTAwcHg7XHJcbiAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICBwYWRkaW5nOiAxMnB4O1xyXG4gICAgZm9udC1mYW1pbHk6IFwibWV0cmlmeS1ib2xkXCIsIEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XHJcbiAgICB6LWluZGV4OiA5OTk5O1xyXG4gICAgYm9yZGVyLXJhZGl1czogMHB4IDZweCA2cHggMHB4O1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgdHJhbnNpdGlvbjogY29sb3IgMC4xcywgYmFja2dyb3VuZC1jb2xvciAwLjFzO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2M5MjhiMjtcclxuICAgIGNvbG9yOiB3aGl0ZTtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwMHB4KSB7XHJcbiAgICAgICAgd2lkdGg6IDIwMHB4O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMzJweDtcclxuICAgICAgICBsZWZ0OiAxMDAlO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjAwcHgpO1xyXG4gICAgICAgIGJvdHRvbTogMCU7XHJcbiAgICAgICAgcGFkZGluZzogMjBweCAyNHB4O1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDZweCAwcHggMHB4IDBweDtcclxuICAgIH1cclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICBjb2xvcjokYnJhbmQtcHVycGxlO1xyXG4gICAgICAgIGJhY2tncm91bmQ6JGxpZ2h0LXB1cnBsZTtcclxuICAgIH1cclxufVxyXG4iLCIjY2F0cy1yZXBvcnQge1xyXG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xyXG5cclxuICAgIC50cy0wIHtcclxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0MjVweCkge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IGNhbGMoMzJweCArIDM4ICogKCgxMDB2dyAtIDMyMHB4KSAvIDcwNCkpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAubWctdnQtbGcge1xyXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDBweDtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLm92ZXItc2l6ZS1maXgge1xyXG4gICAgbWF4LXdpZHRoOiAxOTIwcHg7XHJcbiAgICBtYXJnaW46IGF1dG87XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuLyogU0VUIE1JTiBIRUlHSFQgKi9cclxuLm1pbi1odC1sZy00MDAge1xyXG4gICAgQG1lZGlhKG1pbi13aWR0aDogJGxhcmdlKSB7XHJcbiAgICAgICAgbWluLWhlaWdodDogNDAwcHg7XHJcbiAgICB9XHJcbiAgICAvLyBVc2VkIHRvIGZpeCBJRSBpc3N1ZVxyXG4gICAgQGluY2x1ZGUgaWUtZmFsbGJhY2soJGxhcmdlKSB7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIG92ZXJmbG93OiBub25lO1xyXG4gICAgfVxyXG59XHJcblxyXG4ubWluLWh0LWxnLTUwMCB7XHJcbiAgICBAbWVkaWEobWluLXdpZHRoOiAkbGFyZ2UpIHtcclxuICAgICAgICBtaW4taGVpZ2h0OiA1MDBweDtcclxuICAgIH1cclxuICAgIC8vIFVzZWQgdG8gZml4IElFIGlzc3VlXHJcbiAgICBAaW5jbHVkZSBpZS1mYWxsYmFjaygkbGFyZ2UpIHtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgb3ZlcmZsb3c6IG5vbmU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5taW4taHQtbGctNTUwIHtcclxuICAgIEBtZWRpYShtaW4td2lkdGg6ICRsYXJnZSkge1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IDU1MHB4O1xyXG4gICAgfVxyXG4gICAgLy8gVXNlZCB0byBmaXggSUUgaXNzdWVcclxuICAgIEBpbmNsdWRlIGllLWZhbGxiYWNrKCRsYXJnZSkge1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICBvdmVyZmxvdzogbm9uZTtcclxuICAgIH1cclxufVxyXG5cclxuLm1pbi1odC1sZy02MDAge1xyXG4gICAgQG1lZGlhKG1pbi13aWR0aDogJGxhcmdlKSB7XHJcbiAgICAgICAgbWluLWhlaWdodDogNjAwcHg7XHJcbiAgICB9XHJcbiAgICAvLyBVc2VkIHRvIGZpeCBJRSBpc3N1ZVxyXG4gICAgQGluY2x1ZGUgaWUtZmFsbGJhY2soJGxhcmdlKSB7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIG92ZXJmbG93OiBub25lO1xyXG4gICAgfVxyXG59XHJcblxyXG4ubWluLWh0LWxnLTY1MCB7XHJcbiAgICBAbWVkaWEobWluLXdpZHRoOiAkbGFyZ2UpIHtcclxuICAgICAgICBtaW4taGVpZ2h0OiA2NTBweDtcclxuICAgIH1cclxuICAgIC8vIFVzZWQgdG8gZml4IElFIGlzc3VlXHJcbiAgICBAaW5jbHVkZSBpZS1mYWxsYmFjaygkbGFyZ2UpIHtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgb3ZlcmZsb3c6IG5vbmU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5taW4taHQtbGctNzAwIHtcclxuICAgIEBtZWRpYShtaW4td2lkdGg6ICRsYXJnZSkge1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IDcwMHB4O1xyXG4gICAgfVxyXG4gICAgLy8gVXNlZCB0byBmaXggSUUgaXNzdWVcclxuICAgIEBpbmNsdWRlIGllLWZhbGxiYWNrKCRsYXJnZSkge1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICBvdmVyZmxvdzogbm9uZTtcclxuICAgIH1cclxufVxyXG4vKiBHRU5FUklDIFRPIFNMSURFKFMpICovXHJcbi5jYXRzLXJlcG9ydC1zbGlkZSAudHMtMiB7XHJcbiAgICBAbWVkaWEobWF4LXdpZHRoOiAkbGFyZ2UpIHtcclxuICAgICAgICBmb250LXNpemU6IDI0cHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5iZy1zaWx2ZXItZm94IC50cy0yIHtcclxuICAgIEBpbmNsdWRlIGllLWZhbGxiYWNrKCRsYXJnZSkge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAxNnB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4uY2F0cy1yZXBvcnQtc2xpZGUge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcbi8qLmNhdHMtcmVwb3J0LXNsaWRlLS1jb250YWluZXJ7XHJcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuICAgIG1heC13aWR0aDoxOTIwcHg7XHJcbiAgICBtYXJnaW46MCBhdXRvO1xyXG59Ki9cclxuLyouY2F0cy1yZXBvcnQtc2xpZGUgcCB7XHJcbiAgICBAbWVkaWEobWluLXdpZHRoOiAkbGFyZ2UpIHtcclxuICAgICAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDM2cHg7XHJcbiAgICB9XHJcbn0qL1xyXG4uY2F0cy1yZXBvcnQtc2xpZGUgaW1nIHtcclxuICAgIG1hcmdpbjogYXV0bztcclxuICAgIC8vIG1hcmdpbi1ib3R0b206MWVtO1xyXG4gICAgQG1lZGlhKG1pbi13aWR0aDogJGxhcmdlKSB7XHJcbiAgICAgICAgbWFyZ2luOiBpbml0aWFsO1xyXG4gICAgICAgIC8vIG1hcmdpbi1ib3R0b206Mi41ZW07XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jYXRzLXJlcG9ydC1zbGlkZSAuY3JzX19hbmltIHZpZGVvIHtcclxuICAgIG1heC13aWR0aDogMTAwJTtcclxufVxyXG5cclxuLmNhdHMtcmVwb3J0LXNsaWRlX19zZWN0aW9uIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDFlbTtcclxuICAgIC8vIFVzZWQgdG8gZml4IElFIGlzc3VlXHJcbiAgICBAaW5jbHVkZSBpZS1mYWxsYmFjaygkbGFyZ2UpIHtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMWVtO1xyXG4gICAgfVxyXG59XHJcblxyXG4uY2F0cy1yZXBvcnQtc2xpZGVfX3NlY3Rpb24gLnRzLTIge1xyXG4gICAgZm9udC1mYW1pbHk6ICRjYXRzO1xyXG59XHJcblxyXG4uY2F0cy1yZXBvcnQtc2xpZGVfX3NlY3Rpb24gdWwge1xyXG4gICAgLyogICAgIGxpc3Qtc3R5bGUtdHlwZTogZGlzYztcclxuICAgIGxpc3Qtc3R5bGUtcG9zaXRpb246IGluc2lkZTsgKi9cclxuICAgIG92ZXJmbG93OiBhdXRvO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMWVtO1xyXG59XHJcblxyXG4uaG9yaXpvbnRhbC1saXN0IHtcclxuICAgIGxpc3Qtc3R5bGUtdHlwZTogZGlzYztcclxuICAgIGxpc3Qtc3R5bGUtcG9zaXRpb246IGluc2lkZTtcclxufVxyXG5cclxuLmhvcml6b250YWwtbGlzdCBsaSB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxZW07XHJcblxyXG4gICAgQG1lZGlhKG1pbi13aWR0aDogJG1lZGl1bSkge1xyXG4gICAgICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgICAgIHdpZHRoOiA1MCU7XHJcbiAgICB9XHJcbn1cclxuLy8gSGlnaGxpZ2h0ZXJcclxuLmpzLWhpZ2gtbGlnaHQgc3BhbiB7XHJcbiAgICB0cmFuc2l0aW9uOiAwLjNzIGJhY2tncm91bmQtY29sb3I7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxufVxyXG5cclxuLmpzLWhpZ2gtbGlnaHQuaXMtYWN0aXZlIHNwYW4ge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTIsIDE5NSwgNDIsIDEpO1xyXG59XHJcblxyXG4uanMtaGlnaC1saWdodC5pcy1hY3RpdmUgc3BhbiB7XHJcbiAgICBwYWRkaW5nOiAwLjFlbSAwO1xyXG4gICAgcGFkZGluZy1yaWdodDoxcHg7XHJcbiAgICBtYXJnaW4tcmlnaHQ6LTFweDtcclxufVxyXG5cclxuLmpzLWhpZ2gtbGlnaHQuaXMtYWN0aXZlIHNwYW46Zmlyc3Qtb2YtdHlwZSB7XHJcbiAgICBwYWRkaW5nOiAwLjFlbSAwIDAuMWVtIDAuMmVtO1xyXG59XHJcblxyXG4uanMtaGlnaC1saWdodC5pcy1hY3RpdmUgc3BhbjpsYXN0LW9mLXR5cGUge1xyXG4gICAgcGFkZGluZzogMC4xZW0gMC4yZW0gMC4xZW0gMDtcclxufVxyXG5cclxuLmNyc19fcXVlc3Rpb25zIHtcclxuICAgIHBhZGRpbmctbGVmdDogNDhweDtcclxuICAgIHRleHQtc2hhZG93OiBub25lO1xyXG4gICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDI1cHg7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcblxyXG4gICAgQG1lZGlhKG1pbi13aWR0aDogJHNtYWxsKSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4uY3JzX19xdWVzdGlvbnMgYSB7XHJcbiAgICBjb2xvcjogJGJyYW5kLWJsdWU7XHJcbiAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgb3BhY2l0eTogMC43NTtcclxuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxuICAgIH1cclxufVxyXG5cclxuLmpzLWRpZC15b3Uta25vdy1zaG93IHtcclxuICAgIEBtZWRpYShtaW4td2lkdGg6ICRtZWRpdW0pIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIHRyYW5zaXRpb246IDAuM3Mgb3BhY2l0eTtcclxuICAgIH1cclxufVxyXG5cclxuLmpzLWRpZC15b3Uta25vdy1zaG93LnNob3dpbmcge1xyXG4gICAgb3BhY2l0eTogMTtcclxufVxyXG5cclxuLmNyc19fcXVlc3Rpb24ge1xyXG4gICAgYmFja2dyb3VuZDogJGJyYW5kLWJsdWU7XHJcbiAgICB3aWR0aDogMzJweDtcclxuICAgIGhlaWdodDogMzJweDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICBtYXJnaW46IDRweCAxNnB4IDBweCAtNDhweDtcclxuXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgICBjb250ZW50OiAnPyc7XHJcbiAgICAgICAgY29sb3I6ICNmZmZmZmY7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcclxuICAgICAgICBmb250LXNpemU6IDI0cHg7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgfVxyXG59XHJcbi8qIEhFQURJTkcgU0xJREUgKi9cclxuLnNpdGUtYmFubmVyLS1jYXRzLXJlcG9ydCB7XHJcbiAgICBtaW4taGVpZ2h0OiA2NDBweDtcclxuICAgIGJhY2tncm91bmQ6ICMxYjFiMWI7XHJcblxyXG4gICAgQG1lZGlhKG1pbi13aWR0aDogJGxhcmdlKSB7XHJcbiAgICAgICAgbWluLWhlaWdodDogOTAwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLnJvdyB7XHJcbiAgICAgICAgbWluLWhlaWdodDogNjQwcHg7XHJcblxyXG4gICAgICAgIEBtZWRpYShtaW4td2lkdGg6ICRsYXJnZSkge1xyXG4gICAgICAgICAgICBtaW4taGVpZ2h0OiA5MDBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnNpdGUtYmFubmVyX19oZWFkaW5nIHtcclxuICAgICAgICBjb2xvcjogJGJyYW5kLXNpbHZlci1mb3g7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgICB0ZXh0LXNoYWRvdzogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICAuY29sIHtcclxuICAgICAgICAvLyBVc2VkIHRvIGZpeCBJRSBpc3N1ZVxyXG4gICAgICAgIEBpbmNsdWRlIGllLWZhbGxiYWNrKCRsYXJnZSkge1xyXG4gICAgICAgICAgICBmbGV4LWJhc2lzOiBhdXRvO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuY29udGFpbmVyIHtcclxuICAgICAgICBtaW4taGVpZ2h0OiAxMDB2aDtcclxuXHJcbiAgICAgICAgQG1lZGlhKG1pbi13aWR0aDogJGxhcmdlKSB7XHJcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDEwMHZoO1xyXG4gICAgICAgICAgICB6LWluZGV4OiAyO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLnNpdGUtYmFubmVyLS1jYXRzLXJlcG9ydCAub3Zlci1zaXplLWZpeCB7XHJcbiAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb24teDogODUlO1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbi15OiAwJTtcclxuXHJcbiAgICBAbWVkaWEobWluLXdpZHRoOjc2OHB4KSB7XHJcbiAgICAgICAgLypiYWNrZ3JvdW5kLXNpemU6IDE2NSU7Ki9cclxuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IDEwMCU7XHJcbiAgICB9XHJcblxyXG4vKiAgICBAbWVkaWEobWluLXdpZHRoOjEwMjRweCkge1xyXG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XHJcbiAgICB9Ki9cclxufVxyXG5cclxuLnNpdGUtYmFubmVyLS1jYXRzLXJlcG9ydCAuY29sLWxnLTgge1xyXG4gICAgYWxpZ24tc2VsZjogZmxleC1lbmQ7XHJcblxyXG4gICAgQG1lZGlhKG1pbi13aWR0aDo3NjhweCkge1xyXG4gICAgICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5zaXRlLWJhbm5lci0tY2F0cy1yZXBvcnQgaDEge1xyXG4gICAgY29sb3I6ICNmZmZmZmY7XHJcbiAgICB0ZXh0LXNoYWRvdzogMHB4IDJweCAzcHggcmdiYSgwLDAsMCwwLjUpO1xyXG4gICAgbWFyZ2luLXRvcDogMTAwcHg7XHJcbiAgICBmb250LWZhbWlseTogJGNhdHMtbWVkO1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcclxuICAgIGZvbnQtc2l6ZTogNTBweDtcclxuICAgIG1hcmdpbi1ib3R0b206IDAuMjVlbTtcclxuXHJcbiAgICBAbWVkaWEobWluLXdpZHRoOjc2OHB4KSB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMTAwcHg7XHJcbiAgICAgICAgZm9udC1zaXplOiA1dnc7XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhKG1pbi13aWR0aDoxMDI0cHgpIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAyMDBweDtcclxuICAgICAgICBmb250LXNpemU6IDV2dztcclxuICAgIH1cclxufVxyXG5cclxuLnNpdGUtYmFubmVyLS1jYXRzLXJlcG9ydCAuYnRuLCAuYmctbW9ybmluZy10YW5nZXJpbmUgLmJ0biB7XHJcbiAgICBwb3NpdGlvbjogaW5pdGlhbDtcclxuICAgIHRvcDogYXV0bztcclxuICAgIGJvdHRvbTogYXV0bztcclxuICAgIHJpZ2h0OiBhdXRvO1xyXG4gICAgdHJhbnNmb3JtOiBub25lO1xyXG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMHB4O1xyXG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDBweDtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIGZvbnQtZmFtaWx5OiAkY2F0cztcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMWVtO1xyXG5cclxuICAgIEBtZWRpYShtaW4td2lkdGg6NzY4cHgpIHtcclxuICAgICAgICB3aWR0aDogYXV0bztcclxuICAgIH1cclxufVxyXG5cclxuLnNpdGUtYmFubmVyLS1jYXRzLXJlcG9ydCAuYXJyb3ctZG93bi1pY29uIHtcclxuICAgIGZvbnQtc2l6ZTogNGVtO1xyXG4gICAgY29sb3I6ICNmZmZmZmY7XHJcbiAgICB0ZXh0LXNoYWRvdzogMHB4IDJweCAzcHggcmdiYSgwLDAsMCwwLjUpO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgY29sb3I6ICNmY2MzMmE7XHJcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XHJcbiAgICB9XHJcblxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgQGluY2x1ZGUgaWNvbihjaGV2LWRvd24pO1xyXG4gICAgfVxyXG59XHJcblxyXG4uY3JzX19yaHMtaW50cm9fd3JhcHBlciB7XHJcbiAgICBAbWVkaWEobWluLXdpZHRoOjEwMjRweCkge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICByaWdodDogMiU7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAzOSU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gICAgfVxyXG59XHJcblxyXG4uY3JzX19yaHMtbGctNF93cmFwcGVyIHtcclxuICAgIEBtZWRpYShtaW4td2lkdGg6MTAyNHB4KSB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIG1heC13aWR0aDogMzElO1xyXG4gICAgICAgIGxlZnQ6IDY2LjY2JTtcclxuICAgICAgICBib3R0b206IC0xMCU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jcnNfX3Jocy1sZy02X3dyYXBwZXIge1xyXG4gICAgQG1lZGlhKG1pbi13aWR0aDoxMDI0cHgpIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAzNSU7XHJcbiAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgbGVmdDogNTUlO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAlLCAtNTAlKTtcclxuICAgIH1cclxufVxyXG5cclxuLmNyc19fbGhzLWxnLTZfd3JhcHBlciB7XHJcbiAgICBAbWVkaWEobWluLXdpZHRoOjEwMjRweCkge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICBtYXgtd2lkdGg6IDM1JTtcclxuICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICBsZWZ0OiAxMCU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCUsIC01MCUpO1xyXG4gICAgfVxyXG59XHJcblxyXG4uY2F0cy1pbi10aGUtbmlnaHQtZml4IHtcclxuICAgIHRvcDogYXV0bztcclxuICAgIGJvdHRvbTogMCU7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwJSwgMCUpO1xyXG59XHJcblxyXG4uY3JzX19saHMtbGctNF93cmFwcGVyIHtcclxuICAgIEBtZWRpYShtaW4td2lkdGg6MTAyNHB4KSB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIG1heC13aWR0aDogMjMuMzMlO1xyXG4gICAgICAgIGxlZnQ6IDEwJTtcclxuICAgICAgICBib3R0b206IC0yMCU7XHJcbiAgICB9XHJcbn1cclxuLyogU1RBVFMgU0xJREUgKi9cclxuLmNhdHMtcmVwb3J0X19zdGF0cyB7XHJcbiAgICB0ZXh0LXNoYWRvdzogMnB4IDJweCAycHggcmdiYSgwLDAsMCwwLjIpO1xyXG5cclxuICAgIHVsIHtcclxuICAgICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgbGkge1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgIGZsb2F0OiBub25lO1xyXG4gICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgfVxyXG5cclxuICAgIGxpOmJlZm9yZSB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG59XHJcblxyXG4uY2F0cy1yZXBvcnRfX3N0YXRzIGltZyB7XHJcbiAgICBwYWRkaW5nOiAyZW07XHJcblxyXG4gICAgQG1lZGlhKG1pbi13aWR0aDoxMDI0cHgpIHtcclxuICAgICAgICBwYWRkaW5nOiAwZW07XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jYXRzLXJlcG9ydF9fc3RhdHMgLmxhcmdlci10ZXh0IHtcclxuICAgIGZvbnQtZmFtaWx5OiAnYmFybWVuby1tZWRpdW0nO1xyXG5cclxuICAgIEBtZWRpYShtaW4td2lkdGg6MTAyNHB4KSB7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcclxuICAgICAgICBmb250LXNpemU6IDMwcHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jYXRzLXJlcG9ydF9fc3RhdHMgbGkge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMWVtO1xyXG4gICAgLyogICAgQG1lZGlhKG1pbi13aWR0aDoxMDI0cHgpIHtcclxuICAgICAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICB9Ki9cclxufVxyXG4vKiBRVU9URSBTTElERSAqL1xyXG4uanMtY2F0cy1yZXBvcnQtcXVvdGVzLXNsaWNrIHtcclxuICAgIHBhZGRpbmctYm90dG9tOiAxLjVlbTtcclxuICAgIG1hcmdpbjogMDtcclxufVxyXG5cclxuLmNhdHMtcmVwb3J0LXNsaWRlX19xdW90ZS1ibG9jayB7XHJcbiAgICBwYWRkaW5nOiAzZW0gMGVtIDFlbTtcclxufVxyXG5cclxuLmNhdHMtcmVwb3J0LXNsaWRlX19xdW90ZS1ibG9jayBwIHtcclxuICAgIHBhZGRpbmc6IDBlbSAxNnB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcclxuICAgIGZvbnQtZmFtaWx5OiAnYmFybWVuby1yb21hbicsIEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XHJcblxyXG4gICAgQG1lZGlhKG1pbi13aWR0aDoxMDI0cHgpIHtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgfVxyXG59XHJcblxyXG4uY2F0cy1yZXBvcnQtc2xpZGVfX3F1b3RlLWJsb2NrIHAuY2F0cy1yZXBvcnQtc2xpZGVfX3F1b3RlIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHotaW5kZXg6IDEwO1xyXG5cclxuICAgIEBtZWRpYShtaW4td2lkdGg6MTAyNHB4KSB7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAzNnB4O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjRweDtcclxuICAgIH1cclxufVxyXG4uY2F0cy1yZXBvcnQtc2xpZGVfX3F1b3RlOmFmdGVyIHtcclxuICAgIGNvbnRlbnQ6ICcgJztcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZykgdHJhbnNsYXRlKC0zcHgsLThweCk7XHJcbiAgICBoZWlnaHQ6IDMycHg7XHJcbiAgICB3aWR0aDozMnB4O1xyXG4gICAgei1pbmRleDogMTtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1hZ2VzL3N2Zy9yZXBvcnQtcXVvdGUtdjIuc3ZnJyk7XHJcblxyXG4vKiAgICBAbWVkaWEobWluLXdpZHRoOjEwMjRweCkge1xyXG4gICAgICAgIGxlZnQ6IDBweDtcclxuICAgIH0qL1xyXG4gICAgLyogICAgICAgIGNvbnRlbnQ6ICdcXDIwMTggXFwyMDE4JztcclxuICAgICAgICBjb2xvcjogI2Q3Y2ZjMTtcclxuICAgICAgICBmb250LXNpemU6IDZlbTtcclxuICAgICAgICBvcGFjaXR5OiAwLjc7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogLTIwcHg7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC01MHB4O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICBmb250LWZhbWlseTogXCJiYXJtZW5vLXJlZ3VsYXJcIjtcclxuICAgICAgICB6LWluZGV4OiAtMTtcclxuICAgICAgICBsZXR0ZXItc3BhY2luZzogLThweDtcclxuXHJcbiAgICAgICAgQG1lZGlhKG1pbi13aWR0aDoxMDI0cHgpIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiA1ZW07XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC0yMHB4O1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLTU2cHg7XHJcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAtMTBweDtcclxuICAgICAgICB9Ki9cclxufVxyXG4uY2F0cy1yZXBvcnQtc2xpZGVfX3F1b3RlOmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiAnICc7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDBweDtcclxuICAgIGxlZnQ6IC0xNnB4O1xyXG4gICAgd2lkdGg6IDMycHg7XHJcbiAgICBoZWlnaHQ6IDMycHg7XHJcbiAgICB6LWluZGV4OiAxO1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWFnZXMvc3ZnL3JlcG9ydC1xdW90ZS12Mi5zdmcnKTtcclxuXHJcbiAgICBAbWVkaWEobWluLXdpZHRoOjEwMjRweCkge1xyXG4gICAgICAgIGxlZnQ6IDBweDtcclxuICAgIH1cclxuICAgIC8qICAgICAgICBjb250ZW50OiAnXFwyMDE4IFxcMjAxOCc7XHJcbiAgICAgICAgY29sb3I6ICNkN2NmYzE7XHJcbiAgICAgICAgZm9udC1zaXplOiA2ZW07XHJcbiAgICAgICAgb3BhY2l0eTogMC43O1xyXG4gICAgICAgIG1hcmdpbi10b3A6IC0yMHB4O1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtNTBweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMTtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiYmFybWVuby1yZWd1bGFyXCI7XHJcbiAgICAgICAgei1pbmRleDogLTE7XHJcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC04cHg7XHJcblxyXG4gICAgICAgIEBtZWRpYShtaW4td2lkdGg6MTAyNHB4KSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogNWVtO1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtMjBweDtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC01NnB4O1xyXG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLTEwcHg7XHJcbiAgICAgICAgfSovXHJcbn1cclxuXHJcbi5jYXRzLXJlcG9ydC1zbGlkZV9faW5mby1ibG9jayB7XHJcbiAgICBwYWRkaW5nOiAzZW0gMWVtIDJlbSAxZW07XHJcblxyXG4gICAgQG1lZGlhKG1pbi13aWR0aDogJGxhcmdlKSB7XHJcbiAgICAgICAgcGFkZGluZzogM2VtIDFlbSAyZW0gMGVtO1xyXG4gICAgfVxyXG59XHJcblxyXG4uY2F0cy1yZXBvcnQtc2xpZGVfX2luZm8tYmxvY2sgaDQge1xyXG4gICAgZm9udC1mYW1pbHk6ICRjYXRzLW1lZDtcclxuICAgIGZvbnQtc2l6ZTogMjRweDtcclxuXHJcbiAgICBAbWVkaWEobWluLXdpZHRoOiAkbGFyZ2UpIHtcclxuICAgICAgICBmb250LXNpemU6IDMwcHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jYXRzLXJlcG9ydC1zbGlkZV9faW5mby1ibG9jayBwIHtcclxuICAgIGZvbnQtZmFtaWx5OiAkY2F0cztcclxuXHJcbiAgICBAbWVkaWEobWluLXdpZHRoOiAkbGFyZ2UpIHtcclxuICAgICAgICBmb250LXNpemU6IDMwcHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDM2cHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbiNpbnBhZ2UtZmxvYXRpbmctbWVudSB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG5cclxuICAgIEBtZWRpYShtaW4td2lkdGg6ICR4TGFyZ2UpIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRibGFjaywgMC44NSk7XHJcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgICAgIGxlZnQ6IDAlO1xyXG4gICAgICAgIHRvcDogNTUlO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICAgICAgICB6LWluZGV4OiAxMDAwO1xyXG4gICAgICAgIC8vIFVzZWQgdG8gZml4IElFIGlzc3VlXHJcbiAgICAgICAgQGluY2x1ZGUgaWUtZmFsbGJhY2soJHhMYXJnZSkge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLm1lbnUtbGluay1zcGFjZXIge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB0b3A6IC0xNTBweDtcclxuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxufVxyXG5cclxuI2lucGFnZS1mbG9hdGluZy1tZW51OmhvdmVyIGEge1xyXG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxufVxyXG5cclxuI2lucGFnZS1mbG9hdGluZy1tZW51IGEge1xyXG4gICAgbWFyZ2luLWxlZnQ6IC05OTk5cHg7XHJcbiAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xyXG59XHJcblxyXG4jaW5wYWdlLWZsb2F0aW5nLW1lbnUgdWwgbGk6YmVmb3JlIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcclxufVxyXG5cclxuI2lucGFnZS1mbG9hdGluZy1tZW51IHVsIGxpIHVsIHtcclxuICAgIG1hcmdpbi1sZWZ0OiAtMzBweDtcclxufVxyXG5cclxuI2lucGFnZS1mbG9hdGluZy1tZW51IHVsIGxpIHVsIGxpOmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgd2lkdGg6IDVweDtcclxuICAgIGhlaWdodDogNXB4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgdG9wOiAxNXB4O1xyXG4gICAgbGVmdDogMTBweDtcclxufVxyXG5cclxuI2lucGFnZS1mbG9hdGluZy1tZW51IGxpLmlzLWFjdGl2ZTpiZWZvcmUge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXllbGxvdztcclxufVxyXG5cclxuI2lucGFnZS1mbG9hdGluZy1tZW51IHVsIGxpIHVsIGEge1xyXG4gICAgZm9udC1zaXplOiAwLjc1ZW07XHJcbn1cclxuXHJcbiNpbnBhZ2UtZmxvYXRpbmctbWVudSAuaXMtYWN0aXZlID4gYSB7XHJcbiAgICBjb2xvcjogJGJyYW5kLXllbGxvdztcclxufVxyXG5cclxuI2lucGFnZS1mbG9hdGluZy1tZW51IC5kb3dubG9hZC1pYyB7XHJcbiAgICBsaW5lLWhlaWdodDogMS43NTtcclxuXHJcbiAgICAuZG93bmxvYWQtaWMtLWljb24ge1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogNnB4O1xyXG5cclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICB3aWR0aDogMjRweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jYXRzLXJlcG9ydC1zbGlkZS1hbmltYXRpb24tc3R5bGUtMSB7XHJcbiAgICB0cmFuc2l0aW9uOiAzMDBtcyBvcGFjaXR5LCAxMDBtcyB0cmFuc2Zvcm07XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpO1xyXG4gICAgb3BhY2l0eTogMC41O1xyXG5cclxuICAgICYuaXMtYWN0aXZlIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxufVxyXG5cclxuLmpzLWRlbGF5LW1lIGxpIHtcclxuICAgIHRyYW5zaXRpb246IDMwMG1zIG9wYWNpdHk7XHJcbn1cclxuXHJcbi5qcy1vcGFjaXR5LTAge1xyXG4gICAgb3BhY2l0eTogMDtcclxufVxyXG5cclxuLmNhdHMtcmVwb3J0LXNsaWRlLXN0aWNreSB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB0b3A6IDA7XHJcbiAgICB3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLmNhdHMtcmVwb3J0LXNsaWRlLXN0aWNreS0tcGFzdCB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IGF1dG87XHJcbiAgICBib3R0b206IDA7XHJcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAxMDBtcztcclxufVxyXG5cclxuLmNhdHMtcmVwb3J0LXNsaWRlLXN0aWNreS0tc3R1Y2sge1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgYm90dG9tOiBhdXRvO1xyXG4gICAgdG9wOiAwO1xyXG59XHJcblxyXG4uanMtc2xpZGUtaW1hZ2Uge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLmpzLXNsaWRlLWltYWdlLS1hY3RpdmUge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuXHJcbi5qcy1zbGlkZS1idWxsZXRzIGxpIHtcclxuICAgIEBtZWRpYShtaW4td2lkdGg6ICRsYXJnZSkge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogMC4zcztcclxuICAgIH1cclxufVxyXG5cclxuLmpzLXNsaWRlLWJ1bGxldHMgbGkuanMtc2xpZGUtYnVsbGV0cy0tYWN0aXZlIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbn1cclxuXHJcbi5vd25lcnNoaXAtYmxvY2sgbGkge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgcGFkZGluZy1sZWZ0OiAzOHB4ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5vd25lcnNoaXAtYmxvY2sgbGkgc3BhbiB7XHJcbiAgICB3aWR0aDogMjVweDtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIG1hcmdpbi1yaWdodDogOHB4O1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAwcHg7XHJcbiAgICBsZWZ0OiAwcHg7XHJcbn1cclxuXHJcbi5vd25lcnNoaXAtYmxvY2stLWNsci0xIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNjNzM1NDQ7XHJcbn1cclxuXHJcbi5vd25lcnNoaXAtYmxvY2stLWNsci0yIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNjYzVjNWI7XHJcbn1cclxuXHJcbi5vd25lcnNoaXAtYmxvY2stLWNsci0zIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNkYThmODY7XHJcbn1cclxuXHJcbi5vd25lcnNoaXAtYmxvY2stLWNsci00IHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNlNGI1YWQ7XHJcbn1cclxuXHJcbi5vd25lcnNoaXAtYmxvY2stLWNsci01IHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmM2RmZDc7XHJcbn1cclxuIiwiLmFhY19jYXB0aW9uIHtcclxuICAgIG1pbi1oZWlnaHQ6MzRweDtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgbWFyZ2luLXRvcDowcHggIWltcG9ydGFudDtcclxuICAgIHBhZGRpbmctcmlnaHQ6MjBweDtcclxuXHJcbn1cclxuLmZpbmRhQ2F0SW5mbyB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMkVNO1xyXG59XHJcblxyXG4uZmluZGFDYXRJbmZvX2ltYWdlIHtcclxuICAgIHdpZHRoOiAyOCU7XHJcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcclxuICAgIGhlaWdodDogMTN2dztcclxuICAgIG1heC1oZWlnaHQ6IDI1MHB4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogMWVtO1xyXG59XHJcblxyXG4uZmluZGFDYXRJbmZvX2ltYWdlLS1wbGFjZWhvbGQge1xyXG4gICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgI2YxZjFmMTtcclxufVxyXG5cclxuLmZpbmRhQ2F0SW5mb19jb250ZW50IHtcclxuICAgIHdpZHRoOiA2OCU7XHJcbiAgICBwYWRkaW5nOiAwIDFlbTtcclxufVxyXG5cclxuLmZpbmRhQ2F0SW5mb19pbmZvIHtcclxuICAgIHBhZGRpbmc6IDFlbTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICMxOUEwOUE7XHJcbiAgICBjb2xvcjogI2ZmZjtcclxuICAgIGJvcmRlci1yYWRpdXM6IDFlbTtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XHJcbiAgICBmb250LXNpemU6IDEuMjVlbTtcclxufVxyXG4uZmluZEFDYXRJbmZvX2ljb24ge1xyXG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICBmb250LXNpemU6IDI0cHg7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiA1cHg7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxufVxyXG4uZmluZEFDYXRJbmZvX2ljb246aG92ZXIge1xyXG4gICAgY29sb3I6ICNmY2MzMmE7XHJcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcclxufVxyXG4uZmluZGFDYXRJbmZvX2hlYWRpbmcge1xyXG4gICAgZm9udC1zaXplOiAxLjVlbTtcclxuICAgIHBhZGRpbmctYm90dG9tOiAxLjJyZW07XHJcbn1cclxuXHJcbkBtZWRpYShtYXgtd2lkdGg6MTAyNHB4KSB7XHJcbiAgICAuZmluZGFDYXRJbmZvX2hlYWRpbmcge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMS4yZW07XHJcbiAgICB9XHJcblxyXG4gICAgLmZpbmRhQ2F0SW5mb19pbmZvIHtcclxuICAgICAgICBmb250LXNpemU6IDEuMmVtO1xyXG4gICAgfVxyXG5cclxuICAgIC5maW5kYUNhdEluZm8ge1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBpbml0aWFsO1xyXG4gICAgfVxyXG5cclxuICAgIC5maW5kYUNhdEluZm9faW1hZ2Uge1xyXG4gICAgICAgIGhlaWdodDogYXV0bztcclxuICAgIH1cclxufVxyXG5cclxuQG1lZGlhIChtYXgtd2lkdGg6NzY4cHgpIHtcclxuICAgIC5maW5kYUNhdEluZm8ge1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBpbml0aWFsO1xyXG4gICAgfVxyXG5cclxuICAgIC5maW5kYUNhdEluZm9faW1hZ2Uge1xyXG4gICAgICAgIHdpZHRoOiA0MCU7XHJcbiAgICB9XHJcblxyXG4gICAgLmZpbmRhQ2F0SW5mb19jb250ZW50IHtcclxuICAgICAgICB3aWR0aDogNjAlO1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDo2MDBweCkge1xyXG4gICAgLmZpbmRhQ2F0SW5mbyB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB9XHJcblxyXG4gICAgLmZpbmRhQ2F0SW5mb19jb250ZW50IHtcclxuICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgfVxyXG5cclxuICAgIC5maW5kYUNhdEluZm9faW1hZ2Uge1xyXG4gICAgICAgIGhlaWdodDogMjUwcHg7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMWVtO1xyXG4gICAgfVxyXG59XHJcbiNyZWFjdENhdHMgLm1lZGlhLS1saW5rIHtcclxuICAgIGJhY2tncm91bmQ6ICRsaWdodC1wdXJwbGU7XHJcbiAgICBjb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuXHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogJGxpZ2h0LXB1cnBsZSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgIGEge1xyXG4gICAgICAgIGN1cnNvcjogcG9pbnRlciAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG59XHJcbiIsIiNTcG9uc29yUG9ydGFsQm9keSB7XHJcbiAgICAvKiBMYXlvdXQgKi9cclxuICAgIC5ncmlkLWRvdWJsZS10aGlyZCB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjlweCkge1xyXG4gICAgICAgICAgICB3aWR0aDogNjYuNjYlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuZ3JpZC1kb3VibGUtcXVhcnRlciB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjlweCkge1xyXG4gICAgICAgICAgICB3aWR0aDogNTAlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8qIEhlYWRlciAqL1xyXG4gICAgLmhlYWRlci1ncm91cF93cmFwcGVyIHtcclxuICAgICAgICAuaGVhZGVyLWdyb3VwX2J1dHRvbnMtbG9nby1zb2NpYWwge1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xyXG5cclxuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRuYXZpZ2F0aW9uLWJyZWFrcG9pbnQpIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAzNXB4O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuaGVhZGVyLWdyb3VwX2J1dHRvbnMge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiAxMTZweDtcclxuXHJcbiAgICAgICAgICAgICAgICBoMSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDYwMHB4KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5oZWFkZXItZ3JvdXBfX2xvZ28gaW1nIHtcclxuICAgICAgICAgICAgbWFyZ2luOiBpbml0aWFsO1xyXG5cclxuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRuYXZpZ2F0aW9uLWJyZWFrcG9pbnQpIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbjogYXV0bztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmhlYWRlci1ncm91cF9fc29jaWFsLXNlYXJjaCB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZW5kO1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogZW5kO1xyXG5cclxuICAgICAgICAgICAgLnNvY2lhbCB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG5cclxuICAgICAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbmF2aWdhdGlvbi1icmVha3BvaW50KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5sb2dpbiB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA4cHg7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLnNocmluay1oZWFkZXIge1xyXG4gICAgICAgICAgICAuaGVhZGVyLWdyb3VwX2J1dHRvbnMtbG9nby1zb2NpYWwge1xyXG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxMi41cHg7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5oZWFkZXItZ3JvdXBfX3NvY2lhbC1zZWFyY2gge1xyXG4gICAgICAgICAgICAgICAgZmxleC13cmFwOiBub3dyYXA7XHJcblxyXG4gICAgICAgICAgICAgICAgLnNvY2lhbCB7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAubG9naW4ge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDBweDtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8qIExhbmRpbmcgUGFnZSAtIFdlbGNvbWUgUGFuZWwgKi9cclxuICAgIC5zcC13ZWxjb21lLWdyaWQge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG5cclxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XHJcbiAgICAgICAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnNwLXdlbGNvbWUtbmFtZSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBhbGlnbi1zZWxmOiBzdGFydDtcclxuICAgICAgICAgICAgbWluLXdpZHRoOiAzMCU7XHJcblxyXG4gICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJG5hdmlnYXRpb24tYnJlYWtwb2ludCkge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgICAgICAgICAgICBhbGlnbi1zZWxmOiBzdGFydDtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDBweCAyNHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuXHJcblxyXG4gICAgICAgIC5zcC13ZWxjb21lLXRleHQge1xyXG4gICAgICAgICAgICAvKndpZHRoOiAxMDAlOyovXHJcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxNnB4O1xyXG5cclxuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuc3Atd2VsY29tZS1kYXRhIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuXHJcbiAgICAgICAgLnNwLXdlbGNvbWUtZGF0YS1pdGVtIHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgbWluLXdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEyLjVweDtcclxuXHJcbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjlweCkge1xyXG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiA1MCU7XHJcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDUwJTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRuYXZpZ2F0aW9uLWJyZWFrcG9pbnQpIHtcclxuICAgICAgICAgICAgICAgIG1pbi13aWR0aDogMjAlO1xyXG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAyMCU7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGJyYW5kLXB1cnBsZTtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMzZweDtcclxuICAgICAgICAgICAgICAgIG1hcmdpbjogMHB4IDhweCAwcHggMHB4O1xyXG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiAzNnB4O1xyXG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogMzZweDtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuXHJcbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYnJhbmQtcGluaztcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgcCB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IDBweDtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMC45ZW07XHJcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS4yNWVtO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA4cHg7XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8qIExhbmRpbmcgUGFnZSAtIFlvdXIgUGVucyAqL1xyXG4gICAgLnNwLXlvdXItcGVuLWJnLWltYWdlIHtcclxuICAgICAgICBtaW4taGVpZ2h0OiAzNzVweDtcclxuXHJcbiAgICAgICAgZGl2IHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDMwMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuc3AteW91ci1wZW4tZGl2aWRlciB7XHJcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDBweDtcclxuXHJcbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OXB4KSB7XHJcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgJGJyYW5kLXB1cnBsZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnNwLXlvdXItcGVuLXN0YXRzIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcclxuXHJcbiAgICAgICAgZGl2IHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHJcbiAgICAgICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICRicmFuZC1wdXJwbGU7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDI2cHg7XHJcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjZweDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgc3Ryb25nIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTZweDtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA4cHg7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDI0cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAvKiBMYW5kaW5nIFBhZ2UgLSBNeSBDYXQgQ29tbXVuaXR5ICovXHJcbiAgICAuc3AtbXktY29tbXVuaXR5LW5hdiB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHJcbiAgICAgICAgdWwge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG5cclxuICAgICAgICAgICAgbGkge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMHB4IDEycHg7XHJcblxyXG4gICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRuYXZpZ2F0aW9uLWJyZWFrcG9pbnQpIHtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwcHggMjRweDtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgJHdoaXRlO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8qY29sb3I6ICRicmFuZC1waW5rOyovXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkYnJhbmQtcGluaztcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJyYW5kLXBpbms7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkYnJhbmQtcGluaztcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnNwLW15LWNvbW11bml0eS1pdG0ge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcclxuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkbGlnaHQtcHVycGxlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnNwLW15LWNvbW11bml0eS1iZy1pbWFnZSB7XHJcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDMwMHB4O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XHJcblxyXG4gICAgICAgICAgICBkaXYge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogMzAwcHg7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwcHg7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuc3AtbXktY29tbXVuaXR5LWl0bS10ZXh0IHtcclxuICAgICAgICAgICAgcGFkZGluZzogMTJweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAvKiBIb21lcGFnZSBDYXJvdXNlbCAqL1xyXG4gICAgLnNwLW15LWNvbW11bml0eS1jYXJvdXNlbCB7XHJcbiAgICAgICAgLnNsaWNrLXByZXYge1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcclxuXHJcbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxNDAwcHgpIHtcclxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0xNTAlLCAtNTAlKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnNsaWNrLW5leHQge1xyXG4gICAgICAgICAgICByaWdodDogLTE1cHg7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDUwJSwgLTUwJSk7XHJcblxyXG4gICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTQwMHB4KSB7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgxNTAlLCAtNTAlKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnNsaWNrLWRvdHMge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyNHB4O1xyXG5cclxuICAgICAgICAgICAgbGkgYnV0dG9uOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGxpLnNsaWNrLWFjdGl2ZSBidXR0b246YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1wdXJwbGU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAvKiBQZW4gUGFnZSBDcm91c2VsICovXHJcbiAgICAuc3AtbXktY29tbXVuaXR5LWNhcm91c2VsLXByZXZpb3VzLWd1ZXN0cyB7XHJcbiAgICAgICAgLnNsaWNrLXByZXYge1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcclxuXHJcbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxNDAwcHgpIHtcclxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0xNTAlLCAtNTAlKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnNsaWNrLW5leHQge1xyXG4gICAgICAgICAgICByaWdodDogLTE1cHg7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDUwJSwgLTUwJSk7XHJcblxyXG4gICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTQwMHB4KSB7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgxNTAlLCAtNTAlKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuc3AtbXktY29tbXVuaXR5LXN0YXRzIHtcclxuICAgICAgICBwYWRkaW5nLXRvcDogNHB4O1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cclxuICAgICAgICBkaXYge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG5cclxuICAgICAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJyYW5kLXBpbms7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDI2cHg7XHJcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjZweDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgc3Ryb25nIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMHB4O1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDhweDtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8qIENhdCBDb21tdW5pdHkgUG9wIFVwKi9cclxuICAgIC5zcC1jb21tdW5pdHktcG9wdXAtd3JhcHBlciB7XHJcbiAgICAgICAgbWF4LWhlaWdodDogOTAlO1xyXG4gICAgICAgIHBhZGRpbmc6IDBweDtcclxuICAgICAgICAvKm1heC13aWR0aDogMTIwMHB4OyovXHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICAgICAuc3AtY29tbXVuaXR5LXBvcHVwIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xyXG5cclxuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OXB4KSB7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuc3AtY29tbXVuaXR5LXBvcHVwLWJnLWltYWdlIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGNvbnRlbnRzO1xyXG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogMjAwcHg7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XHJcblxyXG4gICAgICAgICAgICAgICAgZGl2IHtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICAgICAgLypiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47Ki9cclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgbWluLWhlaWdodDogMzAwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwcHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5jb21tZW50cy1ibG9jay13cmFwcGVyIHtcclxuXHJcbiAgICAgICAgICAgICAgICAuY29tbWVudHMtYmxvY2stdXBwZXItc2VjdGlvbiB7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIC5zcC1teS1jb21tdW5pdHktaW50cm8ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJyYW5kLXB1cnBsZTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIC5jb21tZW50LWJsb2NrOm50aC1jaGlsZChvZGQpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGxpZ2h0LXB1cnBsZTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgLmNvbW1lbnRzLWJsb2NrLWxvd2VyLXNlY3Rpb24ge1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkYnJhbmQtcHVycGxlO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAuY29tbWVudC1ib3gge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFlNmZhO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgb3V0bGluZTogMXB4IHNvbGlkICNkYWMwZDggIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIC5jb21tZW50LWJveDpmb2N1cyB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG91dGxpbmU6IDFweCBzb2xpZCAjZGFjMGQ4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAuYnRuIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiA2cHggMTRweDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OXB4KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcclxuICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdy15OiBoaWRkZW47XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAuY29tbWVudHMtYmxvY2stdXBwZXItc2VjdGlvbiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogNzUlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdy14OiBoaWRkZW47XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIC5jb21tZW50cy1ibG9jay1sb3dlci1zZWN0aW9uIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAyNSU7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIC5zcC1teS1jb21tdW5pdHktc3RhdHMge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLyogTGFuZGluZyBQYWdlIC0gTmV3c2xldHRlciAqL1xyXG4gICAgLnNwLW15LW5ld3NsZXR0ZXItYmctaW1hZ2Uge1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IDMwMHB4O1xyXG5cclxuICAgICAgICBkaXYge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDMwMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8qIFBlbiBQYWdlICovXHJcbiAgICAuc3AtcGVuLXBhZ2UtdmlkZW8ge1xyXG4gICAgICAgIGEge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBzcGFuIHtcclxuICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgc3Ryb25nIHtcclxuICAgICAgICAgICAgY29sb3I6ICRicmFuZC1waW5rO1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDBweDtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDhweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBzdHJvbmcge1xyXG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnNwLXBlbi1wYWdlLWxpa2Uge1xyXG4gICAgICAgIGEge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcblxyXG4gICAgICAgICAgICBzcGFuIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkYnJhbmQtcGluaztcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjZweDtcclxuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNnB4O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBzdHJvbmcge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICRicmFuZC1waW5rO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA4cHg7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMHB4O1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIHN0cm9uZyB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYuaXMtbGlrZWQge1xyXG4gICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYnJhbmQtcHVycGxlO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIHN0cm9uZyB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRicmFuZC1waW5rO1xyXG4gICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIHN0cm9uZyB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYnJhbmQtcGluaztcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTE5NnB4KSB7XHJcbiAgICAgICAgLmpzLXlvdXItcGVucy1pdG0ge1xyXG5cclxuICAgICAgICAgICAgLmdyaWRfX2l0ZW0ge1xyXG5cclxuICAgICAgICAgICAgICAgIC5wZW4tYnRucyB7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgLndlYmNhbXMge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHN0YXJ0ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwLjVyZW0gIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnNwLXBlbi1kZXNjcmlwdGlvbiB7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyMDBweDtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxNTBweDtcclxuICAgIH1cclxuXHJcbiAgICAuc3BvbnNvci1raWRzIHtcclxuICAgICAgICAuYnRuLS1zZWNvbmRhcnkge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMUEwMDZCICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM3RTNCRTcgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmZmZmO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuanMteW91ci1wZW5zLWJ0biB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM3RTNCRTc7XHJcblxyXG4gICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnNwLXdlbGNvbWUtZGF0YS1pdGVtIHtcclxuICAgICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMUEwMDZCICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC50ZXh0LXdoaXRlIHtcclxuICAgICAgICAgICAgLmNtcy1oZWFkaW5nIHtcclxuICAgICAgICAgICAgICAgIGgyIHtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuY21zLWhlYWRpbmcge1xyXG4gICAgICAgICAgICBoMiB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogIzFBMDA2QiAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuc3Atd2VsY29tZS1uYW1lIHtcclxuICAgICAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogIzFBMDA2QiAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBoMiB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogIzFBMDA2QiAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuanMteW91ci1wZW5zLWl0bSB7XHJcbiAgICAgICAgICAgIGgzIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAjMUEwMDZCICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC50ZXh0LXB1cnBsZSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAjMUEwMDZCICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuc3AteW91ci1wZW4tc3RhdHMge1xyXG4gICAgICAgICAgICBpIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAjMUEwMDZCICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5iZy1saWdodC1ncmV5IHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0M2QkZEQTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5zcC15b3VyLXBlbi1kaXZpZGVyIHtcclxuICAgICAgICAgICAgLmJ0biB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMUEwMDZCICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzdFM0JFNztcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGUgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmJnLWdyZXkge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMUEwMDZCICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuYmctd2hpdGUgaDIge1xyXG4gICAgICAgICAgICBjb2xvcjogIzFBMDA2QiAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnNwLW15LWNvbW11bml0eS1pdG0ge1xyXG4gICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgIC5zcC1teS1jb21tdW5pdHktaXRtLXRleHQge1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNDNkJGREE7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5idG4tc2Vjb25kIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzdFM0JFNztcclxuXHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzFBMDA2QiAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnNpdGUtYmFubmVyIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzFBMDA2QiAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmNvbnRhaW5lciB7XHJcbiAgICAgICAgICAgIC5idG4ge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzFBMDA2QjtcclxuXHJcbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjN0UzQkU3ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLm1lZGlhX19pbWFnZSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMxQTAwNkIgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5tZWRpYV9fY2FwdGlvbiB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMxQTAwNkIgIWltcG9ydGFudDtcclxuXHJcbiAgICAgICAgICAgIC5idG4tLWZvdXJ0aGx5IHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAjMUEwMDZCICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5zcC1wZW4tcGFnZS1pbmZvLWJsb2NrIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzFBMDA2QiAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnNwLXBlbi1wYWdlLXZpZGVvIHtcclxuICAgICAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGUgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgc3Ryb25nIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuc3AtcGVuLXBhZ2UtbGlrZSB7XHJcbiAgICAgICAgICAgIHN0cm9uZyB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogIzFBMDA2QiAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuc2xpY2stcHJldiB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMxQTAwNkIgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5zbGljay1uZXh0IHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzFBMDA2QiAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnNwLW15LWNvbW11bml0eS1uYXYge1xyXG4gICAgICAgICAgICB1bCB7XHJcbiAgICAgICAgICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgICAgICAgICAgLmFjdGl2ZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICM3RTNCRTcgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjN0UzQkU3ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAjN0UzQkU3ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnNwLXBlbi1wYWdlLS1zdGF0cyB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjRweDtcclxuICAgICAgICBtYXJnaW4tdG9wOiAxZW07XHJcbiAgICB9XHJcblxyXG4gICAgLnNwLXBlbi1wYWdlLWNvbW1lbnQtYm94IHtcclxuICAgICAgICAuY29tbWVudC1ib3gge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFlNmZhO1xyXG4gICAgICAgICAgICBjb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgICAgICAgb3V0bGluZTogMXB4IHNvbGlkICNkYWMwZDggIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5jb21tZW50LWJveDpmb2N1cyB7XHJcbiAgICAgICAgICAgIG91dGxpbmU6IDFweCBzb2xpZCAjZGFjMGQ4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuYnRuIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nOiA2cHggMTRweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnNwLXBlbi1wYWdlLWNvbW1lbnRzLXNvcnRpbmcgYSB7XHJcbiAgICAgICAgY29sb3I6ICRicmFuZC1waW5rO1xyXG4gICAgICAgIHBhZGRpbmc6IDBweCAxMnB4O1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgICAgJjpmaXJzdC1vZi10eXBlIHtcclxuICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgdG9wOiAwcHg7XHJcbiAgICAgICAgICAgICAgICByaWdodDogLTFweDtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMjBweDtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRicmFuZC1waW5rO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDFweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgICAgICAgICBjb2xvcjogJGJyYW5kLXB1cnBsZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYuYWN0aXZlIHtcclxuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5zcC1wZW4tcGFnZS1jb21tZW50cyB7XHJcbiAgICAgICAgbWF4LWhlaWdodDogMjUwcHg7XHJcblxyXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjlweCkge1xyXG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiA0NDhweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIG92ZXJmbG93LXk6IGF1dG87XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRicmFuZC1wdXJwbGU7XHJcblxyXG4gICAgICAgIC5jb21tZW50LWJsb2NrIHtcclxuICAgICAgICAgICAgcCB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICY6bnRoLWNoaWxkKG9kZCkge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGxpZ2h0LXB1cnBsZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iXX0= */
