/* Do not remove this comments bellow. It's the markers used by wiredep to inject
   sass dependencies when defined in the bower.json of your dependencies */
/* Do not remove this comments bellow. It's the markers used by gulp-inject to inject
   all your sass files automatically */
.fade {
  opacity: 1;
  visibility: visible; }
  .fade.ng-enter, .fade.ng-leave {
    -webkit-transition: opacity 0.2s ease-in-out;
    transition: opacity 0.2s ease-in-out; }
  .fade.ng-enter, .fade.ng-leave-active {
    opacity: 0;
    visibility: hidden; }
  .fade.ng-enter-active, .fade.ng-leave {
    opacity: 1; }

@-webkit-keyframes slide-up {
  0% {
    -webkit-transform: translateY(500px);
            transform: translateY(500px);
    opacity: 0; }
  40% {
    -webkit-transform: translateY(-5px);
            transform: translateY(-5px); }
  60% {
    opacity: 1; } }

@keyframes slide-up {
  0% {
    -webkit-transform: translateY(500px);
            transform: translateY(500px);
    opacity: 0; }
  40% {
    -webkit-transform: translateY(-5px);
            transform: translateY(-5px); }
  60% {
    opacity: 1; } }

.slide-up {
  -webkit-animation: slide-up 0.4s ease-in-out;
          animation: slide-up 0.4s ease-in-out; }

.slide-up-item {
  -webkit-transform: translateY(0);
          transform: translateY(0);
  opacity: 1; }
  .slide-up-item.ng-enter {
    -webkit-transition: all 250ms ease-in-out;
    transition: all 250ms ease-in-out; }
  .slide-up-item.ng-enter, .slide-up-item.ng-move, .slide-up-item.ng-leave-active {
    -webkit-transform: translateY(50px);
            transform: translateY(50px);
    opacity: 0; }
  .slide-up-item.ng-enter-active, .slide-up-item.ng-leave {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    opacity: 1; }
  .slide-up-item.ng-leave {
    -webkit-transform: translateY(50px);
            transform: translateY(50px);
    opacity: 0; }
  .slide-up-item.ng-leave-stagger, .slide-up-item.ng-enter-stagger {
    -webkit-transition-delay: 0.1s;
            transition-delay: 0.1s;
    -webkit-transition-duration: 0s;
            transition-duration: 0s; }

.slide-down-item.ng-move, .slide-down-item.ng-enter, .slide-down-item.ng-leave {
  -webkit-transition: all linear 0.2s;
  transition: all linear 0.2s; }

.slide-down-item.ng-leave.ng-leave-active, .slide-down-item.ng-move, .slide-down-item.ng-enter {
  opacity: 0;
  max-height: 0; }

.slide-down-item.ng-leave, .slide-down-item.ng-move.ng-move-active, .slide-down-item.ng-enter.ng-enter-active {
  opacity: 1;
  max-height: 40px; }

@media print {
  html {
    overflow: visible !important;
    height: initial; }
    html > body {
      overflow: visible !important;
      height: initial; }
      html > body section.overview-open {
        overflow: visible !important; }
        html > body section.overview-open > section.portal {
          overflow: visible !important; }
          html > body section.overview-open > section.portal aside.sidebar {
            display: none; }
          html > body section.overview-open > section.portal section.main {
            overflow: visible !important; }
            html > body section.overview-open > section.portal section.main > header button[name="filters-menu"],
            html > body section.overview-open > section.portal section.main > header button[name="over-arrow-back"] {
              display: none; }
      html > body section.fade {
        overflow: visible !important;
        height: auto; }
        html > body section.fade > section.job-detail {
          overflow: visible !important;
          -webkit-box-orient: vertical;
          -webkit-box-direction: normal;
              -ms-flex-direction: column;
                  flex-direction: column; }
          html > body section.fade > section.job-detail > div.description {
            -webkit-box-ordinal-group: 3;
                -ms-flex-order: 2;
                    order: 2;
            overflow: visible !important; }
            html > body section.fade > section.job-detail > div.description .job-actions {
              display: none; }
      html > body button.bhi-arrow-back {
        display: none; }
      html > body div.apply {
        width: 100%; }
        html > body div.apply .apply,
        html > body div.apply .break,
        html > body div.apply .btn-li-lg,
        html > body div.apply .category-filter,
        html > body div.apply .related-jobs,
        html > body div.apply hr {
          display: none !important; } }

section.job-detail {
  padding: 0; }
  @media only screen and (min-width: 992px) {
    section.job-detail {
      padding: 1.5em;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-direction: row;
              flex-direction: row; } }
  section.job-detail > div.description {
    padding-left: 2em;
    padding-right: 2em;
    background-color: inherit;
    -webkit-box-shadow: none;
            box-shadow: none; }
    @media only screen and (min-width: 992px) {
      section.job-detail > div.description {
        margin-right: 1.5em;
        -webkit-box-ordinal-group: 2;
            -ms-flex-order: 1;
                order: 1;
        -webkit-box-flex: 1;
            -ms-flex: 1;
                flex: 1;
        background-color: #FFFFFF;
        -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.15);
                box-shadow: 0 1px 3px rgba(0, 0, 0, 0.15); } }
    @media only screen and (min-width: 992px) {
      section.job-detail > div.description > div.job-heading {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
            -ms-flex-direction: row;
                flex-direction: row;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center; } }
    section.job-detail > div.description > div.job-heading > h2 {
      font-size: 1.6em;
      font-weight: 500;
      display: none; }
      @media only screen and (min-width: 992px) {
        section.job-detail > div.description > div.job-heading > h2 {
          display: inline-block;
          -webkit-box-ordinal-group: 2;
              -ms-flex-order: 1;
                  order: 1; } }
    section.job-detail > div.description > div.job-heading > span.fill {
      -webkit-box-ordinal-group: 3;
          -ms-flex-order: 2;
              order: 2;
      display: none; }
      @media only screen and (min-width: 992px) {
        section.job-detail > div.description > div.job-heading > span.fill {
          display: inline-block; } }
    section.job-detail > div.description > div.job-heading > div.job-actions {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-direction: row;
              flex-direction: row;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: start;
          -ms-flex-pack: start;
              justify-content: flex-start; }
      @media only screen and (min-width: 992px) {
        section.job-detail > div.description > div.job-heading > div.job-actions {
          -webkit-box-ordinal-group: 4;
              -ms-flex-order: 3;
                  order: 3; } }
      section.job-detail > div.description > div.job-heading > div.job-actions > button {
        border: none;
        background: transparent;
        margin: 0 1em 0 0;
        font-size: 1.1em;
        color: #6b6d71;
        -webkit-box-ordinal-group: 2;
            -ms-flex-order: 1;
                order: 1;
        white-space: nowrap; }
        @media only screen and (min-width: 992px) {
          section.job-detail > div.description > div.job-heading > div.job-actions > button {
            -webkit-box-ordinal-group: 3;
                -ms-flex-order: 2;
                    order: 2;
            margin: 0 1em; } }
        section.job-detail > div.description > div.job-heading > div.job-actions > button > i {
          margin-right: 5px;
          font-size: 1.3em; }
        section.job-detail > div.description > div.job-heading > div.job-actions > button[name="share"] {
          padding-left: 0; }
          @media only screen and (min-width: 992px) {
            section.job-detail > div.description > div.job-heading > div.job-actions > button[name="share"] {
              display: inline-block; } }
      section.job-detail > div.description > div.job-heading > div.job-actions > div.share-outlets {
        border-left: 1px solid transparent;
        padding-right: 20px;
        -webkit-box-ordinal-group: 3;
            -ms-flex-order: 2;
                order: 2;
        white-space: nowrap; }
        @media only screen and (min-width: 992px) {
          section.job-detail > div.description > div.job-heading > div.job-actions > div.share-outlets {
            -webkit-box-ordinal-group: 2;
                -ms-flex-order: 1;
                    order: 1;
            border-left: none;
            border-right: 1px solid transparent; } }
        section.job-detail > div.description > div.job-heading > div.job-actions > div.share-outlets a:nth-child(1) {
          -webkit-transition-delay: 400ms;
                  transition-delay: 400ms; }
        section.job-detail > div.description > div.job-heading > div.job-actions > div.share-outlets a:nth-child(2) {
          -webkit-transition-delay: 300ms;
                  transition-delay: 300ms; }
        section.job-detail > div.description > div.job-heading > div.job-actions > div.share-outlets a:nth-child(3) {
          -webkit-transition-delay: 200ms;
                  transition-delay: 200ms; }
        section.job-detail > div.description > div.job-heading > div.job-actions > div.share-outlets a:nth-child(4) {
          -webkit-transition-delay: 100ms;
                  transition-delay: 100ms; }
        section.job-detail > div.description > div.job-heading > div.job-actions > div.share-outlets > a {
          font-size: 1.3em;
          padding: 5px 10px;
          -webkit-box-sizing: border-box;
                  box-sizing: border-box;
          display: inline-block;
          opacity: 0;
          visibility: hidden;
          -webkit-transition: all 100ms ease;
          transition: all 100ms ease;
          -webkit-transform: translateX(15px);
                  transform: translateX(15px); }
      section.job-detail > div.description > div.job-heading > div.job-actions.share-open > button[name="share"] {
        color: #0268e6; }
      section.job-detail > div.description > div.job-heading > div.job-actions.share-open > button[name="print"] {
        display: none; }
        @media only screen and (min-width: 992px) {
          section.job-detail > div.description > div.job-heading > div.job-actions.share-open > button[name="print"] {
            display: inline-block; } }
      section.job-detail > div.description > div.job-heading > div.job-actions.share-open > div.share-outlets {
        border-left: 1px solid #0268e6; }
        @media only screen and (min-width: 992px) {
          section.job-detail > div.description > div.job-heading > div.job-actions.share-open > div.share-outlets {
            border-left: none;
            border-right: 1px solid #0268e6; } }
        section.job-detail > div.description > div.job-heading > div.job-actions.share-open > div.share-outlets > a {
          opacity: 1;
          visibility: visible;
          -webkit-transform: translateX(0);
                  transform: translateX(0); }
    section.job-detail > div.description > div.job-details {
      word-wrap: break-word;
      line-height: 1.5em;
      margin-top: 1em; }
  section.job-detail > div.apply {
    margin-bottom: 1.5em;
    padding-top: 2em; }
    @media only screen and (min-width: 992px) {
      section.job-detail > div.apply {
        width: 30%;
        max-width: 450px;
        height: 100%;
        -webkit-box-ordinal-group: 3;
            -ms-flex-order: 2;
                order: 2; } }
    section.job-detail > div.apply div.alert {
      color: #245C7E;
      padding: 1em;
      margin: 1.5em 0 0;
      border-radius: .5em;
      margin-bottom: 1.5em; }
      section.job-detail > div.apply div.alert.info {
        border: solid thin #a5d3ee;
        background-color: #D0E8F6; }
    section.job-detail > div.apply span.break {
      position: relative;
      border-bottom: solid lightgray thin;
      display: block;
      margin: 2em 0; }
      section.job-detail > div.apply span.break > span {
        position: absolute;
        top: -.5em;
        text-align: center;
        width: 6%;
        color: grey;
        left: 46%;
        background-color: white;
        display: block; }
    section.job-detail > div.apply button.btn-li-lg {
      display: block;
      width: 99%;
      border: none;
      border-radius: .25em;
      padding: 0;
      margin: auto;
      margin-top: 1.5em;
      overflow: hidden;
      background: #0077B5;
      color: white;
      text-align: left;
      -webkit-transition: background-color 250ms;
      transition: background-color 250ms; }
      section.job-detail > div.apply button.btn-li-lg:hover, section.job-detail > div.apply button.btn-li-lg:active, section.job-detail > div.apply button.btn-li-lg:focus {
        background-color: #00669c; }
      section.job-detail > div.apply button.btn-li-lg.done, section.job-detail > div.apply button.btn-li-lg.loading {
        background-color: rgba(0, 119, 181, 0.75);
        color: rgba(255, 255, 255, 0.75); }
        section.job-detail > div.apply button.btn-li-lg.done > i, section.job-detail > div.apply button.btn-li-lg.loading > i {
          border-right-color: #0099e8; }
      section.job-detail > div.apply button.btn-li-lg > i {
        font-size: 2.5em;
        padding: .15em .25em;
        margin: 0 .25em 0 0;
        display: inline-block;
        height: 100%;
        border-right: solid thin #006091; }
      section.job-detail > div.apply button.btn-li-lg > span {
        position: relative;
        top: -.4em;
        font-size: 1.1em;
        font-weight: 600;
        padding: 0 1.5em 0 0; }
    section.job-detail > div.apply > div.send {
      margin-top: 1em;
      background-color: #F4F4F4;
      display: block;
      -webkit-box-shadow: rgba(0, 0, 0, 0.14902) 0 1px 0 0;
              box-shadow: rgba(0, 0, 0, 0.14902) 0 1px 0 0; }
      section.job-detail > div.apply > div.send > input.email {
        text-align: left;
        width: 73%;
        height: 35px;
        font-size: 19px;
        border: none;
        background-color: #F4F4F4;
        text-indent: 15px;
        padding: 0; }
      section.job-detail > div.apply > div.send > a.send {
        display: inline-block;
        width: 25%;
        cursor: pointer;
        border: none;
        background: #ACC72E;
        padding-top: 8px;
        text-align: center;
        height: 35px;
        color: #FFFFFF;
        text-transform: uppercase;
        font-weight: 400;
        font-size: 1.3em; }
        section.job-detail > div.apply > div.send > a.send:focus {
          outline: none; }
        section.job-detail > div.apply > div.send > a.send:hover {
          -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.15);
                  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.15); }
    section.job-detail > div.apply > .ios-upload-warning {
      text-align: center;
      padding-top: 25px;
      margin-top: 20px;
      margin-bottom: 42px;
      border-top: 1px solid #ddd; }
    section.job-detail > div.apply > .card-date {
      font-size: 0.9em; }
    section.job-detail > div.apply > .card-title-category > .card-title {
      margin-top: 0.7em; }
    section.job-detail > div.apply > .card-title-category > .card-category {
      color: #adafb0;
      margin-bottom: 1.3em; }
    section.job-detail > div.apply > .card-location, section.job-detail > div.apply > .card-type, section.job-detail > div.apply > .card-separator {
      color: #6c6f71;
      font-weight: 500;
      font-size: 1.1em; }
    section.job-detail > div.apply > button.apply {
      cursor: pointer;
      width: 100%;
      border: none;
      background: #ACC72E;
      color: #FFFFFF;
      padding: 0.5em;
      border-radius: 3px;
      text-transform: uppercase;
      font-weight: 300;
      font-size: 1.3em;
      margin-top: 1em; }
      section.job-detail > div.apply > button.apply:focus {
        outline: none; }
      section.job-detail > div.apply > button.apply:hover {
        -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.15);
                box-shadow: 0 1px 3px rgba(0, 0, 0, 0.15); }
      section.job-detail > div.apply > button.apply.disabled {
        background-color: lightgray;
        margin-top: 1em; }
    section.job-detail > div.apply > hr {
      border: none;
      height: 1px;
      background: #E8E8E8;
      margin: 2em -0.5em;
      display: none; }
      @media only screen and (min-width: 992px) {
        section.job-detail > div.apply > hr {
          display: block; } }
    section.job-detail > div.apply > div.related-jobs {
      display: none; }
      @media only screen and (min-width: 992px) {
        section.job-detail > div.apply > div.related-jobs {
          display: block; } }
      section.job-detail > div.apply > div.related-jobs > h5 {
        font-size: 1.2em;
        font-weight: 400; }
      section.job-detail > div.apply > div.related-jobs > div.related-job {
        padding: 0 1em;
        margin-bottom: 1.5em; }
        section.job-detail > div.apply > div.related-jobs > div.related-job > a {
          font-size: 1.2em;
          font-weight: 500;
          max-width: 100%;
          display: inline-block;
          overflow: hidden;
          text-overflow: ellipsis;
          vertical-align: bottom;
          white-space: nowrap; }
        section.job-detail > div.apply > div.related-jobs > div.related-job > span.separator {
          font-size: 1.2em; }
        section.job-detail > div.apply > div.related-jobs > div.related-job > span.category {
          font-size: 1.1em;
          color: #3a3c3d;
          font-weight: 400; }
        section.job-detail > div.apply > div.related-jobs > div.related-job > span.location {
          margin-top: 0.2em;
          display: block;
          font-size: 1em;
          color: #a0a2a4;
          font-weight: 500; }
    section.job-detail > div.apply > a.category-filter {
      font-weight: 700;
      margin-bottom: 1em;
      display: none; }
      @media only screen and (min-width: 992px) {
        section.job-detail > div.apply > a.category-filter {
          display: block; } }
      section.job-detail > div.apply > a.category-filter > i {
        float: right; }

header.app {
  height: 80px;
  min-height: 80px;
  padding: 0 1.5em;
  text-align: center;
  background-color: #013A81;
  color: #FFFFFF;
  z-index: 100; }
  @media only screen and (min-width: 992px) {
    header.app {
      text-align: left;
      height: 50px;
      min-height: 50px; } }
  header.app .container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-line-pack: center;
        align-content: center;
    position: relative;
    margin: auto;
    max-width: 1080px;
    text-align: left;
    height: 100%; }
    header.app .container .logo-container {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center; }
      header.app .container .logo-container div:last-child #logo {
        max-height: 43px; }
    header.app .container .menu-container {
      display: -webkit-box !important;
      display: -ms-flexbox !important;
      display: flex !important;
      -ms-flex-line-pack: center;
          align-content: center; }
      header.app .container .menu-container nav#top-menu-nav {
        display: none; }
        @media only screen and (min-width: 992px) {
          header.app .container .menu-container nav#top-menu-nav {
            display: -webkit-box;
            display: -ms-flexbox;
            display: flex; } }
        header.app .container .menu-container nav#top-menu-nav ul {
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          list-style: none; }
          header.app .container .menu-container nav#top-menu-nav ul li {
            -webkit-transition: all 0.3s ease-in-out;
            transition: all 0.3s ease-in-out; }
            header.app .container .menu-container nav#top-menu-nav ul li a {
              font-size: 14px;
              padding-bottom: 17px;
              padding-right: 22px;
              font-weight: 600;
              white-space: nowrap;
              color: #48c200;
              opacity: .9; }
              header.app .container .menu-container nav#top-menu-nav ul li a:hover, header.app .container .menu-container nav#top-menu-nav ul li a .active {
                color: #fff;
                opacity: 1 !important; }
          header.app .container .menu-container nav#top-menu-nav ul li:hover, header.app .container .menu-container nav#top-menu-nav ul .active {
            -webkit-transform: scale(1.1);
            transform: scale(1.1); }
            header.app .container .menu-container nav#top-menu-nav ul li:hover a, header.app .container .menu-container nav#top-menu-nav ul .active a {
              color: #fff;
              opacity: 1 !important; }
      header.app .container .menu-container button.toggle-nav {
        display: inline-block;
        z-index: 201;
        color: #FFFFFF; }
        header.app .container .menu-container button.toggle-nav > .badge {
          position: absolute;
          top: 15px;
          left: -7px;
          font-size: 12px;
          padding: 1px 5px;
          background-color: #da4453;
          border-radius: 50%;
          color: #FFFFFF;
          line-height: 1; }
        header.app .container .menu-container button.toggle-nav > .close {
          display: none; }
        @media only screen and (min-width: 992px) {
          header.app .container .menu-container button.toggle-nav {
            display: none; } }
      .show-mobile header.app .container .menu-container button.toggle-nav {
        z-index: 201;
        position: relative;
        margin-right: 35px; }
        .show-mobile header.app .container .menu-container button.toggle-nav .close {
          display: block;
          color: #FFFFFF;
          font-size: 18px; }
        .show-mobile header.app .container .menu-container button.toggle-nav .open, .show-mobile header.app .container .menu-container button.toggle-nav .badge {
          display: none; }
      .show-mobile header.app .container .menu-container .open {
        width: 340px;
        background: #303030; }
      @media only screen and (min-width: 992px) {
        header.app .container .menu-container {
          display: none; } }
      header.app .container .menu-container .mobile-menu {
        display: block;
        min-height: 100vh;
        visibility: visible;
        position: absolute;
        z-index: 200;
        right: -20px;
        top: 0;
        width: 0;
        margin-top: 0;
        border-top: none;
        transform-origin: right;
        -webkit-transform-origin: right;
        background: #000;
        -webkit-transition: .8s;
        transition: .8s;
        overflow-x: hidden; }
        header.app .container .menu-container .mobile-menu ul {
          padding: 80px 45px 45px 45px; }
          header.app .container .menu-container .mobile-menu ul a {
            padding: 10px 5%; }
      header.app .container .menu-container ul {
        list-style: none; }
        header.app .container .menu-container ul li {
          -webkit-transition: all 0.3s ease-in-out;
          transition: all 0.3s ease-in-out;
          white-space: nowrap; }
          header.app .container .menu-container ul li a {
            font-family: 'Open Sans',Helvetica,Arial,Lucida,sans-serif;
            font-size: 14px;
            font-weight: 600;
            line-height: 23px;
            color: #f1f1f1;
            display: block;
            border-bottom: 1px solid rgba(0, 0, 0, 0.03); }
        header.app .container .menu-container ul li:hover {
          -webkit-transform: scale(1.1);
          transform: scale(1.1); }
          header.app .container .menu-container ul li:hover a {
            opacity: .7;
            color: #f1f1f1; }
        header.app .container .menu-container ul .active {
          opacity: .7; }
          header.app .container .menu-container ul .active:hover {
            -webkit-transform: scale(1);
            transform: scale(1); }
    header.app .container label {
      display: inline-block;
      font-size: 2em;
      font-weight: 700;
      white-space: nowrap;
      text-overflow: ellipsis;
      overflow: hidden;
      line-height: 50px;
      width: 75%; }
    header.app .container button {
      display: none;
      background: transparent;
      border: none;
      font-size: 1.8em;
      line-height: 50px;
      margin-right: 0.5em;
      padding: 0;
      left: 1em;
      top: 0; }
    header.app .container button.toggle-filters {
      display: inline-block;
      z-index: 101;
      color: #FFFFFF; }
      header.app .container button.toggle-filters > .badge {
        position: absolute;
        top: 15px;
        left: -7px;
        font-size: 12px;
        padding: 1px 5px;
        background-color: #da4453;
        border-radius: 50%;
        color: #FFFFFF;
        line-height: 1; }
      header.app .container button.toggle-filters > .close {
        display: none; }
      @media only screen and (min-width: 992px) {
        header.app .container button.toggle-filters {
          display: none; } }
    .show-nav header.app .container button.toggle-filters > .close {
      display: block;
      color: #FFFFFF; }
    .show-nav header.app .container button.toggle-filters > .open, .show-nav header.app .container button.toggle-filters > .badge {
      display: none; }
    .overview-open header.app .container > button.toggle-filters {
      display: none; }
    .overview-open header.app .container > button.go-back {
      display: inline-block; }
      @media only screen and (min-width: 992px) {
        .overview-open header.app .container > button.go-back {
          display: none; } }

section.portal {
  position: relative;
  overflow: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  height: 100%;
  width: 100%; }
  section.portal > .portal-canvas {
    width: 100%;
    height: calc(100% - 80px);
    position: relative;
    -webkit-transition: .3s ease all;
    transition: .3s ease all;
    -webkit-backface-visibility: hidden;
            backface-visibility: hidden; }
    @media only screen and (min-width: 992px) {
      section.portal > .portal-canvas {
        height: calc(100% - 50px); } }
    section.portal > .portal-canvas.show-nav {
      -webkit-transform: translateX(80%);
              transform: translateX(80%);
      -webkit-transform: translateZ(0) translateX(80%);
              transform: translateZ(0) translateX(80%);
      -webkit-transform: translate3d(80%, 0, 0);
              transform: translate3d(80%, 0, 0); }
      @media only screen and (min-width: 768px) {
        section.portal > .portal-canvas.show-nav {
          -webkit-transform: translateX(300px);
                  transform: translateX(300px);
          -webkit-transform: translateZ(0) translateX(300px);
                  transform: translateZ(0) translateX(300px);
          -webkit-transform: translate3d(300px, 0, 0);
                  transform: translate3d(300px, 0, 0); } }
    section.portal > .portal-canvas > section.main {
      height: 100%;
      -webkit-transition: padding-left 0.2s ease-in-out;
      transition: padding-left 0.2s ease-in-out; }
      @media only screen and (min-width: 992px) {
        section.portal > .portal-canvas > section.main {
          padding-left: 300px; }
          .overview-open section.portal > .portal-canvas > section.main {
            padding-left: 50px; } }
      section.portal > .portal-canvas > section.main > section.fade {
        height: 100%;
        overflow: auto; }

section.job-list {
  padding: 1.5em; }
  section.job-list .image-container {
    margin: -1.5em -1.5em 0 -1.5em;
    overflow: hidden; }
    section.job-list .image-container img {
      max-width: 100%;
      height: auto; }
  section.job-list > h4 {
    color: #cecece;
    font-size: 1.3em;
    font-weight: 500;
    margin: 0 0 1em; }
  section.job-list > p.load-more-data {
    text-align: center;
    margin: 0;
    font-size: 1.2em;
    cursor: pointer; }
  .list-view section.job-list div.cards {
    display: block; }
    .list-view section.job-list div.cards > div.card-wrapper {
      display: block; }
      .list-view section.job-list div.cards > div.card-wrapper > a.card {
        margin-bottom: 1.5em;
        overflow: hidden;
        cursor: pointer;
        display: block; }
        @media only screen and (min-width: 992px) {
          .list-view section.job-list div.cards > div.card-wrapper > a.card {
            display: -webkit-box;
            display: -ms-flexbox;
            display: flex;
            -webkit-box-orient: horizontal;
            -webkit-box-direction: normal;
                -ms-flex-flow: row wrap;
                    flex-flow: row wrap;
            -webkit-box-align: center;
                -ms-flex-align: center;
                    align-items: center; } }
        .list-view section.job-list div.cards > div.card-wrapper > a.card > i {
          -webkit-box-ordinal-group: 6;
              -ms-flex-order: 5;
                  order: 5;
          display: none; }
          @media only screen and (min-width: 992px) {
            .list-view section.job-list div.cards > div.card-wrapper > a.card > i {
              display: inline-block; } }
        .list-view section.job-list div.cards > div.card-wrapper > a.card > .card-date {
          display: none; }
          @media only screen and (min-width: 992px) {
            .list-view section.job-list div.cards > div.card-wrapper > a.card > .card-date {
              display: block;
              -webkit-box-flex: 1;
                  -ms-flex: 1;
                      flex: 1;
              color: #939597;
              font-weight: 500;
              font-size: 1.1em;
              -webkit-box-ordinal-group: 5;
                  -ms-flex-order: 4;
                      order: 4;
              text-align: center; } }
        .list-view section.job-list div.cards > div.card-wrapper > a.card > .card-title-category {
          display: block;
          width: 100%;
          margin-bottom: 0.25em; }
          @media only screen and (min-width: 992px) {
            .list-view section.job-list div.cards > div.card-wrapper > a.card > .card-title-category {
              width: 40%;
              margin-bottom: 0; } }
          .list-view section.job-list div.cards > div.card-wrapper > a.card > .card-title-category > .card-title {
            margin: 0 0 0.1em; }
          .list-view section.job-list div.cards > div.card-wrapper > a.card > .card-title-category > .card-category {
            font-size: 1.2em;
            margin: 0; }
        .list-view section.job-list div.cards > div.card-wrapper > a.card > .card-location, .list-view section.job-list div.cards > div.card-wrapper > a.card > .card-type {
          -webkit-box-flex: 1;
              -ms-flex: 1;
                  flex: 1;
          text-align: center; }
        @media only screen and (min-width: 992px) {
          .list-view section.job-list div.cards > div.card-wrapper > a.card > .card-separator {
            display: none; } }
        .list-view section.job-list div.cards > div.card-wrapper > a.card > .card-description {
          -webkit-box-ordinal-group: 7;
              -ms-flex-order: 6;
                  order: 6;
          width: 100%;
          margin-top: 1em;
          color: #606264;
          font-weight: 500;
          text-overflow: ellipsis;
          overflow: hidden;
          white-space: nowrap;
          display: none; }
          @media only screen and (min-width: 992px) {
            .list-view section.job-list div.cards > div.card-wrapper > a.card > .card-description {
              display: inline-block; } }
  .grid-view section.job-list div.cards {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    margin-left: -0.75em;
    margin-right: -0.75em; }
    .grid-view section.job-list div.cards div.card-wrapper {
      width: 100%;
      padding-bottom: 1.5em; }
      @media only screen and (min-width: 768px) {
        .grid-view section.job-list div.cards div.card-wrapper {
          width: 50%;
          padding-right: 0.75em;
          padding-left: 0.75em; } }
      @media only screen and (min-width: 1200px) {
        .grid-view section.job-list div.cards div.card-wrapper {
          width: 33%; } }
      .grid-view section.job-list div.cards div.card-wrapper > a.card {
        width: 100%;
        background: #FFFFFF;
        padding: 1em;
        overflow: hidden;
        cursor: pointer;
        display: block;
        min-height: 365px; }
        .grid-view section.job-list div.cards div.card-wrapper > a.card > i {
          display: none; }
        .grid-view section.job-list div.cards div.card-wrapper > a.card > .card-description {
          margin-top: 1em;
          color: #606264;
          line-height: 1.5em;
          font-weight: 500;
          display: block;
          word-break: break-all;
          text-overflow: ellipsis;
          height: 16em;
          overflow: hidden;
          position: relative; }
          .grid-view section.job-list div.cards div.card-wrapper > a.card > .card-description:after {
            content: "";
            text-align: right;
            position: absolute;
            bottom: 0;
            right: 0;
            width: 70%;
            height: 1.2em;
            background: -webkit-gradient(linear, left top, right top, from(rgba(255, 255, 255, 0)), to(#FFFFFF));
            background: linear-gradient(to right, rgba(255, 255, 255, 0), #FFFFFF 100%);
            pointer-events: none; }

.modal-container {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.7);
  z-index: 1000;
  overflow-y: auto; }
  .modal-container .required {
    color: #da4453;
    font-size: 1.2em; }
  .modal-container > div.modal {
    display: block;
    margin: auto;
    height: 100%;
    width: 100%;
    background: #FFFFFF;
    -webkit-box-shadow: 0 1px 10px rgba(0, 0, 0, 0.35);
            box-shadow: 0 1px 10px rgba(0, 0, 0, 0.35);
    overflow: hidden;
    position: relative;
    pointer-events: auto; }
    @media only screen and (min-width: 768px) {
      .modal-container > div.modal {
        max-width: 500px;
        margin: 80px auto;
        height: auto; }
        .modal-container > div.modal.success {
          max-width: 500px !important; } }
    @media screen and (max-height: 700px) and (min-width: 992px) {
      .modal-container > div.modal {
        margin: 0 auto;
        /* IE 9 */
        -webkit-transform: scale(0.85);
        /* Safari */
        transform: scale(0.85);
        /* Firefox, Opera, Chrome */ } }
    .modal-container > div.modal.success {
      height: auto;
      margin: 80px auto;
      max-width: 300px; }
    .modal-container > div.modal > header {
      background: #013A81;
      padding: 0.5em 3em 1.3em 1em;
      display: block;
      color: #FFFFFF;
      height: auto;
      position: relative;
      text-align: left; }
      @media only screen and (min-width: 768px) {
        .modal-container > div.modal > header {
          padding: 1em 3em 2em 2em; } }
      .modal-container > div.modal > header > section > h2 {
        font-size: 1.8em;
        margin: 0.5em 0 0.2em;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis; }
      .modal-container > div.modal > header > section > h3 {
        margin-bottom: 0; }
      .modal-container > div.modal > header > section > span {
        font-size: 1.1em;
        font-weight: 500; }
        .modal-container > div.modal > header > section > span.category {
          display: block;
          color: #0268e6;
          font-size: 1.3em;
          font-weight: 700;
          margin-bottom: 1.2em; }
        .modal-container > div.modal > header > section > span.location, .modal-container > div.modal > header > section > span.separator, .modal-container > div.modal > header > section > span.type {
          color: #3D5668; }
      .modal-container > div.modal > header > section > i.close {
        position: absolute;
        top: 0.5em;
        right: 0.5em;
        cursor: pointer;
        color: #025ccd;
        font-size: 2em; }
        @media only screen and (min-width: 768px) {
          .modal-container > div.modal > header > section > i.close {
            display: none; } }
      .modal-container > div.modal > header > section.success {
        text-align: center; }
    .modal-container > div.modal > div.main {
      padding: 1em;
      overflow: auto;
      height: calc(100% - 60px - 120px); }
      @media only screen and (min-width: 768px) {
        .modal-container > div.modal > div.main {
          padding: 2em;
          height: auto; } }
      .modal-container > div.modal > div.main section div.tooltip-info {
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: rgba(0, 0, 0, 0.4);
        z-index: 1010; }
        .modal-container > div.modal > div.main section div.tooltip-info .tooltip-modal {
          display: block;
          width: 100%;
          max-width: 33em;
          position: absolute;
          top: 50%;
          left: 50%;
          -webkit-transform: translate(-50%, -50%);
                  transform: translate(-50%, -50%);
          padding: 2em 3em 2em 2em;
          background: #FFFFFF;
          border: grey;
          border-radius: 3px;
          -webkit-box-shadow: 0 1px 10px rgba(0, 0, 0, 0.35);
                  box-shadow: 0 1px 10px rgba(0, 0, 0, 0.35);
          z-index: 999;
          overflow-y: auto;
          max-height: 550px; }
          .modal-container > div.modal > div.main section div.tooltip-info .tooltip-modal > p {
            margin: 0; }
          .modal-container > div.modal > div.main section div.tooltip-info .tooltip-modal > ul {
            margin-left: -1.5em !important; }
          .modal-container > div.modal > div.main section div.tooltip-info .tooltip-modal > div.tooltip-info-closer {
            position: absolute;
            top: 0;
            right: 0;
            height: 46px;
            width: 46px; }
            .modal-container > div.modal > div.main section div.tooltip-info .tooltip-modal > div.tooltip-info-closer > i {
              height: 100%;
              width: 100%;
              text-align: center;
              line-height: 46px;
              font-size: 1.2em;
              display: block;
              cursor: pointer; }
      .modal-container > div.modal > div.main section form.apply-form div.form-field {
        margin: 1em 0; }
        @media only screen and (min-width: 992px) {
          .modal-container > div.modal > div.main section form.apply-form div.form-field {
            margin: 2em 0; } }
        .modal-container > div.modal > div.main section form.apply-form div.form-field div.input {
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          -webkit-box-orient: horizontal;
          -webkit-box-direction: normal;
              -ms-flex-direction: row;
                  flex-direction: row;
          -webkit-box-align: center;
              -ms-flex-align: center;
                  align-items: center; }
          .modal-container > div.modal > div.main section form.apply-form div.form-field div.input input,
          .modal-container > div.modal > div.main section form.apply-form div.form-field div.input select {
            color: #797c7e;
            padding: 0.5em; }
            .modal-container > div.modal > div.main section form.apply-form div.form-field div.input input.ng-invalid.ng-valid-required,
            .modal-container > div.modal > div.main section form.apply-form div.form-field div.input select.ng-invalid.ng-valid-required {
              color: #da4453; }
            .modal-container > div.modal > div.main section form.apply-form div.form-field div.input input[type="email"], .modal-container > div.modal > div.main section form.apply-form div.form-field div.input input[type="text"],
            .modal-container > div.modal > div.main section form.apply-form div.form-field div.input select[type="email"],
            .modal-container > div.modal > div.main section form.apply-form div.form-field div.input select[type="text"] {
              border: none;
              border-bottom: 1px solid #cecece;
              -webkit-transition: border-bottom 0.2s ease-in-out;
              transition: border-bottom 0.2s ease-in-out; }
              .modal-container > div.modal > div.main section form.apply-form div.form-field div.input input[type="email"]:focus, .modal-container > div.modal > div.main section form.apply-form div.form-field div.input input[type="text"]:focus,
              .modal-container > div.modal > div.main section form.apply-form div.form-field div.input select[type="email"]:focus,
              .modal-container > div.modal > div.main section form.apply-form div.form-field div.input select[type="text"]:focus {
                border-bottom: 1px solid #013A81; }
          .modal-container > div.modal > div.main section form.apply-form div.form-field div.input.eeoc {
            -webkit-box-orient: vertical;
            -webkit-box-direction: normal;
                -ms-flex-direction: column;
                    flex-direction: column; }
            .modal-container > div.modal > div.main section form.apply-form div.form-field div.input.eeoc > label {
              margin-bottom: 0.5em;
              text-align: left;
              width: 100%;
              font-size: 1.1em;
              color: #797c7e; }
            .modal-container > div.modal > div.main section form.apply-form div.form-field div.input.eeoc select {
              border-color: #cecece; }
              .modal-container > div.modal > div.main section form.apply-form div.form-field div.input.eeoc select:focus {
                outline: none;
                border-color: #5198DE; }
            .modal-container > div.modal > div.main section form.apply-form div.form-field div.input.eeoc fieldset {
              width: 100%;
              border-radius: 3px;
              border-color: rgba(0, 0, 0, 0.1); }
            .modal-container > div.modal > div.main section form.apply-form div.form-field div.input.eeoc .eeoc-checkbox {
              display: -webkit-box;
              display: -ms-flexbox;
              display: flex;
              -webkit-box-align: center;
                  -ms-flex-align: center;
                      align-items: center;
              -webkit-box-pack: start;
                  -ms-flex-pack: start;
                      justify-content: flex-start;
              height: 36px; }
              .modal-container > div.modal > div.main section form.apply-form div.form-field div.input.eeoc .eeoc-checkbox input[type="checkbox"] {
                margin-top: 0;
                -ms-flex-negative: 0;
                    flex-shrink: 0;
                width: initial;
                height: 36px; }
              .modal-container > div.modal > div.main section form.apply-form div.form-field div.input.eeoc .eeoc-checkbox label {
                height: 36px;
                line-height: 36px;
                padding-left: 10px;
                -webkit-box-flex: 1;
                    -ms-flex: 1;
                        flex: 1;
                width: 100%; }
        .modal-container > div.modal > div.main section form.apply-form div.form-field.upload-container {
          border: 1px solid #013A81;
          color: #013A81;
          border-radius: 3px;
          background: transparent;
          text-align: center;
          position: relative;
          cursor: pointer;
          font-size: 1.2em;
          margin-top: 1em;
          margin-bottom: 1.6em;
          height: 50px; }
          .modal-container > div.modal > div.main section form.apply-form div.form-field.upload-container > i {
            line-height: 50px;
            font-size: 1.3em;
            padding-right: 0.5em; }
            .modal-container > div.modal > div.main section form.apply-form div.form-field.upload-container > i:before {
              vertical-align: inherit; }
          .modal-container > div.modal > div.main section form.apply-form div.form-field.upload-container > span {
            line-height: 50px;
            vertical-align: top; }
          .modal-container > div.modal > div.main section form.apply-form div.form-field.upload-container.valid {
            border-color: #ACC72E;
            color: #ACC72E; }
        .modal-container > div.modal > div.main section form.apply-form div.form-field:first-child {
          margin-top: 0; }
      .modal-container > div.modal > div.main section form.apply-form > div.upload-label {
        font-size: 1.1em;
        color: #797c7e; }
        .modal-container > div.modal > div.main section form.apply-form > div.upload-label > i {
          color: #606264; }
        .modal-container > div.modal > div.main section form.apply-form > div.upload-label > .error {
          margin-top: 0;
          float: right; }
      .modal-container > div.modal > div.main section.success {
        padding: 1em; }
      .modal-container > div.modal > div.main section select {
        width: 100%;
        overflow: hidden; }
      .modal-container > div.modal > div.main section input {
        color: #797c7e;
        width: 100%;
        margin-top: 1em; }
        .modal-container > div.modal > div.main section input.ng-invalid.ng-valid-required {
          color: #da4453; }
        .modal-container > div.modal > div.main section input[type="email"], .modal-container > div.modal > div.main section input[type="text"] {
          border: none;
          border-bottom: 1px solid #cecece;
          -webkit-transition: border-bottom 0.2s ease-in-out;
          transition: border-bottom 0.2s ease-in-out;
          padding: 0.5em; }
          .modal-container > div.modal > div.main section input[type="email"]:focus, .modal-container > div.modal > div.main section input[type="text"]:focus {
            border-bottom: 1px solid #013A81; }
        .modal-container > div.modal > div.main section input.consent-checkbox {
          width: 40px; }
      .modal-container > div.modal > div.main section .consent-checkbox-label {
        color: #3D5668;
        font-weight: 500; }
      .modal-container > div.modal > div.main section textarea {
        width: 100%;
        resize: none;
        border: none;
        border-bottom: solid thin #CCC;
        padding: 0 0.75em;
        color: #797c7e; }
        .modal-container > div.modal > div.main section textarea:active, .modal-container > div.modal > div.main section textarea:focus, .modal-container > div.modal > div.main section textarea:hover {
          outline: none; }
        .modal-container > div.modal > div.main section textarea:focus {
          border-bottom-color: #013A81; }
    .modal-container > div.modal footer {
      width: 100%;
      text-align: right;
      position: fixed;
      bottom: 0;
      left: 0;
      height: 50px;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-flow: row nowrap;
              flex-flow: row nowrap; }
      @media only screen and (min-width: 768px) {
        .modal-container > div.modal footer {
          position: relative; } }
      @media only screen and (min-width: 480px) {
        .modal-container > div.modal footer {
          position: relative; } }
      @media only screen and (min-width: 320px) {
        .modal-container > div.modal footer {
          position: relative; } }
      .modal-container > div.modal footer.success {
        text-align: right;
        padding-top: 0;
        display: inline-block;
        position: relative; }
        .modal-container > div.modal footer.success button {
          background-color: transparent !important;
          text-align: right;
          color: #013A81 !important; }
      .modal-container > div.modal footer button {
        text-transform: uppercase;
        line-height: 50px;
        font-size: 1.5em;
        border: none;
        width: 49%;
        font-weight: 700;
        -webkit-box-flex: 1;
            -ms-flex: 1;
                flex: 1; }
        .modal-container > div.modal footer button[name="cancel"], .modal-container > div.modal footer button[name="ok"] {
          color: #cecece;
          background: transparent;
          font-weight: 600;
          display: none; }
          @media only screen and (min-width: 768px) {
            .modal-container > div.modal footer button[name="cancel"], .modal-container > div.modal footer button[name="ok"] {
              display: inline-block; } }
        .modal-container > div.modal footer button[name="submit"] {
          color: #FFFFFF;
          background: #ACC72E;
          border-radius: 2px;
          width: 100%;
          font-weight: 700; }
          .modal-container > div.modal footer button[name="submit"] > i {
            float: right; }
        .modal-container > div.modal footer button[name="ok"] {
          -webkit-box-flex: 0;
              -ms-flex: 0;
                  flex: 0;
          float: right;
          color: #013A81;
          font-size: 1em;
          width: 200px;
          display: inline-block; }
        .modal-container > div.modal footer button.disabled {
          background-color: lightgray; }

.error {
  display: block;
  color: #da4453;
  margin-left: 1.1em;
  margin-top: 0.3em; }
  .error.submit-error {
    margin-bottom: 1em; }

.accepted-formats ._720kb-tooltip-title {
  font-size: 0.8em; }

.accepted-formats ul {
  margin: 0.2em 0 0 1.1em;
  font-size: 0.9em;
  padding: 0; }

.loading {
  text-align: center; }
  .loading .loading-dot {
    display: inline-block;
    width: 5px;
    height: 5px;
    background: white;
    border-radius: 50%;
    -webkit-animation: loading 1.5s ease-in-out infinite;
            animation: loading 1.5s ease-in-out infinite; }
  .loading .loading-dot:nth-child(4n + 2) {
    -webkit-animation-delay: 0.3s;
            animation-delay: 0.3s; }
  .loading .loading-dot:nth-child(4n + 3) {
    -webkit-animation-delay: 0.6s;
            animation-delay: 0.6s; }

@-webkit-keyframes loading {
  0% {
    opacity: 1; }
  50% {
    opacity: 0.2; }
  100% {
    opacity: 1; } }

@keyframes loading {
  0% {
    opacity: 1; }
  50% {
    opacity: 0.2; }
  100% {
    opacity: 1; } }

aside {
  z-index: 125;
  height: 100%;
  width: 80%;
  min-width: 80%;
  position: absolute;
  top: 0;
  left: -80%;
  background-color: #2E2F30;
  color: #FFFFFF;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out; }
  @media only screen and (min-width: 768px) {
    aside {
      width: 300px;
      min-width: 300px;
      left: -300px; } }
  @media only screen and (min-width: 992px) {
    aside {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      position: inherit;
      float: left;
      left: 0; } }
  aside > header {
    background-color: #252728;
    height: 50px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row nowrap;
            flex-flow: row nowrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 0 1.5em; }
    aside > header > label {
      font-size: 1.8em;
      font-weight: 500;
      width: auto; }
    aside > header > div.button-container {
      -webkit-box-flex: 1;
          -ms-flex: 1;
              flex: 1;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-flow: row nowrap;
              flex-flow: row nowrap;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: end;
          -ms-flex-pack: end;
              justify-content: flex-end; }
      aside > header > div.button-container > button {
        background: transparent;
        border: none;
        color: #a0a2a4;
        padding: 5px;
        font-size: 1.8em;
        cursor: pointer;
        -webkit-transition: all 0.2s;
        transition: all 0.2s;
        margin-right: 0; }
        aside > header > div.button-container > button:focus {
          outline: none; }
        aside > header > div.button-container > button.active {
          color: #FFFFFF; }
  aside > section {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    height: calc(100% - 50px);
    overflow: auto;
    padding: 1em; }
    aside > section > div.keyword-search {
      position: relative;
      margin: 1em 0 2em; }
      aside > section > div.keyword-search > label {
        position: absolute;
        top: 4px;
        left: 10px;
        font-size: 1.5em;
        color: #505255; }
      aside > section > div.keyword-search > button.clear-filter {
        position: absolute;
        top: 9px;
        right: 10px;
        padding: 0 5px;
        margin: 0;
        border: none;
        background: transparent;
        color: #FFFFFF; }
      aside > section > div.keyword-search > input.search {
        background-color: #252728 !important;
        border-radius: 50px;
        border-color: transparent;
        padding: 0.5em 2.5em;
        width: 100%;
        font-size: 1em;
        color: #eeeeef;
        -webkit-box-sizing: border-box;
                box-sizing: border-box; }
        aside > section > div.keyword-search > input.search:focus {
          outline: none; }
        aside > section > div.keyword-search > input.search::-ms-clear {
          display: none; }
    aside > section > section.filter-section {
      margin-bottom: 2em;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-flow: row wrap;
              flex-flow: row wrap;
      max-height: 370px;
      overflow: hidden; }
      aside > section > section.filter-section.active {
        max-height: inherit; }
      aside > section > section.filter-section > .filter-section-header {
        width: 100%;
        margin-bottom: 1em; }
        aside > section > section.filter-section > .filter-section-header > h4 {
          color: #86888b;
          font-size: 1.1em;
          font-weight: 500;
          display: inline-block;
          margin: 0; }
        aside > section > section.filter-section > .filter-section-header > button.clear-filter {
          padding: 0;
          margin: 0;
          border: none;
          background: transparent;
          float: right;
          color: #FFFFFF; }
      aside > section > section.filter-section > span.show-more {
        display: block;
        width: 100%;
        text-align: center;
        margin-top: 1em;
        cursor: pointer;
        color: #adafb0; }
      aside > section > section.filter-section > .filter-item {
        width: 100%;
        padding-bottom: 5px;
        padding-top: 8px;
        border-bottom: 1px solid #3a3c3d;
        color: #d4d5d6;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
            -ms-flex-direction: row;
                flex-direction: row;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center; }
        aside > section > section.filter-section > .filter-item > label {
          -webkit-box-flex: 1;
              -ms-flex: 1;
                  flex: 1;
          font-size: 1.1em;
          cursor: pointer;
          padding-left: 1em;
          padding-right: 1em; }
        aside > section > section.filter-section > .filter-item > span {
          font-size: 1.1em; }
        aside > section > section.filter-section > .filter-item > input[type="checkbox"] {
          cursor: pointer;
          background: #535557;
          border: none;
          height: 15px;
          width: 15px;
          border-radius: 3px;
          -webkit-appearance: initial;
          display: inline-block;
          -webkit-transition: all 130ms ease-in-out;
          transition: all 130ms ease-in-out; }
          aside > section > section.filter-section > .filter-item > input[type="checkbox"]:focus {
            outline: none; }
          aside > section > section.filter-section > .filter-item > input[type="checkbox"]:checked {
            background: #6bbf2b; }
            aside > section > section.filter-section > .filter-item > input[type="checkbox"]:checked + label {
              color: #6bbf2b; }
    aside > section > section.credits {
      margin-top: 4em;
      color: #797c7e; }
      aside > section > section.credits span.powered-by {
        font-size: 1em; }
      aside > section > section.credits .bullhorn {
        display: block;
        position: relative;
        bottom: 20px;
        margin: 0; }
    aside > section > button[name="back-arrow"] {
      width: 46px;
      height: 100%;
      background: transparent;
      color: #FFFFFF;
      border: none;
      display: none; }
    aside > section::-webkit-scrollbar {
      width: 8px; }
    aside > section::-webkit-scrollbar-track {
      -webkit-box-shadow: none;
      border-radius: 0;
      background-color: #2E2F30; }
    aside > section::-webkit-scrollbar-thumb {
      border-radius: 0;
      -webkit-box-shadow: inset 1px 1px 6px #46474A;
      background-color: #46474A; }
  aside.show {
    display: block !important; }
  .overview-open aside {
    width: 50px;
    min-width: 50px; }
    .overview-open aside > header {
      display: none; }
    .overview-open aside > section {
      height: 100%;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center; }
      .overview-open aside > section > div.keyword-search, .overview-open aside > section > section.filter-section, .overview-open aside > section > section.credits {
        display: none; }
      .overview-open aside > section > button[name="back-arrow"] {
        display: block; }
      .overview-open aside > section > button[name="clear-all"] {
        display: none; }
    .overview-open aside:hover {
      cursor: pointer;
      background: #353738; }

html, body {
  -webkit-font-smoothing: antialiased;
  font-family: "Roboto";
  font-size: 13px;
  color: #46474A;
  height: 100%;
  width: 100%;
  margin: 0;
  padding: 0;
  overflow: hidden;
  background-color: #F4F4F4;
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }
  html > section.main, body > section.main {
    height: 100%;
    width: 100%; }

*, *:before, *:after {
  -webkit-box-sizing: inherit;
          box-sizing: inherit; }

.fill {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1; }

._720kb-tooltip {
  z-index: 1001;
  visibility: hidden !important; }
  ._720kb-tooltip._720kb-tooltip-open {
    visibility: visible !important; }

input:focus, input:active {
  outline: none; }

button {
  cursor: pointer; }
  button:focus, button:active {
    outline: none; }

a {
  color: #013A81;
  text-decoration: none;
  cursor: pointer; }
  a:visited, a:focus, a:active {
    color: #013A81; }

.card {
  background: #FFFFFF;
  -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.15);
          box-shadow: 0 1px 3px rgba(0, 0, 0, 0.15);
  padding: 1em; }
  .card > .card-date {
    font-size: 0.8em;
    font-weight: 500;
    color: #adafb0; }
  .card > .card-title-category > .card-title {
    font-size: 1.7em;
    font-weight: 500;
    overflow: hidden;
    text-overflow: ellipsis;
    margin-bottom: 0.2em;
    margin-top: 1em;
    white-space: nowrap;
    display: block;
    color: #013A81;
    text-decoration: none; }
    .card > .card-title-category > .card-title:visited, .card > .card-title-category > .card-title:focus, .card > .card-title-category > .card-title:active {
      color: #013A81; }
  .card > .card-title-category > .card-category {
    display: block;
    margin-bottom: 1em;
    font-size: 1.2em;
    color: #2E2F30;
    font-weight: 600; }
  .card > .card-location, .card > .card-type, .card > .card-separator {
    color: #939597;
    font-weight: 500;
    font-size: 1.1em; }

div.no-data-message {
  height: 100%;
  width: 100%;
  text-align: center; }
  div.no-data-message > h2 {
    font-size: 3.5em;
    font-weight: normal;
    color: #adafb0;
    margin: 10% 0 0.1em; }
  div.no-data-message > h3 {
    font-size: 2.5em;
    font-weight: normal;
    color: #adafb0;
    margin: 0 0 0.5em; }
  div.no-data-message > p {
    font-size: 1.3em; }

.clearfix:after {
  visibility: hidden;
  display: block;
  font-size: 0;
  content: " ";
  clear: both;
  height: 0; }

.mask {
  position: fixed;
  z-index: 100;
  top: 0;
  left: 0;
  overflow: scroll;
  width: 0;
  height: 0;
  background-color: #000;
  opacity: 0;
  -webkit-transition: opacity 0.3s, width 0s 0.3s, height 0s 0.3s;
  transition: opacity 0.3s, width 0s 0.3s, height 0s 0.3s; }
  .mask.active {
    width: 100%;
    height: 100%;
    opacity: 0.2;
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s; }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGV4LnNjc3MiLCJhbmltYXRpb25zLnNjc3MiLCJwcmludC5zY3NzIiwiZGV0YWlsL2RldGFpbC5zY3NzIiwibWl4aW5zLnNjc3MiLCJoZWFkZXIvaGVhZGVyLnNjc3MiLCJtYWluL21haW4uc2NzcyIsImxpc3QvbGlzdC5zY3NzIiwibW9kYWwvbW9kYWwuc2NzcyIsInNpZGViYXIvc2lkZWJhci5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzJFQUMyRTtBQTBCM0U7dUNBQ3VDO0FDeEJ2QztFQUNJLFdBQVU7RUFDVixvQkFBbUIsRUFjdEI7RUFoQkQ7SUFLUSw2Q0FBb0M7SUFBcEMscUNBQW9DLEVBQ3ZDO0VBTkw7SUFTUSxXQUFVO0lBQ1YsbUJBQWtCLEVBQ3JCO0VBWEw7SUFjUSxXQUFVLEVBQ2I7O0FBT0w7RUFDSTtJQUNJLHFDQUE0QjtZQUE1Qiw2QkFBNEI7SUFDNUIsV0FBVSxFQUFBO0VBR2Q7SUFDSSxvQ0FBMkI7WUFBM0IsNEJBQTJCLEVBQUE7RUFHL0I7SUFDSSxXQUFVLEVBQUEsRUFBQTs7QUFYbEI7RUFDSTtJQUNJLHFDQUE0QjtZQUE1Qiw2QkFBNEI7SUFDNUIsV0FBVSxFQUFBO0VBR2Q7SUFDSSxvQ0FBMkI7WUFBM0IsNEJBQTJCLEVBQUE7RUFHL0I7SUFDSSxXQUFVLEVBQUEsRUFBQTs7QUFJbEI7RUFDSSw2Q0FBb0M7VUFBcEMscUNBQW9DLEVBQ3ZDOztBQU1EO0VBQ0ksaUNBQXdCO1VBQXhCLHlCQUF3QjtFQUN4QixXQUFVLEVBeUJiO0VBM0JEO0lBS1EsMENBQWlDO0lBQWpDLGtDQUFpQyxFQUNwQztFQU5MO0lBU1Esb0NBQTJCO1lBQTNCLDRCQUEyQjtJQUMzQixXQUFVLEVBQ2I7RUFYTDtJQWNRLGlDQUF3QjtZQUF4Qix5QkFBd0I7SUFDeEIsV0FBVSxFQUNiO0VBaEJMO0lBbUJRLG9DQUEyQjtZQUEzQiw0QkFBMkI7SUFDM0IsV0FBVSxFQUNiO0VBckJMO0lBd0JRLCtCQUFzQjtZQUF0Qix1QkFBc0I7SUFD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QUNULHVCQUFzQjtFQUN0QixXQUFVO0VBQ1YsZ0VBQXVEO0VBQXZELHdEQUF1RCxFQVExRDtFQWxCRDtJQWFRLFlBQVc7SUFDWCxhQUFZO0lBQ1osYUFBWTtJQUNaLGlDQUF3QjtJQUF4Qix5QkFBd0IsRUFDM0IiLCJmaWxlIjoiaW5kZXguY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLyogRG8gbm90IHJlbW92ZSB0aGlzIGNvbW1lbnRzIGJlbGxvdy4gSXQncyB0aGUgbWFya2VycyB1c2VkIGJ5IHdpcmVkZXAgdG8gaW5qZWN0XG4gICBzYXNzIGRlcGVuZGVuY2llcyB3aGVuIGRlZmluZWQgaW4gdGhlIGJvd2VyLmpzb24gb2YgeW91ciBkZXBlbmRlbmNpZXMgKi9cbi8vIGJvd2VyOnNjc3Ncbi8vIGVuZGJvd2VyXG5cbiR3aGl0ZTogI0ZGRkZGRjtcbiRwcmltYXJ5OiAjMDEzQTgxO1xuJHNlY29uZGFyeTogI0FDQzcyRTtcbiRsaWdodC1iZzogI0Y0RjRGNDtcbiRkYXJrLWJnOiAjMkUyRjMwO1xuJGhlYWRlci1iZzogJHByaW1hcnk7XG4kc2lkZWJhci1oZWFkZXItYmc6ICMyNTI3Mjg7XG4kdG9nZ2xlLWFjdGl2ZTogI2ZmZjtcbiRjYW5jZWw6IGRhcmtlbigkbGlnaHQtYmcsIDE1JSk7XG4kZXJyb3I6ICNkYTQ0NTM7XG5cbiRmb250LXNpemU6IDEzcHg7XG4kZm9udC1mYW1pbHk6ICdSb2JvdG8nO1xuJGJhc2UtY29sb3I6ICM0NjQ3NEE7XG5cbiRoZWFkZXItaGVpZ2h0OiA1MHB4O1xuJHNpZGViYXItd2lkdGg6IDMwMHB4O1xuJHNpZGViYXItd2lkdGgtc21hbGw6IDUwcHg7XG5cbiRtb2RhbC16LWluZGV4OiAxMDAwO1xuJGhlYWRlci16LWluZGV4OiAxMDA7XG5cbi8qIERvIG5vdCByZW1vdmUgdGhpcyBjb21tZW50cyBiZWxsb3cuIEl0J3MgdGhlIG1hcmtlcnMgdXNlZCBieSBndWxwLWluamVjdCB0byBpbmplY3RcbiAgIGFsbCB5b3VyIHNhc3MgZmlsZXMgYXV0b21hdGljYWxseSAqL1xuLy8gaW5qZWN0b3JcbkBpbXBvcnQgXCJhbmltYXRpb25zLnNjc3NcIjtcbkBpbXBvcnQgXCJtaXhpbnMuc2Nzc1wiO1xuQGltcG9ydCBcInByaW50LnNjc3NcIjtcbkBpbXBvcnQgXCJkZXRhaWwvZGV0YWlsLnNjc3NcIjtcbkBpbXBvcnQgXCJoZWFkZXIvaGVhZGVyLnNjc3NcIjtcbkBpbXBvcnQgXCJtYWluL21haW4uc2Nzc1wiO1xuQGltcG9ydCBcImxpc3QvbGlzdC5zY3NzXCI7XG5AaW1wb3J0IFwibW9kYWwvbW9kYWwuc2Nzc1wiO1xuQGltcG9ydCBcInNpZGViYXIvc2lkZWJhci5zY3NzXCI7XG4vLyBlbmRpbmplY3RvclxuXG5odG1sLCBib2R5IHtcbiAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5O1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgICBjb2xvcjogJGJhc2UtY29sb3I7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWJnO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cbiAgICA+IHNlY3Rpb24ubWFpbiB7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxufVxuXG4qLCAqOmJlZm9yZSwgKjphZnRlciB7XG4gICAgYm94LXNpemluZzogaW5oZXJpdDtcbn1cblxuLmZpbGwge1xuICAgIGZsZXg6IDE7XG59XG5cbi5fNzIwa2ItdG9vbHRpcCB7XG4gICAgei1pbmRleDogJG1vZGFsLXotaW5kZXggKyAxO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbiAhaW1wb3J0YW50O1xuXG4gICAgJi5fNzIwa2ItdG9vbHRpcC1vcGVuIHtcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuaW5wdXQge1xuICAgICY6Zm9jdXMsICY6YWN0aXZlIHtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG59XG5cbmJ1dHRvbiB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgJjpmb2N1cywgJjphY3RpdmUge1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgIH1cbn1cblxuYSB7XG4gICAgY29sb3I6ICRwcmltYXJ5O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAmOnZpc2l0ZWQsICY6Zm9jdXMsICY6YWN0aXZlIHtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5O1xuICAgIH1cbn1cblxuLmNhcmQge1xuICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICBib3gtc2hhZG93OiAwIDFweCAzcHggcmdiYSgwLCAwLCAwLCAuMTUpO1xuICAgIHBhZGRpbmc6IDFlbTtcblxuICAgID4gLmNhcmQtZGF0ZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44ZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIGNvbG9yOiBsaWdodGVuKCRkYXJrLWJnLCA1MCUpO1xuICAgIH1cblxuICAgID4gLmNhcmQtdGl0bGUtY2F0ZWdvcnkge1xuICAgICAgICA+IC5jYXJkLXRpdGxlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS43ZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC4yZW07XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxZW07XG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeTtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgICAgICAgJjp2aXNpdGVkLCAmOmZvY3VzLCAmOmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgPiAuY2FyZC1jYXRlZ29yeSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFlbTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4yZW07XG4gICAgICAgICAgICBjb2xvcjogJGRhcmstYmc7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgPiAuY2FyZC1sb2NhdGlvbiwgPiAuY2FyZC10eXBlLCA+IC5jYXJkLXNlcGFyYXRvciB7XG4gICAgICAgIGNvbG9yOiBsaWdodGVuKCRkYXJrLWJnLCA0MCUpO1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBmb250LXNpemU6IDEuMWVtO1xuICAgIH1cbn1cblxuZGl2Lm5vLWRhdGEtbWVzc2FnZSB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgID4gaDIge1xuICAgICAgICBmb250LXNpemU6IDMuNWVtO1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICBjb2xvcjogbGlnaHRlbigkZGFyay1iZywgNTAlKTtcbiAgICAgICAgbWFyZ2luOiAxMCUgMCAwLjFlbTtcbiAgICB9XG5cbiAgICA+IGgzIHtcbiAgICAgICAgZm9udC1zaXplOiAyLjVlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgY29sb3I6IGxpZ2h0ZW4oJGRhcmstYmcsIDUwJSk7XG4gICAgICAgIG1hcmdpbjogMCAwIDAuNWVtO1xuICAgIH1cblxuICAgID4gcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4zZW07XG4gICAgfVxufVxuXG4uY2xlYXJmaXg6YWZ0ZXIge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6IDA7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgaGVpZ2h0OiAwO1xufVxuXG4ubWFzayB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHotaW5kZXg6ICRoZWFkZXItei1pbmRleDtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBvdmVyZmxvdzogc2Nyb2xsO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzLCB3aWR0aCAwcyAwLjNzLCBoZWlnaHQgMHMgMC4zcztcblxuICAgICYuYWN0aXZlIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgb3BhY2l0eTogMC4yO1xuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3M7XG4gICAgfVxufVxuIiwiLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBGQURFXG4vLy8vLy8vLy8vLy8vLy8vLy9cblxuLmZhZGUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcblxuICAgICYubmctZW50ZXIsICYubmctbGVhdmUge1xuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgZWFzZS1pbi1vdXQ7XG4gICAgfVxuXG4gICAgJi5uZy1lbnRlciwgJi5uZy1sZWF2ZS1hY3RpdmUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgfVxuXG4gICAgJi5uZy1lbnRlci1hY3RpdmUsICYubmctbGVhdmUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbn1cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBTTElERSBVUFxuLy8vLy8vLy8vLy8vLy8vLy8vXG5cbkBrZXlmcmFtZXMgc2xpZGUtdXAge1xuICAgIDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDUwMHB4KTtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICB9XG5cbiAgICA0MCUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTVweCk7XG4gICAgfVxuXG4gICAgNjAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG59XG5cbi5zbGlkZS11cCB7XG4gICAgYW5pbWF0aW9uOiBzbGlkZS11cCAwLjRzIGVhc2UtaW4tb3V0O1xufVxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFNMSURFIFVQIElURU0gKE5HLVJFUEVBVClcbi8vLy8vLy8vLy8vLy8vLy8vL1xuXG4uc2xpZGUtdXAtaXRlbSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIG9wYWNpdHk6IDE7XG5cbiAgICAmLm5nLWVudGVyIHtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDI1MG1zIGVhc2UtaW4tb3V0O1xuICAgIH1cblxuICAgICYubmctZW50ZXIsICYubmctbW92ZSwgJi5uZy1sZWF2ZS1hY3RpdmUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNTBweCk7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuXG4gICAgJi5uZy1lbnRlci1hY3RpdmUsICYubmctbGVhdmUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuXG4gICAgJi5uZy1sZWF2ZSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg1MHB4KTtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICB9XG5cbiAgICAmLm5nLWxlYXZlLXN0YWdnZXIsICYubmctZW50ZXItc3RhZ2dlciB7XG4gICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMXM7XG4gICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xuICAgIH1cbn1cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBTTElERSBET1dOIElURU0gKE5HLVJFUEVBVClcbi8vLy8vLy8vLy8vLy8vLy8vL1xuXG4uc2xpZGUtZG93bi1pdGVtIHtcbiAgICAmLm5nLW1vdmUsICYubmctZW50ZXIsICYubmctbGVhdmUge1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgbGluZWFyIDAuMnM7XG4gICAgfVxuXG4gICAgJi5uZy1sZWF2ZS5uZy1sZWF2ZS1hY3RpdmUsICYubmctbW92ZSwgJi5uZy1lbnRlciB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIG1heC1oZWlnaHQ6IDA7XG4gICAgfVxuXG4gICAgJi5uZy1sZWF2ZSwgJi5uZy1tb3ZlLm5nLW1vdmUtYWN0aXZlLCAmLm5nLWVudGVyLm5nLWVudGVyLWFjdGl2ZSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIG1heC1oZWlnaHQ6IDQwcHg7XG4gICAgfVxufSIsIkBtZWRpYSBwcmludCB7XG4gICAgaHRtbCB7XG4gICAgICAgIG92ZXJmbG93OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gICAgICAgIGhlaWdodDogaW5pdGlhbDtcblxuICAgICAgICA+IGJvZHkge1xuICAgICAgICAgICAgb3ZlcmZsb3c6IHZpc2libGUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGhlaWdodDogaW5pdGlhbDtcblxuICAgICAgICAgICAgc2VjdGlvbi5vdmVydmlldy1vcGVuIHtcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogdmlzaWJsZSAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICAgICAgPiBzZWN0aW9uLnBvcnRhbCB7XG4gICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICAgICAgICAgYXNpZGUuc2lkZWJhciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgc2VjdGlvbi5tYWluIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgID4gaGVhZGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBidXR0b25bbmFtZT1cImZpbHRlcnMtbWVudVwiXSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBidXR0b25bbmFtZT1cIm92ZXItYXJyb3ctYmFja1wiXSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBzZWN0aW9uLmZhZGUge1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuXG4gICAgICAgICAgICAgICAgPiBzZWN0aW9uLmpvYi1kZXRhaWwge1xuICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogdmlzaWJsZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgICAgICAgICAgICAgICAgID4gZGl2LmRlc2NyaXB0aW9uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9yZGVyOiAyO1xuICAgICAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3c6IHZpc2libGUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vcGFnZS1icmVhay1iZWZvcmU6IGFsd2F5cztcbiAgICAgICAgICAgICAgICAgICAgICAgIC5qb2ItYWN0aW9ucyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgYnV0dG9uLmJoaS1hcnJvdy1iYWNrIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBkaXYuYXBwbHkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgICAgICAgLmFwcGx5LFxuICAgICAgICAgICAgICAgIC5icmVhayxcbiAgICAgICAgICAgICAgICAuYnRuLWxpLWxnLFxuICAgICAgICAgICAgICAgIC5jYXRlZ29yeS1maWx0ZXIsXG4gICAgICAgICAgICAgICAgLnJlbGF0ZWQtam9icyxcbiAgICAgICAgICAgICAgICBociB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCJzZWN0aW9uLmpvYi1kZXRhaWwge1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICBAaW5jbHVkZSBkZXNrdG9wKCkge1xuICAgICAgICBwYWRkaW5nOiAxLjVlbTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICB9XG5cbiAgICA+IGRpdi5kZXNjcmlwdGlvbiB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMmVtO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyZW07XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG5cbiAgICAgICAgQGluY2x1ZGUgZGVza3RvcCgpIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMS41ZW07XG4gICAgICAgICAgICBvcmRlcjogMTtcbiAgICAgICAgICAgIGZsZXg6IDE7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDFweCAzcHggcmdiYSgwLCAwLCAwLCAuMTUpO1xuICAgICAgICB9XG5cbiAgICAgICAgPiBkaXYuam9iLWhlYWRpbmcge1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBkZXNrdG9wKCkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICA+IGgyIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNmVtO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGRlc2t0b3AoKSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDE7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICA+IHNwYW4uZmlsbCB7XG4gICAgICAgICAgICAgICAgb3JkZXI6IDI7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGRlc2t0b3AoKSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgID4gZGl2LmpvYi1hY3Rpb25zIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBkZXNrdG9wKCkge1xuICAgICAgICAgICAgICAgICAgICBvcmRlcjogMztcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICA+IGJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCAxZW0gMCAwO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuMWVtO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogbGlnaHRlbigkYmFzZS1jb2xvciwgMTUlKTtcbiAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDE7XG4gICAgICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZGVza3RvcCgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9yZGVyOiAyO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIDFlbTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgID4gaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4zZW07XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmW25hbWU9XCJzaGFyZVwiXSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGRlc2t0b3AoKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgPiBkaXYuc2hhcmUtb3V0bGV0cyB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiAyO1xuICAgICAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGRlc2t0b3AoKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBvcmRlcjogMTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoIDQge1xuICAgICAgICAgICAgICAgICAgICAgICAgYTpudGgtY2hpbGQoI3skaX0pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAoKCN7NTAwLSgkaSoxMDBtcyl9KSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICA+IGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjNlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDVweCAxMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMTAwbXMgZWFzZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxNXB4KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYuc2hhcmUtb3BlbiB7XG4gICAgICAgICAgICAgICAgICAgID4gYnV0dG9uW25hbWU9XCJzaGFyZVwiXSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogbGlnaHRlbigkcHJpbWFyeSwgMjAlKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgID4gYnV0dG9uW25hbWU9XCJwcmludFwiXSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBkZXNrdG9wKCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgID4gZGl2LnNoYXJlLW91dGxldHMge1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCBsaWdodGVuKCRwcmltYXJ5LCAyMCUpO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBkZXNrdG9wKCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIGxpZ2h0ZW4oJHByaW1hcnksIDIwJSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgID4gYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgID4gZGl2LmpvYi1kZXRhaWxzIHtcbiAgICAgICAgICAgIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjVlbTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDFlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgID4gZGl2LmFwcGx5IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS41ZW07XG4gICAgICAgIHBhZGRpbmctdG9wOiAyZW07XG5cbiAgICAgICAgQGluY2x1ZGUgZGVza3RvcCgpIHtcbiAgICAgICAgICAgIHdpZHRoOiAzMCU7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDQ1MHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgb3JkZXI6IDI7XG4gICAgICAgIH1cbiAgICAgICAgLy8gTGlua2VkIEluIEludGVncmF0aW9uXG4gICAgICAgICAgICAgICAgJGxpbmtlZC1pbi1ibHVlOiAjMDA3N0I1O1xuICAgICAgICAgICAgICAgIC8vTGlua2VkIEluIEFsZXJ0XG4gICAgICAgICAgICAgICAgZGl2LmFsZXJ0IHtcbiAgICAgICAgICAgICAgICAgICAgJGluZm8tYmx1ZS1mb250OiAjMjQ1QzdFO1xuICAgICAgICAgICAgICAgICAgICAkaW5mby1ibHVlLWJnOiAjRDBFOEY2O1xuXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkaW5mby1ibHVlLWZvbnQ7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDFlbTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAxLjVlbSAwIDA7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IC41ZW07XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEuNWVtO1xuXG4gICAgICAgICAgICAgICAgICAgICYuaW5mbyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IHNvbGlkIHRoaW4gZGFya2VuKCRpbmZvLWJsdWUtYmcsIDEwJSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5mby1ibHVlLWJnO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC8vT3IgQnJlYWtcbiAgICAgICAgICAgICAgICBzcGFuLmJyZWFrIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiBzb2xpZCBsaWdodGdyYXkgdGhpbjtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIC8vaGVpZ2h0OiAyZW07XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMmVtIDA7XG4gICAgICAgICAgICAgICAgICAgID4gc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICB0b3A6IC0uNWVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDYlO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IGdyZXk7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiA0NiU7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC8vIExpbmtlZCBJbiBCdXR0b25cbiAgICAgICAgICAgICAgICBidXR0b24uYnRuLWxpLWxnIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA5OSU7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogLjI1ZW07XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxLjVlbTtcblxuICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRsaW5rZWQtaW4tYmx1ZTtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuXG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG5cbiAgICAgICAgICAgICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDI1MG1zO1xuICAgICAgICAgICAgICAgICAgICAtbW96LXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMjUwbXM7XG4gICAgICAgICAgICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDI1MG1zO1xuICAgICAgICAgICAgICAgICAgICAtby10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDI1MG1zO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDI1MG1zO1xuXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAgICAgICAgICY6YWN0aXZlLFxuICAgICAgICAgICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkbGlua2VkLWluLWJsdWUsIDUlKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICYuZG9uZSxcbiAgICAgICAgICAgICAgICAgICAgJi5sb2FkaW5nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50aXplKCRsaW5rZWQtaW4tYmx1ZSwgLjI1KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC43NSk7XG4gICAgICAgICAgICAgICAgICAgICAgICA+IGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogbGlnaHRlbigkbGlua2VkLWluLWJsdWUsIDEwJSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICA+IGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyLjVlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IC4xNWVtIC4yNWVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIC4yNWVtIDAgMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodDogc29saWQgdGhpbiBkYXJrZW4oJGxpbmtlZC1pbi1ibHVlLCA3JSk7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICA+IHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAtLjRlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4xZW07XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMCAxLjVlbSAwIDA7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICA+IGRpdi5zZW5kIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDFlbTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNGNEY0RjQ7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IHJnYmEoMCwgMCwgMCwgMC4xNDkwMikgMCAxcHggMCAwO1xuXG4gICAgICAgICAgICA+IGlucHV0LmVtYWlsIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgICAgIHdpZHRoOiA3MyU7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAzNXB4O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTlweDtcbiAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0Y0RjRGNDtcbiAgICAgICAgICAgICAgICB0ZXh0LWluZGVudDogMTVweDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICA+IGEuc2VuZCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyNSU7XG4gICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkc2Vjb25kYXJ5O1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiA4cHg7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMzVweDtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuM2VtO1xuXG4gICAgICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMXB4IDNweCByZ2JhKDAsIDAsIDAsIC4xNSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgPiAuaW9zLXVwbG9hZC13YXJuaW5nIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAyNXB4O1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQycHg7XG4gICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2RkZDtcbiAgICAgICAgfVxuXG4gICAgICAgID4gLmNhcmQtZGF0ZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuOWVtO1xuICAgICAgICB9XG5cbiAgICAgICAgPiAuY2FyZC10aXRsZS1jYXRlZ29yeSB7XG4gICAgICAgICAgICA+IC5jYXJkLXRpdGxlIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwLjdlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgPiAuY2FyZC1jYXRlZ29yeSB7XG4gICAgICAgICAgICAgICAgY29sb3I6IGxpZ2h0ZW4oJGRhcmstYmcsIDUwJSk7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMS4zZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICA+IC5jYXJkLWxvY2F0aW9uLCA+IC5jYXJkLXR5cGUsID4gLmNhcmQtc2VwYXJhdG9yIHtcbiAgICAgICAgICAgIGNvbG9yOiBsaWdodGVuKCRkYXJrLWJnLCAyNSUpO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4xZW07XG4gICAgICAgIH1cblxuICAgICAgICA+IGJ1dHRvbi5hcHBseSB7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRzZWNvbmRhcnk7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgcGFkZGluZzogMC41ZW07XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4zZW07XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxZW07XG5cbiAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMXB4IDNweCByZ2JhKDAsIDAsIDAsIC4xNSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuZGlzYWJsZWQge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0Z3JheTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICA+IGhyIHtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZDogI0U4RThFODtcbiAgICAgICAgICAgIG1hcmdpbjogMmVtIC0wLjVlbTtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGRlc2t0b3AoKSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICA+IGRpdi5yZWxhdGVkLWpvYnMge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgZGVza3RvcCgpIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgPiBoNSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjJlbTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICA+IGRpdi5yZWxhdGVkLWpvYiB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCAxZW07XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMS41ZW07XG5cbiAgICAgICAgICAgICAgICA+IGEge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuMmVtO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gICAgICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgPiBzcGFuLnNlcGFyYXRvciB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4yZW07XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgPiBzcGFuLmNhdGVnb3J5IHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjFlbTtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IGxpZ2h0ZW4oJGRhcmstYmcsIDUlKTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICA+IHNwYW4ubG9jYXRpb24ge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwLjJlbTtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogbGlnaHRlbigkZGFyay1iZywgNDUlKTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICA+IGEuY2F0ZWdvcnktZmlsdGVyIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxZW07XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBkZXNrdG9wKCkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICA+IGkge1xuICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIiRzbWFsbC1waG9uZS13aWR0aDogMzIwcHg7XG4kcGhvbmUtd2lkdGg6IDQ4MHB4O1xuJHRhYmxldC13aWR0aDogNzY4cHg7XG4kZGVza3RvcC13aWR0aDogOTkycHg7XG4kbGFyZ2UtZGVza3RvcC13aWR0aDogMTIwMHB4O1xuXG5AbWl4aW4gc21hbGwtcGhvbmUge1xuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogI3skc21hbGwtcGhvbmUtd2lkdGh9KSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgIH1cbn1cblxuQG1peGluIHBob25lIHtcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICN7JHBob25lLXdpZHRofSkge1xuICAgICAgICBAY29udGVudDtcbiAgICB9XG59XG5cbkBtaXhpbiB0YWJsZXQge1xuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogI3skdGFibGV0LXdpZHRofSkge1xuICAgICAgICBAY29udGVudDtcbiAgICB9XG59XG5cbkBtaXhpbiBkZXNrdG9wIHtcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICN7JGRlc2t0b3Atd2lkdGh9KSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgIH1cbn1cblxuQG1peGluIGxhcmdlLWRlc2t0b3Age1xuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogI3skbGFyZ2UtZGVza3RvcC13aWR0aH0pIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgfVxufVxuXG5AbWl4aW4gcHJpbnQge1xuICAgIEBtZWRpYSBwcmludCB7XG4gICAgICAgIEBjb250ZW50O1xuICAgIH1cbn1cbiIsImhlYWRlci5hcHAge1xuICAgIGhlaWdodDogODBweDtcbiAgICBtaW4taGVpZ2h0OiA4MHB4O1xuICAgIHBhZGRpbmc6IDAgMS41ZW07XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGhlYWRlci1iZztcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIHotaW5kZXg6ICRoZWFkZXItei1pbmRleDtcblxuICAgIEBpbmNsdWRlIGRlc2t0b3AoKSB7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIGhlaWdodDogJGhlYWRlci1oZWlnaHQ7XG4gICAgICAgIG1pbi1oZWlnaHQ6ICRoZWFkZXItaGVpZ2h0O1xuICAgIH1cblxuICAgIC5jb250YWluZXIge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgIG1heC13aWR0aDogMTA4MHB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAgICAgLmxvZ28tY29udGFpbmVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgICAgICBkaXY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgI2xvZ28ge1xuICAgICAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiA0M3B4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5tZW51LWNvbnRhaW5lciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XG5cbiAgICAgICAgICAgIG5hdiN0b3AtbWVudS1uYXYge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBkZXNrdG9wKCkge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgICAgICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDE3cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMjJweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICM0OGMyMDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogLjk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyLCAuYWN0aXZlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDEgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBsaTpob3ZlciwgLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBidXR0b24udG9nZ2xlLW5hdiB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDIwMTtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgICAgICAgICAgICAgPiAuYmFkZ2Uge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogLTdweDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxcHggNXB4O1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZXJyb3I7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgPiAuY2xvc2Uge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGRlc2t0b3AoKSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuc2hvdy1tb2JpbGUgJiB7XG4gICAgICAgICAgICAgICAgYnV0dG9uLnRvZ2dsZS1uYXYge1xuICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAyMDE7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAzNXB4O1xuXG4gICAgICAgICAgICAgICAgICAgIC5jbG9zZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAub3BlbiwgLmJhZGdlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLm9wZW4ge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMzQwcHg7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICMzMDMwMzA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGluY2x1ZGUgZGVza3RvcCgpIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubW9iaWxlLW1lbnUge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDIwMDtcbiAgICAgICAgICAgICAgICByaWdodDogLTIwcHg7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodDtcbiAgICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICMwMDA7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogLjhzO1xuICAgICAgICAgICAgICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcblxuICAgICAgICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogODBweCA0NXB4IDQ1cHggNDVweDtcblxuICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggNSU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJ09wZW4gU2FucycsSGVsdmV0aWNhLEFyaWFsLEx1Y2lkYSxzYW5zLXNlcmlmO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyM3B4O1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNmMWYxZjE7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDAsMCwwLC4wMyk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBsaTpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG5cbiAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAuNztcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjZjFmMWYxO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5hY3RpdmUge1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAuNztcblxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBmb250LXNpemU6IDJlbTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6ICRoZWFkZXItaGVpZ2h0O1xuICAgICAgICAgICAgd2lkdGg6IDc1JTtcbiAgICAgICAgfVxuXG4gICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuOGVtO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6ICRoZWFkZXItaGVpZ2h0O1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwLjVlbTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICBsZWZ0OiAxZW07XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgIH1cblxuICAgICAgICBidXR0b24udG9nZ2xlLWZpbHRlcnMge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgei1pbmRleDogJGhlYWRlci16LWluZGV4ICsgMTtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG5cbiAgICAgICAgICAgID4gLmJhZGdlIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiAxNXB4O1xuICAgICAgICAgICAgICAgIGxlZnQ6IC03cHg7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDFweCA1cHg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGVycm9yO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICA+IC5jbG9zZSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgZGVza3RvcCgpIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gUGFyZW50IHNlbGVjdG9yXG4gICAgICAgIC5zaG93LW5hdiAmIHtcbiAgICAgICAgICAgIGJ1dHRvbi50b2dnbGUtZmlsdGVycyB7XG4gICAgICAgICAgICAgICAgPiAuY2xvc2Uge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICA+IC5vcGVuLCA+IC5iYWRnZSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gUGFyZW50IHNlbGVjdG9yXG4gICAgICAgIC5vdmVydmlldy1vcGVuICYge1xuICAgICAgICAgICAgPiBidXR0b24udG9nZ2xlLWZpbHRlcnMge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgID4gYnV0dG9uLmdvLWJhY2sge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGRlc2t0b3AoKSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSIsInNlY3Rpb24ucG9ydGFsIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG5cbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICA+IC5wb3J0YWwtY2FudmFzIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gODBweCk7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdHJhbnNpdGlvbjogLjNzIGVhc2UgYWxsO1xuICAgICAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG5cbiAgICAgICAgQGluY2x1ZGUgZGVza3RvcCgpIHtcbiAgICAgICAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gNTBweCk7XG4gICAgICAgIH1cblxuICAgICAgICAmLnNob3ctbmF2IHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg4MCUpO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApIHRyYW5zbGF0ZVgoODAlKTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoODAlLCAwLCAwKTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgdGFibGV0KCkge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgkc2lkZWJhci13aWR0aCk7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApIHRyYW5zbGF0ZVgoJHNpZGViYXItd2lkdGgpO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoJHNpZGViYXItd2lkdGgsIDAsIDApO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgPiBzZWN0aW9uLm1haW4ge1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogcGFkZGluZy1sZWZ0IDAuMnMgZWFzZS1pbi1vdXQ7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGRlc2t0b3AoKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAkc2lkZWJhci13aWR0aDtcblxuICAgICAgICAgICAgICAgIC5vdmVydmlldy1vcGVuICYge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6ICRzaWRlYmFyLXdpZHRoLXNtYWxsO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgPiBzZWN0aW9uLmZhZGUge1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0iLCJzZWN0aW9uLmpvYi1saXN0IHtcbiAgICBwYWRkaW5nOiAxLjVlbTtcblxuICAgIC5pbWFnZS1jb250YWluZXIge1xuICAgICAgICBtYXJnaW46IC0xLjVlbSAtMS41ZW0gMCAtMS41ZW07XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgfVxuICAgIH1cblxuICAgID4gaDQge1xuICAgICAgICBjb2xvcjogZGFya2VuKCRsaWdodC1iZywgMTUlKTtcbiAgICAgICAgZm9udC1zaXplOiAxLjNlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgbWFyZ2luOiAwIDAgMWVtO1xuICAgIH1cblxuICAgID4gcC5sb2FkLW1vcmUtZGF0YSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBmb250LXNpemU6IDEuMmVtO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuXG4gICAgLy8gUGFyZW50IHNlbGVjdG9yXG4gICAgLmxpc3QtdmlldyAmIHtcbiAgICAgICAgZGl2LmNhcmRzIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICAgICA+IGRpdi5jYXJkLXdyYXBwZXIge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICAgICAgICAgPiBhLmNhcmQge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjVlbTtcbiAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBkZXNrdG9wKCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgPiBpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9yZGVyOiA1O1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZGVza3RvcCgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICA+IC5jYXJkLWRhdGUge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZGVza3RvcCgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbGV4OiAxO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiBsaWdodGVuKCRkYXJrLWJnLCA0MCUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjFlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcmRlcjogNDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICA+IC5jYXJkLXRpdGxlLWNhdGVnb3J5IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjI1ZW07XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGRlc2t0b3AoKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDQwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICA+IC5jYXJkLXRpdGxlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDAgMCAwLjFlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgPiAuY2FyZC1jYXRlZ29yeSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICA+IC5jYXJkLWxvY2F0aW9uLCA+IC5jYXJkLXR5cGUge1xuICAgICAgICAgICAgICAgICAgICAgICAgZmxleDogMTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgID4gLmNhcmQtc2VwYXJhdG9yIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGRlc2t0b3AoKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgID4gLmNhcmQtZGVzY3JpcHRpb24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDY7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDFlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiBsaWdodGVuKCRkYXJrLWJnLCAyMCUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBkZXNrdG9wKCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFBhcmVudCBzZWxlY3RvclxuICAgIC5ncmlkLXZpZXcgJiB7XG4gICAgICAgIGRpdi5jYXJkcyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0wLjc1ZW07XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0wLjc1ZW07XG5cbiAgICAgICAgICAgIGRpdi5jYXJkLXdyYXBwZXIge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxLjVlbTtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRhYmxldCgpIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDUwJTtcblxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjc1ZW07XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMC43NWVtO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGxhcmdlLWRlc2t0b3AoKSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAzMyU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgPiBhLmNhcmQge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxZW07XG4gICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDM2NXB4O1xuXG4gICAgICAgICAgICAgICAgICAgID4gaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgPiAuY2FyZC1kZXNjcmlwdGlvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxZW07XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogbGlnaHRlbigkZGFyay1iZywgMjAlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjVlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDE2ZW07XG4gICAgICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDcwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEuMmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSwgJHdoaXRlIDEwMCUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSIsIi5tb2RhbC1jb250YWluZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgLjcpO1xuICAgIHotaW5kZXg6ICRtb2RhbC16LWluZGV4O1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgLnJlcXVpcmVkIHtcbiAgICAgICAgY29sb3I6ICRlcnJvcjtcbiAgICAgICAgZm9udC1zaXplOiAxLjJlbTtcbiAgICB9XG5cblxuICAgID4gZGl2Lm1vZGFsIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgICBib3gtc2hhZG93OiAwIDFweCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4zNSk7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gICAgICAgIEBpbmNsdWRlIHRhYmxldCgpIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogNTAwcHg7XG4gICAgICAgICAgICBtYXJnaW46IDgwcHggYXV0bztcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcblxuICAgICAgICAgICAgJi5zdWNjZXNzIHtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDUwMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LWhlaWdodDogNzAwcHgpIGFuZCAobWluLXdpZHRoOiA5OTJweCl7XG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKC44NSk7IC8qIElFIDkgKi9cbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSguODUpOyAvKiBTYWZhcmkgKi9cbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoLjg1KTsgLyogRmlyZWZveCwgT3BlcmEsIENocm9tZSAqL1xuXG4gICAgICAgIH1cblxuXG4gICAgICAgICYuc3VjY2VzcyB7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICBtYXJnaW46IDgwcHggYXV0bztcbiAgICAgICAgICAgIG1heC13aWR0aDogMzAwcHg7XG4gICAgICAgIH1cblxuICAgICAgICA+IGhlYWRlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAuNWVtIDNlbSAxLjNlbSAxZW07XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgQGluY2x1ZGUgdGFibGV0KCkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDFlbSAzZW0gMmVtIDJlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgPiBzZWN0aW9uIHtcbiAgICAgICAgICAgICAgICA+IGgyIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjhlbTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwLjVlbSAwIDAuMmVtO1xuICAgICAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICA+IGgzIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICA+IHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuMWVtO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuXG4gICAgICAgICAgICAgICAgICAgICYuY2F0ZWdvcnkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogbGlnaHRlbigkcHJpbWFyeSwgMjAlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4zZW07XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMS4yZW07XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmLmxvY2F0aW9uLFxuICAgICAgICAgICAgICAgICAgICAmLnNlcGFyYXRvcixcbiAgICAgICAgICAgICAgICAgICAgJi50eXBlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjM0Q1NjY4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgPiBpLmNsb3NlIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDAuNWVtO1xuICAgICAgICAgICAgICAgICAgICByaWdodDogMC41ZW07XG4gICAgICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IGxpZ2h0ZW4oJHByaW1hcnksIDE1JSk7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMmVtO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB0YWJsZXQoKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi5zdWNjZXNzIHtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgID4gZGl2Lm1haW4ge1xuICAgICAgICAgICAgcGFkZGluZzogMWVtO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgICAgICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDYwcHggLSAxMjBweCk7XG4gICAgICAgICAgICBAaW5jbHVkZSB0YWJsZXQoKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMmVtO1xuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgc2VjdGlvbiB7XG4gICAgICAgICAgICAgICAgZGl2LnRvb2x0aXAtaW5mbyB7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgjMDAwLCAuNCk7XG4gICAgICAgICAgICAgICAgICAgIHotaW5kZXg6ICRtb2RhbC16LWluZGV4ICsgMTA7XG5cbiAgICAgICAgICAgICAgICAgICAgLnRvb2x0aXAtbW9kYWwge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogMzNlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAyZW0gM2VtIDJlbSAyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IGdyZXk7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDFweCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4zNSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiA5OTk7XG4gICAgICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWF4LWhlaWdodDogNTUwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICYgPiBwIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICYgPiB1bCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0xLjVlbSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICA+IGRpdi50b29sdGlwLWluZm8tY2xvc2VyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogNDZweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogNDZweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID4gaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDQ2cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4yZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgZm9ybS5hcHBseS1mb3JtIHtcbiAgICAgICAgICAgICAgICAgICAgZGl2LmZvcm0tZmllbGQge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAxZW0gMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGRlc2t0b3AoKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAyZW0gMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgZGl2LmlucHV0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5wdXQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZWN0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IGxpZ2h0ZW4oJGRhcmstYmcsIDMwJSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAuNWVtO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICYubmctaW52YWxpZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmLm5nLXZhbGlkLXJlcXVpcmVkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGVycm9yO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJlt0eXBlPVwiZW1haWxcIl0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZbdHlwZT1cInRleHRcIl0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIGRhcmtlbigkbGlnaHQtYmcsIDE1JSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBib3JkZXItYm90dG9tIDAuMnMgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvL3BhZGRpbmc6IDAuNWVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRwcmltYXJ5O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJi5lZW9jIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+IGxhYmVsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuNWVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjFlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiByZ2IoMTIxLCAxMjQsIDEyNik7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGVjdCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICNjZWNlY2U7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogIzUxOThERTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpZWxkc2V0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKCMwMDAsIC4xKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5lZW9jLWNoZWNrYm94IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAzNnB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGluaXRpYWw7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAzNnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAzNnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzNnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbGV4OiAxO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAmLnVwbG9hZC1jb250YWluZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRwcmltYXJ5O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMS42ZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA1MHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPiBpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDUwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4zZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNWVtO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBpbmhlcml0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPiBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDUwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJi52YWxpZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJHNlY29uZGFyeTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRzZWNvbmRhcnk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgPiBkaXYudXBsb2FkLWxhYmVsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4xZW07XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogbGlnaHRlbigkZGFyay1iZywgMzAlKTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgPiBpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogbGlnaHRlbigkZGFyay1iZywgMjAlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgPiAuZXJyb3Ige1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi5zdWNjZXNzIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMWVtO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHNlbGVjdCB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IGxpZ2h0ZW4oJGRhcmstYmcsIDMwJSk7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxZW07XG5cbiAgICAgICAgICAgICAgICAgICAgJi5uZy1pbnZhbGlkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICYubmctdmFsaWQtcmVxdWlyZWQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkZXJyb3I7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmW3R5cGU9XCJlbWFpbFwiXSxcbiAgICAgICAgICAgICAgICAgICAgJlt0eXBlPVwidGV4dFwiXSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgZGFya2VuKCRsaWdodC1iZywgMTUlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGJvcmRlci1ib3R0b20gMC4ycyBlYXNlLWluLW91dDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAuNWVtO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHByaW1hcnk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgJi5jb25zZW50LWNoZWNrYm94IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5jb25zZW50LWNoZWNrYm94LWxhYmVse1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzNENTY2ODtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLy8gTGlua2VkIEluIFNraWxscyBhbmQgZXhwZXJ0aXNlOlxuICAgICAgICAgICAgICAgIHRleHRhcmVhIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIHJlc2l6ZTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiBzb2xpZCB0aGluICNDQ0M7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMC43NWVtO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzc5N2M3ZTtcblxuICAgICAgICAgICAgICAgICAgICAmOmFjdGl2ZSxcbiAgICAgICAgICAgICAgICAgICAgJjpmb2N1cyxcbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkcHJpbWFyeTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGZvb3RlciB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIGhlaWdodDogNTBweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gICAgICAgICAgICBAaW5jbHVkZSB0YWJsZXQoKSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGluY2x1ZGUgcGhvbmUoKSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGluY2x1ZGUgc21hbGwtcGhvbmUoKSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLnN1Y2Nlc3Mge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDUwcHg7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjVlbTtcbiAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDQ5JTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgICAgIGZsZXg6IDE7XG5cbiAgICAgICAgICAgICAgICAmW25hbWU9XCJjYW5jZWxcIl0sXG4gICAgICAgICAgICAgICAgJltuYW1lPVwib2tcIl0ge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNhbmNlbDtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRhYmxldCgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICZbbmFtZT1cInN1Ym1pdFwiXSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRzZWNvbmRhcnk7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG5cbiAgICAgICAgICAgICAgICAgICAgPiBpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICZbbmFtZT1cIm9rXCJdIHtcbiAgICAgICAgICAgICAgICAgICAgZmxleDogMDtcbiAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHByaW1hcnk7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjAwcHg7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLmRpc2FibGVkIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbGlnaHRncmF5O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmVycm9yIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb2xvcjogJGVycm9yO1xuICAgIG1hcmdpbi1sZWZ0OiAxLjFlbTtcbiAgICBtYXJnaW4tdG9wOiAwLjNlbTtcblxuICAgICYuc3VibWl0LWVycm9yIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMWVtO1xuICAgIH1cbn1cblxuLmFjY2VwdGVkLWZvcm1hdHMge1xuICAgIC5fNzIwa2ItdG9vbHRpcC10aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44ZW07XG4gICAgfVxuXG4gICAgdWwge1xuICAgICAgICBtYXJnaW46IDAuMmVtIDAgMCAxLjFlbTtcbiAgICAgICAgZm9udC1zaXplOiAwLjllbTtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICB9XG59XG5cbi5sb2FkaW5nIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAubG9hZGluZy1kb3Qge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHdpZHRoOiA1cHg7XG4gICAgICAgIGhlaWdodDogNXB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICBhbmltYXRpb246IGxvYWRpbmcgMS41cyBlYXNlLWluLW91dCBpbmZpbml0ZTtcbiAgICB9XG5cbiAgICAubG9hZGluZy1kb3Q6bnRoLWNoaWxkKDRuICsgMSkge31cblxuICAgIC5sb2FkaW5nLWRvdDpudGgtY2hpbGQoNG4gKyAyKSB7XG4gICAgICAgIGFuaW1hdGlvbi1kZWxheTogMC4zcztcbiAgICB9XG5cbiAgICAubG9hZGluZy1kb3Q6bnRoLWNoaWxkKDRuICsgMykge1xuICAgICAgICBhbmltYXRpb24tZGVsYXk6IDAuNnM7XG4gICAgfVxufVxuQGtleWZyYW1lcyBsb2FkaW5nIHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuXG4gICAgNTAlIHtcbiAgICAgICAgb3BhY2l0eTogMC4yO1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbn1cbiIsImFzaWRlIHtcbiAgICB6LWluZGV4OiAxMjU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiA4MCU7XG4gICAgbWluLXdpZHRoOiA4MCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAtODAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRkYXJrLWJnO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcblxuICAgIEBpbmNsdWRlIHRhYmxldCgpIHtcbiAgICAgICAgd2lkdGg6ICRzaWRlYmFyLXdpZHRoO1xuICAgICAgICBtaW4td2lkdGg6ICRzaWRlYmFyLXdpZHRoO1xuICAgICAgICBsZWZ0OiAtJHNpZGViYXItd2lkdGg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgZGVza3RvcCgpIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgcG9zaXRpb246IGluaGVyaXQ7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBsZWZ0OiAwO1xuICAgIH1cblxuICAgID4gaGVhZGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHNpZGViYXItaGVhZGVyLWJnO1xuICAgICAgICBoZWlnaHQ6ICRoZWFkZXItaGVpZ2h0O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIHBhZGRpbmc6IDAgMS41ZW07XG5cbiAgICAgICAgPiBsYWJlbCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuOGVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgPiBkaXYuYnV0dG9uLWNvbnRhaW5lciB7XG4gICAgICAgICAgICBmbGV4OiAxO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuXG4gICAgICAgICAgICA+IGJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICAgIGNvbG9yOiBsaWdodGVuKCRkYXJrLWJnLCA0NSUpO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDVweDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuOGVtO1xuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycztcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG5cbiAgICAgICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgPiBzZWN0aW9uIHtcbiAgICAgICAgZmxleDogMTtcbiAgICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAjeyRoZWFkZXItaGVpZ2h0fSk7XG4gICAgICAgIG92ZXJmbG93OiBhdXRvO1xuICAgICAgICBwYWRkaW5nOiAxZW07XG5cbiAgICAgICAgPiBkaXYua2V5d29yZC1zZWFyY2gge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgbWFyZ2luOiAxZW0gMCAyZW07XG5cbiAgICAgICAgICAgID4gbGFiZWwge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDRweDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAxMHB4O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS41ZW07XG4gICAgICAgICAgICAgICAgY29sb3I6ICM1MDUyNTU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgID4gYnV0dG9uLmNsZWFyLWZpbHRlciB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogOXB4O1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgNXB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgPiBpbnB1dC5zZWFyY2gge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzaWRlYmFyLWhlYWRlci1iZyAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwcHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwLjVlbSAyLjVlbTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDFlbTtcbiAgICAgICAgICAgICAgICBjb2xvcjogbGlnaHRlbigkZGFyay1iZywgNzUlKTtcbiAgICAgICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXG4gICAgICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjo6LW1zLWNsZWFyIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICA+IHNlY3Rpb24uZmlsdGVyLXNlY3Rpb24ge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMmVtO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiAzNzBweDtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiBpbmhlcml0O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICA+IC5maWx0ZXItc2VjdGlvbi1oZWFkZXIge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFlbTtcblxuICAgICAgICAgICAgICAgID4gaDQge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogbGlnaHRlbigkZGFyay1iZywgMzUlKTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjFlbTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgPiBidXR0b24uY2xlYXItZmlsdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICA+IHNwYW4uc2hvdy1tb3JlIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMWVtO1xuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICBjb2xvcjogbGlnaHRlbigkZGFyay1iZywgNTAlKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgPiAuZmlsdGVyLWl0ZW0ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA1cHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDhweDtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgbGlnaHRlbigkZGFyay1iZywgNSUpO1xuICAgICAgICAgICAgICAgIGNvbG9yOiBsaWdodGVuKCRkYXJrLWJnLCA2NSUpO1xuXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgICAgICAgICA+IGxhYmVsIHtcbiAgICAgICAgICAgICAgICAgICAgZmxleDogMTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjFlbTtcbiAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDFlbTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMWVtO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgID4gc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4xZW07XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgPiBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgICAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpZ2h0ZW4oJGRhcmstYmcsIDE1JSk7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgICAgICAgICAgICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IGluaXRpYWw7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDEzMG1zIGVhc2UtaW4tb3V0O1xuXG4gICAgICAgICAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICY6Y2hlY2tlZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjNmJiZjJiOztcbiAgICAgICAgICAgICAgICAgICAgICAgICYgKyBsYWJlbCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICM2YmJmMmI7O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgPiBzZWN0aW9uLmNyZWRpdHMge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogNGVtO1xuICAgICAgICAgICAgY29sb3I6IGxpZ2h0ZW4oJGRhcmstYmcsIDMwJSk7XG5cbiAgICAgICAgICAgIHNwYW4ucG93ZXJlZC1ieSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5idWxsaG9ybiB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgIGJvdHRvbTogMjBweDtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgPiBidXR0b25bbmFtZT1cImJhY2stYXJyb3dcIl0ge1xuICAgICAgICAgICAgd2lkdGg6IDQ2cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgICAgICAgICAgd2lkdGg6IDhweDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHtcbiAgICAgICAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyay1iZztcbiAgICAgICAgfVxuXG4gICAgICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgICAgICAtd2Via2l0LWJveC1zaGFkb3c6IGluc2V0IDFweCAxcHggNnB4ICRiYXNlLWNvbG9yO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhc2UtY29sb3I7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLnNob3cge1xuICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC8vIFBhcmVudCBzZWxlY3RvclxuICAgIC5vdmVydmlldy1vcGVuICYge1xuICAgICAgICB3aWR0aDogJHNpZGViYXItd2lkdGgtc21hbGw7XG4gICAgICAgIG1pbi13aWR0aDogJHNpZGViYXItd2lkdGgtc21hbGw7XG5cbiAgICAgICAgPiBoZWFkZXIge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgID4gc2VjdGlvbiB7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgICAgICAgICAgPiBkaXYua2V5d29yZC1zZWFyY2gsID4gc2VjdGlvbi5maWx0ZXItc2VjdGlvbiwgPiBzZWN0aW9uLmNyZWRpdHMge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgID4gYnV0dG9uW25hbWU9XCJiYWNrLWFycm93XCJdIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgPiBidXR0b25bbmFtZT1cImNsZWFyLWFsbFwiXSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbGlnaHRlbigkZGFyay1iZywgMyUpO1xuICAgICAgICB9XG4gICAgfVxufVxuIl19 */
