
@-webkit-viewport {
  width: device-width; }

@-moz-viewport {
  width: device-width; }

@-ms-viewport {
  width: device-width; }

@-o-viewport {
  width: device-width; }

@viewport {
  width: device-width; }

/**
 * Eric Meyer's Reset CSS v2.0 (http://meyerweb.com/eric/tools/css/reset/)
 * http://cssreset.com
 */

/* CLEAR & FLOATS */
.left {
  float: left !important; }

.right {
  float: right !important; }

.clearfix:after {
  clear: both;
  display: table;
  content: ''; }

@media only screen and (max-width: 641px) {
  .nomobile {
    display: none; } }


.grid_row {
  width: 100%;
  overflow: visible; }
  .grid_row:after {
    clear: both;
    display: table;
    content: ''; }

.grid1 {
  float: left;
  width: 31%;
  width: -moz-calc((100% / 3) - 25px);
  width: -o-calc((100% / 3) - 25px);
  width: -webkit-calc((100% / 3) - 25px);
  width: calc((100% / 3) - 25px); }
  .grid1:nth-child(3n) {
    margin-right: 0; }
  .case_study_footer .grid1 {
    margin-left: 50%; }
    @media only screen and (max-width: 641px) {
      .case_study_footer .grid1 {
        margin-left: 0; } }

.grid2 {
  float: left;
  width: 64%;
  width: -moz-calc(((100% / 3) * 2) - 25px);
  width: -o-calc(((100% / 3) * 2) - 25px);
  width: -webkit-calc(((100% / 3) * 2) - 25px);
  width: calc(((100% / 3) * 2) - 25px); }
  .grid2 .half {
    float: left;
    width: 50%;
    width: -moz-calc(50% - 25px);
    width: -o-calc(50% - 25px);
    width: -webkit-calc(50% - 25px);
    width: calc(50% - 25px);
    margin-right: 50px; }
    .grid2 .half:nth-of-type(2n) {
      margin-right: 0; }
    @media only screen and (max-width: 641px) {
      .grid2 .half {
        width: 100%;
        margin-right: 0;
        margin-bottom: 22px; } }

.grid3 {
  clear: both;
  width: 100%; }

@media only screen and (max-width: 641px) {
  .grid1, .grid2, .grid3 {
    width: 100%;
    margin-bottom: 22px;
    margin-right: 0; } }

.grid1, .grid2 {
  margin-right: 50px;
  overflow: visible; }
  .grid1:last-child, .grid2:last-child {
    margin-right: 0;
    margin-bottom: 0; }

.spacer {
  height: 1em; }
  @media only screen and (max-width: 641px) {
    .spacer {
      display: none; } }

.picture-grid_row {
  width: 100%;
  width: -moz-calc(100% + 10px);
  width: -o-calc(100% + 10px);
  width: -webkit-calc(100% + 10px);
  width: calc(100% + 10px);
  margin-left: -5px; }
  .picture-grid_row:after {
    clear: both;
    display: table;
    content: ''; }

.picture-grid1 {
  float: left;
  width: 33%;
  width: -moz-calc((100% / 3));
  width: -o-calc((100% / 3));
  width: -webkit-calc((100% / 3));
  width: calc((100% / 3));
  padding-right: 5px;
  padding-left: 5px;
  padding-bottom: 10px; }
  .picture-grid1.spaced-grid:first-child {
    padding-right: 2.5em;
    padding-left: 0; }
    @media only screen and (max-width: 641px) {
      .picture-grid1.spaced-grid:first-child {
        padding-left: 0;
        padding-right: 0; } }
  .picture-grid1.spaced-grid:nth-child(2) {
    padding-left: 1.25em;
    padding-right: 1.25em; }
    @media only screen and (max-width: 641px) {
      .picture-grid1.spaced-grid:nth-child(2) {
        padding-left: 0;
        padding-right: 0; } }
  .picture-grid1.spaced-grid:last-child {
    padding-left: 2.5em;
    padding-right: 0; }
    @media only screen and (max-width: 641px) {
      .picture-grid1.spaced-grid:last-child {
        padding-left: 0;
        padding-right: 0; } }

.picture-grid2 {
  float: left;
  width: 66%;
  width: -moz-calc(((100% / 3) * 2));
  width: -o-calc(((100% / 3) * 2));
  width: -webkit-calc(((100% / 3) * 2));
  width: calc(((100% / 3) * 2));
  padding-right: 5px;
  padding-left: 5px;
  padding-bottom: 10px; }

.picture-gridhalf {
  float: left;
  width: 50%;
  padding-right: 5px;
  padding-left: 5px;
  padding-bottom: 10px; }

.picture-grid3 {
  clear: both;
  width: 100%;
  padding: 0 5px 10px 5px; }
  .picture-grid3:last-child {
    padding-bottom: 0; }

@media only screen and (max-width: 641px) {
  .picture-grid1, .picture-grid2, .picture-grid3 {
    width: 100%;
    margin-right: 0; } }

.column-2 {
  -webkit-column-count: 2;
  -moz-column-count: 2;
  column-count: 2;
  -webkit-column-gap: 50px;
  -moz-column-gap: 50px;
  column-gap: 50px; }
  @media only screen and (max-width: 641px) {
    .column-2 {
      -webkit-column-count: 1;
      -moz-column-count: 1;
      column-count: 1; } }

.horiscroll {
  cursor: -webkit-grab !important;
  cursor: -moz-grab !important; }
  .horiscroll.horiscroll-moving-left, .horiscroll.horiscroll-moving-right {
    cursor: -webkit-grabbing !important;
    cursor: -moz-grabbing !important; }

.padded {
  padding: 3em; }
  @media only screen and (max-width: 641px) {
    .padded {
      padding: 25px; } }

.padded-horizontal {
  padding-left: 3em;
  padding-right: 3em; }
  @media only screen and (max-width: 641px) {
    .padded-horizontal {
      padding-left: 25px;
      padding-right: 25px; } }

.padded-vertical {
  padding-top: 3em;
  padding-bottom: 3em; }
  @media only screen and (max-width: 641px) {
    .padded-vertical {
      padding-top: 25px;
      padding-bottom: 25px; } }

.padded-top {
  padding-top: 3em; }
  @media only screen and (max-width: 641px) {
    .padded-top {
      padding-top: 25px; } }

.padded-top-small {
  padding-top: 0.4em; }

.padded-top-casestudy {
  padding-top: 10em; }
  @media only screen and (max-width: 641px) {
    .padded-top-casestudy {
      padding-top: 13em; } }

.padded-bottom {
  padding-bottom: 3em; }
  @media only screen and (max-width: 641px) {
    .padded-bottom {
      padding-bottom: 25px; } }

.padded-bottom-large {
  padding-bottom: 6em; }

.padded-vertical-large {
  padding-top: 13em;
  padding-bottom: 13em; }
  @media only screen and (max-width: 641px) {
    .padded-vertical-large {
      padding-top: 150px;
      padding-bottom: 150px; } }

.margin-bottom {
  margin-bottom: 3em; }
  @media only screen and (max-width: 641px) {
    .margin-bottom {
      margin-bottom: 25px; } }

.table_row {
  display: table;
  width: 100%; }
  .table_row .table_cell {
    display: table-cell; }

.height-60 {
  min-height: 60vh; }
  .height-60.exact {
    height: 60vh; }

.height-80 {
  min-height: 80vh; }
  .height-80.exact {
    height: 80vh; }
    @media only screen and (min-width: 642px) and (max-width: 801px) {
      .height-80.exact.case-study-ipad-landscape-screens {
        min-height: 0;
        height: 53vh; } }
    @media only screen and (max-width: 641px) {
      .height-80.exact.case-study-ipad-landscape-screens {
        min-height: 0;
        height: 12.5rem; } }
    @media only screen and (min-width: 642px) and (max-width: 801px) {
      .height-80.exact.case-study-hero-slides {
        min-height: 0;
        height: 50vh; } }
    @media only screen and (max-width: 641px) {
      .height-80.exact.case-study-hero-slides {
        min-height: 0;
        height: 15rem; } }

.height-95 {
  min-height: 100vh; }
  .height-95.exact {
    height: 100vh; }

.bottom-space {
  margin-bottom: 16vh; }

/* Z-INDEX & LAYERS */
#loader-logo {
  z-index: 1000; }

#loader, #initial-loader {
  z-index: 999; }

#nclud-logo, #mobile-menu-button {
  z-index: 998; }

nav {
  z-index: 997; }

.slideshow-left, .slideshow-right, .mobile-carousel-phone {
  z-index: 996; }

.header-text, .header-subtext, .form-dropdown-list, .case-study-featured-text, .device_screen {
  z-index: 10; }

.home-tagline, .header-subtext, .header-category, .case-study-featured-image, .device_container {
  z-index: 9; }

.staff-description-block {
  z-index: 6; }

.staff-bio, .client-list {
  z-index: 5; }

.staff-photo-hover, .girlup-tweet-single {
  z-index: 4; }

.case-study-featured-text, .girlup-tweet-bkg {
  z-index: 2; }

.case-study-featured-image {
  z-index: 1; }

/* GLYPHS */



#site-nav a {
  font-family: "NeueHaasBold", Helvetica, sans-serif;
  font-weight: normal;
  color: white;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-decoration: none;
  font-size: 0.85em;
  white-space: nowrap; }
  #site-nav a .data-number {
    font-size: 2.25em; }
    @media only screen and (max-width: 641px) {
      #site-nav a .data-number {
        font-size: 1em; } }
  @media only screen and (max-width: 641px) {
    #site-nav a {
      font-size: 2.3em; } }

.header-number .data-number {
  pointer-events: none;
  font-family: "NeueHaasBold", Helvetica, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  color: #ac2eff;
  letter-spacing: -0.025em;
  font-size: 20vw; }
.header-number.eliza .data-number {
  color: #1ff042; }

.large-cta {
  color: #1ff042;
  text-decoration: underline;
  font-family: "NeueHaasBold", Helvetica, sans-serif;
  font-weight: normal;
  font-size: 2.25em;
  position: relative; }

.home-tagline {
  font-family: "NeueHaasBold", Helvetica, sans-serif;
  font-weight: normal;
  color: white;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 5.25em;
  line-height: 0.8;
  color: #1ff042; }

.client-list {
  display: block;
  width: 80%;
  position: relative;
  font-family: "NeueHaasBold", Helvetica, sans-serif;
  font-weight: normal;
  font-size: 3.5em;
  color: #ac2eff;
  letter-spacing: -0.01em;
  line-height: 1.2; }
  @media only screen and (min-width: 642px) and (max-width: 801px) {
    .client-list {
      width: 90%; } }
  @media only screen and (max-width: 641px) {
    .client-list {
      width: 100%;
      font-size: 2.75em; } }
  .client-list a {
    color: #ac2eff;
    position: relative;
    text-decoration: underline; }
    .client-list a:hover, .client-list a:active {
      color: #1ff042; }
      .client-list a:hover:after, .client-list a:active:after {
        background: #1ff042; }

.case-study-title {
  font-family: "NeueHaasBold", Helvetica, sans-serif;
  font-weight: normal;
  color: black;
  font-size: 3.5em;
  margin-bottom: 0.2em;
  display: block;
  pointer-events: auto; }
  .case-study-title a {
    color: white;
    text-decoration: underline; }
    .case-study-title a:hover, .case-study-title a:active {
      color: #1ff042; }
  .case-study-featured:hover .case-study-title a, .case-study-featured:active .case-study-title a {
    color: #1ff042; }

.case-study-tagline {
  font-family: "NeueHaas", Helvetica, sans-serif;
  font-family: "NeueHaasBold", Helvetica, sans-serif;
  font-weight: normal;
  color: white;
  font-size: 1.6em;
  display: block;
  margin-bottom: 0.875em;
  pointer-events: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }
  .header-subtext .case-study-tagline {
    font-size: 1.75em;
    line-height: 1.2; }

.case-study-services {
  font-family: 'AndaleMono', monospace;
  letter-spacing: 0.3em;
  font-weight: bold;
  text-transform: uppercase;
  color: white;
  font-size: 0.75em;
  pointer-events: auto; }
  .header-category .case-study-services {
    color: #1ff042;
    display: block; }
  .case-study-featured .case-study-services {
    color: #1ff042;
    line-height: 1.5; }
  @media only screen and (max-width: 641px) {
    .case-study-services {
      font-size: 1em;
      line-height: 1.5; } }

.staff-name, .staff-title {
  color: white;
  display: block; }

.staff-name {
  font-family: "NeueHaasBold", Helvetica, sans-serif;
  font-weight: normal;
  font-size: 1.9em;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  margin-bottom: 0.1em; }

.staff-title {
  font-family: 'AndaleMono', monospace;
  font-weight: bold;
  text-transform: uppercase;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 0.75em;
  letter-spacing: 0.2em; }

.staff-description {
  font-family: "NeueHaas", Helvetica, sans-serif;
  font-weight: normal;
  font-size: 1.1em;
  line-height: 1.4;
  z-index: 10; }
  @media only screen and (min-width: 642px) and (max-width: 801px) {
    .staff-description {
      font-size: 0.875em; } }
  @media only screen and (max-width: 641px) {
    .staff-description {
      font-size: 1.35em; } }

.staff-more-info-link {
  color: #1ff042;
  font-size: 0.875em;
  letter-spacing: 0.4em;
  font-family: 'AndaleMono', monospace;
  font-weight: bold;
  text-transform: uppercase;
  text-decoration: none;
  text-align: center; }
  .staff-more-info-link:hover, .staff-more-info-link:active {
    color: white; }

.footer-nav li {
  font-family: 'AndaleMono', monospace;
  font-weight: bold;
  text-transform: uppercase;
  color: white;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 0.8em;
  letter-spacing: 0.4em;
  opacity: 0.5; }
  .footer-nav li a {
    color: white;
    text-decoration: none;
    display: block;
    position: relative; }
    .footer-nav li a:hover, .footer-nav li a:active {
      color: black; }
      .footer-nav li a:hover:after, .footer-nav li a:active:after {
        position: absolute;
        display: block;
        top: 50%;
        left: -5%;
        width: 104%;
        height: 2px;
        -webkit-transform: translateY(-75%);
        -moz-transform: translateY(-75%);
        -ms-transform: translateY(-75%);
        -o-transform: translateY(-75%);
        transform: translateY(-75%);
        background: black;
        content: ''; }
  @media only screen and (max-width: 641px) {
    .footer-nav li {
      font-size: 1em;
      letter-spacing: 0; } }

.form-text {
  display: block;
  position: relative;
  font-family: "NeueHaasBold", Helvetica, sans-serif;
  font-weight: normal;
  color: black;
  font-size: 3.5em;
  letter-spacing: -0.01em;
  line-height: 1.1; }
  .form-text a {
    color: #1ff042;
    position: relative;
    text-decoration: none; }
    .form-text a:hover, .form-text a:active {
      color: #1ff042; }

.form-steps {
  font-family: 'AndaleMono', monospace;
  font-weight: bold;
  text-transform: uppercase;
  font-size: 0.9em;
  letter-spacing: 0.1em;
  margin-bottom: 1em;
  display: block; }

.form-input, .form-dropdown, .form-dropdown-link {
  font-family: "NeueHaasBold", Helvetica, sans-serif;
  font-weight: normal;
  color: #ac2eff;
  font-size: 3em; }
  .form-input::-webkit-input-placeholder, .form-dropdown::-webkit-input-placeholder, .form-dropdown-link::-webkit-input-placeholder {
    color: rgba(0, 0, 0, 0.175); }
  .form-input:-moz-placeholder, .form-dropdown:-moz-placeholder, .form-dropdown-link:-moz-placeholder {
    color: rgba(0, 0, 0, 0.175); }
  .form-input::-moz-placeholder, .form-dropdown::-moz-placeholder, .form-dropdown-link::-moz-placeholder {
    color: rgba(0, 0, 0, 0.175); }
  .form-input:-ms-input-placeholder, .form-dropdown:-ms-input-placeholder, .form-dropdown-link:-ms-input-placeholder {
    color: rgba(0, 0, 0, 0.175); }
  .form-input:focus::-webkit-input-placeholder, .form-dropdown:focus::-webkit-input-placeholder, .form-dropdown-link:focus::-webkit-input-placeholder {
    color: transparent; }
  .form-input:focus:-moz-placeholder, .form-dropdown:focus:-moz-placeholder, .form-dropdown-link:focus:-moz-placeholder {
    color: transparent; }
  .form-input:focus::-moz-placeholder, .form-dropdown:focus::-moz-placeholder, .form-dropdown-link:focus::-moz-placeholder {
    color: transparent; }
  .form-input:focus:-ms-input-placeholder, .form-dropdown:focus:-ms-input-placeholder, .form-dropdown-link:focus:-ms-input-placeholder {
    color: transparent; }

.form-dropdown {
  text-decoration: none;
  color: rgba(0, 0, 0, 0.175); }
  .form-dropdown.filled {
    color: #ac2eff; }

.form-dropdown-link {
  text-decoration: none; }

.form-textarea {
  font-family: "NeueHaas", Helvetica, sans-serif;
  font-weight: normal;
  color: #ac2eff;
  font-size: 1.3em;
  line-height: 1.4; }
  .form-textarea::-webkit-input-placeholder {
    font-family: "NeueHaasBold", Helvetica, sans-serif;
    font-weight: normal;
    color: #ac2eff;
    font-size: 2.29em;
    color: rgba(0, 0, 0, 0.175); }
  .form-textarea:-moz-placeholder {
    font-family: "NeueHaasBold", Helvetica, sans-serif;
    font-weight: normal;
    color: #ac2eff;
    font-size: 2.29em;
    color: rgba(0, 0, 0, 0.175); }
  .form-textarea::-moz-placeholder {
    font-family: "NeueHaasBold", Helvetica, sans-serif;
    font-weight: normal;
    color: #ac2eff;
    font-size: 2.29em;
    color: rgba(0, 0, 0, 0.175); }
  .form-textarea:-ms-input-placeholder {
    font-family: "NeueHaasBold", Helvetica, sans-serif;
    font-weight: normal;
    color: #ac2eff;
    font-size: 2.29em;
    color: rgba(0, 0, 0, 0.175); }
  .form-textarea:focus::-webkit-input-placeholder {
    font-family: "NeueHaasBold", Helvetica, sans-serif;
    font-weight: normal;
    color: #ac2eff;
    font-size: 2.29em;
    color: transparent; }
  .form-textarea:focus:-moz-placeholder {
    font-family: "NeueHaasBold", Helvetica, sans-serif;
    font-weight: normal;
    color: #ac2eff;
    font-size: 2.29em;
    color: transparent; }
  .form-textarea:focus::-moz-placeholder {
    font-family: "NeueHaasBold", Helvetica, sans-serif;
    font-weight: normal;
    color: #ac2eff;
    font-size: 2.29em;
    color: transparent; }
  .form-textarea:focus:-ms-input-placeholder {
    font-family: "NeueHaasBold", Helvetica, sans-serif;
    font-weight: normal;
    color: #ac2eff;
    font-size: 2.29em;
    color: transparent; }

.required-text {
  position: absolute;
  top: 3em;
  right: 0;
  font-family: 'AndaleMono', monospace;
  font-weight: bold;
  text-transform: uppercase;
  font-size: 0.8em;
  letter-spacing: 0.1em;
  opacity: 0.5;
  pointer-events: none;
  -webkit-transition: opacity 0.1s;
  -moz-transition: opacity 0.1s;
  transition: opacity 0.1s; }
  .required-text.hidden {
    opacity: 0; }

.button-back, .button-next {
  font-family: "NeueHaasBold", Helvetica, sans-serif;
  font-size: 2.25em;
  position: relative;
  z-index: 2;
  text-decoration: underline;
  color: #d9d9d9; }
  .button-back.active, .button-next.active {
    color: #1ff042; }

#loader-text {
  color: #1ff042;
  display: block;
  font-family: 'AndaleMono', monospace;
  font-weight: bold;
  text-transform: uppercase;
  font-size: 0.9em;
  letter-spacing: 0.15em;
  text-shadow: 0 0 2px rgba(31, 240, 66, 0.75); }
  @media only screen and (max-width: 641px) {
    #loader-text {
      font-size: 0.6em; } }
  #loader-text:before {
    content: '> '; }
  #loader-text:after {
    display: inline-block;
    vertical-align: -0.15em;
    width: 0.75em;
    height: 1em;
    margin-left: 5px;
    background: #1ff042;
    box-shadow: 1px 1px 1px rgba(31, 240, 66, 0.65), -1px -1px 1px rgba(31, 240, 66, 0.65), 1px -1px 1px rgba(31, 240, 66, 0.65), -1px 1px 1px rgba(31, 240, 66, 0.65);
    -webkit-animation: cursor-blink 1.25s steps(1) infinite;
    -moz-animation: cursor-blink 1.25s steps(1) infinite;
    animation: cursor-blink 1.25s steps(1) infinite;
    content: ''; }

@-webkit-keyframes cursor-blink {
  0% {
    opacity: 0; }

  50% {
    opacity: 1; }

  100% {
    opacity: 0; } }

@-moz-keyframes cursor-blink {
  0% {
    opacity: 0; }

  50% {
    opacity: 1; }

  100% {
    opacity: 0; } }

@keyframes cursor-blink {
  0% {
    opacity: 0; }

  50% {
    opacity: 1; }

  100% {
    opacity: 0; } }

/* IMAGES */
img {
  display: block;
  width: 100%;
  height: auto;
  margin: 0;
  padding: 0; }
  .horiscroll img {
    width: auto;
    height: 100%; }
  img.phone-accent-pull-left {
    position: absolute;
    top: 4em;
    right: 110%;
    height: 90%;
    height: -moz-calc(100% - 4em);
    height: -o-calc(100% - 4em);
    height: -webkit-calc(100% - 4em);
    height: calc(100% - 4em);
    width: auto; }
    @media only screen and (max-width: 641px) {
      img.phone-accent-pull-left {
        margin-top: 4em;
        position: relative;
        top: auto;
        right: auto;
        height: auto;
        width: 100%; } }
  .mobile-carousel-screen img, .landscape-carousel-screen img {
    height: 100%;
    width: auto;
    margin: 0 auto; }
  .hero-slide img {
    position: absolute;
    top: 50%;
    left: 50%;
    max-height: 90%;
    height: auto;
    width: auto;
    max-width: 90%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%); }
  .rosetta-slide img {
    height: 100%;
    width: auto;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate3d(-50%, -50%, 0);
    -moz-transform: translate3d(-50%, -50%, 0);
    -ms-transform: translate3d(-50%, -50%, 0);
    -o-transform: translate3d(-50%, -50%, 0);
    transform: translate3d(-50%, -50%, 0); }
  .case_study_footer img {
    position: absolute;
    top: 50%;
    left: 25%;
    width: 25%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%); }
    @media only screen and (max-width: 641px) {
      .case_study_footer img {
        position: relative;
        top: auto;
        left: auto;
        width: 70%;
        margin: 2em auto 4em;
        -webkit-transform: none;
        -moz-transform: none;
        -ms-transform: none;
        -o-transform: none;
        transform: none; } }
  .case_study_footer.tall_logo img {
    position: absolute;
    top: 50%;
    left: 25%;
    height: 65%;
    width: auto;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%); }
    @media only screen and (max-width: 641px) {
      .case_study_footer.tall_logo img {
        position: relative;
        top: auto;
        left: auto;
        width: 30%;
        margin: 2em auto 4em;
        -webkit-transform: none;
        -moz-transform: none;
        -ms-transform: none;
        -o-transform: none;
        transform: none; } }

svg {
  image-rendering: optimizeSpeed;
  image-rendering: -moz-crisp-edges;
  image-rendering: -webkit-optimize-contrast;
  image-rendering: optimize-contrast;
  -ms-interpolation-mode: nearest-neighbor; }

#nclud-logo {
  width: 3.3em;
  position: relative;
  float: left; }

#loader-logo {
  position: fixed;
  top: 50%;
  left: 50%;
  width: 4.5em;
  margin-left: -2.25em;
  margin-top: -2.25em; }

#loader_triangle_outer, #loader_triangle_middle, #loader_triangle_inner {
  -webkit-transform-origin: 76px 76px;
  -moz-transform-origin: 76px 76px;
  -ms-transform-origin: 76px 76px;
  -o-transform-origin: 76px 76px;
  transform-origin: 76px 76px;
  -webkit-transform-origin: 0px 0px;
  -moz-transform-origin: 0px 0px;
  -ms-transform-origin: 0px 0px;
  -o-transform-origin: 0px 0px;
  transform-origin: 0px 0px;
  -webkit-transform: rotate(-30deg) scale(0) translate3d(0, 0, 0);
  -moz-transform: rotate(-30deg) scale(0) translate3d(0, 0, 0);
  -ms-transform: rotate(-30deg) scale(0) translate3d(0, 0, 0);
  -o-transform: rotate(-30deg) scale(0) translate3d(0, 0, 0);
  transform: rotate(-30deg) scale(0) translate3d(0, 0, 0);
  -webkit-animation: loader-logo 2s ease;
  -moz-animation: loader-logo 2s ease;
  animation: loader-logo 2s ease;
  -webkit-animation-direction: alternate;
  -moz-animation-direction: alternate;
  animation-direction: alternate;
  -webkit-animation-iteration-count: infinite;
  -moz-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  -webkit-animation-fill-mode: forwards;
  -moz-animation-fill-mode: forwards;
  animation-fill-mode: forwards; }

#loader_triangle_outer {
  -webkit-animation-delay: 0;
  -moz-animation-delay: 0;
  animation-delay: 0; }

#loader_triangle_middle {
  -webkit-animation-delay: 0.25s;
  -moz-animation-delay: 0.25s;
  animation-delay: 0.25s; }

#loader_triangle_inner {
  -webkit-animation-delay: 0.5s;
  -moz-animation-delay: 0.5s;
  animation-delay: 0.5s; }

@-webkit-keyframes loader-logo {
  0% {
    -webkit-transform: rotate(-30deg) scale(0) translate3d(0, 0, 0); }

  90% {
    -webkit-transform: rotate(0) scale(1) translate3d(0, 0, 0); }

  100% {
    -webkit-transform: rotate(0) scale(1) translate3d(0, 0, 0); } }

@-moz-keyframes loader-logo {
  0% {
    -moz-transform: rotate(-30deg) scale(0) translate3d(0, 0, 0); }

  90% {
    -moz-transform: rotate(0) scale(1) translate3d(0, 0, 0); }

  100% {
    -moz-transform: rotate(0) scale(1) translate3d(0, 0, 0); } }

@keyframes loader-logo {
  0% {
    -webkit-transform: rotate(-30deg) scale(0) translate3d(0, 0, 0);
    -moz-transform: rotate(-30deg) scale(0) translate3d(0, 0, 0);
    -ms-transform: rotate(-30deg) scale(0) translate3d(0, 0, 0);
    -o-transform: rotate(-30deg) scale(0) translate3d(0, 0, 0);
    transform: rotate(-30deg) scale(0) translate3d(0, 0, 0); }

  90% {
    -webkit-transform: rotate(0) scale(1) translate3d(0, 0, 0);
    -moz-transform: rotate(0) scale(1) translate3d(0, 0, 0);
    -ms-transform: rotate(0) scale(1) translate3d(0, 0, 0);
    -o-transform: rotate(0) scale(1) translate3d(0, 0, 0);
    transform: rotate(0) scale(1) translate3d(0, 0, 0); }

  100% {
    -webkit-transform: rotate(0) scale(1) translate3d(0, 0, 0);
    -moz-transform: rotate(0) scale(1) translate3d(0, 0, 0);
    -ms-transform: rotate(0) scale(1) translate3d(0, 0, 0);
    -o-transform: rotate(0) scale(1) translate3d(0, 0, 0);
    transform: rotate(0) scale(1) translate3d(0, 0, 0); } }

/* NAV BAR */
nav {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  width: 100%;
  pointer-events: none; }
  nav a {
    pointer-events: auto; }
  nav.sticky {
    pointer-events: auto;
    background: black;
    position: fixed;
    padding-top: 1.5em;
    padding-bottom: 1em;
    -webkit-transform: translate(0, -100%);
    -moz-transform: translate(0, -100%);
    -ms-transform: translate(0, -100%);
    -o-transform: translate(0, -100%);
    transform: translate(0, -100%); }
    nav.sticky.animate {
      -webkit-transition: -webkit-transform 0.2s;
      -moz-transition: -moz-transform 0.2s;
      transition: transform 0.2s; }
    nav.sticky.revealed {
      -webkit-transform: translate(0, 0);
      -moz-transform: translate(0, 0);
      -ms-transform: translate(0, 0);
      -o-transform: translate(0, 0);
      transform: translate(0, 0); }
    @media only screen and (max-width: 641px) {
      nav.sticky {
        padding-bottom: 1.5em; } }
  @media only screen and (max-width: 641px) {
    nav {
      overflow: visible;
      pointer-events: auto; } }

#site-nav {
  float: right; }
  #site-nav li {
    display: block;
    float: left;
    margin-right: 1em;
    width: 12em; }
    #site-nav li a {
      pointer-events: auto;
      display: block;
      text-align: right;
      position: relative;
      padding: 0.4em 0.75em 0.5em;
      margin-top: -0.8em;
      overflow: hidden;
      border: 2px solid transparent; }
      #site-nav li a .data-number {
        display: block;
        text-align: left;
        border-bottom: 2px solid white;
        padding-bottom: 0.125em;
        margin-bottom: 0.25em; }
        @media only screen and (max-width: 641px) {
          #site-nav li a .data-number {
            display: inline;
            border: 0; }
            #site-nav li a .data-number:after {
              content: "\00a0\00a0 / \00a0"; } }
      @media only screen and (max-width: 641px) {
        #site-nav li a {
          overflow: visible;
          text-align: left;
          margin-top: 0;
          padding: 0; } }
      #site-nav li a:hover, #site-nav li a:active {
        border-color: #1ff042; }
        #site-nav li a:hover:after, #site-nav li a:active:after {
          position: absolute;
          width: 120%;
          height: 2px;
          background: #1ff042;
          left: 51%;
          top: 50%;
          -webkit-transform: translateX(-50%) rotate(23deg);
          -moz-transform: translateX(-50%) rotate(23deg);
          -ms-transform: translateX(-50%) rotate(23deg);
          -o-transform: translateX(-50%) rotate(23deg);
          transform: translateX(-50%) rotate(23deg);
          content: ''; }
          @media only screen and (max-width: 641px) {
            #site-nav li a:hover:after, #site-nav li a:active:after {
              left: 0;
              height: 4px;
              width: 105%;
              -webkit-transform: translateX(-2.5%) translateY(-50%) rotate(0);
              -moz-transform: translateX(-2.5%) translateY(-50%) rotate(0);
              -ms-transform: translateX(-2.5%) translateY(-50%) rotate(0);
              -o-transform: translateX(-2.5%) translateY(-50%) rotate(0);
              transform: translateX(-2.5%) translateY(-50%) rotate(0); } }
        @media only screen and (max-width: 641px) {
          #site-nav li a:hover, #site-nav li a:active {
            border-color: transparent; } }
      #site-nav li a.hidden {
        opacity: 0;
        visibility: hidden;
        pointer-events: none; }
        @media only screen and (max-width: 641px) {
          #site-nav li a.hidden {
            opacity: 1;
            visibility: visible;
            pointer-events: auto; } }
    #site-nav li:last-child {
      margin-right: 0; }
    @media only screen and (max-width: 641px) {
      #site-nav li {
        overflow: visible;
        float: none;
        width: 100%;
        margin-right: 0;
        position: absolute;
        top: 35%;
        left: 0;
        padding: 0 25px; }
        #site-nav li:first-child {
          -webkit-transform: translateY(-200%);
          -moz-transform: translateY(-200%);
          -ms-transform: translateY(-200%);
          -o-transform: translateY(-200%);
          transform: translateY(-200%); }
        #site-nav li:nth-child(2) {
          -webkit-transform: translateY(-50%);
          -moz-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
          -o-transform: translateY(-50%);
          transform: translateY(-50%); }
        #site-nav li:last-child {
          -webkit-transform: translateY(100%);
          -moz-transform: translateY(100%);
          -ms-transform: translateY(100%);
          -o-transform: translateY(100%);
          transform: translateY(100%); } }
  @media only screen and (max-width: 641px) {
    #site-nav {
      overflow: visible;
      pointer-events: auto;
      display: none;
      float: none;
      position: fixed;
      top: 0;
      right: 0;
      left: 0;
      width: 100%;
      height: 150%;
      background: rgba(172, 46, 255, 0.95); } }
  @media only screen and (max-width: 641px) {
    #site-nav.mobile-active {
      display: block; } }

#mobile-menu-button {
  display: none; }
  @media only screen and (max-width: 641px) {
    #mobile-menu-button {
      display: block;
      width: 32px;
      height: 26px;
      border-top: 4px solid white;
      border-bottom: 4px solid white;
      position: absolute;
      top: 32px;
      right: 25px; }
      #mobile-menu-button:before, #mobile-menu-button:after {
        display: block;
        position: absolute;
        top: 50%;
        left: 50%;
        width: 100%;
        height: 4px;
        background: white;
        -webkit-transform: translate3d(-50%, -50%, 0);
        -moz-transform: translate3d(-50%, -50%, 0);
        -ms-transform: translate3d(-50%, -50%, 0);
        -o-transform: translate3d(-50%, -50%, 0);
        transform: translate3d(-50%, -50%, 0);
        content: ''; } }
  @media only screen and (max-width: 641px) {
    .sticky #mobile-menu-button {
      top: 24px; } }
  @media only screen and (max-width: 641px) {
    #mobile-menu-button.mobile-active {
      border-color: transparent; }
      #mobile-menu-button.mobile-active:before {
        -webkit-transform: translate3d(-50%, -50%, 0) rotate(45deg);
        -moz-transform: translate3d(-50%, -50%, 0) rotate(45deg);
        -ms-transform: translate3d(-50%, -50%, 0) rotate(45deg);
        -o-transform: translate3d(-50%, -50%, 0) rotate(45deg);
        transform: translate3d(-50%, -50%, 0) rotate(45deg); }
      #mobile-menu-button.mobile-active:after {
        -webkit-transform: translate3d(-50%, -50%, 0) rotate(-45deg);
        -moz-transform: translate3d(-50%, -50%, 0) rotate(-45deg);
        -ms-transform: translate3d(-50%, -50%, 0) rotate(-45deg);
        -o-transform: translate3d(-50%, -50%, 0) rotate(-45deg);
        transform: translate3d(-50%, -50%, 0) rotate(-45deg); } }

/* HEADER */
header {
  background-size: cover;
  background-position: center center;
  overflow: visible; }

#canvas {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  min-width: 100%; }
  #canvas canvas {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 1; }

.header-text {
  position: absolute;
  top: 58%;
  top: -moz-calc(50% + 3em);
  top: -o-calc(50% + 3em);
  top: -webkit-calc(50% + 3em);
  top: calc(50% + 3em);
  left: 0;
  right: 0;
  width: 100%;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  transform: translateY(-50%);
  pointer-events: none; }
  @media only screen and (max-width: 641px) {
    .case-study-head .header-text {
      top: 45%; } }

.header-subtext {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 57.5%; }
  @media only screen and (min-width: 642px) and (max-width: 801px) {
    .header-subtext {
      width: 65%; } }
  @media only screen and (max-width: 641px) {
    .header-subtext {
      width: 100%; } }

.header-category {
  position: absolute;
  top: 100%;
  left: 0;
  width: 57.5%; }
  @media only screen and (min-width: 642px) and (max-width: 801px) {
    .header-category {
      width: 65%; } }
  @media only screen and (max-width: 641px) {
    .header-category {
      width: 100%; } }
  .header-category .case-study-services:first-child {
    padding-top: 2em;
    border-top: 1px solid white; }

.header-number .data-number {
  position: absolute;
  right: 3vw;
  bottom: -10.5vh; }
  @media only screen and (min-width: 642px) and (max-width: 801px) {
    .header-number .data-number {
      bottom: -5vh; } }
  @media only screen and (max-width: 641px) {
    .header-number .data-number {
      bottom: -0.25em; } }

.home-tagline {
  display: block;
  position: absolute;
  bottom: -1.25vh;
  right: -1vw;
  opacity: 1;
  text-align: right;
  margin-right: 0; }

/* MAIN AREAS */
main {
  overflow: hidden; }

#main-body {
  min-height: 100vh; }

.black {
  background-color: black; }

.purple {
  background-color: #ac2eff; }

.white {
  background-color: white; }

.green {
  background-color: #1ff042; }

.border-bottom-white {
  border-bottom: 1px solid rgba(255, 255, 255, 0.25); }

.back-dot-green-bottom-right:before {
  position: absolute;
  display: block;
  bottom: 0;
  right: 4%;
  height: 33%;
  width: 35%;
  background: url('../img/dot-green.png') repeat;
  background-size: 18px auto;
  background-position: 0 5px;
  content: ''; }
  @media only screen and (max-width: 641px) {
    .back-dot-green-bottom-right:before {
      right: 0;
      width: 60%;
      height: 6em; } }

.back-dot-green-bottom-left:before {
  position: absolute;
  display: block;
  pointer-events: none;
  bottom: -3em;
  left: 10%;
  height: 90%;
  width: 15%;
  z-index: 10;
  background: url('../img/dot-green.png') repeat;
  background-size: 18px auto;
  background-position: 0 5px;
  content: ''; }
  @media only screen and (max-width: 641px) {
    .back-dot-green-bottom-left:before {
      display: none; } }

.back-dot-green-bottom-right-large:before {
  position: absolute;
  display: block;
  bottom: 0;
  right: 4%;
  height: 60%;
  width: 39%;
  background: url('../img/dot-green.png') repeat;
  background-size: 18px auto;
  background-position: 0 5px;
  content: ''; }
  @media only screen and (max-width: 641px) {
    .back-dot-green-bottom-right-large:before {
      display: none; } }

.back-dot-green-middle-left:before {
  position: absolute;
  display: block;
  top: 60vh;
  left: 1vw;
  height: 18vh;
  width: 45%;
  background: url('../img/dot-green.png') repeat;
  background-size: 18px auto;
  background-position: 0 5px;
  opacity: 1;
  content: ''; }
  @media only screen and (max-width: 641px) {
    .back-dot-green-middle-left:before {
      display: none; } }

.back-dot-green-middle-right:before {
  position: absolute;
  display: block;
  top: 45%;
  right: 0;
  height: 65%;
  width: 27%;
  background: url('../img/dot-green.png') repeat;
  background-size: 18px auto;
  background-position: 0 5px;
  opacity: 1;
  content: ''; }
  @media only screen and (max-width: 641px) {
    .back-dot-green-middle-right:before {
      display: none; } }

.back-dot-green-full-left:before {
  position: absolute;
  display: block;
  top: 15%;
  left: 1vw;
  height: 71%;
  width: 27%;
  background: url('../img/dot-green.png') repeat;
  background-size: 18px auto;
  background-position: 0 5px;
  opacity: 1;
  content: ''; }
  @media only screen and (max-width: 641px) {
    .back-dot-green-full-left:before {
      display: none; } }

.back-dot-green-top-left:before {
  pointer-events: none;
  position: absolute;
  display: block;
  top: 0.25em;
  left: 0.5em;
  height: 55%;
  width: 50%;
  z-index: 20;
  background: url('../img/dot-green.png') repeat;
  background-size: 18px auto;
  background-position: 0 5px;
  opacity: 1;
  content: ''; }

.back-dot-green-top-left-small:before {
  pointer-events: none;
  position: absolute;
  display: block;
  top: 2.75em;
  left: 0.5em;
  height: 13.5%;
  width: 31%;
  background: url('../img/dot-green.png') repeat;
  background-size: 18px auto;
  background-position: 0 5px;
  opacity: 1;
  content: ''; }
  @media only screen and (max-width: 641px) {
    .back-dot-green-top-left-small:before {
      display: none; } }

.back-block-green-top-right:before {
  position: absolute;
  display: block;
  top: 2em;
  right: 2em;
  width: 22%;
  height: 2em;
  border: 2px solid #1ff042;
  content: ''; }
  @media only screen and (max-width: 641px) {
    .back-block-green-top-right:before {
      display: none; } }
.back-block-green-top-right:after {
  position: absolute;
  display: block;
  top: 5em;
  right: 2em;
  width: 18%;
  height: 2em;
  border: 2px solid #1ff042;
  content: ''; }
  @media only screen and (max-width: 641px) {
    .back-block-green-top-right:after {
      display: none; } }

.back-block-green-top-left:before {
  position: absolute;
  display: block;
  top: 2em;
  left: 2em;
  width: 22%;
  height: 2em;
  border: 2px solid #1ff042;
  content: ''; }
  @media only screen and (max-width: 641px) {
    .back-block-green-top-left:before {
      display: none; } }
.back-block-green-top-left:after {
  position: absolute;
  display: block;
  top: 5em;
  left: 2em;
  width: 18%;
  height: 2em;
  border: 2px solid #1ff042;
  content: ''; }
  @media only screen and (max-width: 641px) {
    .back-block-green-top-left:after {
      display: none; } }

.back-block-green-top-left-vertical:before, .back-block-green-top-left-vertical:after {
  z-index: 15;
  pointer-events: none;
  position: absolute;
  display: block;
  border: 2px solid #1ff042;
  width: 3em;
  content: ''; }
  @media only screen and (max-width: 641px) {
    .back-block-green-top-left-vertical:before, .back-block-green-top-left-vertical:after {
      display: none; } }
.back-block-green-top-left-vertical:before {
  top: -10%;
  left: 5%;
  height: 85%; }
.back-block-green-top-left-vertical:after {
  top: -25%;
  left: 11%;
  height: 60%; }

.back-block-green-top-right-large:before {
  pointer-events: none;
  position: absolute;
  display: block;
  top: 2em;
  right: 2em;
  width: 30%;
  height: 3em;
  border: 2px solid #1ff042;
  z-index: 20;
  content: ''; }
.back-block-green-top-right-large:after {
  pointer-events: none;
  position: absolute;
  display: block;
  top: 6em;
  right: 10em;
  width: 22%;
  height: 3em;
  border: 2px solid #1ff042;
  z-index: 20;
  content: ''; }
@media only screen and (max-width: 641px) {
  .back-block-green-top-right-large:before, .back-block-green-top-right-large:after {
    display: none; } }

.back-block-green-top-left-large:before {
  pointer-events: none;
  position: absolute;
  display: block;
  top: 2em;
  left: 2em;
  width: 30%;
  height: 3em;
  border: 2px solid #1ff042;
  z-index: 20;
  content: ''; }
.back-block-green-top-left-large:after {
  pointer-events: none;
  position: absolute;
  display: block;
  top: 6em;
  left: 10em;
  width: 22%;
  height: 3em;
  border: 2px solid #1ff042;
  z-index: 20;
  content: ''; }

.back-block-green-bottom-left:before {
  position: absolute;
  display: block;
  bottom: 2em;
  left: 2em;
  width: 22%;
  height: 2.5em;
  border: 2px solid #1ff042;
  content: ''; }
  @media only screen and (max-width: 641px) {
    .back-block-green-bottom-left:before {
      display: none; } }
.back-block-green-bottom-left:after {
  position: absolute;
  display: block;
  bottom: 5.5em;
  left: 2em;
  width: 18%;
  height: 2.5em;
  border: 2px solid #1ff042;
  content: ''; }
  @media only screen and (max-width: 641px) {
    .back-block-green-bottom-left:after {
      display: none; } }

.back-block-green-bottom-right:before {
  position: absolute;
  pointer-events: none;
  display: block;
  bottom: -1.5em;
  right: 2em;
  width: 30%;
  height: 3em;
  border: 2px solid #1ff042;
  z-index: 20;
  content: ''; }
  @media only screen and (max-width: 641px) {
    .back-block-green-bottom-right:before {
      display: none; } }
.back-block-green-bottom-right:after {
  position: absolute;
  pointer-events: none;
  display: block;
  bottom: 2.5em;
  right: 2em;
  width: 20%;
  height: 3em;
  border: 2px solid #1ff042;
  z-index: 20;
  content: ''; }
  @media only screen and (max-width: 641px) {
    .back-block-green-bottom-right:after {
      display: none; } }

.back-x-green-bottom-right:before, .back-x-green-bottom-right:after {
  width: 2px;
  height: 6em;
  background: #1ff042;
  display: block;
  position: absolute;
  bottom: 2em;
  right: 4.5em;
  content: ''; }
  @media only screen and (max-width: 641px) {
    .back-x-green-bottom-right:before, .back-x-green-bottom-right:after {
      display: none; } }
.back-x-green-bottom-right:before {
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg); }
.back-x-green-bottom-right:after {
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  transform: rotate(-45deg); }

.back-x-green-bottom-left:before, .back-x-green-bottom-left:after {
  width: 2px;
  height: 6em;
  background: #1ff042;
  display: block;
  position: absolute;
  bottom: 2em;
  left: 4.5em;
  content: ''; }
  @media only screen and (max-width: 641px) {
    .back-x-green-bottom-left:before, .back-x-green-bottom-left:after {
      display: none; } }
.back-x-green-bottom-left:before {
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg); }
.back-x-green-bottom-left:after {
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  transform: rotate(-45deg); }

.back-x-green-top-right:before, .back-x-green-top-right:after {
  width: 2px;
  height: 10em;
  background: #1ff042;
  display: block;
  position: absolute;
  top: 1.75em;
  right: 8em;
  content: ''; }
  @media only screen and (max-width: 641px) {
    .back-x-green-top-right:before, .back-x-green-top-right:after {
      display: none; } }
.back-x-green-top-right:before {
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg); }
.back-x-green-top-right:after {
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  transform: rotate(-45deg); }

.back-slash-green-top-left:before {
  pointer-events: none;
  display: block;
  position: absolute;
  top: 2em;
  left: 2em;
  width: 6em;
  height: 6em;
  border: 2px solid #1ff042;
  z-index: 20;
  content: ''; }
.back-slash-green-top-left:after {
  pointer-events: none;
  display: block;
  position: absolute;
  top: 2.1em;
  left: 2em;
  width: 2px;
  height: 8.25em;
  background: #1ff042;
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  transform: rotate(-45deg);
  -webkit-transform-origin: top center;
  -moz-transform-origin: top center;
  -ms-transform-origin: top center;
  -o-transform-origin: top center;
  transform-origin: top center;
  z-index: 20;
  content: ''; }

.horiscroll-left, .horiscroll-right, .slideshow-left, .slideshow-right {
  position: absolute;
  display: block;
  top: 50%;
  width: 5em;
  height: 5em;
  background: rgba(0, 0, 0, 0.5);
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  transform: translateY(-50%); }
  .horiscroll-left:before, .horiscroll-right:before, .slideshow-left:before, .slideshow-right:before {
    position: absolute;
    top: 35%;
    display: block;
    width: 30%;
    height: 30%;
    -webkit-transform-origin: center center;
    -moz-transform-origin: center center;
    -ms-transform-origin: center center;
    -o-transform-origin: center center;
    transform-origin: center center;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);
    content: ''; }
  .horiscroll-left:hover, .horiscroll-left:active, .horiscroll-right:hover, .horiscroll-right:active, .slideshow-left:hover, .slideshow-left:active, .slideshow-right:hover, .slideshow-right:active {
    background: #1ff042; }
  @media only screen and (max-width: 641px) {
    .horiscroll-left, .horiscroll-right, .slideshow-left, .slideshow-right {
      width: 3.5em;
      height: 3.5em; } }

.horiscroll-left, .slideshow-left {
  left: 0; }
  .horiscroll-left:before, .slideshow-left:before {
    left: 40%;
    border-left: 2px solid white;
    border-bottom: 2px solid white; }

.horiscroll-right, .slideshow-right {
  right: 0; }
  .horiscroll-right:before, .slideshow-right:before {
    right: 40%;
    border-right: 2px solid white;
    border-top: 2px solid white; }

/* WORK */
.case-study-featured {
  margin-bottom: 5em;
  overflow: visible; }
  .case-study-featured:first-child:after, .case-study-featured:nth-child(2):after {
    clear: both;
    display: table;
    content: ''; }
  .case-study-featured:last-child {
    margin-bottom: 0; }
  @media only screen and (max-width: 641px) {
    .case-study-featured {
      margin-bottom: 2em; } }

.case-study-featured-image {
  display: block;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  position: relative; }
  .case-study-featured-image:after {
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    background: #ac2eff;
    opacity: 0.5;
    z-index: -1;
    content: ''; }
  .left-align .case-study-featured-image {
    width: 80%;
    height: 27em; }
  .right-align .case-study-featured-image {
    float: right;
    width: 55%;
    height: 30em; }
  @media only screen and (max-width: 641px) {
    .left-align .case-study-featured-image, .right-align .case-study-featured-image {
      width: 100%;
      height: 16em;
      float: none; } }
  .case-study-featured-image:hover:after, .case-study-featured-image:active:after {
    opacity: 0.6; }

.left-align .case-study-featured-text {
  width: 45%;
  float: right;
  margin-top: -12em; }
  .left-align .case-study-featured-text .case-study-subtext {
    height: 9em; }
.right-align .case-study-featured-text {
  position: absolute;
  top: 55%;
  width: 52%;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  transform: translateY(-50%); }
  .right-align .case-study-featured-text .case-study-subtext {
    height: 6em; }
@media only screen and (max-width: 641px) {
  .left-align .case-study-featured-text, .right-align .case-study-featured-text {
    position: relative;
    width: 100%;
    float: none;
    margin-top: 0;
    top: auto;
    -webkit-transform: none;
    -moz-transform: none;
    -ms-transform: none;
    -o-transform: none;
    transform: none; } }
@media only screen and (max-width: 641px) {
  .left-align .case-study-featured-text .case-study-subtext, .right-align .case-study-featured-text .case-study-subtext {
    height: auto;
    padding-bottom: 2em; } }
.case-study-featured-text .case-study-services {
  display: block;
  padding-top: 2.5em;
  border-top: 1px solid white; }
  @media only screen and (max-width: 641px) {
    .case-study-featured-text .case-study-services {
      padding-top: 1.5em; } }

.video-container {
  width: 75%;
  margin: 0 auto;
  border: 2px solid #1ff042;
  border-radius: 8px 8px 0 0; }
  @media only screen and (min-width: 802px) and (max-width: 1025px) {
    .video-container {
      width: 100%; } }
  @media only screen and (min-width: 642px) and (max-width: 801px) {
    .video-container {
      width: 100%; } }
  @media only screen and (max-width: 641px) {
    .video-container {
      width: 100%; } }
  .video-container .video-header {
    height: 30px;
    border-bottom: 2px solid #1ff042; }
    @media only screen and (max-width: 641px) {
      .video-container .video-header {
        height: 20px; } }
    .video-container .video-header:before, .video-container .video-header:after {
      position: absolute;
      top: 50%;
      border-radius: 100%;
      border: 2px solid #1ff042;
      width: 16px;
      height: 16px;
      -webkit-transform: translate(-50%, -50%);
      -moz-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
      -o-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%);
      content: ''; }
      @media only screen and (max-width: 641px) {
        .video-container .video-header:before, .video-container .video-header:after {
          width: 10px;
          height: 10px; } }
    .video-container .video-header:before {
      left: 20px; }
      @media only screen and (max-width: 641px) {
        .video-container .video-header:before {
          left: 10px; } }
    .video-container .video-header:after {
      left: 44px; }
      @media only screen and (max-width: 641px) {
        .video-container .video-header:after {
          left: 24px; } }

/* CAROUSELS */
.cycle-pager {
  text-align: left;
  padding-left: 20px;
  width: 100%;
  z-index: 500;
  position: absolute;
  top: 20px;
  overflow: hidden; }
  @media only screen and (max-width: 641px) {
    .cycle-pager {
      top: 10px;
      padding-left: 10px; } }
  .cycle-pager > * {
    cursor: pointer; }
  .cycle-pager span {
    color: transparent;
    width: 18px;
    height: 18px;
    border: 2px solid #1ff042;
    margin-right: 10px;
    display: inline-block;
    cursor: pointer; }
    .cycle-pager span:hover, .cycle-pager span:active {
      background: #1ff042; }
    .cycle-pager span.cycle-pager-active {
      background: #1ff042; }
    @media only screen and (max-width: 641px) {
      .cycle-pager span {
        width: 10px;
        height: 10px;
        margin-right: 4px; } }

.slick-slider {
  position: relative;
  display: block;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -khtml-user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent; }

.slick-list {
  position: relative;
  display: block;
  overflow: hidden;
  margin: 0;
  padding: 0;
  height: 100%; }

.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;
  top: 0;
  left: 0;
  display: block;
  height: 100%; }

.slick-track:before, .slick-track:after {
  display: table;
  content: ''; }

.slick-track:after {
  clear: both; }

.slick-loading .slick-track {
  visibility: hidden; }

.slick-slide {
  display: none;
  float: left;
  height: 100%;
  min-height: 1px; }

[dir='rtl'] .slick-slide {
  float: right; }

.slick-slide img {
  display: block; }

.slick-slide.slick-loading img {
  display: none; }

.slick-slide.dragging img {
  pointer-events: none; }

.slick-initialized .slick-slide {
  display: block; }

.slick-loading .slick-slide {
  visibility: hidden; }

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent; }

.mobile-carousel {
  width: 100%;
  height: 100%; }
  .mobile-carousel .mobile-carousel-screen {
    padding-top: 14.65vh;
    padding-bottom: 13.5vh;
    opacity: 0.3; }
    .mobile-carousel .mobile-carousel-screen.slick-center {
      opacity: 1; }

.mobile-carousel-phone {
  position: absolute;
  top: 50%;
  left: 50%;
  height: 90%;
  width: auto;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%); }

.landscape-carousel {
  width: 100%;
  height: 100%; }
  .landscape-carousel .landscape-carousel-screen {
    height: 100%;
    opacity: 0.3;
    padding-top: 9vh;
    padding-bottom: 8.4vh;
    -webkit-transform: translateX(-0.15%);
    -moz-transform: translateX(-0.15%);
    -ms-transform: translateX(-0.15%);
    -o-transform: translateX(-0.15%);
    transform: translateX(-0.15%); }
    @media only screen and (min-width: 642px) and (max-width: 801px) {
      .landscape-carousel .landscape-carousel-screen {
        padding-top: 6vh;
        padding-bottom: 5.5vh; } }
    @media only screen and (max-width: 641px) {
      .landscape-carousel .landscape-carousel-screen {
        padding-top: 1.45rem;
        padding-bottom: 1.3rem; } }
    .landscape-carousel .landscape-carousel-screen.slick-center {
      opacity: 1; }

.landscape-carousel-tablet {
  position: absolute;
  top: 50%;
  left: 50%;
  height: 90%;
  width: auto;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%); }

.video-carousel {
  width: 100% !important; }
  .video-carousel .video-slide {
    width: 100% !important; }
    @media only screen and (max-width: 641px) {
      .video-carousel .video-slide {
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden; } }

.hero-slideshow {
  width: 100%;
  height: 100%;
  background: #eeecf1; }
  .hero-slideshow .hero-slide {
    width: 100%;
    height: 100%;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden; }

/* ROSETTA STONE SPECIFIC */
.rosetta-slideshow {
  height: 600px;
  background: #eeecf1; }
  .rosetta-slideshow .rosetta-slide {
    height: 100%;
    width: 100%;
    background: #eeecf1;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden; }
  @media only screen and (min-width: 1600px) {
    .rosetta-slideshow {
      height: 800px; } }
  @media only screen and (min-width: 642px) and (max-width: 801px) {
    .rosetta-slideshow {
      height: 500px; } }
  @media only screen and (max-width: 641px) {
    .rosetta-slideshow {
      height: 225px; } }

/* GIRLUP SPECIFIC */
.girlup-tweet-slides {
  background: #fd7060; }
  .girlup-tweet-slides .girlup-tweet-slideshow {
    width: 100%;
    height: 100%; }
  .girlup-tweet-slides .girlup-tweet-slide {
    width: 100%;
    height: 100%;
    overflow: hidden; }
  .girlup-tweet-slides .girlup-tweet-single {
    width: 500px;
    position: absolute;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%); }
    @media only screen and (min-width: 642px) and (max-width: 801px) {
      .girlup-tweet-slides .girlup-tweet-single {
        width: 460px; } }
    @media only screen and (max-width: 641px) {
      .girlup-tweet-slides .girlup-tweet-single {
        width: 70%; } }
  .girlup-tweet-slides .girlup-tweet-bkg {
    position: absolute;
    height: 100%;
    width: auto;
    top: 0;
    bottom: 0; }
    @media only screen and (min-width: 642px) and (max-width: 801px) {
      .girlup-tweet-slides .girlup-tweet-bkg {
        width: 100%;
        height: auto;
        bottom: auto; } }
    @media only screen and (max-width: 641px) {
      .girlup-tweet-slides .girlup-tweet-bkg {
        width: 100%;
        height: auto;
        bottom: auto; } }
    .girlup-tweet-slides .girlup-tweet-bkg img {
      height: 100%;
      width: auto; }
      @media only screen and (min-width: 642px) and (max-width: 801px) {
        .girlup-tweet-slides .girlup-tweet-bkg img {
          width: 100%;
          height: auto; } }
      @media only screen and (max-width: 641px) {
        .girlup-tweet-slides .girlup-tweet-bkg img {
          width: 100%;
          height: auto; } }

.girlup-vjustice {
  background: #fd7060; }
  .girlup-vjustice .girlup-tweet-single {
    left: 32.5%;
    top: 50%; }
    @media only screen and (min-width: 802px) and (max-width: 1025px) {
      .girlup-vjustice .girlup-tweet-single {
        left: 36%; } }
    @media only screen and (min-width: 642px) and (max-width: 801px) {
      .girlup-vjustice .girlup-tweet-single {
        left: 50%;
        top: 80%; } }
    @media only screen and (max-width: 641px) {
      .girlup-vjustice .girlup-tweet-single {
        left: 50%;
        top: 75%; } }
  .girlup-vjustice .girlup-tweet-bkg {
    right: 0; }
    .girlup-vjustice .girlup-tweet-bkg:after {
      display: block;
      position: absolute;
      top: 0;
      left: 0;
      bottom: 0;
      height: 100%;
      width: 45%;
      background: url('/img/work/girlup/girlup-gradient-vjustice.png') repeat-y;
      background-size: 100% auto;
      content: ''; }
      @media only screen and (min-width: 642px) and (max-width: 801px) {
        .girlup-vjustice .girlup-tweet-bkg:after {
          top: auto;
          width: 100%;
          height: 30%;
          background: url('/img/work/girlup/girlup-gradient-vjustice-mobile.png') repeat-x;
          background-size: auto 100%; } }
      @media only screen and (max-width: 641px) {
        .girlup-vjustice .girlup-tweet-bkg:after {
          top: auto;
          width: 100%;
          height: 30%;
          background: url('/img/work/girlup/girlup-gradient-vjustice-mobile.png') repeat-x;
          background-size: auto 100%; } }

.girlup-unfound {
  background-color: #cb3e89;
  background: url('/img/work/girlup/girlup-gradient-unfound.png') repeat-y;
  background-size: 100% auto; }
  .girlup-unfound .girlup-tweet-single {
    left: 50%; }
    .girlup-unfound .girlup-tweet-single.girlup {
      top: 30%; }
      @media only screen and (max-width: 641px) {
        .girlup-unfound .girlup-tweet-single.girlup {
          top: 35%; } }
    .girlup-unfound .girlup-tweet-single.unfound {
      top: 70%; }
      @media only screen and (max-width: 641px) {
        .girlup-unfound .girlup-tweet-single.unfound {
          top: 65%; } }

.girlup-nbarker {
  background: #888888; }
  .girlup-nbarker .girlup-tweet-single {
    left: 67.5%;
    top: 50%; }
    @media only screen and (min-width: 802px) and (max-width: 1025px) {
      .girlup-nbarker .girlup-tweet-single {
        left: 64%; } }
    @media only screen and (min-width: 642px) and (max-width: 801px) {
      .girlup-nbarker .girlup-tweet-single {
        left: 50%;
        top: 80%; } }
    @media only screen and (max-width: 641px) {
      .girlup-nbarker .girlup-tweet-single {
        left: 50%;
        top: 75%; } }
  .girlup-nbarker .girlup-tweet-bkg {
    left: 0; }
    .girlup-nbarker .girlup-tweet-bkg:after {
      display: block;
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      height: 100%;
      width: 40%;
      background: url('/img/work/girlup/girlup-gradient-nbarker.png') repeat-y;
      background-size: 100% auto;
      content: ''; }
      @media only screen and (min-width: 642px) and (max-width: 801px) {
        .girlup-nbarker .girlup-tweet-bkg:after {
          top: auto;
          width: 100%;
          height: 40%;
          background: url('/img/work/girlup/girlup-gradient-nbarker-mobile.png') repeat-x;
          background-size: auto 100%; } }
      @media only screen and (max-width: 641px) {
        .girlup-nbarker .girlup-tweet-bkg:after {
          top: auto;
          width: 100%;
          height: 40%;
          background: url('/img/work/girlup/girlup-gradient-nbarker-mobile.png') repeat-x;
          background-size: auto 100%; } }

.girlup-aiusa {
  background: #faf235; }
  .girlup-aiusa .girlup-tweet-single {
    left: 50%;
    top: 50%; }

.girlup-salexander {
  background: #2ec3ef; }
  .girlup-salexander .girlup-tweet-single {
    left: 32.5%;
    top: 50%; }
    @media only screen and (min-width: 802px) and (max-width: 1025px) {
      .girlup-salexander .girlup-tweet-single {
        left: 36%; } }
    @media only screen and (min-width: 642px) and (max-width: 801px) {
      .girlup-salexander .girlup-tweet-single {
        left: 50%;
        top: 80%; } }
    @media only screen and (max-width: 641px) {
      .girlup-salexander .girlup-tweet-single {
        left: 50%;
        top: 75%; } }
  .girlup-salexander .girlup-tweet-bkg {
    right: 0; }
    .girlup-salexander .girlup-tweet-bkg:after {
      display: block;
      position: absolute;
      top: 0;
      left: 0;
      bottom: 0;
      height: 100%;
      width: 50%;
      background: url('/img/work/girlup/girlup-gradient-salexander.png') repeat-y;
      background-size: 100% auto;
      content: ''; }
      @media only screen and (min-width: 642px) and (max-width: 801px) {
        .girlup-salexander .girlup-tweet-bkg:after {
          top: auto;
          width: 100%;
          height: 30%;
          background: url('/img/work/girlup/girlup-gradient-salexander-mobile.png') repeat-x;
          background-size: auto 100%; } }
      @media only screen and (max-width: 641px) {
        .girlup-salexander .girlup-tweet-bkg:after {
          top: auto;
          width: 100%;
          height: 30%;
          background: url('/img/work/girlup/girlup-gradient-salexander-mobile.png') repeat-x;
          background-size: auto 100%; } }

/* DISCOVERY EDUCATION SPECIFIC */
.discovery_cell_row .discovery_cell {
  width: 20%;
  float: left;
  padding: 1em 1.25em;
  background: #428bca;
  overflow: visible; }
  .discovery_cell_row .discovery_cell:after {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background: #428bca;
    width: 100%;
    height: 200%;
    display: block;
    content: ''; }
    @media only screen and (max-width: 641px) {
      .discovery_cell_row .discovery_cell:after {
        display: none; } }
  .discovery_cell_row .discovery_cell:nth-child(2n) {
    background: #357ebd; }
    .discovery_cell_row .discovery_cell:nth-child(2n):after {
      background: #357ebd; }
  @media only screen and (max-width: 641px) {
    .discovery_cell_row .discovery_cell {
      width: 100%;
      float: none; } }

/* STAFF */
.staff-block {
  overflow: visible; }

.staff-photo {
  cursor: pointer; }

.staff-photo-hover {
  cursor: pointer;
  position: absolute;
  top: 0;
  left: 5px;
  width: -moz-calc(100% - 10px);
  width: -o-calc(100% - 10px);
  width: -webkit-calc(100% - 10px);
  width: calc(100% - 10px);
  opacity: 0; }
  .desktop .staff-block:hover .staff-photo-hover, .staff-block.active .staff-photo-hover {
    opacity: 1; }

.staff-bio {
  cursor: pointer;
  position: absolute;
  top: 0;
  left: 5px;
  width: -moz-calc(100% - 10px);
  width: -o-calc(100% - 10px);
  width: -webkit-calc(100% - 10px);
  width: calc(100% - 10px);
  height: -moz-calc(100% - 10px);
  height: -o-calc(100% - 10px);
  height: -webkit-calc(100% - 10px);
  height: calc(100% - 10px);
  padding: 1.25em;
  display: none; }
  .desktop .staff-block:hover .staff-bio, .staff-block.active .staff-bio {
    display: block; }

.staff-description-block {
  overflow: visible;
  position: absolute;
  top: 0;
  left: -moz-calc(100% - 5px);
  left: -o-calc(100% - 5px);
  left: -webkit-calc(100% - 5px);
  left: calc(100% - 5px);
  background: white;
  width: 100%;
  height: -moz-calc(100% - 10px);
  height: -o-calc(100% - 10px);
  height: -webkit-calc(100% - 10px);
  height: calc(100% - 10px);
  padding: 1.5em;
  border: 2px solid #ac2eff;
  display: none; }
  @media only screen and (min-width: 642px) and (max-width: 801px) {
    .staff-description-block {
      padding: 1em; } }
  .staff-description-block:before {
    display: block;
    background-image: -webkit-linear-gradient( top left, white 0%, white 55%, transparent 55%, transparent 100%);
    background-image: linear-gradient(to bottom right, white 0%, white 55%, transparent 55%, transparent 100%);
    position: absolute;
    left: -moz-calc(-1.5em - 2px);
    left: -o-calc(-1.5em - 2px);
    left: -webkit-calc(-1.5em - 2px);
    left: calc(-1.5em - 2px);
    top: -moz-calc(50% - 1.5em - 2px);
    top: -o-calc(50% - 1.5em - 2px);
    top: -webkit-calc(50% - 1.5em - 2px);
    top: calc(50% - 1.5em - 2px);
    width: 3em;
    height: 3em;
    z-index: 2;
    -webkit-transform-origin: center center;
    -moz-transform-origin: center center;
    -ms-transform-origin: center center;
    -o-transform-origin: center center;
    transform-origin: center center;
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    transform: rotate(-45deg);
    border-left: 2px solid #ac2eff;
    border-top: 2px solid #ac2eff;
    content: ''; }
    @media only screen and (max-width: 641px) {
      .staff-description-block:before {
        top: -1.6em;
        left: -moz-calc(50% - 1.5em);
        left: -o-calc(50% - 1.5em);
        left: -webkit-calc(50% - 1.5em);
        left: calc(50% - 1.5em);
        -webkit-transform: rotate(45deg);
        -moz-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
        -o-transform: rotate(45deg);
        transform: rotate(45deg); } }
  .staff-block:nth-child(3n) .staff-description-block {
    left: auto;
    right: -moz-calc(100% - 5px);
    right: -o-calc(100% - 5px);
    right: -webkit-calc(100% - 5px);
    right: calc(100% - 5px); }
    .staff-block:nth-child(3n) .staff-description-block:before {
      left: auto;
      right: -moz-calc(-1.5em - 1px);
      right: -o-calc(-1.5em - 1px);
      right: -webkit-calc(-1.5em - 1px);
      right: calc(-1.5em - 1px);
      -webkit-transform: rotate(135deg);
      -moz-transform: rotate(135deg);
      -ms-transform: rotate(135deg);
      -o-transform: rotate(135deg);
      transform: rotate(135deg); }
      @media only screen and (max-width: 641px) {
        .staff-block:nth-child(3n) .staff-description-block:before {
          top: -1.6em;
          left: -moz-calc(50% - 1.5em);
          left: -o-calc(50% - 1.5em);
          left: -webkit-calc(50% - 1.5em);
          left: calc(50% - 1.5em);
          -webkit-transform: rotate(45deg);
          -moz-transform: rotate(45deg);
          -ms-transform: rotate(45deg);
          -o-transform: rotate(45deg);
          transform: rotate(45deg); } }
    @media only screen and (max-width: 641px) {
      .staff-block:nth-child(3n) .staff-description-block {
        left: 5px;
        height: 100%;
        width: -moz-calc(100% - 10px);
        width: -o-calc(100% - 10px);
        width: -webkit-calc(100% - 10px);
        width: calc(100% - 10px);
        top: -moz-calc(100% - 10px);
        top: -o-calc(100% - 10px);
        top: -webkit-calc(100% - 10px);
        top: calc(100% - 10px); } }
  @media only screen and (max-width: 641px) {
    .staff-block:last-child .staff-description-block {
      left: 5px;
      height: 100%;
      top: auto;
      width: -moz-calc(100% - 10px);
      width: -o-calc(100% - 10px);
      width: -webkit-calc(100% - 10px);
      width: calc(100% - 10px);
      bottom: 100%; } }
  @media only screen and (max-width: 641px) {
    .staff-block:last-child .staff-description-block:before {
      bottom: -1.6em;
      top: auto;
      left: -moz-calc(50% - 1.5em);
      left: -o-calc(50% - 1.5em);
      left: -webkit-calc(50% - 1.5em);
      left: calc(50% - 1.5em);
      -webkit-transform: rotate(-135deg);
      -moz-transform: rotate(-135deg);
      -ms-transform: rotate(-135deg);
      -o-transform: rotate(-135deg);
      transform: rotate(-135deg); } }
  .staff-block.active .staff-description-block {
    display: block; }
  @media only screen and (max-width: 641px) {
    .staff-description-block {
      left: 5px;
      height: 100%;
      width: -moz-calc(100% - 10px);
      width: -o-calc(100% - 10px);
      width: -webkit-calc(100% - 10px);
      width: calc(100% - 10px);
      top: -moz-calc(100% - 10px);
      top: -o-calc(100% - 10px);
      top: -webkit-calc(100% - 10px);
      top: calc(100% - 10px); } }

.staff-more-info-link {
  position: absolute;
  bottom: 1.5em;
  left: 1.5em;
  right: 1.5em;
  border: 2px solid #1ff042;
  padding: 1.4em 0 1.5em 0; }
  .staff-more-info-link:hover, .staff-more-info-link:active {
    background: #1ff042; }
  @media only screen and (min-width: 642px) and (max-width: 801px) {
    .staff-more-info-link {
      padding: 0.9em 0 1em 0;
      bottom: 1em;
      left: 1em;
      right: 1em; } }

/* FOOTER */
.footer-nav {
  width: 100%;
  padding: 0;
  margin: 0;
  margin-left: -0.9em;
  margin-bottom: 0.5em; }
  @media only screen and (max-width: 641px) {
    .footer-nav:first-child {
      border-bottom: 1px solid rgba(255, 255, 255, 0.25);
      padding-bottom: 3em;
      margin-bottom: 3em; } }
  @media only screen and (max-width: 641px) {
    .footer-nav {
      margin-left: 0; } }
  .footer-nav li {
    display: inline-block;
    padding: 0 1em 0 1.2em; }
    @media only screen and (max-width: 641px) {
      .footer-nav li {
        display: block;
        width: 100%;
        text-align: center;
        padding: 1em 0; } }
  .footer-nav:last-child {
    margin-bottom: 0; }

/* LOADER */
#loader {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  -webkit-transition: opacity 100ms ease-out;
  -moz-transition: opacity 100ms ease-out;
  transition: opacity 100ms ease-out; }
  #loader.active {
    opacity: 1; }

#initial-loader {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 100%;
  background: black;
  opacity: 1;
  transition: opacity 300ms ease-out; }
  #initial-loader.hidden {
    opacity: 0; }

/* FORM STYLES */
input, textarea, button, select {
  -webkit-appearance: none;
  border: 0;
  outline: none;
  border-radius: 0; }

.form-slide {
  width: 100%;
  height: 100%;
  padding-bottom: 9em; }

.form-input, .form-textarea, .form-dropdown {
  border: 0;
  outline: none;
  display: block;
  width: 100%;
  padding: 0.1em 0;
  margin-top: 0.5em;
  resize: none; }
  .form-input:-webkit-autofill, .form-textarea:-webkit-autofill, .form-dropdown:-webkit-autofill {
    -webkit-box-shadow: 0 0 0px 1000px white inset;
    -webkit-text-fill-color: #ac2eff !important; }
    .form-input:-webkit-autofill:focus, .form-textarea:-webkit-autofill:focus, .form-dropdown:-webkit-autofill:focus {
      -webkit-box-shadow: 0 0 0px 1000px white inset; }
  .form-input:focus, .form-textarea:focus, .form-dropdown:focus {
    border: 0;
    outline: none; }

.form-textarea {
  height: 50vh; }

.form-dropdown-row {
  overflow: visible; }

.form-dropdown {
  position: relative; }
  .form-dropdown:after {
    position: absolute;
    display: block;
    right: 1%;
    top: 25%;
    width: 0.5em;
    height: 0.5em;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);
    border-bottom: 6px solid #1ff042;
    border-right: 6px solid #1ff042;
    content: ''; }
  .form-dropdown-row.active .form-dropdown:after {
    top: 45%;
    -webkit-transform: rotate(-135deg);
    -moz-transform: rotate(-135deg);
    -ms-transform: rotate(-135deg);
    -o-transform: rotate(-135deg);
    transform: rotate(-135deg); }

.form-dropdown-list {
  position: absolute;
  top: 120%;
  left: 0;
  right: 0;
  display: none;
  background: white; }
  .form-dropdown-list .form-dropdown-link {
    position: relative;
    display: block;
    padding: 0.1em 0.1em; }
    .form-dropdown-list .form-dropdown-link:hover {
      background: rgba(172, 46, 255, 0.15); }
  .form-dropdown-row.active .form-dropdown-list {
    display: block; }

.button-back, .button-next {
  position: absolute;
  bottom: 1.4em;
  display: block;
  margin: 0;
  padding: 0;
  background: 0;
  border: 0;
  cursor: pointer;
  outline: none; }
  .button-back:focus, .button-next:focus {
    outline: none; }

.button-back {
  left: 1.3em; }

.button-next {
  right: 1.3em; }

/* 404 PAGE */
.four-oh-four {
  position: relative;
  top: 0;
  left: 0;
  min-height: 100vh;
  min-width: 100vw;
  z-index: 2;
  background-color: black;
  transition: opacity 300ms ease-out;
  background-position: center center;
  background-repeat: no-repeat; }
  .four-oh-four .dJAX_internal {
    opacity: 0.0; }
  .four-oh-four form, .four-oh-four input {
    position: fixed;
    top: 0;
    left: 0;
    opacity: 0;
    background-color: black; }

.terminal {
  position: relative;
  padding: 4rem; }
  .terminal .prompt {
    color: #1ff042;
    display: block;
    font-family: 'AndaleMono', monospace;
    font-weight: bold;
    text-transform: uppercase;
    font-size: 0.9em;
    letter-spacing: 0.15em;
    white-space: pre-wrap;
    text-shadow: 0 0 2px rgba(31, 240, 66, 0.75);
    line-height: 1;
    margin-bottom: 0.75em; }
    @media only screen and (max-width: 641px) {
      .terminal .prompt {
        font-size: 0.6em; } }
    .terminal .prompt:before {
      content: '> ';
      display: inline-block; }
  .terminal .new-output {
    display: inline-block; }
    .terminal .new-output:after {
      display: inline-block;
      vertical-align: -0.15em;
      width: 0.75em;
      height: 1em;
      margin-left: 5px;
      background: #1ff042;
      box-shadow: 1px 1px 1px rgba(31, 240, 66, 0.65), -1px -1px 1px rgba(31, 240, 66, 0.65), 1px -1px 1px rgba(31, 240, 66, 0.65), -1px 1px 1px rgba(31, 240, 66, 0.65);
      -webkit-animation: cursor-blink 1.25s steps(1) infinite;
      -moz-animation: cursor-blink 1.25s steps(1) infinite;
      animation: cursor-blink 1.25s steps(1) infinite;
      content: ''; }

.kittens p {
  letter-spacing: 0;
  opacity: 0;
  line-height: 1rem; }

.kitten-gif {
  margin: 20px;
  max-width: 300px; }

.404-form {
  display: none; }


/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlLnNjc3MiLCJpbmNsdWRlcy9fcmVzZXQuc2NzcyIsImJvdXJib24vYWRkb25zL19wcmVmaXhlci5zY3NzIiwiYmFzZS9fZ3JpZC5zY3NzIiwiYmFzZS9femluZGV4LnNjc3MiLCJiYXNlL19mb250cy5zY3NzIiwiYmFzZS9fdGV4dC5zY3NzIiwiYmFzZS9fdmFyaWFibGVzLnNjc3MiLCJib3VyYm9uL2NzczMvX3RyYW5zaXRpb24uc2NzcyIsImJvdXJib24vY3NzMy9fYW5pbWF0aW9uLnNjc3MiLCJib3VyYm9uL2NzczMvX2tleWZyYW1lcy5zY3NzIiwiYmFzZS9faW1hZ2VzLnNjc3MiLCJiYXNlL19uYXYuc2NzcyIsImJhc2UvX2hlYWRlci5zY3NzIiwiYmFzZS9fbWFpbi5zY3NzIiwiYmFzZS9fd29yay5zY3NzIiwiYmFzZS9fY2Fyb3VzZWwuc2NzcyIsImJhc2UvY2FzZXN0dWRpZXMvX3Jvc2V0dGEuc2NzcyIsImJhc2UvY2FzZXN0dWRpZXMvX2dpcmx1cC5zY3NzIiwiYmFzZS9jYXNlc3R1ZGllcy9fZGlzY292ZXJ5LnNjc3MiLCJiYXNlL19zdGFmZi5zY3NzIiwiYm91cmJvbi9jc3MzL19iYWNrZ3JvdW5kLWltYWdlLnNjc3MiLCJiYXNlL19mb290ZXIuc2NzcyIsImJhc2UvX2xvYWRlci5zY3NzIiwiYmFzZS9fZm9ybS5zY3NzIiwiYmFzZS9fNDA0LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtFQUVrQixBQUFNOzs7RUFDVCxBQUFNOzs7RUFDUCxBQUFNOzs7RUFDUCxBQUFNOzs7RUFDVCxBQUFNOzs7Ozs7QUNGaEIsQUFBTSxBQUFNLEFBQUssQUFBTSxBQUFRLEFBQVEsQUFBUSxBQUFJLEFBQUksQUFBSSxBQUFJLEFBQUksQUFBSSxBQUFHLEFBQVksQUFBSyxBQUFHLEFBQU0sQUFBUyxBQUFTLEFBQUssQUFBTSxBQUFNLEFBQUssQUFBSyxBQUFJLEFBQUssQUFBSyxBQUFLLEFBQUcsQUFBRyxBQUFNLEFBQU8sQUFBUSxBQUFR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RUFDakIsQUFBaUI7RUFDakIsQUFBaUI7RUFDakIsQUFBaUI7RUFDakIsQUFBd0I7O0FBSXpCO0VBQ0MsQUFBTztFQUNQLEFBQVU7RUFDVixBQUFPOztBQUdSO0VBQ0MsQUFBVTtFQUNWLEFBQUs7RUFDTCxBQUFNO0VBQ04sQUFBTztFQUVQLEFBQWE7RUFDYixBQUFZOztBQVNiLEFBQXdCLEFBQXlCO0VBR3RCLEFUbkhuQjtFU21IbUIsQVQ5R25CO0VTOEdtQixBVHpHbkI7RVN5R21CLEFUcEduQjtFU29HbUIsQVQvRm5CO0VTZ0dtQixBVHBIbkI7RVNvSG1CLEFUL0duQjtFUytHbUIsQVQxR25CO0VTMEdtQixBVHJHbkI7RVNxR21CLEFUaEduQjtFU2lHeUIsQVRySHpCO0VTcUh5QixBVGhIekI7RVNnSHlCLEFUM0d6QjtFUzJHeUIsQVR0R3pCO0VTc0d5QixBVGpHekI7RUFwQkEsQU9MVTtFUFVWLEFPVlU7RVB5QlYsQU96QlU7RVBLVixBT3NCb0I7RVBqQnBCLEFPaUJvQjtFUEZwQixBT0VvQjtFUHRCcEIsQU9nQjBCO0VQWDFCLEFPVzBCO0VQSTFCLEFPSjBCO0VQaEIxQixBT3VDb0I7RVBsQ3BCLEFPa0NvQjtFUG5CcEIsQU9tQm9COztBRW9GNUI7RVQzSFEsQU9rQ2dCO0VQN0JoQixBTzZCZ0I7RVBkaEIsQU9jZ0I7O0FFNEZ4QjtFVDlIUSxBT2tDZ0I7RVA3QmhCLEFPNkJnQjtFUGRoQixBT2NnQjs7QUUrRnhCO0VUaklRLEFPa0NnQjtFUDdCaEIsQU82QmdCO0VQZGhCLEFPY2dCOzttQkNoQ3hCO0VDb0lBO0lBQ2tDLEFUdkkxQjs7RVN5SVI7SUFDNkIsQVQxSXJCOztFUzRJUjtJQUM2QixBVDdJckI7O2dCUVNSO0VDNkhBO0lBQ2tDLEFUbEkxQjs7RVNvSVI7SUFDNkIsQVRySXJCOztFU3VJUjtJQUM2QixBVHhJckI7O1dRZ0JSO0VDaUhBO0lBQ2tDLEFUdkkxQjtJU3VJMEIsQVRsSTFCO0lTa0kwQixBVDdIMUI7SVM2SDBCLEFUeEgxQjtJU3dIMEIsQVRuSDFCOztFU3FIUjtJQUM2QixB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QUNMLEFBQU07SUFDTixBQUFTO0lBQ1QsQUFBa0I7O0FBSXBCO0VBQ0MsQUFBVTtFQUNWLEFBQVM7RUFFVixBQUFVO0lBQ1IsQWxCNUJNO0lrQjZCTixBQUFTO0lBQ1QsQUFBYTtJQUNiLEFBQWE7SUFDYixBQUFnQjtJQUNoQixBQUFXO0lBQ1gsQUFBZ0I7SUFDaEIsQUFBYTtJQUNiLEFBQWE7SUFDYixBQUFhO0lBQ2IsQUFBZTtJekJaZjtNeUJDRixBQUFVO1FBY1AsQUFBVztJQUdkLEFBQVUsQUFBTztNQUNkLEFBQVM7TUFDVCxBQUFTO0VBSVosQUFBVTtJQUNSLEFBQVM7SUFDWCxBQUFVLEFBQVc7TUFDbEIsQUFBUztNQUNULEFBQWdCO01BQ2hCLEFBQU87TUFDUCxBQUFRO01BQ1IsQUFBYTtNQUNiLEFsQjFESztNa0IyREwsQUFBd0M7TXZCcERuQyxBT0xVO01QVVYsQU9WVTtNUHlCVixBT3pCVTtNZ0IyRGYsQUFBUzs7QUFNWixBQUFTO0VBQ1AsQUFBZ0I7RUFDaEIsQUFBUztFQUNULEFBQWE7O0FBSWY7RUFDQyxBQUFRO0VBQ1IsQUFBVzs7QUFHWjtFQUNDLEFBQVMiLCJmaWxlIjoic3R5bGUuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiQGNoYXJzZXQgXCJ1dGYtOFwiO1xuXG5ALXdlYmtpdC12aWV3cG9ydHt3aWR0aDpkZXZpY2Utd2lkdGh9XG5ALW1vei12aWV3cG9ydHt3aWR0aDpkZXZpY2Utd2lkdGh9XG5ALW1zLXZpZXdwb3J0e3dpZHRoOmRldmljZS13aWR0aH1cbkAtby12aWV3cG9ydHt3aWR0aDpkZXZpY2Utd2lkdGh9XG5Admlld3BvcnR7d2lkdGg6ZGV2aWNlLXdpZHRofVxuXG4kZXhwZXJpbWVudGFsLXN1cHBvcnQtZm9yLWtodG1sOiBmYWxzZTtcbkBpbXBvcnQgJ2JvdXJib24vYm91cmJvbic7XG5AaW1wb3J0ICdpbmNsdWRlcy9yZXNldCc7XG5cblxuLyogTUlYLUlOUyAqL1xuQG1peGluIGJyZWFrcG9pbnQoJHBvaW50KSB7XG5cdEBpZiAkcG9pbnQgPT0geHhsYXJnZSB7XG5cdFx0QG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoIDogMTYwMHB4KSB7IEBjb250ZW50OyB9XG5cdH1cblx0QGVsc2UgaWYgJHBvaW50ID09IGxhcmdlIHtcblx0XHRAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGggOiAxNDAxcHgpIGFuZCAobWF4LXdpZHRoIDogMTU1OXB4KSB7IEBjb250ZW50OyB9XG5cdH1cblx0QGVsc2UgaWYgJHBvaW50ID09IGxhbmRzY2FwZSB7XG5cdFx0QG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoIDogODAycHgpIGFuZCAobWF4LXdpZHRoIDogMTAyNXB4KSB7IEBjb250ZW50OyB9XG5cdH1cblx0QGVsc2UgaWYgJHBvaW50ID09IHBvcnRyYWl0IHtcblx0XHRAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGggOiA2NDJweCkgYW5kIChtYXgtd2lkdGggOiA4MDFweCkgeyBAY29udGVudDsgfVxuXHR9XG5cdEBlbHNlIGlmICRwb2ludCA9PSBtb2JpbGUge1xuXHRcdEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aCA6IDY0MXB4KSB7IEBjb250ZW50OyB9XG5cdH1cbn1cbkBtaXhpbiBjYWxjKCRwcm9wZXJ0eSwgJGV4cHJlc3Npb24pIHtcblx0I3skcHJvcGVydHl9OiAtbW96LWNhbGMoI3skZXhwcmVzc2lvbn0pO1xuXHQjeyRwcm9wZXJ0eX06IC1vLWNhbGMoI3skZXhwcmVzc2lvbn0pO1xuXHQjeyRwcm9wZXJ0eX06IC13ZWJraXQtY2FsYygjeyRleHByZXNzaW9ufSk7XG5cdCN7JHByb3BlcnR5fTogY2FsYygjeyRleHByZXNzaW9ufSk7XG59XG5cblxuLyogQURESVRJT05BTCBSRVNFVCAqL1xuaHRtbCB7XG5cdG1pbi1oZWlnaHQ6IDEwMCU7XG5cdGhlaWdodDogMTAwJTtcblx0LXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiBub25lO1xufVxuYm9keSB7XG5cdGhlaWdodDogMTAwJTtcblx0d2lkdGg6IDEwMCU7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0b3ZlcmZsb3cteDogaGlkZGVuO1xufVxuKiB7XG4gICBcdEBpbmNsdWRlIGJveC1zaXppbmcoYm9yZGVyLWJveCk7XG5cbiAgIFx0JjpiZWZvcmUsXG4gICBcdCY6YWZ0ZXIge1xuICAgXHRcdEBpbmNsdWRlIGJveC1zaXppbmcoYm9yZGVyLWJveCk7XG4gICBcdH1cbn1cblxuLyogQ0xFQVIgJiBGTE9BVFMgKi9cbi5sZWZ0IHtcblx0ZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcbn1cbi5yaWdodCB7XG5cdGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xufVxuLmNsZWFyZml4IHtcblx0JjphZnRlciB7XG5cdFx0Y2xlYXI6IGJvdGg7XG5cdFx0ZGlzcGxheTogdGFibGU7XG5cdFx0Y29udGVudDogJyc7XG5cdH1cbn1cblxuLm5vbW9iaWxlIHtcblx0QGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGUpIHtcblx0XHRkaXNwbGF5OiBub25lO1xuXHR9XG59XG5cblxuLyogSU5DTFVERUQgKi9cbkBpbXBvcnQgJ2Jhc2UvdmFyaWFibGVzJztcblxuQGltcG9ydCAnYmFzZS9ncmlkJztcbkBpbXBvcnQgJ2Jhc2UvemluZGV4JztcblxuQGltcG9ydCAnYmFzZS9mb250cyc7XG5AaW1wb3J0ICdiYXNlL3RleHQnO1xuQGltcG9ydCAnYmFzZS9pbWFnZXMnO1xuXG5AaW1wb3J0ICdiYXNlL25hdic7XG5AaW1wb3J0ICdiYXNlL2hlYWRlcic7XG5AaW1wb3J0ICdiYXNlL21haW4nO1xuXG5AaW1wb3J0ICdiYXNlL3dvcmsnO1xuQGltcG9ydCAnYmFzZS9jYXJvdXNlbCc7XG5AaW1wb3J0ICdiYXNlL2Nhc2VzdHVkaWVzL3Jvc2V0dGEnO1xuQGltcG9ydCAnYmFzZS9jYXNlc3R1ZGllcy9naXJsdXAnO1xuQGltcG9ydCAnYmFzZS9jYXNlc3R1ZGllcy9kaXNjb3ZlcnknO1xuXG5AaW1wb3J0ICdiYXNlL3N0YWZmJztcbkBpbXBvcnQgJ2Jhc2UvZm9vdGVyJztcblxuQGltcG9ydCAnYmFzZS9sb2FkZXInO1xuQGltcG9ydCAnYmFzZS9mb3JtJztcbkBpbXBvcnQgJ2Jhc2UvNDA0JzsiLCIvKipcbiAqIEVyaWMgTWV5ZXIncyBSZXNldCBDU1MgdjIuMCAoaHR0cDovL21leWVyd2ViLmNvbS9lcmljL3Rvb2xzL2Nzcy9yZXNldC8pXG4gKiBodHRwOi8vY3NzcmVzZXQuY29tXG4gKi9cbmh0bWwsIGJvZHksIGRpdiwgc3BhbiwgYXBwbGV0LCBvYmplY3QsIGlmcmFtZSxcbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsIHAsIGJsb2NrcXVvdGUsIHByZSxcbmEsIGFiYnIsIGFjcm9ueW0sIGFkZHJlc3MsIGJpZywgY2l0ZSwgY29kZSxcbmRlbCwgZGZuLCBlbSwgaW1nLCBpbnMsIGtiZCwgcSwgcywgc2FtcCxcbnNtYWxsLCBzdHJpa2UsIHN0cm9uZywgc3ViLCBzdXAsIHR0LCB2YXIsXG5iLCB1LCBpLCBjZW50ZXIsXG5kbCwgZHQsIGRkLCBvbCwgdWwsIGxpLFxuZmllbGRzZXQsIGZvcm0sIGxhYmVsLCBsZWdlbmQsXG50YWJsZSwgY2FwdGlvbiwgdGJvZHksIHRmb290LCB0aGVhZCwgdHIsIHRoLCB0ZCxcbmFydGljbGUsIGFzaWRlLCBjYW52YXMsIGRldGFpbHMsIGVtYmVkLCBcbmZpZ3VyZSwgZmlnY2FwdGlvbiwgZm9vdGVyLCBoZWFkZXIsIGhncm91cCwgXG5tZW51LCBuYXYsIG91dHB1dCwgcnVieSwgc2VjdGlvbiwgc3VtbWFyeSxcbnRpbWUsIG1hcmssIGF1ZGlvLCB2aWRlbyB7XG5cdG1hcmdpbjogMDtcblx0cGFkZGluZzogMDtcblx0Ym9yZGVyOiAwO1xuXHRmb250LXNpemU6IDEwMCU7XG5cdGZvbnQ6IGluaGVyaXQ7XG5cdHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cbi8qIEhUTUw1IGRpc3BsYXktcm9sZSByZXNldCBmb3Igb2xkZXIgYnJvd3NlcnMgKi9cbmFydGljbGUsIGFzaWRlLCBkZXRhaWxzLCBmaWdjYXB0aW9uLCBmaWd1cmUsIFxuZm9vdGVyLCBoZWFkZXIsIGhncm91cCwgbWVudSwgbmF2LCBzZWN0aW9uIHtcblx0ZGlzcGxheTogYmxvY2s7XG59XG5ib2R5IHtcblx0bGluZS1oZWlnaHQ6IDE7XG59XG5vbCwgdWwge1xuXHRsaXN0LXN0eWxlOiBub25lO1xufVxuYmxvY2txdW90ZSwgcSB7XG5cdHF1b3Rlczogbm9uZTtcbn1cbmJsb2NrcXVvdGU6YmVmb3JlLCBibG9ja3F1b3RlOmFmdGVyLFxucTpiZWZvcmUsIHE6YWZ0ZXIge1xuXHRjb250ZW50OiAnJztcblx0Y29udGVudDogbm9uZTtcbn1cbnRhYmxlIHtcblx0Ym9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcblx0Ym9yZGVyLXNwYWNpbmc6IDA7XG59IiwiLy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovL1xuLy8gRXhhbXBsZTogQGluY2x1ZGUgcHJlZml4ZXIoYm9yZGVyLXJhZGl1cywgJHJhZGlpLCB3ZWJraXQgbXMgc3BlYyk7XG4vLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8vXG4vLyBWYXJpYWJsZXMgbG9jYXRlZCBpbiAvc2V0dGluZ3MvX3ByZWZpeGVyLnNjc3NcblxuQG1peGluIHByZWZpeGVyICgkcHJvcGVydHksICR2YWx1ZSwgJHByZWZpeGVzKSB7XG4gIEBlYWNoICRwcmVmaXggaW4gJHByZWZpeGVzIHtcbiAgICBAaWYgJHByZWZpeCA9PSB3ZWJraXQge1xuICAgICAgQGlmICRwcmVmaXgtZm9yLXdlYmtpdCB7XG4gICAgICAgIC13ZWJraXQtI3skcHJvcGVydHl9OiAkdmFsdWU7XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIGlmICRwcmVmaXggPT0gbW96IHtcbiAgICAgIEBpZiAkcHJlZml4LWZvci1tb3ppbGxhIHtcbiAgICAgICAgLW1vei0jeyRwcm9wZXJ0eX06ICR2YWx1ZTtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2UgaWYgJHByZWZpeCA9PSBtcyB7XG4gICAgICBAaWYgJHByZWZpeC1mb3ItbWljcm9zb2Z0IHtcbiAgICAgICAgLW1zLSN7JHByb3BlcnR5fTogJHZhbHVlO1xuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSBpZiAkcHJlZml4ID09IG8ge1xuICAgICAgQGlmICRwcmVmaXgtZm9yLW9wZXJhIHtcbiAgICAgICAgLW8tI3skcHJvcGVydHl9OiAkdmFsdWU7XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIGlmICRwcmVmaXggPT0gc3BlYyB7XG4gICAgICBAaWYgJHByZWZpeC1mb3Itc3BlYyB7XG4gICAgICAgICN7JHByb3BlcnR5fTogJHZhbHVlO1xuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSAge1xuICAgICAgQHdhcm4gXCJVbnJlY29nbml6ZWQgcHJlZml4OiAjeyRwcmVmaXh9XCI7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBkaXNhYmxlLXByZWZpeC1mb3ItYWxsKCkge1xuICAkcHJlZml4LWZvci13ZWJraXQ6ICAgIGZhbHNlICFnbG9iYWw7XG4gICRwcmVmaXgtZm9yLW1vemlsbGE6ICAgZmFsc2UgIWdsb2JhbDtcbiAgJHByZWZpeC1mb3ItbWljcm9zb2Z0OiBmYWxzZSAhZ2xvYmFsO1xuICAkcHJlZml4LWZvci1vcGVyYTogICAgIGZhbHNlICFnbG9iYWw7XG4gICRwcmVmaXgtZm9yLXNwZWM6ICAgICAgZmFsc2UgIWdsb2JhbDtcbn1cbiIsIi8qIEdSSUQgKi9cbmJvZHkge1xuXHQmLm5vc2Nyb2xsIHtcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHRcdHBvc2l0aW9uOiBmaXhlZDtcblx0fVxufVxubmF2LFxuZGl2LFxuYXJ0aWNsZSxcbnNlY3Rpb24sXG5tYWluLFxuZm9vdGVyLFxuaGVhZGVyIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxubmF2LFxuaGVhZGVyLFxubWFpbixcbmZvb3RlciB7XG5cdGZvbnQtc2l6ZTogMTAwJTtcblxuXHRAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcblx0XHRmb250LXNpemU6IDExNSU7XG5cdH1cblx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuXHRcdGZvbnQtc2l6ZTogMTA1JTtcblx0fVxuXHRAaW5jbHVkZSBicmVha3BvaW50KGxhbmRzY2FwZSkge1xuXHRcdGZvbnQtc2l6ZTogODIlO1xuXHR9XG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQocG9ydHJhaXQpIHtcblx0XHRmb250LXNpemU6IDgwJTtcblx0fVxuXHRAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuXHRcdGZvbnQtc2l6ZTogNzAlO1xuXHR9XG59XG5cblxuXG4uZ3JpZF9yb3cge1xuXHR3aWR0aDogMTAwJTtcblx0b3ZlcmZsb3c6IHZpc2libGU7XG5cblx0JjphZnRlciB7XG5cdFx0Y2xlYXI6IGJvdGg7XG5cdFx0ZGlzcGxheTogdGFibGU7XG5cdFx0Y29udGVudDogJyc7XG5cdH1cbn1cblxuLmdyaWQxIHtcblx0ZmxvYXQ6IGxlZnQ7XG5cdHdpZHRoOiAzMSU7XG5cdEBpbmNsdWRlIGNhbGMod2lkdGgsIFwiKDEwMCUgLyAzKSAtIDI1cHhcIik7XG5cblx0JjpudGgtY2hpbGQoM24pIHtcblx0XHRtYXJnaW4tcmlnaHQ6IDA7XG5cdH1cblxuXHQuY2FzZV9zdHVkeV9mb290ZXIgJiB7XG5cdFx0bWFyZ2luLWxlZnQ6IDUwJTtcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG5cdFx0XHRtYXJnaW4tbGVmdDogMDtcblx0XHR9XG5cdH1cbn1cbi5ncmlkMiB7XG5cdGZsb2F0OiBsZWZ0O1xuXHR3aWR0aDogNjQlO1xuXHRAaW5jbHVkZSBjYWxjKHdpZHRoLCBcIigoMTAwJSAvIDMpICogMikgLSAyNXB4XCIpO1xuXG5cdC5oYWxmIHtcblx0XHRmbG9hdDogbGVmdDtcblx0XHR3aWR0aDogNTAlO1xuXHRcdEBpbmNsdWRlIGNhbGMod2lkdGgsIFwiNTAlIC0gMjVweFwiKTtcblx0XHRtYXJnaW4tcmlnaHQ6IDUwcHg7XG5cblx0XHQmOm50aC1vZi10eXBlKDJuKSB7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDA7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGUpIHtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiAwO1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMjJweDtcblx0XHR9XG5cdH1cbn1cbi5ncmlkMyB7XG5cdGNsZWFyOiBib3RoO1xuXHR3aWR0aDogMTAwJTtcbn1cbi5ncmlkMSxcbi5ncmlkMixcbi5ncmlkMyB7XG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0bWFyZ2luLWJvdHRvbTogMjJweDtcblx0XHRtYXJnaW4tcmlnaHQ6IDA7XG5cdH1cbn1cbi5ncmlkMSxcbi5ncmlkMiB7XG5cdG1hcmdpbi1yaWdodDogNTBweDtcblx0b3ZlcmZsb3c6IHZpc2libGU7XG5cblx0JjpsYXN0LWNoaWxkIHtcblx0XHRtYXJnaW4tcmlnaHQ6IDA7XG5cdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0fVxufVxuXG4uc3BhY2VyIHtcblx0aGVpZ2h0OiAxZW07XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGUpIHtcblx0XHRkaXNwbGF5OiBub25lO1xuXHR9XG59XG5cblxuLnBpY3R1cmUtZ3JpZF9yb3cge1xuXHR3aWR0aDogMTAwJTtcblx0QGluY2x1ZGUgY2FsYyh3aWR0aCwgXCIxMDAlICsgMTBweFwiKTtcblx0bWFyZ2luLWxlZnQ6IC01cHg7XG5cblx0JjphZnRlciB7XG5cdFx0Y2xlYXI6IGJvdGg7XG5cdFx0ZGlzcGxheTogdGFibGU7XG5cdFx0Y29udGVudDogJyc7XG5cdH1cbn1cbi5waWN0dXJlLWdyaWQxIHtcblx0ZmxvYXQ6IGxlZnQ7XG5cdHdpZHRoOiAzMyU7XG5cdEBpbmNsdWRlIGNhbGMod2lkdGgsIFwiKDEwMCUgLyAzKVwiKTtcblx0cGFkZGluZy1yaWdodDogNXB4O1xuXHRwYWRkaW5nLWxlZnQ6IDVweDtcblx0cGFkZGluZy1ib3R0b206IDEwcHg7XG5cblx0Ji5zcGFjZWQtZ3JpZCB7XG5cdFx0JjpmaXJzdC1jaGlsZCB7XG5cdFx0XHRwYWRkaW5nLXJpZ2h0OiAyLjVlbTtcblx0XHRcdHBhZGRpbmctbGVmdDogMDtcblxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGUpIHtcblx0XHRcdFx0cGFkZGluZy1sZWZ0OiAwO1xuXHRcdFx0XHRwYWRkaW5nLXJpZ2h0OiAwO1xuXHRcdFx0fVxuXHRcdH1cblx0XHQmOm50aC1jaGlsZCgyKSB7XG5cdFx0XHRwYWRkaW5nLWxlZnQ6IDEuMjVlbTtcblx0XHRcdHBhZGRpbmctcmlnaHQ6IDEuMjVlbTtcblxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGUpIHtcblx0XHRcdFx0cGFkZGluZy1sZWZ0OiAwO1xuXHRcdFx0XHRwYWRkaW5nLXJpZ2h0OiAwO1xuXHRcdFx0fVxuXHRcdH1cblx0XHQmOmxhc3QtY2hpbGQge1xuXHRcdFx0cGFkZGluZy1sZWZ0OiAyLjVlbTtcblx0XHRcdHBhZGRpbmctcmlnaHQ6IDA7XG5cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG5cdFx0XHRcdHBhZGRpbmctbGVmdDogMDtcblx0XHRcdFx0cGFkZGluZy1yaWdodDogMDtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cbi5waWN0dXJlLWdyaWQyIHtcblx0ZmxvYXQ6IGxlZnQ7XG5cdHdpZHRoOiA2NiU7XG5cdEBpbmNsdWRlIGNhbGMod2lkdGgsIFwiKCgxMDAlIC8gMykgKiAyKVwiKTtcblx0cGFkZGluZy1yaWdodDogNXB4O1xuXHRwYWRkaW5nLWxlZnQ6IDVweDtcblx0cGFkZGluZy1ib3R0b206IDEwcHg7XG59XG4ucGljdHVyZS1ncmlkaGFsZiB7XG5cdGZsb2F0OiBsZWZ0O1xuXHR3aWR0aDogNTAlO1xuXHRwYWRkaW5nLXJpZ2h0OiA1cHg7XG5cdHBhZGRpbmctbGVmdDogNXB4O1xuXHRwYWRkaW5nLWJvdHRvbTogMTBweDtcbn1cbi5waWN0dXJlLWdyaWQzIHtcblx0Y2xlYXI6IGJvdGg7XG5cdHdpZHRoOiAxMDAlO1xuXHRwYWRkaW5nOiAwIDVweCAxMHB4IDVweDtcblx0XG5cdCY6bGFzdC1jaGlsZCB7XG5cdFx0cGFkZGluZy1ib3R0b206IDA7XG5cdH1cbn1cbi5waWN0dXJlLWdyaWQxLFxuLnBpY3R1cmUtZ3JpZDIsXG4ucGljdHVyZS1ncmlkMyB7XG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0bWFyZ2luLXJpZ2h0OiAwO1xuXHR9XG59XG5cblxuLmNvbHVtbi0yIHtcblx0QGluY2x1ZGUgY29sdW1uLWNvdW50KDIpO1xuXHRAaW5jbHVkZSBjb2x1bW4tZ2FwKDUwcHgpO1xuXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG5cdFx0QGluY2x1ZGUgY29sdW1uLWNvdW50KDEpO1xuXHR9XG59XG5cblxuXG4uaG9yaXNjcm9sbCB7XG5cdGN1cnNvcjogLXdlYmtpdC1ncmFiICFpbXBvcnRhbnQ7XG5cdGN1cnNvcjogLW1vei1ncmFiICFpbXBvcnRhbnQ7XG5cblx0Ji5ob3Jpc2Nyb2xsLW1vdmluZy1sZWZ0LFxuXHQmLmhvcmlzY3JvbGwtbW92aW5nLXJpZ2h0IHtcblx0XHRjdXJzb3I6IC13ZWJraXQtZ3JhYmJpbmcgIWltcG9ydGFudDtcblx0XHRjdXJzb3I6IC1tb3otZ3JhYmJpbmcgIWltcG9ydGFudDtcblx0fVxufVxuXG5cblxuLnBhZGRlZCB7XG5cdHBhZGRpbmc6IDNlbTtcblxuXHRAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuXHRcdHBhZGRpbmc6IDI1cHg7XG5cdH1cbn1cblxuLnBhZGRlZC1ob3Jpem9udGFsIHtcblx0cGFkZGluZy1sZWZ0OiAzZW07XG5cdHBhZGRpbmctcmlnaHQ6IDNlbTtcblxuXHRAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuXHRcdHBhZGRpbmctbGVmdDogMjVweDtcblx0XHRwYWRkaW5nLXJpZ2h0OiAyNXB4O1xuXHR9XG59XG5cbi5wYWRkZWQtdmVydGljYWwge1xuXHRwYWRkaW5nLXRvcDogM2VtO1xuXHRwYWRkaW5nLWJvdHRvbTogM2VtO1xuXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG5cdFx0cGFkZGluZy10b3A6IDI1cHg7XG5cdFx0cGFkZGluZy1ib3R0b206IDI1cHg7XG5cdH1cbn1cbi5wYWRkZWQtdG9wIHtcblx0cGFkZGluZy10b3A6IDNlbTtcblxuXHRAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuXHRcdHBhZGRpbmctdG9wOiAyNXB4O1xuXHR9XG59XG4ucGFkZGVkLXRvcC1zbWFsbCB7XG5cdHBhZGRpbmctdG9wOiAwLjRlbTtcbn1cbi5wYWRkZWQtdG9wLWNhc2VzdHVkeSB7XG5cdHBhZGRpbmctdG9wOiAxMGVtO1xuXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG5cdFx0cGFkZGluZy10b3A6IDEzZW07XG5cdH1cbn1cbi5wYWRkZWQtYm90dG9tIHtcblx0cGFkZGluZy1ib3R0b206IDNlbTtcblxuXHRAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuXHRcdHBhZGRpbmctYm90dG9tOiAyNXB4O1xuXHR9XG59XG4ucGFkZGVkLWJvdHRvbS1sYXJnZSB7XG5cdHBhZGRpbmctYm90dG9tOiA2ZW07XG59XG5cbi5wYWRkZWQtdmVydGljYWwtbGFyZ2Uge1xuXHRwYWRkaW5nLXRvcDogMTNlbTtcblx0cGFkZGluZy1ib3R0b206IDEzZW07XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGUpIHtcblx0XHRwYWRkaW5nLXRvcDogMTUwcHg7XG5cdFx0cGFkZGluZy1ib3R0b206IDE1MHB4O1xuXHR9XG59XG5cblxuLm1hcmdpbi1ib3R0b20ge1xuXHRtYXJnaW4tYm90dG9tOiAzZW07XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGUpIHtcblx0XHRtYXJnaW4tYm90dG9tOiAyNXB4O1xuXHR9XG59XG4udGFibGVfcm93IHtcblx0ZGlzcGxheTogdGFibGU7XG5cdHdpZHRoOiAxMDAlO1xuXG5cdC50YWJsZV9jZWxsIHtcblx0XHRkaXNwbGF5OiB0YWJsZS1jZWxsO1xuXHR9XG59XG5cblxuLmhlaWdodC02MCB7XG5cdG1pbi1oZWlnaHQ6IDYwdmg7XG5cblx0Ji5leGFjdCB7XG5cdFx0aGVpZ2h0OiA2MHZoO1xuXHR9XG59XG4uaGVpZ2h0LTgwIHtcblx0bWluLWhlaWdodDogODB2aDtcblxuXHQmLmV4YWN0IHtcblx0XHRoZWlnaHQ6IDgwdmg7XG5cblx0XHQmLmNhc2Utc3R1ZHktaXBhZC1sYW5kc2NhcGUtc2NyZWVucyB7XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHBvcnRyYWl0KSB7XG5cdFx0XHRcdG1pbi1oZWlnaHQ6IDA7XG5cdFx0XHRcdGhlaWdodDogNTN2aDtcblx0XHRcdH1cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG5cdFx0XHRcdG1pbi1oZWlnaHQ6IDA7XG5cdFx0XHRcdGhlaWdodDogMTIuNXJlbTtcblx0XHRcdH1cblx0XHR9XG5cdFx0Ji5jYXNlLXN0dWR5LWhlcm8tc2xpZGVzIHtcblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQocG9ydHJhaXQpIHtcblx0XHRcdFx0bWluLWhlaWdodDogMDtcblx0XHRcdFx0aGVpZ2h0OiA1MHZoO1xuXHRcdFx0fVxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGUpIHtcblx0XHRcdFx0bWluLWhlaWdodDogMDtcblx0XHRcdFx0aGVpZ2h0OiAxNXJlbTtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cbi5oZWlnaHQtOTUge1xuXHRtaW4taGVpZ2h0OiA5NXZoO1xuXG5cdCYuZXhhY3Qge1xuXHRcdGhlaWdodDogOTV2aDtcblx0fVxufVxuXG5cbi5ib3R0b20tc3BhY2Uge1xuXHRtYXJnaW4tYm90dG9tOiAxNnZoO1xufSIsIi8qIFotSU5ERVggJiBMQVlFUlMgKi9cbiNsb2FkZXItbG9nbyB7XG5cdHotaW5kZXg6IDEwMDA7XG59XG4jbG9hZGVyLFxuI2luaXRpYWwtbG9hZGVyIHtcblx0ei1pbmRleDogOTk5O1xufVxuXG5cbiNuY2x1ZC1sb2dvLFxuI21vYmlsZS1tZW51LWJ1dHRvbiB7XG5cdHotaW5kZXg6IDk5ODtcbn1cbm5hdiB7XG5cdHotaW5kZXg6IDk5Nztcbn1cblxuLnNsaWRlc2hvdy1sZWZ0LFxuLnNsaWRlc2hvdy1yaWdodCxcbi5tb2JpbGUtY2Fyb3VzZWwtcGhvbmUge1xuXHR6LWluZGV4OiA5OTY7XG59XG5cblxuLmhlYWRlci10ZXh0LFxuLmhlYWRlci1zdWJ0ZXh0LFxuLmZvcm0tZHJvcGRvd24tbGlzdCxcbi5jYXNlLXN0dWR5LWZlYXR1cmVkLXRleHQsXG4uZGV2aWNlX3NjcmVlbiB7XG5cdHotaW5kZXg6IDEwO1xufVxuLmhvbWUtdGFnbGluZSxcbi5oZWFkZXItc3VidGV4dCxcbi5oZWFkZXItY2F0ZWdvcnksXG4uY2FzZS1zdHVkeS1mZWF0dXJlZC1pbWFnZSxcbi5kZXZpY2VfY29udGFpbmVyIHtcblx0ei1pbmRleDogOTtcbn1cblxuXG4uc3RhZmYtZGVzY3JpcHRpb24tYmxvY2sge1xuXHR6LWluZGV4OiA2O1xufVxuLnN0YWZmLWJpbyxcbi5jbGllbnQtbGlzdCB7XG5cdHotaW5kZXg6IDU7XG59XG4uc3RhZmYtcGhvdG8taG92ZXIsXG4uZ2lybHVwLXR3ZWV0LXNpbmdsZSB7XG5cdHotaW5kZXg6IDQ7XG59XG5cblxuLmNhc2Utc3R1ZHktZmVhdHVyZWQtdGV4dCxcbi5naXJsdXAtdHdlZXQtYmtnIHtcblx0ei1pbmRleDogMjtcbn1cbi5jYXNlLXN0dWR5LWZlYXR1cmVkLWltYWdlIHtcblx0ei1pbmRleDogMTtcbn0iLCIvKiBHTFlQSFMgKi9cblxuLy8gQU5EQUxFIE1PTk9cbkBpbXBvcnQgdXJsKCcvL2hlbGxvLm15Zm9udHMubmV0L2NvdW50LzJjN2I4ZicpO1xuXG5AZm9udC1mYWNlIHtcblx0Zm9udC1mYW1pbHk6ICdBbmRhbGVNb25vJztcblx0c3JjOiB1cmwoJy9mb250cy8yQzdCOEZfMF8wLmVvdCcpO1xuXHRzcmM6IHVybCgnL2ZvbnRzLzJDN0I4Rl8wXzAuZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcblx0XHQgdXJsKCcvZm9udHMvMkM3QjhGXzBfMC53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcblx0XHQgdXJsKCcvZm9udHMvMkM3QjhGXzBfMC53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXG5cdFx0IHVybCgnL2ZvbnRzLzJDN0I4Rl8wXzAudHRmJykgZm9ybWF0KCd0cnVldHlwZScpO1xufVxuXG5cbi8vIE5FVUUgSEFBUyBHUk9URVNLXG5AaW1wb3J0IHVybCgnLy9mYXN0LmZvbnRzLm5ldC9sdC8xLmNzcz9hcGlUeXBlPWNzcyZjPTFjYjdjODM4LWY2NzQtNDBjNC05MjExLTUzNGI3MmViNWMwZCZmb250aWRzPTEyNjE5MTYsMTI2MTkyNScpO1xuXG5AZm9udC1mYWNlIHtcblx0Zm9udC1mYW1pbHk6ICdOZXVlSGFhcyc7XG5cdHNyYzogdXJsKCcvZm9udHMvMjZlODc4N2YtYjc2Ni00MGEyLTg5Y2QtNjcwNGI2ODU1NTZjLmVvdD8jaWVmaXgnKTtcblx0c3JjOiB1cmwoJy9mb250cy8yNmU4Nzg3Zi1iNzY2LTQwYTItODljZC02NzA0YjY4NTU1NmMuZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcblx0XHQgdXJsKCcvZm9udHMvOWJmZTZjODctYTZkYy00M2FiLTk3OTctZmYzYzY1NmU2NWYwLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcblx0XHQgdXJsKCcvZm9udHMvN2ZmYjRlODYtODE2OC00NDQzLTg0MDItM2QzNGMwNGFjM2I4LnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKSxcblx0XHQgdXJsKCcvZm9udHMvMjZhMmY0ZTEtOGNjOS00Yzk4LWExNjItZTcwOTQ3ZjQ5MDg5LnN2ZyMyNmEyZjRlMS04Y2M5LTRjOTgtYTE2Mi1lNzA5NDdmNDkwODknKSBmb3JtYXQoJ3N2ZycpO1xufVxuQGZvbnQtZmFjZSB7XG5cdGZvbnQtZmFtaWx5OiAnTmV1ZUhhYXNCb2xkJztcblx0c3JjOiB1cmwoJy9mb250cy8wNGJmNGQzNi0yOWI0LTRhMjctOWJiYi1mZjA5MTEwNjVkYTEuZW90PyNpZWZpeCcpO1xuXHRzcmM6IHVybCgnL2ZvbnRzLzA0YmY0ZDM2LTI5YjQtNGEyNy05YmJiLWZmMDkxMTA2NWRhMS5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxuXHRcdCB1cmwoJy9mb250cy8zM2Y4MzIxNS0wOWQ0LTQ0OTItYjM2Mi1hN2NiMzFhYjYyOWMud29mZicpIGZvcm1hdCgnd29mZicpLFxuXHRcdCB1cmwoJy9mb250cy80ZjQ2NjdhMS1hYzJjLTQ1NjEtODc5MC00YTZmYjBhYjgyZDYudHRmJykgZm9ybWF0KCd0cnVldHlwZScpLFxuXHRcdCB1cmwoJy9mb250cy8zZWQ5YzI4My00NjhkLTRiMTctODViNS1mYTQxNjcxYTM1Nzguc3ZnIzNlZDljMjgzLTQ2OGQtNGIxNy04NWI1LWZhNDE2NzFhMzU3OCcpIGZvcm1hdCgnc3ZnJyk7XG59IiwiLyogVEVYVCBTRVRUSU5HUyAqL1xuKiB7XG4gICAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbiAgICAtd2Via2l0LWZvbnQtZmVhdHVyZS1zZXR0aW5nczogXCJrZXJuXCI7XG4gICAgLW1vei1mb250LWZlYXR1cmUtc2V0dGluZ3M6IFwia2VyblwiO1xuICAgIC1tb3otZm9udC1mZWF0dXJlLXNldHRpbmdzOiBcImtlcm49MVwiO1xuICAgIGZvbnQtZmVhdHVyZS1zZXR0aW5nczogXCJrZXJuXCIgMTtcbiAgICBmb250LWtlcm5pbmc6IG5vcm1hbDtcbn1cbio6OnNlbGVjdGlvbiB7XG5cdGJhY2tncm91bmQ6IHJnYmEoJHB1cnBsZSwwLjEyNSk7XG59XG4qOjotbW96LXNlbGVjdGlvbiB7XG5cdGJhY2tncm91bmQ6IHJnYmEoJHB1cnBsZSwwLjEyNSk7XG59XG5cblxuLnRleHQtZ3JlZW4ge1xuXHRjb2xvcjogJGdyZWVuO1xufVxuLnRleHQtcHVycGxlIHtcblx0Y29sb3I6ICRwdXJwbGU7XG59XG5cbkBtaXhpbiB0eHQtaGlnaGxpZ2h0KCRiYWNrZ3JvdW5kQ29sb3IsICRjb2xvciwgJHdlaWdodCl7XG5cdGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgkYmFja2dyb3VuZENvbG9yLCAkYmFja2dyb3VuZENvbG9yKSwgbGluZWFyLWdyYWRpZW50KCRiYWNrZ3JvdW5kQ29sb3IsICRiYWNrZ3JvdW5kQ29sb3IpLCBsaW5lYXItZ3JhZGllbnQoJGNvbG9yLCAkY29sb3IpO1xuXHRiYWNrZ3JvdW5kLXNpemU6IDAuMDVlbSAxcHgsIDAuMDVlbSAxcHgsIDFweCAkd2VpZ2h0O1xuXHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0LCBuby1yZXBlYXQsIHJlcGVhdC14O1xuXHR0ZXh0LXNoYWRvdzogMC4wMmVtIDAgJGJhY2tncm91bmRDb2xvciwgLTAuMDNlbSAwJGJhY2tncm91bmRDb2xvciwgMCAwLjAzZW0gJGJhY2tncm91bmRDb2xvciwgMCAtMC4wM2VtICRiYWNrZ3JvdW5kQ29sb3IsIDAuMDZlbSAwICRiYWNrZ3JvdW5kQ29sb3IsIC0wLjA2ZW0gMCAkYmFja2dyb3VuZENvbG9yLCAwLjA5ZW0gMCAkYmFja2dyb3VuZENvbG9yLCAtMC4wOWVtIDAgJGJhY2tncm91bmRDb2xvcjtcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogMCUgOTAlLCAxMDAlIDkwJSwgMCUgOTAlO1xufVxuXG5cbmgxLFxuaDIge1xuXHRmb250LWZhbWlseTogXCJOZXVlSGFhc0JvbGRcIiwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuXHRmb250LXdlaWdodDogbm9ybWFsO1xuXHRsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcblx0Y29sb3I6IHdoaXRlO1xuXHQtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcblx0LW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbn1cbmgxIHtcblx0Zm9udC1zaXplOiA1LjI1ZW07XG5cdC8vIGZvbnQtc2l6ZTogNi44NXZ3O1xuXHRtYXJnaW4tYm90dG9tOiAwLjA1ZW07XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGUpIHtcblx0XHRsaW5lLWhlaWdodDogMC45O1xuXHRcdGZvbnQtc2l6ZTogNWVtO1xuXHR9XG59XG5oMiB7XG5cdGZvbnQtc2l6ZTogMi45ZW07XG5cdC8vIGZvbnQtc2l6ZTogMy43dnc7XG5cdGxpbmUtaGVpZ2h0OiAxO1xuXHQvLyBtYXJnaW4tYm90dG9tOiAxZW07XG5cdG1hcmdpbi1ib3R0b206IDFlbTtcblxuXHQmOmxhc3QtY2hpbGQge1xuXHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdH1cblxuXHRAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuXHRcdGZvbnQtc2l6ZTogMi4xZW07XG5cdH1cblxuXHQuY2FzZS1zdHVkeS1mZWF0dXJlZC1pbWFnZSAmIHtcblx0XHR0ZXh0LWFsaWduOiByaWdodDtcblx0XHR6LWluZGV4OiAzMTtcblx0XHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG5cdFx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHRcdH1cblx0fVxuXHQuY2FzZS1zdHVkeS1mZWF0dXJlZC1pbWFnZTpob3ZlciAmLFxuXHQuY2FzZS1zdHVkeS1mZWF0dXJlZC1pbWFnZTphY3RpdmUgJiB7XG5cdFx0Y29sb3I6ICRncmVlbjtcblx0fVxuXG5cblx0Zm9vdGVyICYge1xuXHRcdGZvbnQtc2l6ZTogNGVtO1xuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGUpIHtcblx0XHRcdGZvbnQtc2l6ZTogMy4yNWVtO1xuXHRcdH1cblxuXHRcdGEge1xuXHRcdFx0Y29sb3I6IHdoaXRlO1xuXHRcdFx0Ly8gdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0Ly8gZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0Ly8gdGV4dC1zaGFkb3c6IDRweCAwIDAgJHB1cnBsZSwgLTRweCAwIDAgJHB1cnBsZSwgMHB4IDRweCAwICRwdXJwbGU7XG5cdFx0XHR6LWluZGV4OiAyO1xuXHRcdFx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG5cblx0XHRcdC8vICY6YWZ0ZXIge1xuXHRcdFx0Ly8gXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHQvLyBcdGxlZnQ6IDA7XG5cdFx0XHQvLyBcdHJpZ2h0OiAwO1xuXHRcdFx0Ly8gXHRib3R0b206IDBlbTtcblx0XHRcdC8vIFx0aGVpZ2h0OiA1cHg7XG5cdFx0XHQvLyBcdGJhY2tncm91bmQ6IHdoaXRlO1xuXHRcdFx0Ly8gXHR6LWluZGV4OiAtMTtcblx0XHRcdC8vIFx0Y29udGVudDogJyc7XG5cblx0XHRcdC8vIFx0QGluY2x1ZGUgYnJlYWtwb2ludChwb3J0cmFpdCkge1xuXHRcdFx0Ly8gXHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHQvLyBcdH1cblx0XHRcdC8vIFx0QGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGUpIHtcblx0XHRcdC8vIFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0Ly8gXHR9XG5cdFx0XHQvLyB9XG5cblx0XHRcdCY6aG92ZXIsXG5cdFx0XHQmOmFjdGl2ZSB7XG5cdFx0XHRcdGNvbG9yOiAkZ3JlZW47XG5cblx0XHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdFx0YmFja2dyb3VuZDogJGdyZWVuO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdC8vIEBpbmNsdWRlIGJyZWFrcG9pbnQocG9ydHJhaXQpIHtcblx0XHRcdC8vIFx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG5cdFx0XHQvLyBcdHRleHQtc2hhZG93OiBub25lO1xuXHRcdFx0Ly8gXHRkaXNwbGF5OiBpbmxpbmU7XG5cdFx0XHQvLyB9XG5cdFx0XHQvLyBAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuXHRcdFx0Ly8gXHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcblx0XHRcdC8vIFx0dGV4dC1zaGFkb3c6IG5vbmU7XG5cdFx0XHQvLyBcdGRpc3BsYXk6IGlubGluZTtcblx0XHRcdC8vIH1cblx0XHR9XG5cdH1cbn1cblxuXG5oMyxcbmg0IHtcblx0Zm9udC1mYW1pbHk6ICdBbmRhbGVNb25vJywgbW9ub3NwYWNlO1xuXHRsZXR0ZXItc3BhY2luZzogMC41ZW07XG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbmgzIHtcblx0Zm9udC1zaXplOiAwLjhlbTtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRsaW5lLWhlaWdodDogMC45O1xuXHRmb250LXdlaWdodDogYm9sZDtcblx0YmFja2dyb3VuZDogYmxhY2s7XG5cdHBhZGRpbmc6IDFlbSAxLjJlbSAwLjllbSAxLjQ1ZW07XG5cdGNvbG9yOiB3aGl0ZTtcblx0bWFyZ2luLWJvdHRvbTogMmVtO1xuXHQtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcblx0LW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbn1cblxuaDQge1xuXHRmb250LXNpemU6IDFlbTtcblx0Y29sb3I6IHdoaXRlO1xuXHRmb250LXdlaWdodDogYm9sZDtcblx0LXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG5cdC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG5cdG1hcmdpbi1ib3R0b206IDAuNWVtO1xuXG5cdCY6bGFzdC1jaGlsZCB7XG5cdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0fVxufVxuXG5oNSB7XG5cdGZvbnQtZmFtaWx5OiBcIk5ldWVIYWFzQm9sZFwiLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG5cdGZvbnQtd2VpZ2h0OiBub3JtYWw7XG5cdGNvbG9yOiBibGFjaztcblx0Zm9udC1zaXplOiAzLjVlbTtcblx0bWFyZ2luLWJvdHRvbTogMC4zNWVtO1xuXG5cdC5ibGFjayAmIHtcblx0XHRjb2xvcjogd2hpdGU7XG5cdH1cblxuXHQmLmNhc2Utc3R1ZHktaGVhZGVyIHtcblx0XHRtYXJnaW4tYm90dG9tOiAwLjc1ZW07XG5cdH1cblxuXHRAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuXHRcdGZvbnQtc2l6ZTogM2VtO1xuXHRcdGxpbmUtaGVpZ2h0OiAxLjE7XG5cdH1cbn1cblxuXG5wIHtcblx0Zm9udC1mYW1pbHk6IFwiTmV1ZUhhYXNcIiwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuXHRmb250LXdlaWdodDogbm9ybWFsO1xuXHRjb2xvcjogYmxhY2s7XG5cdGZvbnQtc2l6ZTogMS4zZW07XG5cdGxpbmUtaGVpZ2h0OiAxLjU7XG5cdG1hcmdpbi1ib3R0b206IDEuMTVlbTtcblxuXHRzdHJvbmcge1xuXHRcdGZvbnQtZmFtaWx5OiBcIk5ldWVIYWFzQm9sZFwiLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG5cdH1cblx0ZW0ge1xuXHRcdGZvbnQtc3R5bGU6IGl0YWxpYztcblx0fVxuXG5cdCYud2hpdGUtdGV4dCB7XG5cdFx0Y29sb3I6IHdoaXRlO1xuXHR9XG5cdCYuc21hbGwge1xuXHRcdGZvbnQtc2l6ZTogMS4xZW07XG5cdFx0bGluZS1oZWlnaHQ6IDEuNjtcblx0fVxuXHQmLm5vLWJ0bS1tYXJnaW4ge1xuXHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdH1cblx0Ji5oYWxmIHtcblx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXG5cdFx0JjpsYXN0LWNoaWxkIHtcblx0XHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0fVxuXHR9XG5cblx0YSB7XG5cdFx0Ly8gZm9udC1mYW1pbHk6IFwiTmV1ZUhhYXNCb2xkXCIsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcblx0XHRjb2xvcjogJGdyZWVuO1xuXG5cdFx0Jjpob3Zlcixcblx0XHQmOmFjdGl2ZSxcblx0XHQmOnZpc2l0ZWQge1xuXHRcdFx0Y29sb3I6ICRncmVlbjtcblx0XHR9XG5cdH1cblxuXHQuYmxhY2sgJiB7XG5cdFx0Y29sb3I6IHdoaXRlO1xuXHR9XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGUpIHtcblx0XHRmb250LXNpemU6IDEuNmVtO1xuXHR9XG59XG5ibG9ja3F1b3RlIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdC8vIGJhY2tncm91bmQ6ICRwdXJwbGU7XG5cdHBhZGRpbmc6IDEuMjVlbSAwO1xuXHRtYXJnaW4tYm90dG9tOiAxLjVlbTtcblx0d2lkdGg6IDEwMCU7XG5cblx0Ji5sZWZ0LXB1bGwge1xuXHRcdG1hcmdpbi1sZWZ0OiAtNDAlO1xuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGUpIHtcblx0XHRcdG1hcmdpbi1sZWZ0OiAwO1xuXHRcdH1cblx0fVxuXHQmLnJpZ2h0LXB1bGwge1xuXHRcdHdpZHRoOiAxMzAlO1xuXHRcdG1hcmdpbi1sZWZ0OiAxNSU7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRtYXJnaW4tbGVmdDogMDtcblx0XHR9XG5cdH1cblxuXHQudmlkZW8ge1xuXHRcdG1hcmdpbi1ib3R0b206IDEuNWVtO1xuXHR9XG5cblx0cCB7XG5cdFx0Zm9udC1mYW1pbHk6IFwiTmV1ZUhhYXNCb2xkXCIsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcblx0XHRmb250LXNpemU6IDJlbTtcblx0XHRjb2xvcjogJHB1cnBsZTtcblx0XHRsaW5lLWhlaWdodDogMS4yO1xuXG5cdFx0JjpmaXJzdC1vZi10eXBlIHtcblx0XHRcdCY6YmVmb3JlIHtcblx0XHRcdFx0Y29udGVudDogJ1xcMjAxQyc7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdCY6bGFzdC1vZi10eXBlIHtcblx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRjb250ZW50OiAnXFwyMDFEJztcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHRzcGFuIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHR0ZXh0LWFsaWduOiByaWdodDtcblx0fVxuXHQucXVvdGUtc291cmNlIHtcblx0XHRmb250LWZhbWlseTogXCJOZXVlSGFhc0JvbGRcIiwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuXHRcdGZvbnQtc2l6ZTogMS41ZW07XG5cdFx0cGFkZGluZy1ib3R0b206IDAuMmVtO1xuXHRcdG1hcmdpbi10b3A6IC0xZW07XG5cdH1cblx0LnF1b3RlLXBvc2l0aW9uIHtcblx0XHRmb250LWZhbWlseTogJ0FuZGFsZU1vbm8nLCBtb25vc3BhY2U7XG5cdFx0bGV0dGVyLXNwYWNpbmc6IDAuMWVtO1xuXHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0bWFyZ2luLXJpZ2h0OiAtMC4xNWVtO1xuXHRcdGZvbnQtc2l6ZTogMC43NWVtO1xuXHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHR9XG59XG5cbmgxLFxuaDIsXG5oNCxcbmg2LFxucCB7XG5cdCY6bGFzdC1jaGlsZCxcblx0Jjpvbmx5LWNoaWxkIHtcblx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHR9XG59XG5cbm1haW4gdWwge1xuXHRtYXJnaW4tYm90dG9tOiAxZW07XG5cblx0bGkge1xuXHRcdGZvbnQtZmFtaWx5OiBcIk5ldWVIYWFzXCIsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcblx0XHRmb250LXdlaWdodDogbm9ybWFsO1xuXHRcdGNvbG9yOiBibGFjaztcblx0XHRmb250LXNpemU6IDEuMmVtO1xuXHRcdGxpbmUtaGVpZ2h0OiAxLjQ7XG5cdFx0bWFyZ2luLWJvdHRvbTogMC4zZW07XG5cdFx0cGFkZGluZy1sZWZ0OiAxLjJlbTtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0XHQmOmJlZm9yZSB7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRsZWZ0OiAwO1xuXHRcdFx0dG9wOiAwLjUyNWVtO1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRiYWNrZ3JvdW5kOiBibGFjaztcblx0XHRcdGhlaWdodDogMC4zNWVtO1xuXHRcdFx0d2lkdGg6IDAuMzVlbTtcblx0XHRcdGNvbnRlbnQ6ICcnO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG5cdFx0XHRmb250LXNpemU6IDEuNWVtO1xuXHRcdH1cblx0fVxufVxucCArIHVsIHtcblx0bWFyZ2luLXRvcDogLTEuMmVtO1xufVxuXG5cbmhyIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdHdpZHRoOiA3MCU7XG5cdG1hcmdpbjogM2VtIGF1dG87XG5cdGJvcmRlcjogMDtcblx0aGVpZ2h0OiAycHg7XG5cdGJhY2tncm91bmQ6ICRncmVlbjtcblxuXHQmLmxlZnQtaHIsXG5cdCYucmlnaHQtaHIge1xuXHRcdEBpbmNsdWRlIGNhbGMod2lkdGgsIFwiKCgxMDAlIC8gMykgKiAyKSAtIDI1cHhcIik7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRvcGFjaXR5OiAwLjI7XG5cdFx0fVxuXHR9XG5cdCYubGVmdC1ociB7XG5cdFx0bWFyZ2luLWxlZnQ6IDA7XG5cdFx0bWFyZ2luLXJpZ2h0OiAwO1xuXHR9XG5cdCYucmlnaHQtaHIge1xuXHRcdG1hcmdpbi1yaWdodDogMDtcblx0fVxufVxuXG5cbiNzaXRlLW5hdiBhIHtcblx0Zm9udC1mYW1pbHk6IFwiTmV1ZUhhYXNCb2xkXCIsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcblx0Zm9udC13ZWlnaHQ6IG5vcm1hbDtcblx0Y29sb3I6IHdoaXRlO1xuXHQtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcblx0LW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRmb250LXNpemU6IDAuODVlbTtcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuXHQuZGF0YS1udW1iZXIge1xuXHRcdGZvbnQtc2l6ZTogMi4yNWVtO1xuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGUpIHtcblx0XHRcdGZvbnQtc2l6ZTogMWVtO1xuXHRcdH1cblx0fVxuXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG5cdFx0Zm9udC1zaXplOiAyLjNlbTtcblx0fVxufVxuXG5cblxuLmhlYWRlci1udW1iZXIge1xuXHQuZGF0YS1udW1iZXIge1xuXHRcdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXHRcdGZvbnQtZmFtaWx5OiBcIk5ldWVIYWFzQm9sZFwiLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG5cdFx0LXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG5cdFx0LW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcblx0XHRjb2xvcjogJHB1cnBsZTtcblx0XHRsZXR0ZXItc3BhY2luZzogLTAuMDI1ZW07XG5cdFx0Zm9udC1zaXplOiAyMHZ3O1xuXHR9XG5cblx0Ji5lbGl6YSB7XG5cdFx0LmRhdGEtbnVtYmVyIHtcblx0XHRcdGNvbG9yOiAkZ3JlZW47XG5cdFx0fVxuXHR9XG59XG5cblxuXG4ubGFyZ2UtY3RhIHtcblx0Ly8gZGlzcGxheTogaW5saW5lO1xuXHRjb2xvcjogJGdyZWVuO1xuXHQvLyB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuXHRmb250LWZhbWlseTogXCJOZXVlSGFhc0JvbGRcIiwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuXHRmb250LXdlaWdodDogbm9ybWFsO1xuXHRmb250LXNpemU6IDIuMjVlbTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHQvLyBAaW5jbHVkZSB0eHQtaGlnaGxpZ2h0KCMwMDAwMDAsICRncmVlbiwgM3B4KTtcblxuXHQvLyAmOmFmdGVyIHtcblx0Ly8gXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdC8vIFx0bGVmdDogMDtcblx0Ly8gXHRyaWdodDogMDtcblx0Ly8gXHRib3R0b206IDAuMWVtO1xuXHQvLyBcdGhlaWdodDogNXB4O1xuXHQvLyBcdGJhY2tncm91bmQ6ICRwdXJwbGU7XG5cdC8vIFx0ei1pbmRleDogLTE7XG5cdC8vIFx0Y29udGVudDogJyc7XG5cblx0Ly8gXHRAaW5jbHVkZSBicmVha3BvaW50KHBvcnRyYWl0KSB7XG5cdC8vIFx0XHRkaXNwbGF5OiBub25lO1xuXHQvLyBcdH1cblx0Ly8gXHRAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuXHQvLyBcdFx0ZGlzcGxheTogbm9uZTtcblx0Ly8gXHR9XG5cdC8vIH1cbn1cblxuXG5cbi5ob21lLXRhZ2xpbmUge1xuXHRmb250LWZhbWlseTogXCJOZXVlSGFhc0JvbGRcIiwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuXHRmb250LXdlaWdodDogbm9ybWFsO1xuXHRjb2xvcjogd2hpdGU7XG5cdC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuXHQtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuXHRmb250LXNpemU6IDUuMjVlbTtcblx0bGluZS1oZWlnaHQ6IDAuODtcblx0Y29sb3I6ICRncmVlbjtcbn1cblxuXG5cbi5jbGllbnQtbGlzdCB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHR3aWR0aDogODAlO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdGZvbnQtZmFtaWx5OiBcIk5ldWVIYWFzQm9sZFwiLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG5cdGZvbnQtd2VpZ2h0OiBub3JtYWw7XG5cdGZvbnQtc2l6ZTogMy41ZW07XG5cdC8vIGZvbnQtc2l6ZTogNC4zNXZ3O1xuXHRjb2xvcjogJHB1cnBsZTtcblx0bGV0dGVyLXNwYWNpbmc6IC0wLjAxZW07XG5cdGxpbmUtaGVpZ2h0OiAxLjI7XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludChwb3J0cmFpdCkge1xuXHRcdHdpZHRoOiA5MCU7XG5cdH1cblx0QGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGUpIHtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRmb250LXNpemU6IDIuNzVlbTtcblx0fVxuXG5cblx0YSB7XG5cdFx0Y29sb3I6ICRwdXJwbGU7XG5cdFx0Ly8gdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdC8vIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0Ly8gdGV4dC1zaGFkb3c6IDJweCAwIDAgd2hpdGUsIC0ycHggMCAwIHdoaXRlLCAwcHggMnB4IDAgd2hpdGU7XG5cdFx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG5cblx0XHQvLyAmOmFmdGVyIHtcblx0XHQvLyBcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHQvLyBcdGxlZnQ6IDA7XG5cdFx0Ly8gXHRyaWdodDogMDtcblx0XHQvLyBcdGJvdHRvbTogMC4xZW07XG5cdFx0Ly8gXHRoZWlnaHQ6IDVweDtcblx0XHQvLyBcdGJhY2tncm91bmQ6ICRwdXJwbGU7XG5cdFx0Ly8gXHR6LWluZGV4OiAtMTtcblx0XHQvLyBcdGNvbnRlbnQ6ICcnO1xuXG5cdFx0Ly8gXHRAaW5jbHVkZSBicmVha3BvaW50KHBvcnRyYWl0KSB7XG5cdFx0Ly8gXHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0Ly8gXHR9XG5cdFx0Ly8gXHRAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuXHRcdC8vIFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdC8vIFx0fVxuXHRcdC8vIH1cblxuXHRcdCY6aG92ZXIsXG5cdFx0JjphY3RpdmUge1xuXHRcdFx0Y29sb3I6ICRncmVlbjtcblxuXHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdGJhY2tncm91bmQ6ICRncmVlbjtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQvLyBAaW5jbHVkZSBicmVha3BvaW50KHBvcnRyYWl0KSB7XG5cdFx0Ly8gXHRkaXNwbGF5OiBpbmxpbmU7XG5cdFx0Ly8gXHR0ZXh0LXNoYWRvdzogbm9uZTtcblx0XHQvLyBcdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuXHRcdC8vIH1cblx0XHQvLyBAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuXHRcdC8vIFx0ZGlzcGxheTogaW5saW5lO1xuXHRcdC8vIFx0dGV4dC1zaGFkb3c6IG5vbmU7XG5cdFx0Ly8gXHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcblx0XHQvLyB9XG5cdH1cbn1cblxuXG4uY2FzZS1zdHVkeS10aXRsZSB7XG5cdGZvbnQtZmFtaWx5OiBcIk5ldWVIYWFzQm9sZFwiLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG5cdGZvbnQtd2VpZ2h0OiBub3JtYWw7XG5cdGNvbG9yOiBibGFjaztcblx0Zm9udC1zaXplOiAzLjVlbTtcblx0bWFyZ2luLWJvdHRvbTogMC4yZW07XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRwb2ludGVyLWV2ZW50czogYXV0bztcblxuXHRhIHtcblx0XHRjb2xvcjogd2hpdGU7XG5cdFx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG5cblx0XHQmOmhvdmVyLFxuXHRcdCY6YWN0aXZlIHtcblx0XHRcdGNvbG9yOiAkZ3JlZW47XG5cdFx0fVxuXHR9XG5cblx0LmNhc2Utc3R1ZHktZmVhdHVyZWQ6aG92ZXIgJixcblx0LmNhc2Utc3R1ZHktZmVhdHVyZWQ6YWN0aXZlICYge1xuXHRcdGEge1xuXHRcdFx0Y29sb3I6ICRncmVlbjtcblx0XHR9XG5cdH1cbn1cbi5jYXNlLXN0dWR5LXRhZ2xpbmUge1xuXHRmb250LWZhbWlseTogXCJOZXVlSGFhc1wiLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG5cdGZvbnQtZmFtaWx5OiBcIk5ldWVIYWFzQm9sZFwiLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG5cdGZvbnQtd2VpZ2h0OiBub3JtYWw7XG5cdGNvbG9yOiB3aGl0ZTtcblx0Zm9udC1zaXplOiAxLjZlbTtcblx0ZGlzcGxheTogYmxvY2s7XG5cdG1hcmdpbi1ib3R0b206IDAuODc1ZW07XG5cdHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuXHQtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcblx0LW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcblxuXHQuaGVhZGVyLXN1YnRleHQgJiB7XG5cdFx0Zm9udC1zaXplOiAxLjc1ZW07XG5cdFx0bGluZS1oZWlnaHQ6IDEuMjtcblx0fVxufVxuLmNhc2Utc3R1ZHktc2VydmljZXMge1xuXHRmb250LWZhbWlseTogJ0FuZGFsZU1vbm8nLCBtb25vc3BhY2U7XG5cdGxldHRlci1zcGFjaW5nOiAwLjNlbTtcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdGNvbG9yOiB3aGl0ZTtcblx0Zm9udC1zaXplOiAwLjc1ZW07XG5cdHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuXG5cdC5oZWFkZXItY2F0ZWdvcnkgJiB7XG5cdFx0Y29sb3I6ICRncmVlbjtcblx0XHRkaXNwbGF5OiBibG9jaztcblxuXHRcdC8vICY6Zmlyc3QtY2hpbGQge1xuXHRcdC8vIFx0bWFyZ2luLWJvdHRvbTogMC43NWVtO1xuXHRcdC8vIH1cblx0fVxuXHQuY2FzZS1zdHVkeS1mZWF0dXJlZCAmIHtcblx0XHRjb2xvcjogJGdyZWVuO1xuXHRcdGxpbmUtaGVpZ2h0OiAxLjU7XG5cdH1cblxuXHRAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuXHRcdGZvbnQtc2l6ZTogMWVtO1xuXHRcdGxpbmUtaGVpZ2h0OiAxLjU7XG5cdH1cbn1cbi8vIC5jYXNlc3R1ZHktbGluayB7XG4vLyBcdGZvbnQtZmFtaWx5OiBcIk5ldWVIYWFzQm9sZFwiLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG4vLyBcdGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4vLyBcdGZvbnQtc2l6ZTogMi41ZW07XG4vLyBcdGNvbG9yOiAkZ3JlZW47XG4vLyBcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcbi8vIFx0bWFyZ2luLXRvcDogMC41ZW07XG4vLyBcdHRleHQtc2hhZG93OiAycHggMCAwIHdoaXRlLCAtMnB4IDAgMCB3aGl0ZSwgMHB4IDJweCAwIHdoaXRlO1xuLy8gXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4vLyBcdHBvc2l0aW9uOiByZWxhdGl2ZTtcbi8vIFx0ei1pbmRleDogMjtcbi8vIFx0b3ZlcmZsb3c6IHZpc2libGU7XG5cbi8vIFx0JjphZnRlciB7XG4vLyBcdFx0cG9zaXRpb246IGFic29sdXRlO1xuLy8gXHRcdGxlZnQ6IDA7XG4vLyBcdFx0cmlnaHQ6IDA7XG4vLyBcdFx0Ym90dG9tOiAtMC4wMjVlbTtcbi8vIFx0XHRoZWlnaHQ6IDVweDtcbi8vIFx0XHRiYWNrZ3JvdW5kOiAkZ3JlZW47XG4vLyBcdFx0ei1pbmRleDogLTE7XG4vLyBcdFx0Y29udGVudDogJyc7XG5cbi8vIFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHBvcnRyYWl0KSB7XG4vLyBcdFx0XHRkaXNwbGF5OiBub25lO1xuLy8gXHRcdH1cbi8vIFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuLy8gXHRcdFx0ZGlzcGxheTogbm9uZTtcbi8vIFx0XHR9XG4vLyBcdH1cblxuLy8gXHRAaW5jbHVkZSBicmVha3BvaW50KHBvcnRyYWl0KSB7XG4vLyBcdFx0ZGlzcGxheTogaW5saW5lO1xuLy8gXHRcdHRleHQtc2hhZG93OiBub25lO1xuLy8gXHRcdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuLy8gXHR9XG4vLyBcdEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG4vLyBcdFx0ZGlzcGxheTogaW5saW5lO1xuLy8gXHRcdHRleHQtc2hhZG93OiBub25lO1xuLy8gXHRcdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuLy8gXHR9XG4vLyB9XG5cblxuLnN0YWZmLW5hbWUsXG4uc3RhZmYtdGl0bGUge1xuXHRjb2xvcjogd2hpdGU7XG5cdGRpc3BsYXk6IGJsb2NrO1xufVxuLnN0YWZmLW5hbWUge1xuXHRmb250LWZhbWlseTogXCJOZXVlSGFhc0JvbGRcIiwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuXHRmb250LXdlaWdodDogbm9ybWFsO1xuXHRmb250LXNpemU6IDEuOWVtO1xuXHQtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcblx0LW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcblx0bWFyZ2luLWJvdHRvbTogMC4xZW07XG59XG4uc3RhZmYtdGl0bGUge1xuXHRmb250LWZhbWlseTogJ0FuZGFsZU1vbm8nLCBtb25vc3BhY2U7XG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHQtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcblx0LW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcblx0Zm9udC1zaXplOiAwLjc1ZW07XG5cdGxldHRlci1zcGFjaW5nOiAwLjJlbTtcbn1cbi5zdGFmZi1kZXNjcmlwdGlvbiB7XG5cdGZvbnQtZmFtaWx5OiBcIk5ldWVIYWFzXCIsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcblx0Zm9udC13ZWlnaHQ6IG5vcm1hbDtcblx0Zm9udC1zaXplOiAxLjFlbTtcblx0bGluZS1oZWlnaHQ6IDEuNDtcblx0ei1pbmRleDogMTA7XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludChwb3J0cmFpdCkge1xuXHRcdGZvbnQtc2l6ZTogMC44NzVlbTtcblx0fVxuXHRAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuXHRcdGZvbnQtc2l6ZTogMS4zNWVtO1xuXHR9XG59XG4uc3RhZmYtbW9yZS1pbmZvLWxpbmsge1xuXHRjb2xvcjogJGdyZWVuO1xuXHRmb250LXNpemU6IDAuODc1ZW07XG5cdGxldHRlci1zcGFjaW5nOiAwLjRlbTtcblx0Zm9udC1mYW1pbHk6ICdBbmRhbGVNb25vJywgbW9ub3NwYWNlO1xuXHRmb250LXdlaWdodDogYm9sZDtcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cblx0Jjpob3Zlcixcblx0JjphY3RpdmUge1xuXHRcdGNvbG9yOiB3aGl0ZTtcblx0fVxufVxuXG5cbi5mb290ZXItbmF2IGxpIHtcblx0Zm9udC1mYW1pbHk6ICdBbmRhbGVNb25vJywgbW9ub3NwYWNlO1xuXHRmb250LXdlaWdodDogYm9sZDtcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0Y29sb3I6IHdoaXRlO1xuXHQtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcblx0LW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcblx0Zm9udC1zaXplOiAwLjhlbTtcblx0bGV0dGVyLXNwYWNpbmc6IDAuNGVtO1xuXHRvcGFjaXR5OiAwLjU7XG5cblx0YSB7XG5cdFx0Y29sb3I6IHdoaXRlO1xuXHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0XHQmOmhvdmVyLFxuXHRcdCY6YWN0aXZlIHtcblx0XHRcdGNvbG9yOiBibGFjaztcblxuXHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdHRvcDogNTAlO1xuXHRcdFx0XHRsZWZ0OiAtNSU7XG5cdFx0XHRcdHdpZHRoOiAxMDQlO1xuXHRcdFx0XHRoZWlnaHQ6IDJweDtcblx0XHRcdFx0QGluY2x1ZGUgdHJhbnNmb3JtKHRyYW5zbGF0ZVkoLTc1JSkpO1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiBibGFjaztcblx0XHRcdFx0Y29udGVudDogJyc7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGUpIHtcblx0XHRmb250LXNpemU6IDFlbTtcblx0XHRsZXR0ZXItc3BhY2luZzogMDtcblx0XHQvLyBsZXR0ZXItc3BhY2luZzogMC4xZW07XG5cdFx0Ly8gbGluZS1oZWlnaHQ6IDEuNVxuXHR9XG59XG5cblxuXG5cblxuXG4uZm9ybS10ZXh0IHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0Zm9udC1mYW1pbHk6IFwiTmV1ZUhhYXNCb2xkXCIsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcblx0Zm9udC13ZWlnaHQ6IG5vcm1hbDtcblx0Y29sb3I6IGJsYWNrO1xuXHQvLyBmb250LXNpemU6IDQuMzV2dztcblx0Zm9udC1zaXplOiAzLjVlbTtcblx0bGV0dGVyLXNwYWNpbmc6IC0wLjAxZW07XG5cdGxpbmUtaGVpZ2h0OiAxLjE7XG5cblx0YSB7XG5cdFx0Y29sb3I6ICRncmVlbjtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdC8vIEBpbmNsdWRlIHR4dC1oaWdobGlnaHQoI2ZmZmZmZiwgJGdyZWVuLCA1cHgpO1xuXG5cdFx0Jjpob3Zlcixcblx0XHQmOmFjdGl2ZSB7XG5cdFx0XHRjb2xvcjogJGdyZWVuO1xuXHRcdH1cblx0fVxufVxuLmZvcm0tc3RlcHMge1xuXHRmb250LWZhbWlseTogJ0FuZGFsZU1vbm8nLCBtb25vc3BhY2U7XG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRmb250LXNpemU6IDAuOWVtO1xuXHRsZXR0ZXItc3BhY2luZzogMC4xZW07XG5cdG1hcmdpbi1ib3R0b206IDFlbTtcblx0ZGlzcGxheTogYmxvY2s7XG59XG5cbi5mb3JtLWlucHV0LFxuLmZvcm0tZHJvcGRvd24sXG4uZm9ybS1kcm9wZG93bi1saW5rIHtcblx0Zm9udC1mYW1pbHk6IFwiTmV1ZUhhYXNCb2xkXCIsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcblx0Zm9udC13ZWlnaHQ6IG5vcm1hbDtcblx0Y29sb3I6ICRwdXJwbGU7XG5cdGZvbnQtc2l6ZTogM2VtO1xuXG5cdCY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuXHRcdGNvbG9yOiByZ2JhKGJsYWNrLDAuMTc1KTtcblx0fVxuXHQmOi1tb3otcGxhY2Vob2xkZXIge1xuXHRcdGNvbG9yOiByZ2JhKGJsYWNrLDAuMTc1KTtcblx0fVxuXHQmOjotbW96LXBsYWNlaG9sZGVyIHtcblx0XHRjb2xvcjogcmdiYShibGFjaywwLjE3NSk7XG5cdH1cblx0JjotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuXHRcdGNvbG9yOiByZ2JhKGJsYWNrLDAuMTc1KTtcblx0fVxuXG5cblx0Jjpmb2N1cyB7XG5cdFx0Jjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG5cdFx0XHRjb2xvcjogdHJhbnNwYXJlbnQ7XG5cdFx0fVxuXHRcdCY6LW1vei1wbGFjZWhvbGRlciB7XG5cdFx0XHRjb2xvcjogdHJhbnNwYXJlbnQ7XG5cdFx0fVxuXHRcdCY6Oi1tb3otcGxhY2Vob2xkZXIge1xuXHRcdFx0Y29sb3I6IHRyYW5zcGFyZW50O1xuXHRcdH1cblx0XHQmOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG5cdFx0XHRjb2xvcjogdHJhbnNwYXJlbnQ7XG5cdFx0fVxuXHR9XG59XG4uZm9ybS1kcm9wZG93biB7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0Y29sb3I6IHJnYmEoYmxhY2ssMC4xNzUpO1xuXG5cdCYuZmlsbGVkIHtcblx0XHRjb2xvcjogJHB1cnBsZTtcblx0fVxufVxuLmZvcm0tZHJvcGRvd24tbGluayB7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi5mb3JtLXRleHRhcmVhIHtcblx0Zm9udC1mYW1pbHk6IFwiTmV1ZUhhYXNcIiwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuXHRmb250LXdlaWdodDogbm9ybWFsO1xuXHRjb2xvcjogJHB1cnBsZTtcblx0Zm9udC1zaXplOiAxLjNlbTtcblx0bGluZS1oZWlnaHQ6IDEuNDtcblxuXHQmOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcblx0XHRmb250LWZhbWlseTogXCJOZXVlSGFhc0JvbGRcIiwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuXHRcdGZvbnQtd2VpZ2h0OiBub3JtYWw7XG5cdFx0Y29sb3I6ICRwdXJwbGU7XG5cdFx0Zm9udC1zaXplOiAyLjI5ZW07XG5cdFx0Y29sb3I6IHJnYmEoYmxhY2ssMC4xNzUpO1xuXHR9XG5cdCY6LW1vei1wbGFjZWhvbGRlciB7XG5cdFx0Zm9udC1mYW1pbHk6IFwiTmV1ZUhhYXNCb2xkXCIsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcblx0XHRmb250LXdlaWdodDogbm9ybWFsO1xuXHRcdGNvbG9yOiAkcHVycGxlO1xuXHRcdGZvbnQtc2l6ZTogMi4yOWVtO1xuXHRcdGNvbG9yOiByZ2JhKGJsYWNrLDAuMTc1KTtcblx0fVxuXHQmOjotbW96LXBsYWNlaG9sZGVyIHtcblx0XHRmb250LWZhbWlseTogXCJOZXVlSGFhc0JvbGRcIiwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuXHRcdGZvbnQtd2VpZ2h0OiBub3JtYWw7XG5cdFx0Y29sb3I6ICRwdXJwbGU7XG5cdFx0Zm9udC1zaXplOiAyLjI5ZW07XG5cdFx0Y29sb3I6IHJnYmEoYmxhY2ssMC4xNzUpO1xuXHR9XG5cdCY6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcblx0XHRmb250LWZhbWlseTogXCJOZXVlSGFhc0JvbGRcIiwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuXHRcdGZvbnQtd2VpZ2h0OiBub3JtYWw7XG5cdFx0Y29sb3I6ICRwdXJwbGU7XG5cdFx0Zm9udC1zaXplOiAyLjI5ZW07XG5cdFx0Y29sb3I6IHJnYmEoYmxhY2ssMC4xNzUpO1xuXHR9XG5cblx0Jjpmb2N1cyB7XG5cdFx0Jjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG5cdFx0XHRmb250LWZhbWlseTogXCJOZXVlSGFhc0JvbGRcIiwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuXHRcdFx0Zm9udC13ZWlnaHQ6IG5vcm1hbDtcblx0XHRcdGNvbG9yOiAkcHVycGxlO1xuXHRcdFx0Zm9udC1zaXplOiAyLjI5ZW07XG5cdFx0XHRjb2xvcjogdHJhbnNwYXJlbnQ7XG5cdFx0fVxuXHRcdCY6LW1vei1wbGFjZWhvbGRlciB7XG5cdFx0XHRmb250LWZhbWlseTogXCJOZXVlSGFhc0JvbGRcIiwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuXHRcdFx0Zm9udC13ZWlnaHQ6IG5vcm1hbDtcblx0XHRcdGNvbG9yOiAkcHVycGxlO1xuXHRcdFx0Zm9udC1zaXplOiAyLjI5ZW07XG5cdFx0XHRjb2xvcjogdHJhbnNwYXJlbnQ7XG5cdFx0fVxuXHRcdCY6Oi1tb3otcGxhY2Vob2xkZXIge1xuXHRcdFx0Zm9udC1mYW1pbHk6IFwiTmV1ZUhhYXNCb2xkXCIsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcblx0XHRcdGZvbnQtd2VpZ2h0OiBub3JtYWw7XG5cdFx0XHRjb2xvcjogJHB1cnBsZTtcblx0XHRcdGZvbnQtc2l6ZTogMi4yOWVtO1xuXHRcdFx0Y29sb3I6IHRyYW5zcGFyZW50O1xuXHRcdH1cblx0XHQmOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG5cdFx0XHRmb250LWZhbWlseTogXCJOZXVlSGFhc0JvbGRcIiwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuXHRcdFx0Zm9udC13ZWlnaHQ6IG5vcm1hbDtcblx0XHRcdGNvbG9yOiAkcHVycGxlO1xuXHRcdFx0Zm9udC1zaXplOiAyLjI5ZW07XG5cdFx0XHRjb2xvcjogdHJhbnNwYXJlbnQ7XG5cdFx0fVxuXHR9XG59XG5cbi5yZXF1aXJlZC10ZXh0IHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IDNlbTtcblx0cmlnaHQ6IDA7XG5cdGZvbnQtZmFtaWx5OiAnQW5kYWxlTW9ubycsIG1vbm9zcGFjZTtcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdGZvbnQtc2l6ZTogMC44ZW07XG5cdGxldHRlci1zcGFjaW5nOiAwLjFlbTtcblx0b3BhY2l0eTogMC41O1xuXHRwb2ludGVyLWV2ZW50czogbm9uZTtcblx0QGluY2x1ZGUgdHJhbnNpdGlvbihvcGFjaXR5IDAuMXMpO1xuXG5cdCYuaGlkZGVuIHtcblx0XHRvcGFjaXR5OiAwO1xuXHR9XG59XG5cbi5idXR0b24tYmFjayxcbi5idXR0b24tbmV4dCB7XG5cdGZvbnQtZmFtaWx5OiBcIk5ldWVIYWFzQm9sZFwiLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG5cdGZvbnQtc2l6ZTogMi4yNWVtO1xuXHQvLyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0Ly8gdGV4dC1zaGFkb3c6IDFweCAwIDAgd2hpdGUsIC0xcHggMCAwIHdoaXRlLCAwcHggMXB4IDAgd2hpdGU7XG5cdHotaW5kZXg6IDI7XG5cdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuXHQvLyBjb2xvcjogcmdiYShibGFjaywwLjE1KTtcblx0Y29sb3I6IGxpZ2h0ZW4oYmxhY2ssIDg1JSk7XG5cblx0Ly8gJjphZnRlciB7XG5cdC8vIFx0cG9zaXRpb246IGFic29sdXRlO1xuXHQvLyBcdGxlZnQ6IDA7XG5cdC8vIFx0cmlnaHQ6IDA7XG5cdC8vIFx0Ym90dG9tOiAwLjA2ZW07XG5cdC8vIFx0aGVpZ2h0OiA0cHg7XG5cdC8vIFx0ei1pbmRleDogLTE7XG5cdC8vIFx0YmFja2dyb3VuZDogcmdiYShibGFjaywwLjE1KTtcblx0Ly8gXHRjb250ZW50OiAnJztcblx0Ly8gfVxuXG5cblx0Ji5hY3RpdmUge1xuXHRcdGNvbG9yOiAkZ3JlZW47XG5cblx0XHQvLyAmOmFmdGVyIHtcblx0XHQvLyBcdGJhY2tncm91bmQ6ICRncmVlbjtcblx0XHQvLyB9XG5cdH1cbn1cblxuXG5cbiNsb2FkZXItdGV4dCB7XG5cdGNvbG9yOiAkZ3JlZW47XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRmb250LWZhbWlseTogJ0FuZGFsZU1vbm8nLCBtb25vc3BhY2U7XG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRmb250LXNpemU6IDAuOWVtO1xuXHRsZXR0ZXItc3BhY2luZzogMC4xNWVtO1xuXHR0ZXh0LXNoYWRvdzogMCAwIDJweCByZ2JhKCRncmVlbiwwLjc1KTtcblxuXHRAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuXHRcdGZvbnQtc2l6ZTogMC42ZW07XG5cdH1cblxuXHQmOmJlZm9yZSB7XG5cdFx0Y29udGVudDogJz4gJztcblx0fVxuXHQmOmFmdGVyIHtcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0dmVydGljYWwtYWxpZ246IC0wLjE1ZW07XG5cdFx0d2lkdGg6IDAuNzVlbTtcblx0XHRoZWlnaHQ6IDFlbTtcblx0XHRtYXJnaW4tbGVmdDogNXB4O1xuXHRcdGJhY2tncm91bmQ6ICRncmVlbjtcblx0XHRib3gtc2hhZG93OiAxcHggMXB4IDFweCByZ2JhKCRncmVlbiwwLjY1KSwgLTFweCAtMXB4IDFweCByZ2JhKCRncmVlbiwwLjY1KSwgMXB4IC0xcHggMXB4IHJnYmEoJGdyZWVuLDAuNjUpLCAtMXB4IDFweCAxcHggcmdiYSgkZ3JlZW4sMC42NSk7XG5cdFx0QGluY2x1ZGUgYW5pbWF0aW9uKGN1cnNvci1ibGluayAxLjI1cyBzdGVwcygxKSBpbmZpbml0ZSk7XG5cdFx0Y29udGVudDogJyc7XG5cdH1cbn1cblxuQGluY2x1ZGUga2V5ZnJhbWVzKGN1cnNvci1ibGluaykge1xuXHQwJSB7XG5cdFx0b3BhY2l0eTogMDtcblx0fVxuXHQ1MCUge1xuXHRcdG9wYWNpdHk6IDE7XG5cdH1cblx0MTAwJSB7XG5cdFx0b3BhY2l0eTogMDtcblx0fVxufSIsIi8qIFZBUklBQkxFUyAqL1xuJHB1cnBsZTogI2FjMmVmZjtcbiRncmVlbjogIzFmZjA0MjsiLCIvLyBTaG9ydGhhbmQgbWl4aW4uIFN1cHBvcnRzIG11bHRpcGxlIHBhcmVudGhlc2VzLWRlbGltaW5hdGVkIHZhbHVlcyBmb3IgZWFjaCB2YXJpYWJsZS5cbi8vIEV4YW1wbGU6IEBpbmNsdWRlIHRyYW5zaXRpb24gKGFsbCAycyBlYXNlLWluLW91dCk7XG4vLyAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uIChvcGFjaXR5IDFzIGVhc2UtaW4gMnMsIHdpZHRoIDJzIGVhc2Utb3V0KTtcbi8vICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tcHJvcGVydHkgKHRyYW5zZm9ybSwgb3BhY2l0eSk7XG5cbkBtaXhpbiB0cmFuc2l0aW9uICgkcHJvcGVydGllcy4uLikge1xuICAvLyBGaXggZm9yIHZlbmRvci1wcmVmaXggdHJhbnNmb3JtIHByb3BlcnR5XG4gICRuZWVkcy1wcmVmaXhlczogZmFsc2U7XG4gICR3ZWJraXQ6ICgpO1xuICAkbW96OiAoKTtcbiAgJHNwZWM6ICgpO1xuXG4gIC8vIENyZWF0ZSBsaXN0cyBmb3IgdmVuZG9yLXByZWZpeGVkIHRyYW5zZm9ybVxuICBAZWFjaCAkbGlzdCBpbiAkcHJvcGVydGllcyB7XG4gICAgQGlmIG50aCgkbGlzdCwgMSkgPT0gXCJ0cmFuc2Zvcm1cIiB7XG4gICAgICAkbmVlZHMtcHJlZml4ZXM6IHRydWU7XG4gICAgICAkbGlzdDE6IC13ZWJraXQtdHJhbnNmb3JtO1xuICAgICAgJGxpc3QyOiAtbW96LXRyYW5zZm9ybTtcbiAgICAgICRsaXN0MzogKCk7XG5cbiAgICAgIEBlYWNoICR2YXIgaW4gJGxpc3Qge1xuICAgICAgICAkbGlzdDM6IGpvaW4oJGxpc3QzLCAkdmFyKTtcblxuICAgICAgICBAaWYgJHZhciAhPSBcInRyYW5zZm9ybVwiIHtcbiAgICAgICAgICAkbGlzdDE6IGpvaW4oJGxpc3QxLCAkdmFyKTtcbiAgICAgICAgICAkbGlzdDI6IGpvaW4oJGxpc3QyLCAkdmFyKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAkd2Via2l0OiBhcHBlbmQoJHdlYmtpdCwgJGxpc3QxKTtcbiAgICAgICAgICRtb3o6IGFwcGVuZCgkbW96LCAgICAkbGlzdDIpO1xuICAgICAgICAkc3BlYzogYXBwZW5kKCRzcGVjLCAgICRsaXN0Myk7XG4gICAgfVxuXG4gICAgLy8gQ3JlYXRlIGxpc3RzIGZvciBub24tcHJlZml4ZWQgdHJhbnNpdGlvbiBwcm9wZXJ0aWVzXG4gICAgQGVsc2Uge1xuICAgICAgJHdlYmtpdDogIGFwcGVuZCgkd2Via2l0LCAkbGlzdCwgY29tbWEpO1xuICAgICAgJG1vejogICAgIGFwcGVuZCgkbW96LCAgICAkbGlzdCwgY29tbWEpO1xuICAgICAgJHNwZWM6ICAgIGFwcGVuZCgkc3BlYywgICAkbGlzdCwgY29tbWEpO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkbmVlZHMtcHJlZml4ZXMge1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogJHdlYmtpdDtcbiAgICAgICAtbW96LXRyYW5zaXRpb246ICRtb3o7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiAkc3BlYztcbiAgfVxuICBAZWxzZSB7XG4gICAgQGlmIGxlbmd0aCgkcHJvcGVydGllcykgPj0gMSB7XG4gICAgICBAaW5jbHVkZSBwcmVmaXhlcih0cmFuc2l0aW9uLCAkcHJvcGVydGllcywgd2Via2l0IG1veiBzcGVjKTtcbiAgICB9XG5cbiAgICBAZWxzZSB7XG4gICAgICAkcHJvcGVydGllczogYWxsIDAuMTVzIGVhc2Utb3V0IDBzO1xuICAgICAgQGluY2x1ZGUgcHJlZml4ZXIodHJhbnNpdGlvbiwgJHByb3BlcnRpZXMsIHdlYmtpdCBtb3ogc3BlYyk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiB0cmFuc2l0aW9uLXByb3BlcnR5ICgkcHJvcGVydGllcy4uLikge1xuICAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2l0aW9uLXByb3BlcnR5LW5hbWVzKCRwcm9wZXJ0aWVzLCAnd2Via2l0Jyk7XG4gICAgICAtbW96LXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zaXRpb24tcHJvcGVydHktbmFtZXMoJHByb3BlcnRpZXMsICdtb3onKTtcbiAgICAgICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNpdGlvbi1wcm9wZXJ0eS1uYW1lcygkcHJvcGVydGllcywgZmFsc2UpO1xufVxuXG5AbWl4aW4gdHJhbnNpdGlvbi1kdXJhdGlvbiAoJHRpbWVzLi4uKSB7XG4gIEBpbmNsdWRlIHByZWZpeGVyKHRyYW5zaXRpb24tZHVyYXRpb24sICR0aW1lcywgd2Via2l0IG1veiBzcGVjKTtcbn1cblxuQG1peGluIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uICgkbW90aW9ucy4uLikge1xuLy8gZWFzZSB8IGxpbmVhciB8IGVhc2UtaW4gfCBlYXNlLW91dCB8IGVhc2UtaW4tb3V0IHwgY3ViaWMtYmV6aWVyKClcbiAgQGluY2x1ZGUgcHJlZml4ZXIodHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24sICRtb3Rpb25zLCB3ZWJraXQgbW96IHNwZWMpO1xufVxuXG5AbWl4aW4gdHJhbnNpdGlvbi1kZWxheSAoJHRpbWVzLi4uKSB7XG4gIEBpbmNsdWRlIHByZWZpeGVyKHRyYW5zaXRpb24tZGVsYXksICR0aW1lcywgd2Via2l0IG1veiBzcGVjKTtcbn1cbiIsIi8vIGh0dHA6Ly93d3cudzMub3JnL1RSL2NzczMtYW5pbWF0aW9ucy8jdGhlLWFuaW1hdGlvbi1uYW1lLXByb3BlcnR5LVxuLy8gRWFjaCBvZiB0aGVzZSBtaXhpbnMgc3VwcG9ydCBjb21tYSBzZXBhcmF0ZWQgbGlzdHMgb2YgdmFsdWVzLCB3aGljaCBhbGxvd3MgZGlmZmVyZW50IHRyYW5zaXRpb25zIGZvciBpbmRpdmlkdWFsIHByb3BlcnRpZXMgdG8gYmUgZGVzY3JpYmVkIGluIGEgc2luZ2xlIHN0eWxlIHJ1bGUuIEVhY2ggdmFsdWUgaW4gdGhlIGxpc3QgY29ycmVzcG9uZHMgdG8gdGhlIHZhbHVlIGF0IHRoYXQgc2FtZSBwb3NpdGlvbiBpbiB0aGUgb3RoZXIgcHJvcGVydGllcy5cblxuLy8gT2ZmaWNpYWwgYW5pbWF0aW9uIHNob3J0aGFuZCBwcm9wZXJ0eS5cbkBtaXhpbiBhbmltYXRpb24gKCRhbmltYXRpb25zLi4uKSB7XG4gIEBpbmNsdWRlIHByZWZpeGVyKGFuaW1hdGlvbiwgJGFuaW1hdGlvbnMsIHdlYmtpdCBtb3ogc3BlYyk7XG59XG5cbi8vIEluZGl2aWR1YWwgQW5pbWF0aW9uIFByb3BlcnRpZXNcbkBtaXhpbiBhbmltYXRpb24tbmFtZSAoJG5hbWVzLi4uKSB7XG4gIEBpbmNsdWRlIHByZWZpeGVyKGFuaW1hdGlvbi1uYW1lLCAkbmFtZXMsIHdlYmtpdCBtb3ogc3BlYyk7XG59XG5cblxuQG1peGluIGFuaW1hdGlvbi1kdXJhdGlvbiAoJHRpbWVzLi4uKSB7XG4gIEBpbmNsdWRlIHByZWZpeGVyKGFuaW1hdGlvbi1kdXJhdGlvbiwgJHRpbWVzLCB3ZWJraXQgbW96IHNwZWMpO1xufVxuXG5cbkBtaXhpbiBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uICgkbW90aW9ucy4uLikge1xuLy8gZWFzZSB8IGxpbmVhciB8IGVhc2UtaW4gfCBlYXNlLW91dCB8IGVhc2UtaW4tb3V0XG4gIEBpbmNsdWRlIHByZWZpeGVyKGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb24sICRtb3Rpb25zLCB3ZWJraXQgbW96IHNwZWMpO1xufVxuXG5cbkBtaXhpbiBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50ICgkdmFsdWVzLi4uKSB7XG4vLyBpbmZpbml0ZSB8IDxudW1iZXI+XG4gIEBpbmNsdWRlIHByZWZpeGVyKGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQsICR2YWx1ZXMsIHdlYmtpdCBtb3ogc3BlYyk7XG59XG5cblxuQG1peGluIGFuaW1hdGlvbi1kaXJlY3Rpb24gKCRkaXJlY3Rpb25zLi4uKSB7XG4vLyBub3JtYWwgfCBhbHRlcm5hdGVcbiAgQGluY2x1ZGUgcHJlZml4ZXIoYW5pbWF0aW9uLWRpcmVjdGlvbiwgJGRpcmVjdGlvbnMsIHdlYmtpdCBtb3ogc3BlYyk7XG59XG5cblxuQG1peGluIGFuaW1hdGlvbi1wbGF5LXN0YXRlICgkc3RhdGVzLi4uKSB7XG4vLyBydW5uaW5nIHwgcGF1c2VkXG4gIEBpbmNsdWRlIHByZWZpeGVyKGFuaW1hdGlvbi1wbGF5LXN0YXRlLCAkc3RhdGVzLCB3ZWJraXQgbW96IHNwZWMpO1xufVxuXG5cbkBtaXhpbiBhbmltYXRpb24tZGVsYXkgKCR0aW1lcy4uLikge1xuICBAaW5jbHVkZSBwcmVmaXhlcihhbmltYXRpb24tZGVsYXksICR0aW1lcywgd2Via2l0IG1veiBzcGVjKTtcbn1cblxuXG5AbWl4aW4gYW5pbWF0aW9uLWZpbGwtbW9kZSAoJG1vZGVzLi4uKSB7XG4vLyBub25lIHwgZm9yd2FyZHMgfCBiYWNrd2FyZHMgfCBib3RoXG4gIEBpbmNsdWRlIHByZWZpeGVyKGFuaW1hdGlvbi1maWxsLW1vZGUsICRtb2Rlcywgd2Via2l0IG1veiBzcGVjKTtcbn1cbiIsIi8vIEFkZHMga2V5ZnJhbWVzIGJsb2NrcyBmb3Igc3VwcG9ydGVkIHByZWZpeGVzLCByZW1vdmluZyByZWR1bmRhbnQgcHJlZml4ZXMgaW4gdGhlIGJsb2NrJ3MgY29udGVudFxuQG1peGluIGtleWZyYW1lcygkbmFtZSkge1xuICAkb3JpZ2luYWwtcHJlZml4LWZvci13ZWJraXQ6ICAgICRwcmVmaXgtZm9yLXdlYmtpdDtcbiAgJG9yaWdpbmFsLXByZWZpeC1mb3ItbW96aWxsYTogICAkcHJlZml4LWZvci1tb3ppbGxhO1xuICAkb3JpZ2luYWwtcHJlZml4LWZvci1taWNyb3NvZnQ6ICRwcmVmaXgtZm9yLW1pY3Jvc29mdDtcbiAgJG9yaWdpbmFsLXByZWZpeC1mb3Itb3BlcmE6ICAgICAkcHJlZml4LWZvci1vcGVyYTtcbiAgJG9yaWdpbmFsLXByZWZpeC1mb3Itc3BlYzogICAgICAkcHJlZml4LWZvci1zcGVjO1xuXG4gIEBpZiAkb3JpZ2luYWwtcHJlZml4LWZvci13ZWJraXQge1xuICAgIEBpbmNsdWRlIGRpc2FibGUtcHJlZml4LWZvci1hbGwoKTtcbiAgICAkcHJlZml4LWZvci13ZWJraXQ6IHRydWUgIWdsb2JhbDtcbiAgICBALXdlYmtpdC1rZXlmcmFtZXMgI3skbmFtZX0ge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG4gIEBpZiAkb3JpZ2luYWwtcHJlZml4LWZvci1tb3ppbGxhIHtcbiAgICBAaW5jbHVkZSBkaXNhYmxlLXByZWZpeC1mb3ItYWxsKCk7XG4gICAgJHByZWZpeC1mb3ItbW96aWxsYTogdHJ1ZSAhZ2xvYmFsO1xuICAgIEAtbW96LWtleWZyYW1lcyAjeyRuYW1lfSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cblxuICAkcHJlZml4LWZvci13ZWJraXQ6ICAgICRvcmlnaW5hbC1wcmVmaXgtZm9yLXdlYmtpdCAgICAhZ2xvYmFsO1xuICAkcHJlZml4LWZvci1tb3ppbGxhOiAgICRvcmlnaW5hbC1wcmVmaXgtZm9yLW1vemlsbGEgICAhZ2xvYmFsO1xuICAkcHJlZml4LWZvci1taWNyb3NvZnQ6ICRvcmlnaW5hbC1wcmVmaXgtZm9yLW1pY3Jvc29mdCAhZ2xvYmFsO1xuICAkcHJlZml4LWZvci1vcGVyYTogICAgICRvcmlnaW5hbC1wcmVmaXgtZm9yLW9wZXJhICAgICAhZ2xvYmFsO1xuICAkcHJlZml4LWZvci1zcGVjOiAgICAgICRvcmlnaW5hbC1wcmVmaXgtZm9yLXNwZWMgICAgICAhZ2xvYmFsO1xuXG4gIEBpZiAkb3JpZ2luYWwtcHJlZml4LWZvci1zcGVjIHtcbiAgICBAa2V5ZnJhbWVzICN7JG5hbWV9IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuIiwiLyogSU1BR0VTICovXG5pbWcge1xuXHRkaXNwbGF5OiBibG9jaztcblx0d2lkdGg6IDEwMCU7XG5cdGhlaWdodDogYXV0bztcblx0bWFyZ2luOiAwO1xuXHRwYWRkaW5nOiAwO1xuXG5cdC5ob3Jpc2Nyb2xsICYge1xuXHRcdHdpZHRoOiBhdXRvO1xuXHRcdGhlaWdodDogMTAwJTtcblx0fVxuXG5cdCYucGhvbmUtYWNjZW50LXB1bGwtbGVmdCB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHRvcDogNGVtO1xuXHRcdHJpZ2h0OiAxMTAlO1xuXHRcdGhlaWdodDogOTAlO1xuXHRcdEBpbmNsdWRlIGNhbGMoaGVpZ2h0LCBcIjEwMCUgLSA0ZW1cIik7XG5cdFx0d2lkdGg6IGF1dG87XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuXHRcdFx0bWFyZ2luLXRvcDogNGVtO1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0dG9wOiBhdXRvO1xuXHRcdFx0cmlnaHQ6IGF1dG87XG5cdFx0XHRoZWlnaHQ6IGF1dG87XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHR9XG5cdH1cblxuXHQubW9iaWxlLWNhcm91c2VsLXNjcmVlbiAmLFxuXHQubGFuZHNjYXBlLWNhcm91c2VsLXNjcmVlbiAmIHtcblx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0d2lkdGg6IGF1dG87XG5cdFx0bWFyZ2luOiAwIGF1dG87XG5cdH1cblx0Lmhlcm8tc2xpZGUgJiB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHRvcDogNTAlO1xuXHRcdGxlZnQ6IDUwJTtcblx0XHRtYXgtaGVpZ2h0OiA5MCU7XG5cdFx0aGVpZ2h0OiBhdXRvO1xuXHRcdHdpZHRoOiBhdXRvO1xuXHRcdG1heC13aWR0aDogOTAlO1xuXHRcdEBpbmNsdWRlIHRyYW5zZm9ybSh0cmFuc2xhdGUoLTUwJSwtNTAlKSk7XG5cdH1cblx0LnJvc2V0dGEtc2xpZGUgJiB7XG5cdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdHdpZHRoOiBhdXRvO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR0b3A6IDUwJTtcblx0XHRsZWZ0OiA1MCU7XG5cdFx0QGluY2x1ZGUgdHJhbnNmb3JtKHRyYW5zbGF0ZTNkKC01MCUsLTUwJSwwKSk7XG5cdH1cblxuXHQuY2FzZV9zdHVkeV9mb290ZXIgJiB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHRvcDogNTAlO1xuXHRcdGxlZnQ6IDI1JTtcblx0XHR3aWR0aDogMjUlO1xuXHRcdEBpbmNsdWRlIHRyYW5zZm9ybSh0cmFuc2xhdGUoLTUwJSwtNTAlKSk7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0dG9wOiBhdXRvO1xuXHRcdFx0bGVmdDogYXV0bztcblx0XHRcdHdpZHRoOiA3MCU7XG5cdFx0XHRtYXJnaW46IDJlbSBhdXRvIDRlbTtcblx0XHRcdEBpbmNsdWRlIHRyYW5zZm9ybShub25lKTtcblx0XHR9XG5cdH1cblx0LmNhc2Vfc3R1ZHlfZm9vdGVyLnRhbGxfbG9nbyAmIHtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiA1MCU7XG5cdFx0bGVmdDogMjUlO1xuXHRcdGhlaWdodDogNjUlO1xuXHRcdHdpZHRoOiBhdXRvO1xuXHRcdEBpbmNsdWRlIHRyYW5zZm9ybSh0cmFuc2xhdGUoLTUwJSwtNTAlKSk7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0dG9wOiBhdXRvO1xuXHRcdFx0bGVmdDogYXV0bztcblx0XHRcdHdpZHRoOiAzMCU7XG5cdFx0XHRtYXJnaW46IDJlbSBhdXRvIDRlbTtcblx0XHRcdEBpbmNsdWRlIHRyYW5zZm9ybShub25lKTtcblx0XHR9XG5cdH1cbn1cbnN2ZyB7XG5cdGltYWdlLXJlbmRlcmluZzogb3B0aW1pemVTcGVlZDtcblx0aW1hZ2UtcmVuZGVyaW5nOiAtbW96LWNyaXNwLWVkZ2VzO1xuXHRpbWFnZS1yZW5kZXJpbmc6IC13ZWJraXQtb3B0aW1pemUtY29udHJhc3Q7XG5cdGltYWdlLXJlbmRlcmluZzogb3B0aW1pemUtY29udHJhc3Q7XG5cdC1tcy1pbnRlcnBvbGF0aW9uLW1vZGU6IG5lYXJlc3QtbmVpZ2hib3I7XG59XG5cblxuI25jbHVkLWxvZ28ge1xuXHR3aWR0aDogMy4zZW07XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0ZmxvYXQ6IGxlZnQ7XG59XG5cbiNsb2FkZXItbG9nbyB7XG5cdHBvc2l0aW9uOiBmaXhlZDtcblx0dG9wOiA1MCU7XG5cdGxlZnQ6IDUwJTtcblx0d2lkdGg6IDQuNWVtO1xuXHQvLyBAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlM2QoLTUwJSwtNTAlLDApKTtcblx0bWFyZ2luLWxlZnQ6IC0yLjI1ZW07XG5cdG1hcmdpbi10b3A6IC0yLjI1ZW07XG5cdC8vIG9wYWNpdHk6IDA7XG59XG5cblxuXG5cblxuXG4jbG9hZGVyX3RyaWFuZ2xlX291dGVyLFxuI2xvYWRlcl90cmlhbmdsZV9taWRkbGUsXG4jbG9hZGVyX3RyaWFuZ2xlX2lubmVyIHtcblx0QGluY2x1ZGUgdHJhbnNmb3JtLW9yaWdpbig3NnB4IDc2cHgpO1xuXHRAaW5jbHVkZSB0cmFuc2Zvcm0tb3JpZ2luKDBweCAwcHgpO1xuXHRAaW5jbHVkZSB0cmFuc2Zvcm0ocm90YXRlKC0zMGRlZykgc2NhbGUoMCkgdHJhbnNsYXRlM2QoMCwwLDApKTtcblx0QGluY2x1ZGUgYW5pbWF0aW9uKGxvYWRlci1sb2dvIDJzIGVhc2UpO1xuXHRAaW5jbHVkZSBhbmltYXRpb24tZGlyZWN0aW9uKGFsdGVybmF0ZSk7XG5cdEBpbmNsdWRlIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQoaW5maW5pdGUpO1xuXHRAaW5jbHVkZSBhbmltYXRpb24tZmlsbC1tb2RlKGZvcndhcmRzKTtcbn1cbiNsb2FkZXJfdHJpYW5nbGVfb3V0ZXIge1xuXHRAaW5jbHVkZSBhbmltYXRpb24tZGVsYXkoMCk7XG59XG4jbG9hZGVyX3RyaWFuZ2xlX21pZGRsZSB7XG5cdEBpbmNsdWRlIGFuaW1hdGlvbi1kZWxheSgwLjI1cyk7XG59XG4jbG9hZGVyX3RyaWFuZ2xlX2lubmVyIHtcblx0QGluY2x1ZGUgYW5pbWF0aW9uLWRlbGF5KDAuNXMpO1xufVxuXG5AaW5jbHVkZSBrZXlmcmFtZXMobG9hZGVyLWxvZ28pIHtcblx0MCUge1xuXHRcdEBpbmNsdWRlIHRyYW5zZm9ybShyb3RhdGUoLTMwZGVnKSBzY2FsZSgwKSB0cmFuc2xhdGUzZCgwLDAsMCkpO1xuXHR9XG5cdDkwJSB7XG5cdFx0QGluY2x1ZGUgdHJhbnNmb3JtKHJvdGF0ZSgwKSBzY2FsZSgxKSB0cmFuc2xhdGUzZCgwLDAsMCkpO1xuXHR9XG5cdDEwMCUge1xuXHRcdEBpbmNsdWRlIHRyYW5zZm9ybShyb3RhdGUoMCkgc2NhbGUoMSkgdHJhbnNsYXRlM2QoMCwwLDApKTtcblx0fVxufSIsIi8qIE5BViBCQVIgKi9cbm5hdiB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiAwO1xuXHRyaWdodDogMDtcblx0bGVmdDogMDtcblx0d2lkdGg6IDEwMCU7XG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG5cdGEge1xuXHRcdHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuXHR9XG5cblx0Ji5zdGlja3kge1xuXHRcdHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuXHRcdGJhY2tncm91bmQ6IGJsYWNrO1xuXHRcdHBvc2l0aW9uOiBmaXhlZDtcblx0XHRwYWRkaW5nLXRvcDogMS41ZW07XG5cdFx0cGFkZGluZy1ib3R0b206IDFlbTtcblx0XHRAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlKDAsLTEwMCUpKTtcblxuXHRcdCYuYW5pbWF0ZSB7XG5cdFx0XHRAaW5jbHVkZSB0cmFuc2l0aW9uKHRyYW5zZm9ybSAwLjJzKTtcblx0XHR9XG5cdFx0Ji5yZXZlYWxlZCB7XG5cdFx0XHQvLyBAaW5jbHVkZSB0cmFuc2l0aW9uKHRyYW5zZm9ybSAwLjE1cyk7XG5cdFx0XHRAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlKDAsMCkpO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG5cdFx0XHRwYWRkaW5nLWJvdHRvbTogMS41ZW07XG5cdFx0fVxuXHR9XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGUpIHtcblx0XHRvdmVyZmxvdzogdmlzaWJsZTtcblx0XHRwb2ludGVyLWV2ZW50czogYXV0bztcblx0fVxufVxuXG4jc2l0ZS1uYXYge1xuXHRmbG9hdDogcmlnaHQ7XG5cblx0bGkge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdGZsb2F0OiBsZWZ0O1xuXHRcdG1hcmdpbi1yaWdodDogMWVtO1xuXHRcdHdpZHRoOiAxMmVtO1xuXG5cdFx0YSB7XG5cdFx0XHRwb2ludGVyLWV2ZW50czogYXV0bztcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0dGV4dC1hbGlnbjogcmlnaHQ7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRwYWRkaW5nOiAwLjRlbSAwLjc1ZW0gMC41ZW07XG5cdFx0XHRtYXJnaW4tdG9wOiAtMC44ZW07XG5cdFx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHRcdFx0Ym9yZGVyOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG5cblx0XHRcdC5kYXRhLW51bWJlciB7XG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHRcdFx0XHRib3JkZXItYm90dG9tOiAycHggc29saWQgd2hpdGU7XG5cdFx0XHRcdHBhZGRpbmctYm90dG9tOiAwLjEyNWVtO1xuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAwLjI1ZW07XG5cdFx0XHRcdC8vIGNvbnRlbnQ6IGF0dHIoZGF0YS1udW1iZXIpO1xuXG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG5cdFx0XHRcdFx0ZGlzcGxheTogaW5saW5lO1xuXHRcdFx0XHRcdGJvcmRlcjogMDtcblxuXHRcdFx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRcdFx0Y29udGVudDogXCJcXDAwYTBcXDAwYTAgLyBcXDAwYTBcIjtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGUpIHtcblx0XHRcdFx0b3ZlcmZsb3c6IHZpc2libGU7XG5cdFx0XHRcdHRleHQtYWxpZ246IGxlZnQ7XG5cdFx0XHRcdG1hcmdpbi10b3A6IDA7XG5cdFx0XHRcdHBhZGRpbmc6IDA7XG5cdFx0XHR9XG5cblxuXHRcdFx0Jjpob3Zlcixcblx0XHRcdCY6YWN0aXZlIHtcblx0XHRcdFx0Ym9yZGVyLWNvbG9yOiAkZ3JlZW47XG5cblx0XHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRcdHdpZHRoOiAxMjAlO1xuXHRcdFx0XHRcdGhlaWdodDogMnB4O1xuXHRcdFx0XHRcdGJhY2tncm91bmQ6ICRncmVlbjtcblx0XHRcdFx0XHRsZWZ0OiA1MSU7XG5cdFx0XHRcdFx0dG9wOiA1MCU7XG5cdFx0XHRcdFx0QGluY2x1ZGUgdHJhbnNmb3JtKHRyYW5zbGF0ZVgoLTUwJSkgcm90YXRlKDIzZGVnKSk7XG5cdFx0XHRcdFx0Y29udGVudDogJyc7XG5cblx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuXHRcdFx0XHRcdFx0bGVmdDogMDtcblx0XHRcdFx0XHRcdGhlaWdodDogNHB4O1xuXHRcdFx0XHRcdFx0d2lkdGg6IDEwNSU7XG5cdFx0XHRcdFx0XHRAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlWCgtMi41JSkgdHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoMCkpO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG5cdFx0XHRcdFx0Ym9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cblx0XHRcdCYuaGlkZGVuIHtcblx0XHRcdFx0b3BhY2l0eTogMDtcblx0XHRcdFx0dmlzaWJpbGl0eTogaGlkZGVuO1xuXHRcdFx0XHRwb2ludGVyLWV2ZW50czogbm9uZTtcblxuXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuXHRcdFx0XHRcdG9wYWNpdHk6IDE7XG5cdFx0XHRcdFx0dmlzaWJpbGl0eTogdmlzaWJsZTtcblx0XHRcdFx0XHRwb2ludGVyLWV2ZW50czogYXV0bztcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCY6bGFzdC1jaGlsZCB7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDA7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGUpIHtcblx0XHRcdG92ZXJmbG93OiB2aXNpYmxlO1xuXHRcdFx0ZmxvYXQ6IG5vbmU7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdG1hcmdpbi1yaWdodDogMDtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHRvcDogMzUlO1xuXHRcdFx0bGVmdDogMDtcblx0XHRcdHBhZGRpbmc6IDAgMjVweDtcblxuXHRcdFx0JjpmaXJzdC1jaGlsZCB7XG5cdFx0XHRcdEBpbmNsdWRlIHRyYW5zZm9ybSh0cmFuc2xhdGVZKC0yMDAlKSk7XG5cdFx0XHR9XG5cdFx0XHQmOm50aC1jaGlsZCgyKXtcblx0XHRcdFx0QGluY2x1ZGUgdHJhbnNmb3JtKHRyYW5zbGF0ZVkoLTUwJSkpO1xuXHRcdFx0fVxuXHRcdFx0JjpsYXN0LWNoaWxkIHtcblx0XHRcdFx0QGluY2x1ZGUgdHJhbnNmb3JtKHRyYW5zbGF0ZVkoMTAwJSkpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGUpIHtcblx0XHRvdmVyZmxvdzogdmlzaWJsZTtcblx0XHRwb2ludGVyLWV2ZW50czogYXV0bztcblx0XHRkaXNwbGF5OiBub25lO1xuXHRcdGZsb2F0OiBub25lO1xuXHRcdHBvc2l0aW9uOiBmaXhlZDtcblx0XHR0b3A6IDA7XG5cdFx0cmlnaHQ6IDA7XG5cdFx0bGVmdDogMDtcblx0XHQvLyBib3R0b206IDA7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0aGVpZ2h0OiAxNTAlO1xuXHRcdGJhY2tncm91bmQ6IHJnYmEoJHB1cnBsZSwwLjk1KTtcblx0fVxuXG5cdCYubW9iaWxlLWFjdGl2ZSB7XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGUpIHtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdH1cblx0fVxufVxuXG4jbW9iaWxlLW1lbnUtYnV0dG9uIHtcblx0ZGlzcGxheTogbm9uZTtcblxuXHRAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdHdpZHRoOiAzMnB4O1xuXHRcdGhlaWdodDogMjZweDtcblx0XHRib3JkZXItdG9wOiA0cHggc29saWQgd2hpdGU7XG5cdFx0Ym9yZGVyLWJvdHRvbTogNHB4IHNvbGlkIHdoaXRlO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR0b3A6IDMycHg7XG5cdFx0cmlnaHQ6IDI1cHg7XG5cblx0XHQmOmJlZm9yZSxcblx0XHQmOmFmdGVyIHtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0dG9wOiA1MCU7XG5cdFx0XHRsZWZ0OiA1MCU7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdGhlaWdodDogNHB4O1xuXHRcdFx0YmFja2dyb3VuZDogd2hpdGU7XG5cdFx0XHRAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlM2QoLTUwJSwtNTAlLDApKTtcblx0XHRcdGNvbnRlbnQ6ICcnO1xuXHRcdH1cblx0fVxuXG5cdC5zdGlja3kgJiB7XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGUpIHtcblx0XHRcdHRvcDogMjRweDtcblx0XHR9XG5cdH1cblxuXHQmLm1vYmlsZS1hY3RpdmUge1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG5cdFx0XHRib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuXG5cdFx0XHQmOmJlZm9yZSB7XG5cdFx0XHRcdEBpbmNsdWRlIHRyYW5zZm9ybSh0cmFuc2xhdGUzZCgtNTAlLC01MCUsMCkgcm90YXRlKDQ1ZGVnKSk7XG5cdFx0XHR9XG5cdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0QGluY2x1ZGUgdHJhbnNmb3JtKHRyYW5zbGF0ZTNkKC01MCUsLTUwJSwwKSByb3RhdGUoLTQ1ZGVnKSk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59IiwiLyogSEVBREVSICovXG5oZWFkZXIge1xuXHRiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuXHRvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuXG4jY2FudmFzIHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IDUwJTtcblx0bGVmdDogNTAlO1xuXHRAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlKC01MCUsLTUwJSkpO1xuXHRtaW4td2lkdGg6IDEwMCU7XG5cdC8vIGhlaWdodDogMTAwJTtcblxuXHRjYW52YXMge1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR0b3A6IDA7XG5cdFx0cmlnaHQ6IDA7XG5cdFx0Ym90dG9tOiAwO1xuXHRcdGxlZnQ6IDA7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdG9wYWNpdHk6IDE7XG5cdH1cbn1cblxuXG5cbi5oZWFkZXItdGV4dCB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiA1OCU7XG5cdEBpbmNsdWRlIGNhbGModG9wLCBcIjUwJSArIDNlbVwiKTtcblx0bGVmdDogMDtcblx0cmlnaHQ6IDA7XG5cdHdpZHRoOiAxMDAlO1xuXHRAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlWSgtNTAlKSk7XG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG5cdC5jYXNlLXN0dWR5LWhlYWQgJiB7XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGUpIHtcblx0XHRcdHRvcDogNDUlO1xuXHRcdH1cblx0fVxufVxuLmhlYWRlci1zdWJ0ZXh0IHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRsZWZ0OiAwO1xuXHRib3R0b206IDA7XG5cdHdpZHRoOiA1Ny41JTtcblx0Ly8gaGVpZ2h0OiAzMiU7XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludChsYW5kc2NhcGUpIHtcblx0XHQvLyBoZWlnaHQ6IDM0JTtcblx0fVxuXHRAaW5jbHVkZSBicmVha3BvaW50KHBvcnRyYWl0KSB7XG5cdFx0d2lkdGg6IDY1JTtcblx0XHQvLyBoZWlnaHQ6IDM5JTtcblx0fVxuXHRAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdC8vIGhlaWdodDogYXV0bztcblx0fVxufVxuLmhlYWRlci1jYXRlZ29yeSB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiAxMDAlO1xuXHRsZWZ0OiAwO1xuXHR3aWR0aDogNTcuNSU7XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludChwb3J0cmFpdCkge1xuXHRcdHdpZHRoOiA2NSU7XG5cdH1cblx0QGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGUpIHtcblx0XHR3aWR0aDogMTAwJTtcblx0fVxuXG5cdC5jYXNlLXN0dWR5LXNlcnZpY2VzOmZpcnN0LWNoaWxkIHtcblx0XHRwYWRkaW5nLXRvcDogMmVtO1xuXHRcdGJvcmRlci10b3A6IDFweCBzb2xpZCB3aGl0ZTtcblx0fVxufVxuXG5cblxuLmhlYWRlci1udW1iZXIge1xuXHQuZGF0YS1udW1iZXIge1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRyaWdodDogM3Z3O1xuXHRcdGJvdHRvbTogLTEwLjV2aDtcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQocG9ydHJhaXQpIHtcblx0XHRcdGJvdHRvbTogLTV2aDtcblx0XHR9XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGUpIHtcblx0XHRcdGJvdHRvbTogLTAuMjVlbTtcblx0XHR9XG5cdH1cbn1cblxuXG5cbi5ob21lLXRhZ2xpbmUge1xuXHRkaXNwbGF5OiBibG9jaztcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRib3R0b206IC0xLjI1dmg7XG5cdHJpZ2h0OiAtMXZ3O1xuXHRvcGFjaXR5OiAxO1xuXHR0ZXh0LWFsaWduOiByaWdodDtcblx0bWFyZ2luLXJpZ2h0OiAwO1xufSIsIi8qIE1BSU4gQVJFQVMgKi9cbm1haW4ge1xuXHRvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4jbWFpbi1ib2R5e1xuXHRtaW4taGVpZ2h0OiAxMDB2aDtcbn1cblxuXG4uYmxhY2sge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiBibGFjaztcbn1cbi5wdXJwbGUge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkcHVycGxlO1xufVxuLndoaXRlIHtcblx0YmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG59XG4uZ3JlZW4ge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JlZW47XG59XG5cblxuXG5cbi5ib3JkZXItYm90dG9tLXdoaXRlIHtcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEod2hpdGUsMC4yNSk7XG59XG5cblxuLmJhY2stZG90LWdyZWVuLWJvdHRvbS1yaWdodCB7XG5cdCY6YmVmb3JlIHtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0Ym90dG9tOiAwO1xuXHRcdHJpZ2h0OiA0JTtcblx0XHRoZWlnaHQ6IDMzJTtcblx0XHR3aWR0aDogMzUlO1xuXHRcdGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL2RvdC1ncmVlbi5wbmcnKSByZXBlYXQ7XG5cdFx0YmFja2dyb3VuZC1zaXplOiAxOHB4IGF1dG87XG5cdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogMCA1cHg7XG5cdFx0Y29udGVudDogJyc7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuXHRcdFx0cmlnaHQ6IDA7XG5cdFx0XHR3aWR0aDogNjAlO1xuXHRcdFx0aGVpZ2h0OiA2ZW07XG5cdFx0fVxuXHR9XG59XG4uYmFjay1kb3QtZ3JlZW4tYm90dG9tLWxlZnQge1xuXHQmOmJlZm9yZSB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXHRcdGJvdHRvbTogLTNlbTtcblx0XHRsZWZ0OiAxMCU7XG5cdFx0aGVpZ2h0OiA5MCU7XG5cdFx0d2lkdGg6IDE1JTtcblx0XHR6LWluZGV4OiAxMDtcblx0XHRiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy9kb3QtZ3JlZW4ucG5nJykgcmVwZWF0O1xuXHRcdGJhY2tncm91bmQtc2l6ZTogMThweCBhdXRvO1xuXHRcdGJhY2tncm91bmQtcG9zaXRpb246IDAgNXB4O1xuXHRcdGNvbnRlbnQ6ICcnO1xuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGUpIHtcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0fVxuXHR9XG59XG4uYmFjay1kb3QtZ3JlZW4tYm90dG9tLXJpZ2h0LWxhcmdlIHtcblx0JjpiZWZvcmUge1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRib3R0b206IDA7XG5cdFx0cmlnaHQ6IDQlO1xuXHRcdGhlaWdodDogNjAlO1xuXHRcdHdpZHRoOiAzOSU7XG5cdFx0YmFja2dyb3VuZDogdXJsKCcuLi9pbWcvZG90LWdyZWVuLnBuZycpIHJlcGVhdDtcblx0XHRiYWNrZ3JvdW5kLXNpemU6IDE4cHggYXV0bztcblx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDVweDtcblx0XHRjb250ZW50OiAnJztcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdH1cblx0fVxufVxuLmJhY2stZG90LWdyZWVuLW1pZGRsZS1sZWZ0IHtcblx0JjpiZWZvcmUge1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHR0b3A6IDYwdmg7XG5cdFx0bGVmdDogMXZ3O1xuXHRcdGhlaWdodDogMTh2aDtcblx0XHR3aWR0aDogNDUlO1xuXHRcdGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL2RvdC1ncmVlbi5wbmcnKSByZXBlYXQ7XG5cdFx0YmFja2dyb3VuZC1zaXplOiAxOHB4IGF1dG87XG5cdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogMCA1cHg7XG5cdFx0b3BhY2l0eTogMTtcblx0XHRjb250ZW50OiAnJztcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdH1cblx0fVxufVxuLmJhY2stZG90LWdyZWVuLW1pZGRsZS1yaWdodCB7XG5cdCY6YmVmb3JlIHtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0dG9wOiA0NSU7XG5cdFx0cmlnaHQ6IDA7XG5cdFx0aGVpZ2h0OiA2NSU7XG5cdFx0d2lkdGg6IDI3JTtcblx0XHRiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy9kb3QtZ3JlZW4ucG5nJykgcmVwZWF0O1xuXHRcdGJhY2tncm91bmQtc2l6ZTogMThweCBhdXRvO1xuXHRcdGJhY2tncm91bmQtcG9zaXRpb246IDAgNXB4O1xuXHRcdG9wYWNpdHk6IDE7XG5cdFx0Y29udGVudDogJyc7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuXHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHR9XG5cdH1cbn1cbi5iYWNrLWRvdC1ncmVlbi1mdWxsLWxlZnQge1xuXHQmOmJlZm9yZSB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdHRvcDogMTUlO1xuXHRcdGxlZnQ6IDF2dztcblx0XHRoZWlnaHQ6IDcxJTtcblx0XHR3aWR0aDogMjclO1xuXHRcdGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL2RvdC1ncmVlbi5wbmcnKSByZXBlYXQ7XG5cdFx0YmFja2dyb3VuZC1zaXplOiAxOHB4IGF1dG87XG5cdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogMCA1cHg7XG5cdFx0b3BhY2l0eTogMTtcblx0XHRjb250ZW50OiAnJztcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdH1cblx0fVxufVxuLmJhY2stZG90LWdyZWVuLXRvcC1sZWZ0IHtcblx0JjpiZWZvcmUge1xuXHRcdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHR0b3A6IDAuMjVlbTtcblx0XHRsZWZ0OiAwLjVlbTtcblx0XHRoZWlnaHQ6IDU1JTtcblx0XHR3aWR0aDogNTAlO1xuXHRcdHotaW5kZXg6IDIwO1xuXHRcdGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL2RvdC1ncmVlbi5wbmcnKSByZXBlYXQ7XG5cdFx0YmFja2dyb3VuZC1zaXplOiAxOHB4IGF1dG87XG5cdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogMCA1cHg7XG5cdFx0b3BhY2l0eTogMTtcblx0XHRjb250ZW50OiAnJztcblx0fVxufVxuLmJhY2stZG90LWdyZWVuLXRvcC1sZWZ0LXNtYWxsIHtcblx0JjpiZWZvcmUge1xuXHRcdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHR0b3A6IDIuNzVlbTtcblx0XHRsZWZ0OiAwLjVlbTtcblx0XHRoZWlnaHQ6IDEzLjUlO1xuXHRcdHdpZHRoOiAzMSU7XG5cdFx0YmFja2dyb3VuZDogdXJsKCcuLi9pbWcvZG90LWdyZWVuLnBuZycpIHJlcGVhdDtcblx0XHRiYWNrZ3JvdW5kLXNpemU6IDE4cHggYXV0bztcblx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDVweDtcblx0XHRvcGFjaXR5OiAxO1xuXHRcdGNvbnRlbnQ6ICcnO1xuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGUpIHtcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0fVxuXHR9XG59XG5cbi5iYWNrLWJsb2NrLWdyZWVuLXRvcC1yaWdodCB7XG5cdCY6YmVmb3JlIHtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0dG9wOiAyZW07XG5cdFx0cmlnaHQ6IDJlbTtcblx0XHR3aWR0aDogMjIlO1xuXHRcdGhlaWdodDogMmVtO1xuXHRcdGJvcmRlcjogMnB4IHNvbGlkICRncmVlbjtcblx0XHRjb250ZW50OiAnJztcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdH1cblx0fVxuXHQmOmFmdGVyIHtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0dG9wOiA1ZW07XG5cdFx0cmlnaHQ6IDJlbTtcblx0XHR3aWR0aDogMTglO1xuXHRcdGhlaWdodDogMmVtO1xuXHRcdGJvcmRlcjogMnB4IHNvbGlkICRncmVlbjtcblx0XHRjb250ZW50OiAnJztcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdH1cblx0fVxufVxuLmJhY2stYmxvY2stZ3JlZW4tdG9wLWxlZnQge1xuXHQmOmJlZm9yZSB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdHRvcDogMmVtO1xuXHRcdGxlZnQ6IDJlbTtcblx0XHR3aWR0aDogMjIlO1xuXHRcdGhlaWdodDogMmVtO1xuXHRcdGJvcmRlcjogMnB4IHNvbGlkICRncmVlbjtcblx0XHRjb250ZW50OiAnJztcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdH1cblx0fVxuXHQmOmFmdGVyIHtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0dG9wOiA1ZW07XG5cdFx0bGVmdDogMmVtO1xuXHRcdHdpZHRoOiAxOCU7XG5cdFx0aGVpZ2h0OiAyZW07XG5cdFx0Ym9yZGVyOiAycHggc29saWQgJGdyZWVuO1xuXHRcdGNvbnRlbnQ6ICcnO1xuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGUpIHtcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0fVxuXHR9XG59XG4uYmFjay1ibG9jay1ncmVlbi10b3AtbGVmdC12ZXJ0aWNhbCB7XG5cdCY6YmVmb3JlLFxuXHQmOmFmdGVyIHtcblx0XHR6LWluZGV4OiAxNTtcblx0XHRwb2ludGVyLWV2ZW50czogbm9uZTtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0Ym9yZGVyOiAycHggc29saWQgJGdyZWVuO1xuXHRcdHdpZHRoOiAzZW07XG5cdFx0Y29udGVudDogJyc7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuXHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHR9XG5cdH1cblx0JjpiZWZvcmUge1xuXHRcdHRvcDogLTEwJTtcblx0XHRsZWZ0OiA1JTtcblx0XHRoZWlnaHQ6IDg1JTtcblx0fVxuXHQmOmFmdGVyIHtcblx0XHR0b3A6IC0yNSU7XG5cdFx0bGVmdDogMTElO1xuXHRcdGhlaWdodDogNjAlO1xuXHR9XG59XG4uYmFjay1ibG9jay1ncmVlbi10b3AtcmlnaHQtbGFyZ2Uge1xuXHQmOmJlZm9yZSB7XG5cdFx0cG9pbnRlci1ldmVudHM6IG5vbmU7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdHRvcDogMmVtO1xuXHRcdHJpZ2h0OiAyZW07XG5cdFx0d2lkdGg6IDMwJTtcblx0XHRoZWlnaHQ6IDNlbTtcblx0XHRib3JkZXI6IDJweCBzb2xpZCAkZ3JlZW47XG5cdFx0ei1pbmRleDogMjA7XG5cdFx0Y29udGVudDogJyc7XG5cdH1cblx0JjphZnRlciB7XG5cdFx0cG9pbnRlci1ldmVudHM6IG5vbmU7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdHRvcDogNmVtO1xuXHRcdHJpZ2h0OiAxMGVtO1xuXHRcdHdpZHRoOiAyMiU7XG5cdFx0aGVpZ2h0OiAzZW07XG5cdFx0Ym9yZGVyOiAycHggc29saWQgJGdyZWVuO1xuXHRcdHotaW5kZXg6IDIwO1xuXHRcdGNvbnRlbnQ6ICcnO1xuXHR9XG5cdCY6YmVmb3JlLFxuXHQmOmFmdGVyIHtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuXHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHR9XG5cdH1cbn1cbi5iYWNrLWJsb2NrLWdyZWVuLXRvcC1sZWZ0LWxhcmdlIHtcblx0JjpiZWZvcmUge1xuXHRcdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHR0b3A6IDJlbTtcblx0XHRsZWZ0OiAyZW07XG5cdFx0d2lkdGg6IDMwJTtcblx0XHRoZWlnaHQ6IDNlbTtcblx0XHRib3JkZXI6IDJweCBzb2xpZCAkZ3JlZW47XG5cdFx0ei1pbmRleDogMjA7XG5cdFx0Y29udGVudDogJyc7XG5cdH1cblx0JjphZnRlciB7XG5cdFx0cG9pbnRlci1ldmVudHM6IG5vbmU7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdHRvcDogNmVtO1xuXHRcdGxlZnQ6IDEwZW07XG5cdFx0d2lkdGg6IDIyJTtcblx0XHRoZWlnaHQ6IDNlbTtcblx0XHRib3JkZXI6IDJweCBzb2xpZCAkZ3JlZW47XG5cdFx0ei1pbmRleDogMjA7XG5cdFx0Y29udGVudDogJyc7XG5cdH1cbn1cbi5iYWNrLWJsb2NrLWdyZWVuLWJvdHRvbS1sZWZ0IHtcblx0JjpiZWZvcmUge1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRib3R0b206IDJlbTtcblx0XHRsZWZ0OiAyZW07XG5cdFx0d2lkdGg6IDIyJTtcblx0XHRoZWlnaHQ6IDIuNWVtO1xuXHRcdGJvcmRlcjogMnB4IHNvbGlkICRncmVlbjtcblx0XHRjb250ZW50OiAnJztcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdH1cblx0fVxuXHQmOmFmdGVyIHtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0Ym90dG9tOiA1LjVlbTtcblx0XHRsZWZ0OiAyZW07XG5cdFx0d2lkdGg6IDE4JTtcblx0XHRoZWlnaHQ6IDIuNWVtO1xuXHRcdGJvcmRlcjogMnB4IHNvbGlkICRncmVlbjtcblx0XHRjb250ZW50OiAnJztcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdH1cblx0fVxufVxuLmJhY2stYmxvY2stZ3JlZW4tYm90dG9tLXJpZ2h0IHtcblx0JjpiZWZvcmUge1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRwb2ludGVyLWV2ZW50czogbm9uZTtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRib3R0b206IC0xLjVlbTtcblx0XHRyaWdodDogMmVtO1xuXHRcdHdpZHRoOiAzMCU7XG5cdFx0aGVpZ2h0OiAzZW07XG5cdFx0Ym9yZGVyOiAycHggc29saWQgJGdyZWVuO1xuXHRcdHotaW5kZXg6IDIwO1xuXHRcdGNvbnRlbnQ6ICcnO1xuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGUpIHtcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0fVxuXHR9XG5cdCY6YWZ0ZXIge1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRwb2ludGVyLWV2ZW50czogbm9uZTtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRib3R0b206IDIuNWVtO1xuXHRcdHJpZ2h0OiAyZW07XG5cdFx0d2lkdGg6IDIwJTtcblx0XHRoZWlnaHQ6IDNlbTtcblx0XHRib3JkZXI6IDJweCBzb2xpZCAkZ3JlZW47XG5cdFx0ei1pbmRleDogMjA7XG5cdFx0Y29udGVudDogJyc7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuXHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHR9XG5cdH1cbn1cblxuLmJhY2steC1ncmVlbi1ib3R0b20tcmlnaHQge1xuXHQmOmJlZm9yZSxcblx0JjphZnRlciB7XG5cdFx0d2lkdGg6IDJweDtcblx0XHRoZWlnaHQ6IDZlbTtcblx0XHRiYWNrZ3JvdW5kOiAkZ3JlZW47XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdGJvdHRvbTogMmVtO1xuXHRcdHJpZ2h0OiA0LjVlbTtcblx0XHRjb250ZW50OiAnJztcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdH1cblx0fVxuXHQmOmJlZm9yZSB7XG5cdFx0QGluY2x1ZGUgdHJhbnNmb3JtKHJvdGF0ZSg0NWRlZykpO1xuXHR9XG5cdCY6YWZ0ZXIge1xuXHRcdEBpbmNsdWRlIHRyYW5zZm9ybShyb3RhdGUoLTQ1ZGVnKSk7XG5cdH1cbn1cbi5iYWNrLXgtZ3JlZW4tYm90dG9tLWxlZnQge1xuXHQmOmJlZm9yZSxcblx0JjphZnRlciB7XG5cdFx0d2lkdGg6IDJweDtcblx0XHRoZWlnaHQ6IDZlbTtcblx0XHRiYWNrZ3JvdW5kOiAkZ3JlZW47XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdGJvdHRvbTogMmVtO1xuXHRcdGxlZnQ6IDQuNWVtO1xuXHRcdGNvbnRlbnQ6ICcnO1xuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGUpIHtcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0fVxuXHR9XG5cdCY6YmVmb3JlIHtcblx0XHRAaW5jbHVkZSB0cmFuc2Zvcm0ocm90YXRlKDQ1ZGVnKSk7XG5cdH1cblx0JjphZnRlciB7XG5cdFx0QGluY2x1ZGUgdHJhbnNmb3JtKHJvdGF0ZSgtNDVkZWcpKTtcblx0fVxufVxuLmJhY2steC1ncmVlbi10b3AtcmlnaHQge1xuXHQmOmJlZm9yZSxcblx0JjphZnRlciB7XG5cdFx0d2lkdGg6IDJweDtcblx0XHRoZWlnaHQ6IDEwZW07XG5cdFx0YmFja2dyb3VuZDogJGdyZWVuO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR0b3A6IDEuNzVlbTtcblx0XHRyaWdodDogOGVtO1xuXHRcdGNvbnRlbnQ6ICcnO1xuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGUpIHtcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0fVxuXHR9XG5cdCY6YmVmb3JlIHtcblx0XHRAaW5jbHVkZSB0cmFuc2Zvcm0ocm90YXRlKDQ1ZGVnKSk7XG5cdH1cblx0JjphZnRlciB7XG5cdFx0QGluY2x1ZGUgdHJhbnNmb3JtKHJvdGF0ZSgtNDVkZWcpKTtcblx0fVxufVxuXG4uYmFjay1zbGFzaC1ncmVlbi10b3AtbGVmdCB7XG5cdCY6YmVmb3JlIHtcblx0XHRwb2ludGVyLWV2ZW50czogbm9uZTtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiAyZW07XG5cdFx0bGVmdDogMmVtO1xuXHRcdHdpZHRoOiA2ZW07XG5cdFx0aGVpZ2h0OiA2ZW07XG5cdFx0Ym9yZGVyOiAycHggc29saWQgJGdyZWVuO1xuXHRcdHotaW5kZXg6IDIwO1xuXHRcdGNvbnRlbnQ6ICcnO1xuXHR9XG5cdCY6YWZ0ZXIge1xuXHRcdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR0b3A6IDIuMWVtO1xuXHRcdGxlZnQ6IDJlbTtcblx0XHR3aWR0aDogMnB4O1xuXHRcdGhlaWdodDogOC4yNWVtO1xuXHRcdGJhY2tncm91bmQ6ICRncmVlbjtcblx0XHRAaW5jbHVkZSB0cmFuc2Zvcm0ocm90YXRlKC00NWRlZykpO1xuXHRcdEBpbmNsdWRlIHRyYW5zZm9ybS1vcmlnaW4odG9wIGNlbnRlcik7XG5cdFx0ei1pbmRleDogMjA7XG5cdFx0Y29udGVudDogJyc7XG5cdH1cbn1cblxuXG5cbi5ob3Jpc2Nyb2xsLWxlZnQsXG4uaG9yaXNjcm9sbC1yaWdodCxcbi5zbGlkZXNob3ctbGVmdCxcbi5zbGlkZXNob3ctcmlnaHQge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHR0b3A6IDUwJTtcblx0d2lkdGg6IDVlbTtcblx0aGVpZ2h0OiA1ZW07XG5cdGJhY2tncm91bmQ6IHJnYmEoYmxhY2ssMC41KTtcblx0QGluY2x1ZGUgdHJhbnNmb3JtKHRyYW5zbGF0ZVkoLTUwJSkpO1xuXG5cdCY6YmVmb3JlIHtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiAzNSU7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0d2lkdGg6IDMwJTtcblx0XHRoZWlnaHQ6IDMwJTtcblx0XHQvLyBiYWNrZ3JvdW5kOiBncmVlbjtcblx0XHRAaW5jbHVkZSB0cmFuc2Zvcm0tb3JpZ2luKGNlbnRlciBjZW50ZXIpO1xuXHRcdEBpbmNsdWRlIHRyYW5zZm9ybShyb3RhdGUoNDVkZWcpKTtcblx0XHRjb250ZW50OiAnJztcblx0fVxuXG5cdCY6aG92ZXIsXG5cdCY6YWN0aXZlIHtcblx0XHRiYWNrZ3JvdW5kOiAkZ3JlZW47XG5cdH1cblxuXHRAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuXHRcdHdpZHRoOiAzLjVlbTtcblx0XHRoZWlnaHQ6IDMuNWVtO1xuXHR9XG59XG4uaG9yaXNjcm9sbC1sZWZ0LFxuLnNsaWRlc2hvdy1sZWZ0IHtcblx0bGVmdDogMDtcblxuXHQmOmJlZm9yZSB7XG5cdFx0bGVmdDogNDAlO1xuXHRcdGJvcmRlci1sZWZ0OiAycHggc29saWQgd2hpdGU7XG5cdFx0Ym9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHdoaXRlO1xuXHR9XG59XG4uaG9yaXNjcm9sbC1yaWdodCxcbi5zbGlkZXNob3ctcmlnaHQge1xuXHRyaWdodDogMDtcblxuXHQmOmJlZm9yZSB7XG5cdFx0cmlnaHQ6IDQwJTtcblx0XHRib3JkZXItcmlnaHQ6IDJweCBzb2xpZCB3aGl0ZTtcblx0XHRib3JkZXItdG9wOiAycHggc29saWQgd2hpdGU7XG5cdH1cbn0iLCIvKiBXT1JLICovXG4uY2FzZS1zdHVkeS1mZWF0dXJlZCB7XG5cdG1hcmdpbi1ib3R0b206IDVlbTtcblx0b3ZlcmZsb3c6IHZpc2libGU7XG5cblx0JjpmaXJzdC1jaGlsZCxcblx0JjpudGgtY2hpbGQoMikge1xuXHRcdCY6YWZ0ZXIge1xuXHRcdFx0Y2xlYXI6IGJvdGg7XG5cdFx0XHRkaXNwbGF5OiB0YWJsZTtcblx0XHRcdGNvbnRlbnQ6ICcnO1xuXHRcdH1cblx0fVxuXG5cdCY6bGFzdC1jaGlsZCB7XG5cdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0fVxuXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG5cdFx0bWFyZ2luLWJvdHRvbTogMmVtO1xuXHR9XG59XG4uY2FzZS1zdHVkeS1mZWF0dXJlZC1pbWFnZSB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuXHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0JjphZnRlciB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdGxlZnQ6IDA7XG5cdFx0dG9wOiAwO1xuXHRcdHJpZ2h0OiAwO1xuXHRcdGJvdHRvbTogMDtcblx0XHRAaW5jbHVkZSBiYWNrZmFjZS12aXNpYmlsaXR5KGhpZGRlbik7XG5cdFx0YmFja2dyb3VuZDogJHB1cnBsZTtcblx0XHRvcGFjaXR5OiAwLjU7XG5cdFx0ei1pbmRleDogLTE7XG5cdFx0Y29udGVudDogJyc7XG5cdH1cblxuXHQubGVmdC1hbGlnbiAmIHtcblx0XHR3aWR0aDogODAlO1xuXHRcdGhlaWdodDogMjdlbTtcblx0fVxuXHQucmlnaHQtYWxpZ24gJiB7XG5cdFx0ZmxvYXQ6IHJpZ2h0O1xuXHRcdHdpZHRoOiA1NSU7XG5cdFx0aGVpZ2h0OiAzMGVtO1xuXHR9XG5cdC5sZWZ0LWFsaWduICYsXG5cdC5yaWdodC1hbGlnbiAmIHtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRoZWlnaHQ6IDE2ZW07XG5cdFx0XHRmbG9hdDogbm9uZTtcblx0XHR9XG5cdH1cblxuXHQmOmhvdmVyLFxuXHQmOmFjdGl2ZSB7XG5cdFx0JjphZnRlciB7XG5cdFx0XHRvcGFjaXR5OiAwLjY7XG5cdFx0fVxuXHR9XG59XG4uY2FzZS1zdHVkeS1mZWF0dXJlZC10ZXh0IHtcblx0LmxlZnQtYWxpZ24gJiB7XG5cdFx0d2lkdGg6IDQ1JTtcblx0XHRmbG9hdDogcmlnaHQ7XG5cdFx0bWFyZ2luLXRvcDogLTEyZW07XG5cdFx0XG5cdFx0LmNhc2Utc3R1ZHktc3VidGV4dCB7XG5cdFx0XHRoZWlnaHQ6IDllbTtcblx0XHR9XG5cdH1cblx0LnJpZ2h0LWFsaWduICYge1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR0b3A6IDU1JTtcblx0XHR3aWR0aDogNTIlO1xuXHRcdEBpbmNsdWRlIHRyYW5zZm9ybSh0cmFuc2xhdGVZKC01MCUpKTtcblxuXHRcdC5jYXNlLXN0dWR5LXN1YnRleHQge1xuXHRcdFx0aGVpZ2h0OiA2ZW07XG5cdFx0fVxuXHR9XG5cdC5sZWZ0LWFsaWduICYsXG5cdC5yaWdodC1hbGlnbiAmIHtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRmbG9hdDogbm9uZTtcblx0XHRcdG1hcmdpbi10b3A6IDA7XG5cdFx0XHR0b3A6IGF1dG87XG5cdFx0XHRAaW5jbHVkZSB0cmFuc2Zvcm0obm9uZSk7XG5cdFx0fVxuXG5cdFx0LmNhc2Utc3R1ZHktc3VidGV4dCB7XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuXHRcdFx0XHRoZWlnaHQ6IGF1dG87XG5cdFx0XHRcdHBhZGRpbmctYm90dG9tOiAyZW07XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0LmNhc2Utc3R1ZHktc2VydmljZXMge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdHBhZGRpbmctdG9wOiAyLjVlbTtcblx0XHRib3JkZXItdG9wOiAxcHggc29saWQgd2hpdGU7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuXHRcdFx0cGFkZGluZy10b3A6IDEuNWVtO1xuXHRcdH1cblx0fVxufVxuXG5cbi52aWRlby1jb250YWluZXIge1xuXHR3aWR0aDogNzUlO1xuXHRtYXJnaW46IDAgYXV0bztcblx0Ym9yZGVyOiAycHggc29saWQgJGdyZWVuO1xuXHRib3JkZXItcmFkaXVzOiA4cHggOHB4IDAgMDtcblxuXHRAaW5jbHVkZSBicmVha3BvaW50KGxhbmRzY2FwZSkge1xuXHRcdHdpZHRoOiAxMDAlO1xuXHR9XG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQocG9ydHJhaXQpIHtcblx0XHR3aWR0aDogMTAwJTtcblx0fVxuXHRAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuXHRcdHdpZHRoOiAxMDAlO1xuXHR9XG5cblx0LnZpZGVvLWhlYWRlciB7XG5cdFx0aGVpZ2h0OiAzMHB4O1xuXHRcdGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkZ3JlZW47XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuXHRcdFx0aGVpZ2h0OiAyMHB4O1xuXHRcdH1cblxuXHRcdCY6YmVmb3JlLFxuXHRcdCY6YWZ0ZXIge1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0dG9wOiA1MCU7XG5cdFx0XHRib3JkZXItcmFkaXVzOiAxMDAlO1xuXHRcdFx0Ym9yZGVyOiAycHggc29saWQgJGdyZWVuO1xuXHRcdFx0d2lkdGg6IDE2cHg7XG5cdFx0XHRoZWlnaHQ6IDE2cHg7XG5cdFx0XHRAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlKC01MCUsLTUwJSkpO1xuXHRcdFx0Y29udGVudDogJyc7XG5cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG5cdFx0XHRcdHdpZHRoOiAxMHB4O1xuXHRcdFx0XHRoZWlnaHQ6IDEwcHg7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdCY6YmVmb3JlIHtcblx0XHRcdGxlZnQ6IDIwcHg7XG5cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG5cdFx0XHRcdGxlZnQ6IDEwcHg7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdCY6YWZ0ZXIge1xuXHRcdFx0bGVmdDogNDRweDtcblxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGUpIHtcblx0XHRcdFx0bGVmdDogMjRweDtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cbiIsIi8qIENBUk9VU0VMUyAqL1xuXG4uY3ljbGUtcGFnZXIge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHotaW5kZXg6IDUwMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAyMHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuICAgIFx0dG9wOiAxMHB4O1xuICAgIFx0cGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgIH1cblxuICAgID4gKiB7XG5cdFx0Y3Vyc29yOiBwb2ludGVyO1xuICAgIH1cblxuICAgIHNwYW4ge1xuICAgIFx0Y29sb3I6IHRyYW5zcGFyZW50O1xuICAgIFx0d2lkdGg6IDE4cHg7XG4gICAgXHRoZWlnaHQ6IDE4cHg7XG4gICAgXHRib3JkZXI6IDJweCBzb2xpZCAkZ3JlZW47XG4gICAgXHRtYXJnaW4tcmlnaHQ6IDEwcHg7XG5cdCAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdCAgICBjdXJzb3I6IHBvaW50ZXI7XG5cblx0ICAgICY6aG92ZXIsXG5cdCAgICAmOmFjdGl2ZSB7XG5cdCAgICBcdGJhY2tncm91bmQ6ICRncmVlbjtcblx0ICAgIH1cblx0ICAgICYuY3ljbGUtcGFnZXItYWN0aXZlIHtcblx0ICAgIFx0YmFja2dyb3VuZDogJGdyZWVuO1xuXHQgICAgfVxuXG5cdCAgICBAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuXHQgICAgXHR3aWR0aDogMTBweDtcblx0ICAgIFx0aGVpZ2h0OiAxMHB4O1xuXHQgICAgXHRtYXJnaW4tcmlnaHQ6IDRweDtcblx0ICAgIH1cbiAgICB9XG59XG5cblxuLnNsaWNrLXNsaWRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICAgICAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuICAgIC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbXMtdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgICAgICAgdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLnNsaWNrLWxpc3Qge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGhlaWdodDogMTAwJTtcbn1cbi5zbGljay1saXN0OmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xufVxuLnNsaWNrLWxpc3QuZHJhZ2dpbmcge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBjdXJzb3I6IGhhbmQ7XG59XG5cbi5zbGljay1zbGlkZXIgLnNsaWNrLXRyYWNrLFxuLnNsaWNrLXNsaWRlciAuc2xpY2stbGlzdCB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgICAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbn1cblxuLnNsaWNrLXRyYWNrIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAxMDAlO1xufVxuLnNsaWNrLXRyYWNrOmJlZm9yZSxcbi5zbGljay10cmFjazphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyc7XG59XG4uc2xpY2stdHJhY2s6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoO1xufVxuLnNsaWNrLWxvYWRpbmcgLnNsaWNrLXRyYWNrIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5zbGljay1zbGlkZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMXB4O1xufVxuW2Rpcj0ncnRsJ10gLnNsaWNrLXNsaWRlIHtcbiAgICBmbG9hdDogcmlnaHQ7XG59XG4uc2xpY2stc2xpZGUgaW1nIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbn1cbi5zbGljay1zbGlkZS5zbGljay1sb2FkaW5nIGltZyB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cbi5zbGljay1zbGlkZS5kcmFnZ2luZyBpbWcge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuLnNsaWNrLWluaXRpYWxpemVkIC5zbGljay1zbGlkZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG59XG4uc2xpY2stbG9hZGluZyAuc2xpY2stc2xpZGUge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cbi5zbGljay12ZXJ0aWNhbCAuc2xpY2stc2xpZGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuLm1vYmlsZS1jYXJvdXNlbCB7XG5cdHdpZHRoOiAxMDAlO1xuXHRoZWlnaHQ6IDEwMCU7XG5cblx0Lm1vYmlsZS1jYXJvdXNlbC1zY3JlZW4ge1xuXHRcdHBhZGRpbmctdG9wOiAxNC42NXZoO1xuXHRcdHBhZGRpbmctYm90dG9tOiAxMy41dmg7XG5cdFx0b3BhY2l0eTogMC4zO1xuXG5cdFx0Ji5zbGljay1jZW50ZXIge1xuXHRcdFx0b3BhY2l0eTogMTtcblx0XHR9XG5cdH1cbn1cbi5tb2JpbGUtY2Fyb3VzZWwtcGhvbmUge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHRvcDogNTAlO1xuXHRsZWZ0OiA1MCU7XG5cdGhlaWdodDogOTAlO1xuXHR3aWR0aDogYXV0bztcblx0QGluY2x1ZGUgdHJhbnNmb3JtKHRyYW5zbGF0ZSgtNTAlLC01MCUpKTtcbn1cblxuLmxhbmRzY2FwZS1jYXJvdXNlbCB7XG5cdHdpZHRoOiAxMDAlO1xuXHRoZWlnaHQ6IDEwMCU7XG5cblx0LmxhbmRzY2FwZS1jYXJvdXNlbC1zY3JlZW4ge1xuXHRcdGhlaWdodDogMTAwJTtcblx0XHRvcGFjaXR5OiAwLjM7XG5cdFx0cGFkZGluZy10b3A6IDl2aDtcblx0XHRwYWRkaW5nLWJvdHRvbTogOC40dmg7XG5cdFx0QGluY2x1ZGUgdHJhbnNmb3JtKHRyYW5zbGF0ZVgoLTAuMTUlKSk7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KHBvcnRyYWl0KSB7XG5cdFx0XHRwYWRkaW5nLXRvcDogNnZoO1xuXHRcdFx0cGFkZGluZy1ib3R0b206IDUuNXZoO1xuXHRcdH1cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuXHRcdFx0cGFkZGluZy10b3A6IDEuNDVyZW07XG5cdFx0XHRwYWRkaW5nLWJvdHRvbTogMS4zcmVtO1xuXHRcdH1cblxuXHRcdCYuc2xpY2stY2VudGVyIHtcblx0XHRcdG9wYWNpdHk6IDE7XG5cdFx0fVxuXHR9XG59XG4ubGFuZHNjYXBlLWNhcm91c2VsLXRhYmxldCB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiA1MCU7XG5cdGxlZnQ6IDUwJTtcblx0aGVpZ2h0OiA5MCU7XG5cdHdpZHRoOiBhdXRvO1xuXHRAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlKC01MCUsLTUwJSkpO1xufVxuXG4udmlkZW8tY2Fyb3VzZWwge1xuXHR3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuXHRcblx0LnZpZGVvLXNsaWRlIHtcblx0XHR3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGUpIHtcblx0XHRcdEBpbmNsdWRlIGJhY2tmYWNlLXZpc2liaWxpdHkoaGlkZGVuKTtcblx0XHR9XG5cdH1cbn1cblxuXG5cbi5oZXJvLXNsaWRlc2hvdyB7XG5cdHdpZHRoOiAxMDAlO1xuXHRoZWlnaHQ6IDEwMCU7XG5cdGJhY2tncm91bmQ6ICNlZWVjZjE7XG5cblx0Lmhlcm8tc2xpZGUge1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGhlaWdodDogMTAwJTtcblx0XHRAaW5jbHVkZSBiYWNrZmFjZS12aXNpYmlsaXR5KGhpZGRlbik7XG5cdH1cbn0iLCIvKiBST1NFVFRBIFNUT05FIFNQRUNJRklDICovXG5cbi5yb3NldHRhLXNsaWRlc2hvdyB7XG5cdGhlaWdodDogNjAwcHg7XG5cdGJhY2tncm91bmQ6ICNlZWVjZjE7XG5cblx0LnJvc2V0dGEtc2xpZGUge1xuXHRcdGhlaWdodDogMTAwJTtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRiYWNrZ3JvdW5kOiAjZWVlY2YxO1xuXHRcdEBpbmNsdWRlIGJhY2tmYWNlLXZpc2liaWxpdHkoaGlkZGVuKTtcblx0fVxuXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuXHRcdGhlaWdodDogODAwcHg7XG5cdH1cblx0QGluY2x1ZGUgYnJlYWtwb2ludChwb3J0cmFpdCkge1xuXHRcdGhlaWdodDogNTAwcHg7XG5cdH1cblx0QGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGUpIHtcblx0XHRoZWlnaHQ6IDIyNXB4O1xuXHR9XG59IiwiLyogR0lSTFVQIFNQRUNJRklDICovXG5cbi5naXJsdXAtdHdlZXQtc2xpZGVzIHtcblx0YmFja2dyb3VuZDogI2ZkNzA2MDtcblx0Ly8gQGluY2x1ZGUgYmFja2ZhY2UtdmlzaWJpbGl0eShoaWRkZW4pO1xuXG5cdC5naXJsdXAtdHdlZXQtc2xpZGVzaG93IHtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRoZWlnaHQ6IDEwMCU7XG5cdH1cblxuXHQuZ2lybHVwLXR3ZWV0LXNsaWRlIHtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0fVxuXG5cdC5naXJsdXAtdHdlZXQtc2luZ2xlIHtcblx0XHR3aWR0aDogNTAwcHg7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdEBpbmNsdWRlIHRyYW5zZm9ybSh0cmFuc2xhdGUoLTUwJSwtNTAlKSk7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KHBvcnRyYWl0KSB7XG5cdFx0XHR3aWR0aDogNDYwcHg7XG5cdFx0fVxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG5cdFx0XHR3aWR0aDogNzAlO1xuXHRcdH1cblx0fVxuXG5cdC5naXJsdXAtdHdlZXQtYmtnIHtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdHdpZHRoOiBhdXRvO1xuXHRcdHRvcDogMDtcblx0XHRib3R0b206IDA7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KHBvcnRyYWl0KSB7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdGhlaWdodDogYXV0bztcblx0XHRcdGJvdHRvbTogYXV0bztcblx0XHR9XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGUpIHtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0aGVpZ2h0OiBhdXRvO1xuXHRcdFx0Ym90dG9tOiBhdXRvO1xuXHRcdH1cblxuXHRcdGltZyB7XG5cdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHR3aWR0aDogYXV0bztcblxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChwb3J0cmFpdCkge1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0aGVpZ2h0OiBhdXRvO1xuXHRcdFx0fVxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGUpIHtcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdGhlaWdodDogYXV0bztcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuLmdpcmx1cC12anVzdGljZSB7XG5cdGJhY2tncm91bmQ6ICNmZDcwNjA7XG5cblx0Lmdpcmx1cC10d2VldC1zaW5nbGUge1xuXHRcdGxlZnQ6IDMyLjUlO1xuXHRcdHRvcDogNTAlO1xuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYW5kc2NhcGUpIHtcblx0XHRcdGxlZnQ6IDM2JTtcblx0XHR9XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChwb3J0cmFpdCkge1xuXHRcdFx0bGVmdDogNTAlO1xuXHRcdFx0dG9wOiA4MCU7XG5cdFx0fVxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG5cdFx0XHRsZWZ0OiA1MCU7XG5cdFx0XHR0b3A6IDc1JTtcblx0XHR9XG5cdH1cblx0Lmdpcmx1cC10d2VldC1ia2cge1xuXHRcdHJpZ2h0OiAwO1xuXG5cdFx0JjphZnRlciB7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHRvcDogMDtcblx0XHRcdGxlZnQ6IDA7XG5cdFx0XHRib3R0b206IDA7XG5cdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHR3aWR0aDogNDUlO1xuXHRcdFx0YmFja2dyb3VuZDogdXJsKCcvaW1nL3dvcmsvZ2lybHVwL2dpcmx1cC1ncmFkaWVudC12anVzdGljZS5wbmcnKSByZXBlYXQteTtcblx0XHRcdGJhY2tncm91bmQtc2l6ZTogMTAwJSBhdXRvO1xuXHRcdFx0Y29udGVudDogJyc7XG5cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQocG9ydHJhaXQpIHtcblx0XHRcdFx0dG9wOiBhdXRvO1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0aGVpZ2h0OiAzMCU7XG5cdFx0XHRcdGJhY2tncm91bmQ6IHVybCgnL2ltZy93b3JrL2dpcmx1cC9naXJsdXAtZ3JhZGllbnQtdmp1c3RpY2UtbW9iaWxlLnBuZycpIHJlcGVhdC14O1xuXHRcdFx0XHRiYWNrZ3JvdW5kLXNpemU6IGF1dG8gMTAwJTtcblx0XHRcdH1cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG5cdFx0XHRcdHRvcDogYXV0bztcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdGhlaWdodDogMzAlO1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiB1cmwoJy9pbWcvd29yay9naXJsdXAvZ2lybHVwLWdyYWRpZW50LXZqdXN0aWNlLW1vYmlsZS5wbmcnKSByZXBlYXQteDtcblx0XHRcdFx0YmFja2dyb3VuZC1zaXplOiBhdXRvIDEwMCU7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG4uZ2lybHVwLXVuZm91bmQge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjY2IzZTg5O1xuXHRiYWNrZ3JvdW5kOiB1cmwoJy9pbWcvd29yay9naXJsdXAvZ2lybHVwLWdyYWRpZW50LXVuZm91bmQucG5nJykgcmVwZWF0LXk7XG5cdGJhY2tncm91bmQtc2l6ZTogMTAwJSBhdXRvO1xuXG5cdC5naXJsdXAtdHdlZXQtc2luZ2xlIHtcblx0XHRsZWZ0OiA1MCU7XG5cblx0XHQmLmdpcmx1cCB7XG5cdFx0XHR0b3A6IDMwJTtcblxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGUpIHtcblx0XHRcdFx0dG9wOiAzNSU7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdCYudW5mb3VuZCB7XG5cdFx0XHR0b3A6IDcwJTtcblxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGUpIHtcblx0XHRcdFx0dG9wOiA2NSU7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG4uZ2lybHVwLW5iYXJrZXIge1xuXHRiYWNrZ3JvdW5kOiAjODg4ODg4O1xuXG5cdC5naXJsdXAtdHdlZXQtc2luZ2xlIHtcblx0XHRsZWZ0OiA2Ny41JTtcblx0XHR0b3A6IDUwJTtcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFuZHNjYXBlKSB7XG5cdFx0XHRsZWZ0OiA2NCU7XG5cdFx0fVxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQocG9ydHJhaXQpIHtcblx0XHRcdGxlZnQ6IDUwJTtcblx0XHRcdHRvcDogODAlO1xuXHRcdH1cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuXHRcdFx0bGVmdDogNTAlO1xuXHRcdFx0dG9wOiA3NSU7XG5cdFx0fVxuXHR9XG5cdC5naXJsdXAtdHdlZXQtYmtnIHtcblx0XHRsZWZ0OiAwO1xuXG5cdFx0JjphZnRlciB7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHRvcDogMDtcblx0XHRcdHJpZ2h0OiAwO1xuXHRcdFx0Ym90dG9tOiAwO1xuXHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0d2lkdGg6IDQwJTtcblx0XHRcdGJhY2tncm91bmQ6IHVybCgnL2ltZy93b3JrL2dpcmx1cC9naXJsdXAtZ3JhZGllbnQtbmJhcmtlci5wbmcnKSByZXBlYXQteTtcblx0XHRcdGJhY2tncm91bmQtc2l6ZTogMTAwJSBhdXRvO1xuXHRcdFx0Y29udGVudDogJyc7XG5cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQocG9ydHJhaXQpIHtcblx0XHRcdFx0dG9wOiBhdXRvO1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0aGVpZ2h0OiA0MCU7XG5cdFx0XHRcdGJhY2tncm91bmQ6IHVybCgnL2ltZy93b3JrL2dpcmx1cC9naXJsdXAtZ3JhZGllbnQtbmJhcmtlci1tb2JpbGUucG5nJykgcmVwZWF0LXg7XG5cdFx0XHRcdGJhY2tncm91bmQtc2l6ZTogYXV0byAxMDAlO1xuXHRcdFx0fVxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGUpIHtcblx0XHRcdFx0dG9wOiBhdXRvO1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0aGVpZ2h0OiA0MCU7XG5cdFx0XHRcdGJhY2tncm91bmQ6IHVybCgnL2ltZy93b3JrL2dpcmx1cC9naXJsdXAtZ3JhZGllbnQtbmJhcmtlci1tb2JpbGUucG5nJykgcmVwZWF0LXg7XG5cdFx0XHRcdGJhY2tncm91bmQtc2l6ZTogYXV0byAxMDAlO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuLmdpcmx1cC1haXVzYSB7XG5cdGJhY2tncm91bmQ6ICNmYWYyMzU7XG5cblx0Lmdpcmx1cC10d2VldC1zaW5nbGUge1xuXHRcdGxlZnQ6IDUwJTtcblx0XHR0b3A6IDUwJTtcblx0fVxufVxuLmdpcmx1cC1zYWxleGFuZGVyIHtcblx0YmFja2dyb3VuZDogIzJlYzNlZjtcblxuXHQuZ2lybHVwLXR3ZWV0LXNpbmdsZSB7XG5cdFx0bGVmdDogMzIuNSU7XG5cdFx0dG9wOiA1MCU7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhbmRzY2FwZSkge1xuXHRcdFx0bGVmdDogMzYlO1xuXHRcdH1cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KHBvcnRyYWl0KSB7XG5cdFx0XHRsZWZ0OiA1MCU7XG5cdFx0XHR0b3A6IDgwJTtcblx0XHR9XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGUpIHtcblx0XHRcdGxlZnQ6IDUwJTtcblx0XHRcdHRvcDogNzUlO1xuXHRcdH1cblx0fVxuXHQuZ2lybHVwLXR3ZWV0LWJrZyB7XG5cdFx0cmlnaHQ6IDA7XG5cblx0XHQmOmFmdGVyIHtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0dG9wOiAwO1xuXHRcdFx0bGVmdDogMDtcblx0XHRcdGJvdHRvbTogMDtcblx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdHdpZHRoOiA1MCU7XG5cdFx0XHRiYWNrZ3JvdW5kOiB1cmwoJy9pbWcvd29yay9naXJsdXAvZ2lybHVwLWdyYWRpZW50LXNhbGV4YW5kZXIucG5nJykgcmVwZWF0LXk7XG5cdFx0XHRiYWNrZ3JvdW5kLXNpemU6IDEwMCUgYXV0bztcblx0XHRcdGNvbnRlbnQ6ICcnO1xuXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHBvcnRyYWl0KSB7XG5cdFx0XHRcdHRvcDogYXV0bztcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdGhlaWdodDogMzAlO1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiB1cmwoJy9pbWcvd29yay9naXJsdXAvZ2lybHVwLWdyYWRpZW50LXNhbGV4YW5kZXItbW9iaWxlLnBuZycpIHJlcGVhdC14O1xuXHRcdFx0XHRiYWNrZ3JvdW5kLXNpemU6IGF1dG8gMTAwJTtcblx0XHRcdH1cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG5cdFx0XHRcdHRvcDogYXV0bztcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdGhlaWdodDogMzAlO1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiB1cmwoJy9pbWcvd29yay9naXJsdXAvZ2lybHVwLWdyYWRpZW50LXNhbGV4YW5kZXItbW9iaWxlLnBuZycpIHJlcGVhdC14O1xuXHRcdFx0XHRiYWNrZ3JvdW5kLXNpemU6IGF1dG8gMTAwJTtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuIiwiLyogRElTQ09WRVJZIEVEVUNBVElPTiBTUEVDSUZJQyAqL1xuXG4uZGlzY292ZXJ5X2NlbGxfcm93IHtcblx0LmRpc2NvdmVyeV9jZWxsIHtcblx0XHR3aWR0aDogMjAlO1xuXHRcdGZsb2F0OiBsZWZ0O1xuXHRcdHBhZGRpbmc6IDFlbSAxLjI1ZW07XG5cdFx0YmFja2dyb3VuZDogcmdiKDY2LCAxMzksIDIwMik7XG5cdFx0b3ZlcmZsb3c6IHZpc2libGU7XG5cblx0XHQmOmFmdGVyIHtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHRvcDogMTAwJTtcblx0XHRcdGxlZnQ6IDA7XG5cdFx0XHRyaWdodDogMDtcblx0XHRcdGJhY2tncm91bmQ6IHJnYig2NiwgMTM5LCAyMDIpO1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRoZWlnaHQ6IDIwMCU7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdGNvbnRlbnQ6ICcnO1xuXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuXHRcdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCY6bnRoLWNoaWxkKDJuKSB7XG5cdFx0XHRiYWNrZ3JvdW5kOiByZ2IoNTMsIDEyNiwgMTg5KTtcblxuXHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdGJhY2tncm91bmQ6IHJnYig1MywgMTI2LCAxODkpO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdGZsb2F0OiBub25lO1xuXHRcdH1cblx0fVxufSIsIi8qIFNUQUZGICovXG4uc3RhZmYtYmxvY2sge1xuXHRvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLnN0YWZmLXBob3RvIHtcblx0Y3Vyc29yOiBwb2ludGVyO1xufVxuXG4uc3RhZmYtcGhvdG8taG92ZXIge1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiAwO1xuXHRsZWZ0OiA1cHg7XG5cdEBpbmNsdWRlIGNhbGMod2lkdGgsIFwiMTAwJSAtIDEwcHhcIik7XG5cdG9wYWNpdHk6IDA7XG5cblx0LmRlc2t0b3AgLnN0YWZmLWJsb2NrOmhvdmVyICYsXG5cdC5zdGFmZi1ibG9jay5hY3RpdmUgJiB7XG5cdFx0b3BhY2l0eTogMTtcblx0fVxufVxuXG4uc3RhZmYtYmlvIHtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHRvcDogMDtcblx0bGVmdDogNXB4O1xuXHRAaW5jbHVkZSBjYWxjKHdpZHRoLCBcIjEwMCUgLSAxMHB4XCIpO1xuXHRAaW5jbHVkZSBjYWxjKGhlaWdodCwgXCIxMDAlIC0gMTBweFwiKTtcblx0cGFkZGluZzogMS4yNWVtO1xuXHQvLyBAaW5jbHVkZSBiYWNrZ3JvdW5kLWltYWdlKGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICRwdXJwbGUgMCUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgMTAwJSkpO1xuXHRkaXNwbGF5OiBub25lO1xuXG5cdC5kZXNrdG9wIC5zdGFmZi1ibG9jazpob3ZlciAmLFxuXHQuc3RhZmYtYmxvY2suYWN0aXZlICYge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHR9XG59XG5cbi5zdGFmZi1kZXNjcmlwdGlvbi1ibG9jayB7XG5cdG92ZXJmbG93OiB2aXNpYmxlO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHRvcDogMDtcblx0QGluY2x1ZGUgY2FsYyhsZWZ0LCBcIjEwMCUgLSA1cHhcIik7XG5cdGJhY2tncm91bmQ6IHdoaXRlO1xuXHR3aWR0aDogMTAwJTtcblx0QGluY2x1ZGUgY2FsYyhoZWlnaHQsIFwiMTAwJSAtIDEwcHhcIik7XG5cdHBhZGRpbmc6IDEuNWVtO1xuXHRib3JkZXI6IDJweCBzb2xpZCAkcHVycGxlO1xuXHRkaXNwbGF5OiBub25lO1xuXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQocG9ydHJhaXQpIHtcblx0XHRwYWRkaW5nOiAxZW07XG5cdH1cblxuXHQmOmJlZm9yZSB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0QGluY2x1ZGUgYmFja2dyb3VuZC1pbWFnZShsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tIHJpZ2h0LCB3aGl0ZSAwJSwgd2hpdGUgNTUlLCB0cmFuc3BhcmVudCA1NSUsIHRyYW5zcGFyZW50IDEwMCUpKTtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0QGluY2x1ZGUgY2FsYyhsZWZ0LCBcIi0xLjVlbSAtIDJweFwiKTtcblx0XHRAaW5jbHVkZSBjYWxjKHRvcCwgXCI1MCUgLSAxLjVlbSAtIDJweFwiKTtcblx0XHR3aWR0aDogM2VtO1xuXHRcdGhlaWdodDogM2VtO1xuXHRcdHotaW5kZXg6IDI7XG5cdFx0QGluY2x1ZGUgdHJhbnNmb3JtLW9yaWdpbihjZW50ZXIgY2VudGVyKTtcblx0XHRAaW5jbHVkZSB0cmFuc2Zvcm0ocm90YXRlKC00NWRlZykpO1xuXHRcdGJvcmRlci1sZWZ0OiAycHggc29saWQgJHB1cnBsZTtcblx0XHRib3JkZXItdG9wOiAycHggc29saWQgJHB1cnBsZTtcblx0XHRjb250ZW50OiAnJztcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG5cdFx0XHR0b3A6IC0xLjZlbTtcblx0XHRcdEBpbmNsdWRlIGNhbGMobGVmdCwgXCI1MCUgLSAxLjVlbVwiKTtcblx0XHRcdEBpbmNsdWRlIHRyYW5zZm9ybShyb3RhdGUoNDVkZWcpKTtcblx0XHR9XG5cdH1cblxuXHQuc3RhZmYtYmxvY2s6bnRoLWNoaWxkKDNuKSAmIHtcblx0XHRsZWZ0OiBhdXRvO1xuXHRcdEBpbmNsdWRlIGNhbGMocmlnaHQsIFwiMTAwJSAtIDVweFwiKTtcblxuXHRcdCY6YmVmb3JlIHtcblx0XHRcdGxlZnQ6IGF1dG87XG5cdFx0XHRAaW5jbHVkZSBjYWxjKHJpZ2h0LCBcIi0xLjVlbSAtIDFweFwiKTtcblx0XHRcdEBpbmNsdWRlIHRyYW5zZm9ybShyb3RhdGUoMTM1ZGVnKSk7XG5cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG5cdFx0XHRcdHRvcDogLTEuNmVtO1xuXHRcdFx0XHRAaW5jbHVkZSBjYWxjKGxlZnQsIFwiNTAlIC0gMS41ZW1cIik7XG5cdFx0XHRcdEBpbmNsdWRlIHRyYW5zZm9ybShyb3RhdGUoNDVkZWcpKTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuXHRcdFx0bGVmdDogNXB4O1xuXHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0QGluY2x1ZGUgY2FsYyh3aWR0aCwgXCIxMDAlIC0gMTBweFwiKTtcblx0XHRcdEBpbmNsdWRlIGNhbGModG9wLCBcIjEwMCUgLSAxMHB4XCIpO1xuXHRcdH1cblx0fVxuXHQuc3RhZmYtYmxvY2s6bGFzdC1jaGlsZCAmIHtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuXHRcdFx0bGVmdDogNXB4O1xuXHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0dG9wOiBhdXRvO1xuXHRcdFx0QGluY2x1ZGUgY2FsYyh3aWR0aCwgXCIxMDAlIC0gMTBweFwiKTtcblx0XHRcdGJvdHRvbTogMTAwJTtcblx0XHR9XG5cblx0XHQmOmJlZm9yZSB7XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuXHRcdFx0XHRib3R0b206IC0xLjZlbTtcblx0XHRcdFx0dG9wOiBhdXRvO1xuXHRcdFx0XHRAaW5jbHVkZSBjYWxjKGxlZnQsIFwiNTAlIC0gMS41ZW1cIik7XG5cdFx0XHRcdEBpbmNsdWRlIHRyYW5zZm9ybShyb3RhdGUoLTEzNWRlZykpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC5zdGFmZi1ibG9jay5hY3RpdmUgJiB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdH1cblxuXHRAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuXHRcdGxlZnQ6IDVweDtcblx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0QGluY2x1ZGUgY2FsYyh3aWR0aCwgXCIxMDAlIC0gMTBweFwiKTtcblx0XHRAaW5jbHVkZSBjYWxjKHRvcCwgXCIxMDAlIC0gMTBweFwiKTtcblx0fVxufVxuXG4uc3RhZmYtbW9yZS1pbmZvLWxpbmsge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdGJvdHRvbTogMS41ZW07XG5cdGxlZnQ6IDEuNWVtO1xuXHRyaWdodDogMS41ZW07XG5cdGJvcmRlcjogMnB4IHNvbGlkICRncmVlbjtcblx0cGFkZGluZzogMS40ZW0gMCAxLjVlbSAwO1xuXG5cdCY6aG92ZXIsXG5cdCY6YWN0aXZlIHtcblx0XHRiYWNrZ3JvdW5kOiAkZ3JlZW47XG5cdH1cblxuXHRAaW5jbHVkZSBicmVha3BvaW50KHBvcnRyYWl0KSB7XG5cdFx0cGFkZGluZzogMC45ZW0gMCAxZW0gMDtcblx0XHRib3R0b206IDFlbTtcblx0XHRsZWZ0OiAxZW07XG5cdFx0cmlnaHQ6IDFlbTtcblx0fVxufSIsIi8vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLy9cbi8vIEJhY2tncm91bmQtaW1hZ2UgcHJvcGVydHkgZm9yIGFkZGluZyBtdWx0aXBsZSBiYWNrZ3JvdW5kIGltYWdlcyB3aXRoXG4vLyBncmFkaWVudHMsIG9yIGZvciBzdHJpbmdpbmcgbXVsdGlwbGUgZ3JhZGllbnRzIHRvZ2V0aGVyLlxuLy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovL1xuXG5AbWl4aW4gYmFja2dyb3VuZC1pbWFnZSgkaW1hZ2VzLi4uKSB7XG4gICR3ZWJraXQtaW1hZ2VzOiAoKTtcbiAgJHNwZWMtaW1hZ2VzOiAoKTtcblxuICBAZWFjaCAkaW1hZ2UgaW4gJGltYWdlcyB7XG4gICAgJHdlYmtpdC1pbWFnZTogKCk7XG4gICAgJHNwZWMtaW1hZ2U6ICgpO1xuXG4gICAgQGlmICh0eXBlLW9mKCRpbWFnZSkgPT0gc3RyaW5nKSB7XG4gICAgICAkdXJsLXN0cjogICAgICAgc3RyLXNsaWNlKCRpbWFnZSwgMCwgMyk7XG4gICAgICAkZ3JhZGllbnQtdHlwZTogc3RyLXNsaWNlKCRpbWFnZSwgMCwgNik7XG5cbiAgICAgIEBpZiAkdXJsLXN0ciA9PSBcInVybFwiIHtcbiAgICAgICAgJHdlYmtpdC1pbWFnZTogJGltYWdlO1xuICAgICAgICAgICRzcGVjLWltYWdlOiAkaW1hZ2U7XG4gICAgICB9XG5cbiAgICAgIEBlbHNlIGlmICRncmFkaWVudC10eXBlID09IFwibGluZWFyXCIge1xuICAgICAgICAkZ3JhZGllbnRzOiBfbGluZWFyLWdyYWRpZW50LXBhcnNlcigkaW1hZ2UpO1xuICAgICAgICAkd2Via2l0LWltYWdlOiAgbWFwLWdldCgkZ3JhZGllbnRzLCB3ZWJraXQtaW1hZ2UpO1xuICAgICAgICAkc3BlYy1pbWFnZTogICAgbWFwLWdldCgkZ3JhZGllbnRzLCBzcGVjLWltYWdlKTtcbiAgICAgIH1cblxuICAgICAgQGVsc2UgaWYgJGdyYWRpZW50LXR5cGUgPT0gXCJyYWRpYWxcIiB7XG4gICAgICAgICRncmFkaWVudHM6IF9yYWRpYWwtZ3JhZGllbnQtcGFyc2VyKCRpbWFnZSk7XG4gICAgICAgICR3ZWJraXQtaW1hZ2U6IG1hcC1nZXQoJGdyYWRpZW50cywgd2Via2l0LWltYWdlKTtcbiAgICAgICAgJHNwZWMtaW1hZ2U6ICAgbWFwLWdldCgkZ3JhZGllbnRzLCBzcGVjLWltYWdlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAkd2Via2l0LWltYWdlczogYXBwZW5kKCR3ZWJraXQtaW1hZ2VzLCAkd2Via2l0LWltYWdlLCBjb21tYSk7XG4gICAgJHNwZWMtaW1hZ2VzOiAgIGFwcGVuZCgkc3BlYy1pbWFnZXMsICAgJHNwZWMtaW1hZ2UsICAgY29tbWEpO1xuICB9XG5cbiAgYmFja2dyb3VuZC1pbWFnZTogJHdlYmtpdC1pbWFnZXM7XG4gIGJhY2tncm91bmQtaW1hZ2U6ICRzcGVjLWltYWdlcztcbn1cbiIsIi8qIEZPT1RFUiAqL1xuLmZvb3Rlci1uYXYge1xuXHR3aWR0aDogMTAwJTtcblx0cGFkZGluZzogMDtcblx0bWFyZ2luOiAwO1xuXHRtYXJnaW4tbGVmdDogLTAuOWVtO1xuXHRtYXJnaW4tYm90dG9tOiAwLjVlbTtcblxuXHQmOmZpcnN0LWNoaWxkIHtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuXHRcdFx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEod2hpdGUsMC4yNSk7XG5cdFx0XHRwYWRkaW5nLWJvdHRvbTogM2VtO1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogM2VtO1xuXHRcdH1cblx0fVxuXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQobW9iaWxlKSB7XG5cdFx0bWFyZ2luLWxlZnQ6IDA7XG5cdH1cblxuXHRsaSB7XG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdHBhZGRpbmc6IDAgMWVtIDAgMS4yZW07XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1vYmlsZSkge1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdHBhZGRpbmc6IDFlbSAwO1xuXHRcdH1cblx0fVxuXG5cdCY6bGFzdC1jaGlsZCB7XG5cdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0fVxufSIsIi8qIExPQURFUiAqL1xuI2xvYWRlciB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiAwO1xuXHRsZWZ0OiAwO1xuXHRvcGFjaXR5OiAwO1xuXG5cdC8vIHJpZ2h0OiAwO1xuXHQvLyBib3R0b206IDA7XG5cdC8vIHdpZHRoOiAxMDAlO1xuXHQvLyBoZWlnaHQ6IDEwMCU7XG5cblx0QGluY2x1ZGUgdHJhbnNpdGlvbihvcGFjaXR5IDEwMG1zIGVhc2Utb3V0KTtcblxuXHQmLmFjdGl2ZXtcblx0XHRvcGFjaXR5OiAxO1xuXHR9XG59XG5cbi8vICNsb2FkZXIge1xuLy8gXHRiYWNrZ3JvdW5kOiByZ2JhKGJsdWUsIDAuNSk7XG4vLyB9XG4vLyAjbG9hZGVyLWlucHV0IHtcbi8vIFx0YmFja2dyb3VuZDogcmdiYShyZWQsIDAuNCk7XG4vLyB9XG5cbiNpbml0aWFsLWxvYWRlciB7XG5cdHBvc2l0aW9uOiBmaXhlZDtcblx0dG9wOiAwO1xuXHRsZWZ0OiAwO1xuXHRyaWdodDogMDtcblx0Ly8gYm90dG9tOiAwO1xuXHR3aWR0aDogMTAwJTtcblx0aGVpZ2h0OiAxMDAlO1xuXHRiYWNrZ3JvdW5kOiBibGFjaztcblx0b3BhY2l0eTogMTtcblx0dHJhbnNpdGlvbjogb3BhY2l0eSAzMDBtcyBlYXNlLW91dDtcblxuXHQmLmhpZGRlbiB7XG5cdFx0b3BhY2l0eTogMDtcblx0fVxufSIsIi8qIEZPUk0gU1RZTEVTICovXG5pbnB1dCxcbnRleHRhcmVhLFxuYnV0dG9uLFxuc2VsZWN0IHtcblx0LXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuXHRib3JkZXI6IDA7XG5cdG91dGxpbmU6IG5vbmU7XG5cdGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbi5mb3JtLXNsaWRlIHtcblx0d2lkdGg6IDEwMCU7XG5cdGhlaWdodDogMTAwJTtcblx0cGFkZGluZy1ib3R0b206IDllbTtcbn1cbi5mb3JtLWlucHV0LFxuLmZvcm0tdGV4dGFyZWEsXG4uZm9ybS1kcm9wZG93biB7XG5cdC8vIGJhY2tncm91bmQ6IHJnYmEoZ3JlZW4sMC4xKTtcblx0Ym9yZGVyOiAwO1xuXHRvdXRsaW5lOiBub25lO1xuXHRkaXNwbGF5OiBibG9jaztcblx0d2lkdGg6IDEwMCU7XG5cdHBhZGRpbmc6IDAuMWVtIDA7XG5cdG1hcmdpbi10b3A6IDAuNWVtO1xuXHRyZXNpemU6IG5vbmU7XG5cblx0Jjotd2Via2l0LWF1dG9maWxsIHtcblx0XHQtd2Via2l0LWJveC1zaGFkb3c6IDAgMCAwcHggMTAwMHB4IHdoaXRlIGluc2V0O1xuXHRcdC13ZWJraXQtdGV4dC1maWxsLWNvbG9yOiAkcHVycGxlICFpbXBvcnRhbnQ7XG5cblx0XHQmOmZvY3VzIHtcblx0XHRcdC13ZWJraXQtYm94LXNoYWRvdzogMCAwIDBweCAxMDAwcHggd2hpdGUgaW5zZXQ7XG5cdFx0fVxuXHR9XG5cblx0Jjpmb2N1cyB7XG5cdFx0Ym9yZGVyOiAwO1xuXHRcdG91dGxpbmU6IG5vbmU7XG5cdH1cbn1cbi5mb3JtLXRleHRhcmVhIHtcblx0aGVpZ2h0OiA1MHZoO1xufVxuXG5cbi5mb3JtLWRyb3Bkb3duLXJvdyB7XG5cdG92ZXJmbG93OiB2aXNpYmxlO1xufVxuLmZvcm0tZHJvcGRvd24ge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0JjphZnRlciB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdHJpZ2h0OiAxJTtcblx0XHR0b3A6IDI1JTtcblx0XHR3aWR0aDogMC41ZW07XG5cdFx0aGVpZ2h0OiAwLjVlbTtcblx0XHRAaW5jbHVkZSB0cmFuc2Zvcm0ocm90YXRlKDQ1ZGVnKSk7XG5cdFx0Ym9yZGVyLWJvdHRvbTogNnB4IHNvbGlkICRncmVlbjtcblx0XHRib3JkZXItcmlnaHQ6IDZweCBzb2xpZCAkZ3JlZW47XG5cdFx0Y29udGVudDogJyc7XG5cdH1cblxuXHQuZm9ybS1kcm9wZG93bi1yb3cuYWN0aXZlICYge1xuXHRcdCY6YWZ0ZXIge1xuXHRcdFx0dG9wOiA0NSU7XG5cdFx0XHRAaW5jbHVkZSB0cmFuc2Zvcm0ocm90YXRlKC0xMzVkZWcpKTtcblx0XHR9XG5cdH1cbn1cbi5mb3JtLWRyb3Bkb3duLWxpc3Qge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHRvcDogMTIwJTtcblx0bGVmdDogMDtcblx0cmlnaHQ6IDA7XG5cdGRpc3BsYXk6IG5vbmU7XG5cdGJhY2tncm91bmQ6IHdoaXRlO1xuXG5cdC5mb3JtLWRyb3Bkb3duLWxpbmsge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRwYWRkaW5nOiAwLjFlbSAwLjFlbTtcblxuXHRcdCY6aG92ZXIge1xuXHRcdFx0YmFja2dyb3VuZDogcmdiYSgkcHVycGxlLCAwLjE1KTtcblx0XHR9XG5cdH1cblxuXHQuZm9ybS1kcm9wZG93bi1yb3cuYWN0aXZlICYge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHR9XG59XG5cblxuLmJ1dHRvbi1iYWNrLFxuLmJ1dHRvbi1uZXh0IHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRib3R0b206IDEuNGVtO1xuXHRkaXNwbGF5OiBibG9jaztcblx0bWFyZ2luOiAwO1xuXHRwYWRkaW5nOiAwO1xuXHRiYWNrZ3JvdW5kOiAwO1xuXHRib3JkZXI6IDA7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0b3V0bGluZTogbm9uZTtcblxuXHQmOmZvY3VzIHtcblx0XHRvdXRsaW5lOiBub25lO1xuXHR9XG59XG4uYnV0dG9uLWJhY2sge1xuXHRsZWZ0OiAxLjNlbTtcbn1cbi5idXR0b24tbmV4dCB7XG5cdHJpZ2h0OiAxLjNlbTtcbn0iLCIvKiA0MDQgUEFHRSAqL1xuLmZvdXItb2gtZm91cntcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR0b3A6IDA7XG5cdGxlZnQ6IDA7XG5cdG1pbi1oZWlnaHQ6IDEwMHZoO1xuXHRtaW4td2lkdGg6IDEwMHZ3O1xuXHR6LWluZGV4OiAyO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiBibGFjaztcblx0dHJhbnNpdGlvbjogb3BhY2l0eSAzMDBtcyBlYXNlLW91dDtcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcblx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0LmRKQVhfaW50ZXJuYWx7XG5cdFx0b3BhY2l0eTogMC4wO1xuXHR9XG5cblx0Zm9ybSwgaW5wdXR7XG5cdFx0cG9zaXRpb246IGZpeGVkO1xuXHRcdHRvcDogMDtcblx0XHRsZWZ0OiAwO1xuXHRcdG9wYWNpdHk6IDA7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogYmxhY2s7XG5cdH1cbn1cblxuLnRlcm1pbmFse1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHBhZGRpbmc6IDRyZW07XG5cblx0LnByb21wdHtcblx0XHRjb2xvcjogJGdyZWVuO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdGZvbnQtZmFtaWx5OiAnQW5kYWxlTW9ubycsIG1vbm9zcGFjZTtcblx0XHRmb250LXdlaWdodDogYm9sZDtcblx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdGZvbnQtc2l6ZTogMC45ZW07XG5cdFx0bGV0dGVyLXNwYWNpbmc6IDAuMTVlbTtcblx0XHR3aGl0ZS1zcGFjZTogcHJlLXdyYXA7XG5cdFx0dGV4dC1zaGFkb3c6IDAgMCAycHggcmdiYSgkZ3JlZW4sMC43NSk7XG5cdFx0bGluZS1oZWlnaHQ6IDE7XG5cdFx0bWFyZ2luLWJvdHRvbTogMC43NWVtO1xuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGUpIHtcblx0XHRcdGZvbnQtc2l6ZTogMC42ZW07XG5cdFx0fVxuXG5cdFx0JjpiZWZvcmUge1xuXHRcdFx0Y29udGVudDogJz4gJztcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHR9XG5cdH1cblxuXHQubmV3LW91dHB1dHtcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0JjphZnRlciB7XG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHR2ZXJ0aWNhbC1hbGlnbjogLTAuMTVlbTtcblx0XHRcdHdpZHRoOiAwLjc1ZW07XG5cdFx0XHRoZWlnaHQ6IDFlbTtcblx0XHRcdG1hcmdpbi1sZWZ0OiA1cHg7XG5cdFx0XHRiYWNrZ3JvdW5kOiAkZ3JlZW47XG5cdFx0XHRib3gtc2hhZG93OiAxcHggMXB4IDFweCByZ2JhKCRncmVlbiwwLjY1KSwgLTFweCAtMXB4IDFweCByZ2JhKCRncmVlbiwwLjY1KSwgMXB4IC0xcHggMXB4IHJnYmEoJGdyZWVuLDAuNjUpLCAtMXB4IDFweCAxcHggcmdiYSgkZ3JlZW4sMC42NSk7XG5cdFx0XHRAaW5jbHVkZSBhbmltYXRpb24oY3Vyc29yLWJsaW5rIDEuMjVzIHN0ZXBzKDEpIGluZmluaXRlKTtcblx0XHRcdGNvbnRlbnQ6ICcnO1xuXHRcdH1cblx0fVxufVxuXG4ua2l0dGVuc3tcblx0cHtcblx0XHRsZXR0ZXItc3BhY2luZzogMDtcblx0XHRvcGFjaXR5OiAwO1xuXHRcdGxpbmUtaGVpZ2h0OiAxcmVtO1xuXHR9XG59XG5cbi5raXR0ZW4tZ2lme1xuXHRtYXJnaW46IDIwcHg7XG5cdG1heC13aWR0aDogMzAwcHg7XG59XG5cbi40MDQtZm9ybXtcblx0ZGlzcGxheTogbm9uZTtcbn0iXSwic291cmNlUm9vdCI6Ii9zb3VyY2UvIn0= */

